FTP

FTP

Scheme: ftp

FTP endpoint

Name Kind Type Required Deprecated Default Value Enum Values Description
host path java.lang.String true false Hostname of the FTP server
port path int false Port of the FTP server
directoryName path java.lang.String false The starting directory
account parameter java.lang.String false Account to use for login
username parameter java.lang.String false Username to use for login
password parameter java.lang.String false Password to use for login
binary parameter boolean false Specifies the file transfer mode, BINARY or ASCII. Default is ASCII (false).
passiveMode parameter boolean false Sets passive mode connections.
Default is active mode connections.
connectTimeout parameter int false 10000 Sets the connect timeout for waiting for a connection to be established

Used by both FTPClient and JSCH

timeout parameter int false 30000 Sets the data timeout for waiting for reply

Used only by FTPClient

soTimeout parameter int false 300000 Sets the so timeout

Used only by FTPClient

receiveBufferSize parameter int false 32768 The receive (download) buffer size

Used only by FTPClient

throwExceptionOnConnectFailed parameter boolean false Should an exception be thrown if connection failed (exhausted)

By default exception is not thrown and a WARN is logged. You can use this to enable exception being thrown and handle the thrown exception from the {@link org.apache.camel.spi.PollingConsumerPollStrategy} rollback method.

siteCommand parameter java.lang.String false Sets optional site command(s) to be executed after successful login.

Multiple site commands can be separated using a new line character (\n). @param siteCommand the site command(s).

stepwise parameter boolean false true Sets whether we should stepwise change directories while traversing file structures when downloading files, or as well when uploading a file to a directory.

You can disable this if you for example are in a situation where you cannot change directory on the FTP server due security reasons. @param stepwise whether to use change directory or not

separator parameter org.apache.camel.component.file.remote.RemoteFileConfiguration.PathSeparator false UNIX Sets the path separator to be used.

UNIX = Uses unix style path separator Windows = Uses windows style path separator Auto = (is default) Use existing path separator in file name

streamDownload parameter boolean false Sets the download method to use when not using a local working directory. If set to true, the remote files are streamed to the route as they are read. When set to false, the remote files are loaded into memory before being sent into the route.
useList parameter boolean false true Whether to allow using LIST command when downloading a file.

Default is true. In some use cases you may want to download a specific file and are not allowed to use the LIST command, and therefore you can set this option to false.

ignoreFileNotFoundOrPermissionError parameter boolean false Whether to ignore when trying to download a file which does not exist or due to permission error.

By default when a file does not exists or insufficient permission, then an exception is thrown. Setting this option to true allows to ignore that instead.

sendNoop parameter boolean false true Whether to send a noop command as a pre-write check before uploading files to the FTP server.

This is enabled by default as a validation of the connection is still valid, which allows to silently re-connect to be able to upload the file. However if this causes problems, you can turn this option off.

maximumReconnectAttempts parameter int false Specifies the maximum reconnect attempts Camel performs when it tries to connect to the remote FTP server. Use 0 to disable this behavior.
reconnectDelay parameter long false Delay in millis Camel will wait before performing a reconnect attempt.
disconnect parameter boolean false Whether or not to disconnect from remote FTP server right after use. Disconnect will only disconnect the current connection to the FTP server. If you have a consumer which you want to stop, then you need to stop the consumer/route instead.
fastExistsCheck parameter boolean false If set this option to be true, camel-ftp will use the list file directly to check if the file exists. Since some FTP server may not support to list the file directly, if the option is false, camel-ftp will use the old way to list the directory and check if the file exists. This option also influences readLock=changed to control whether it performs a fast check to update file information or not. This can be used to speed up the process if the FTP server has a lot of files.
download parameter boolean false Whether the FTP consumer should download the file. If this option is set to false, then the message body will be null, but the consumer will still trigger a Camel Exchange that has details about the file such as file name, file size, etc. It's just that the file will not be downloaded.
autoCreate parameter boolean false true
bufferSize parameter int false 131072
charset parameter java.lang.String false
fileName parameter org.apache.camel.Expression false
flatten parameter boolean false
fileExist parameter org.apache.camel.component.file.GenericFileExist false Override Override
Append
Fail
Ignore
Move
TryRename
tempPrefix parameter java.lang.String false
tempFileName parameter org.apache.camel.Expression false
eagerDeleteTargetFile parameter boolean false true
keepLastModified parameter boolean false
doneFileName parameter java.lang.String false
allowNullBody parameter boolean false
chmod parameter java.lang.String false
processStrategy parameter org.apache.camel.component.file.GenericFileProcessStrategy false
inProgressRepository parameter org.apache.camel.spi.IdempotentRepository false
localWorkDirectory parameter java.lang.String false
startingDirectoryMustExist parameter boolean false
directoryMustExist parameter boolean false
noop parameter boolean false
recursive parameter boolean false
delete parameter boolean false
maxMessagesPerPoll parameter int false
eagerMaxMessagesPerPoll parameter boolean false true
maxDepth parameter int false 2147483647
minDepth parameter int false
include parameter java.lang.String false
exclude parameter java.lang.String false
move parameter org.apache.camel.Expression false
moveFailed parameter org.apache.camel.Expression false
preMove parameter org.apache.camel.Expression false
moveExisting parameter org.apache.camel.Expression false
idempotent parameter java.lang.Boolean false
idempotentKey parameter org.apache.camel.Expression false
idempotentRepository parameter org.apache.camel.spi.IdempotentRepository false
filter parameter org.apache.camel.component.file.GenericFileFilter false
antInclude parameter java.lang.String false
antExclude parameter java.lang.String false
sorter parameter java.util.Comparator> false
sortBy parameter java.util.Comparator false
shuffle parameter boolean false
readLock parameter java.lang.String false none
markerFile
fileLock
rename
changed
idempotent
readLockCheckInterval parameter long false 1000
readLockTimeout parameter long false 10000
readLockMarkerFile parameter boolean false true
readLockDeleteOrphanLockFiles parameter boolean false true
readLockLoggingLevel parameter org.apache.camel.LoggingLevel false WARN TRACE
DEBUG
INFO
WARN
ERROR
OFF
readLockMinLength parameter long false 1
readLockMinAge parameter long false 0
readLockRemoveOnRollback parameter boolean false true
readLockRemoveOnCommit parameter boolean false
exclusiveReadLockStrategy parameter org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy false
onCompletionExceptionHandler parameter org.apache.camel.spi.ExceptionHandler false
startScheduler parameter boolean false true Whether the scheduler should be auto started.
initialDelay parameter long false 1000 Milliseconds before the first poll starts.
delay parameter long false 500 Milliseconds before the next poll.
timeUnit parameter java.util.concurrent.TimeUnit false MILLISECONDS NANOSECONDS
MICROSECONDS
MILLISECONDS
SECONDS
MINUTES
HOURS
DAYS
Time unit for initialDelay and delay options.
useFixedDelay parameter boolean false true Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details.
pollStrategy parameter org.apache.camel.spi.PollingConsumerPollStrategy false A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing you to provide your custom implementation to control error handling usually occurred during the poll operation before an Exchange have been created and being routed in Camel.
runLoggingLevel parameter org.apache.camel.LoggingLevel false TRACE TRACE
DEBUG
INFO
WARN
ERROR
OFF
The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that.
sendEmptyMessageWhenIdle parameter boolean false If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead.
greedy parameter boolean false If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages.
scheduler parameter org.apache.camel.spi.ScheduledPollConsumerScheduler false spring
quartz2
To use a cron scheduler from either camel-spring or camel-quartz2 component
schedulerProperties parameter java.util.Map false To configure additional properties when using a custom scheduler or any of the Quartz2, Spring based scheduler.
scheduledExecutorService parameter java.util.concurrent.ScheduledExecutorService false Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool.
backoffMultiplier parameter int false To let the scheduled polling consumer backoff if there has been a number of subsequent idles/errors in a row. The multiplier is then the number of polls that will be skipped before the next actual attempt is happening again. When this option is in use then backoffIdleThreshold and/or backoffErrorThreshold must also be configured.
backoffIdleThreshold parameter int false The number of subsequent idle polls that should happen before the backoffMultipler should kick-in.
backoffErrorThreshold parameter int false The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in.
exchangePattern parameter org.apache.camel.ExchangePattern false InOnly InOnly
RobustInOnly
InOut
InOptionalOut
OutOnly
RobustOutOnly
OutIn
OutOptionalIn
Sets the default exchange pattern when creating an exchange
synchronous parameter boolean false false Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).

ftp consumer

FTP consumer

Name Kind Type Required Deprecated Default Value Enum Values Description
eagerLimitMaxMessagesPerPoll parameter boolean false
maxMessagesPerPoll parameter int false