Represents parameters of a transfer. This class should be used in conjunction
with class Transfer. You first configure a TransferParams object by setting values directly
(parameters are public, there's no getter/setter methods). Then
pass this object to a Transfer constructor that will perform the transfer as required.
In general, the meaning of a parameter values is as follows. A value of
SERVER_DEFAULT (in case of integer values) or null (in case of objects) indicate
that this parameter should not be explicitly set to the server,
and the server will use its defaults.
Any other value will be explicitly requested from the server
on the control channel.
For example, if transferMode is set to SERVER_DEFAULT, client will not directly
request any transfer mode, and the server should use its default which is stream mode.
If transferMode is set to MODE_STREAM, stream mode will be explicitly requested
from the server, so it will also use stream mode.
To request extended block mode, set transferMode to MODE_EBLOCK.
Below is a list of parameters that can be set to TransferParams and can affect the transfer:
credential - user's credential; use null for default user's credential
transferMode - transfer mode
transferType - transfer type
serverMode - SERVER_ACTIVE (default) if the sending server should be active, otherwise SERVER_PASSIVE (this is illegal with Mode E)
parallel - parallelism (integer number of parallel streams)
doStriping - set to true to request striping, otherwise false (default)
protectionBufferSize - protection buffer size; in GridFTP must be set to something
dataChannelAuthentication - DataChannelAuthentication.SELF (default) or DataChannelAuthentication.NONE