Business Request Message class for packet
1 string and on integer and one byte:
- sheader = full text with class at first place
- smiddle = integer
- send = byte
Compute number of threads for both client and server from the real number
of available processors (double + 1) if the value is less than 32
threads else (available +1).
This class is for logging or write to an external file some info:
- if delay is 0, no echo at all will be done
- if delay is 1, will echo some information in the normal log
- if delay is 2, will echo some information in the file
(last deduced argument will be the full path for the file output)
- if delay is 3, will echo both in the normal log and in the file
(last deduced argument will be the full path for the file output)
Classes implementing Tasks for pre, post or error operations
Several kind of tasks exist in OpenR66:
LOG, MOVE, MOVERENAME, COPY, COPYRENAME, EXEC, EXECMOVE, LINKRENAME, TRANSFER,
VALIDFILEPATH, DELETE
Several tasks are possible to run before a transfer starts (pre action),
after a transfer is finished correctly (post action) or after an error occurs
(either in pre or post action or during transfer: error action).
Class for Recv Through client
This class does not included the real file transfer since it is up to the business project
to implement how to write new data received from the remote host.
Reschedule Transfer task to a time delayed by the specified number of milliseconds,
if the error code is one of the specified codes and the optional intervals of date are
compatible with the new time schedule
Result of arguments will be as following options (the two first are
mandatory):
"-delay ms" where ms is the added number of ms on current time before retry
on schedule
"-case errorCode,errorCode,..." where errorCode is one of the following error
of the current transfer (either literal or code in 1 character:
ConnectionImpossible(C), ServerOverloaded(l), BadAuthent(A), ExternalOp(E),
TransferError(T), MD5Error(M), Disconnection(D), RemoteShutdown(r),
FinalOp(F), Unimplemented(U), Shutdown(S), RemoteError(R), Internal(I),
StoppedTransfer(H), CanceledTransfer(K), Warning(W), Unknown(-),
QueryAlreadyFinished(Q), QueryStillRunning(s), NotKnownHost(N),
QueryRemotelyUnknown(u), FileNotFound(f), CommandNotFound(c),
PassThroughMode(p)
"-between start;end" and/or "-notbetween start;end" (multiple times are
allowed, start or end can be not set) and where start and stop are in the
following format:
Yn:Mn:Dn:Hn:mn:Sn where n is a number for each time specification, each
specification is optional, as Y=Year, M=Month, D=Day, H=Hour, m=minute,
s=second.
Class for Send Through client
This class does not included the real file transfer since it is up to the business project
to implement how to read new data to be sent to the remote host.
WARNING: This class is not functional neither integrated
Test class for Send Through to another R66 Server as forward
Only a subpart of SenThroughClient is to be made since
steps 1-2 and steps 7-8 are only for client, not for server.
3) Prepare the request of transfer: R66Future futureReq = new R66Future(true); TestSendThroughForward transaction = new TestSendThroughForward(futureReq,...)
This task validate the File Path according to the follwing argument:
- the full path is get from the current file
- the arg path is transformed as usual (static and dynamic from information transfer)
and should be the beginning of the correct valid path
- the full path should begin with one of the result of the transformation (blank separated)
For instance "#OUTPATH# #INPATH# #WORKPATH# #ARHCPATH#" will test that the current file is in one of
the standard path.