Class FtpConsumer
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.DefaultConsumer
-
- org.apache.camel.support.ScheduledPollConsumer
-
- org.apache.camel.support.ScheduledBatchPollingConsumer
-
- org.apache.camel.component.file.GenericFileConsumer<T>
-
- org.apache.camel.component.file.remote.RemoteFileConsumer<org.apache.commons.net.ftp.FTPFile>
-
- org.apache.camel.component.file.remote.FtpConsumer
-
- All Implemented Interfaces:
AutoCloseable,Runnable,org.apache.camel.BatchConsumer,org.apache.camel.Consumer,org.apache.camel.EndpointAware,org.apache.camel.health.HealthCheckAware,org.apache.camel.PollingConsumerPollingStrategy,org.apache.camel.RouteAware,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.RouteIdAware,org.apache.camel.spi.ShutdownAware,org.apache.camel.spi.ShutdownPrepared,org.apache.camel.StatefulService,org.apache.camel.Suspendable,org.apache.camel.SuspendableService
@ManagedResource(description="Managed FtpConsumer") public class FtpConsumer extends RemoteFileConsumer<org.apache.commons.net.ftp.FTPFile>
FTP consumer
-
-
Field Summary
Fields Modifier and Type Field Description protected StringendpointPath-
Fields inherited from class org.apache.camel.component.file.remote.RemoteFileConsumer
loggedIn, loggedInWarning
-
Fields inherited from class org.apache.camel.component.file.GenericFileConsumer
customProcessor, eagerLimitMaxMessagesPerPoll, endpoint, operations, pendingExchanges, prepareOnStartup, processStrategy, shutdownRunningTask
-
-
Constructor Summary
Constructors Constructor Description FtpConsumer(RemoteFileEndpoint<org.apache.commons.net.ftp.FTPFile> endpoint, org.apache.camel.Processor processor, RemoteFileOperations<org.apache.commons.net.ftp.FTPFile> fileOperations, org.apache.camel.component.file.GenericFileProcessStrategy processStrategy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleandoPollDirectory(String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>> fileList, int depth)Poll directory given by dirName or absolutePathprotected voiddoStart()StringgetLastFtpActivity()StringgetLastFtpActivityVerbose()protected FtpOperationsgetOperations()protected booleanignoreCannotRetrieveFile(String name, org.apache.camel.Exchange exchange, Exception cause)protected booleanisMatched(org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile> file, String doneFileName, org.apache.commons.net.ftp.FTPFile[] files)protected booleanpollDirectory(String fileName, List<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>> fileList, int depth)protected booleanpollSubDirectory(String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>> fileList, int depth)StringtoString()protected voidupdateFileHeaders(org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile> file, org.apache.camel.Message message)-
Methods inherited from class org.apache.camel.component.file.remote.RemoteFileConsumer
connectIfNecessary, createExchange, disconnect, doSafePollSubDirectory, doStop, forceDisconnect, getEndpoint, hasStartingDirectory, isRetrieveFile, postPollCheck, prePollCheck, processExchange, remoteServer
-
Methods inherited from class org.apache.camel.component.file.GenericFileConsumer
afterPoll, beforePoll, canPollMoreFiles, customProcessExchange, doInit, evaluateFileExpression, getCustomProcessor, isEagerLimitMaxMessagesPerPoll, isMatched, isValidFile, onInit, poll, processBatch, removeExcessiveInProgressFiles, removeExcessiveInProgressFiles, setCustomProcessor, setEagerLimitMaxMessagesPerPoll, setOperations
-
Methods inherited from class org.apache.camel.support.ScheduledBatchPollingConsumer
deferShutdown, getMaxMessagesPerPoll, getPendingExchangesSize, isBatchAllowed, prepareShutdown, processEmptyMessage, setMaxMessagesPerPoll
-
Methods inherited from class org.apache.camel.support.ScheduledPollConsumer
addLastErrorDetail, afterConfigureScheduler, doBuild, doShutdown, doSuspend, getBackoffCounter, getBackoffErrorThreshold, getBackoffIdleThreshold, getBackoffMultiplier, getCounter, getDelay, getErrorCounter, getInitialDelay, getLastError, getLastErrorDetails, getPollStrategy, getRepeatCount, getRunLoggingLevel, getScheduledExecutorService, getScheduler, getSchedulerProperties, getSuccessCounter, getTimeUnit, initialHealthCheckState, isFirstPollDone, isGreedy, isPollAllowed, isPolling, isSchedulerStarted, isSendEmptyMessageWhenIdle, isStartScheduler, isUseFixedDelay, run, setBackoffErrorThreshold, setBackoffIdleThreshold, setBackoffMultiplier, setDelay, setGreedy, setInitialDelay, setPollStrategy, setRepeatCount, setRunLoggingLevel, setScheduledExecutorService, setScheduler, setSchedulerProperties, setSendEmptyMessageWhenIdle, setStartScheduler, setTimeUnit, setUseFixedDelay, startScheduler
-
Methods inherited from class org.apache.camel.support.DefaultConsumer
createExchange, createUoW, defaultConsumerCallback, doneUoW, getAsyncProcessor, getExceptionHandler, getHealthCheck, getProcessor, getRoute, getRouteId, handleException, handleException, releaseExchange, setExceptionHandler, setHealthCheck, setRoute, setRouteId
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.camel.Consumer
createExchange, defaultConsumerCallback, getProcessor, releaseExchange
-
Methods inherited from interface org.apache.camel.health.HealthCheckAware
getHealthCheck, setHealthCheck
-
-
-
-
Field Detail
-
endpointPath
protected String endpointPath
-
-
Constructor Detail
-
FtpConsumer
public FtpConsumer(RemoteFileEndpoint<org.apache.commons.net.ftp.FTPFile> endpoint, org.apache.camel.Processor processor, RemoteFileOperations<org.apache.commons.net.ftp.FTPFile> fileOperations, org.apache.camel.component.file.GenericFileProcessStrategy processStrategy)
-
-
Method Detail
-
getOperations
protected FtpOperations getOperations()
- Overrides:
getOperationsin classRemoteFileConsumer<org.apache.commons.net.ftp.FTPFile>
-
doStart
protected void doStart() throws Exception- Overrides:
doStartin classorg.apache.camel.component.file.GenericFileConsumer<org.apache.commons.net.ftp.FTPFile>- Throws:
Exception
-
pollDirectory
protected boolean pollDirectory(String fileName, List<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>> fileList, int depth)
- Specified by:
pollDirectoryin classorg.apache.camel.component.file.GenericFileConsumer<org.apache.commons.net.ftp.FTPFile>
-
pollSubDirectory
protected boolean pollSubDirectory(String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>> fileList, int depth)
-
doPollDirectory
protected boolean doPollDirectory(String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>> fileList, int depth)
Description copied from class:RemoteFileConsumerPoll directory given by dirName or absolutePath- Specified by:
doPollDirectoryin classRemoteFileConsumer<org.apache.commons.net.ftp.FTPFile>- Parameters:
absolutePath- The path of the directory to polldirName- The name of the directory to pollfileList- current list of files gathereddepth- the current depth of the directory- Returns:
- whether or not to continue polling, false means the maxMessagesPerPoll limit has been hit
-
isMatched
protected boolean isMatched(org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile> file, String doneFileName, org.apache.commons.net.ftp.FTPFile[] files)- Specified by:
isMatchedin classorg.apache.camel.component.file.GenericFileConsumer<org.apache.commons.net.ftp.FTPFile>
-
ignoreCannotRetrieveFile
protected boolean ignoreCannotRetrieveFile(String name, org.apache.camel.Exchange exchange, Exception cause)
- Overrides:
ignoreCannotRetrieveFilein classorg.apache.camel.component.file.GenericFileConsumer<org.apache.commons.net.ftp.FTPFile>
-
updateFileHeaders
protected void updateFileHeaders(org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile> file, org.apache.camel.Message message)- Specified by:
updateFileHeadersin classorg.apache.camel.component.file.GenericFileConsumer<org.apache.commons.net.ftp.FTPFile>
-
getLastFtpActivity
@ManagedAttribute(description="Summary of last FTP activity (download only)") public String getLastFtpActivity()
-
getLastFtpActivityVerbose
@ManagedAttribute(description="Summary of last FTP activity (all)") public String getLastFtpActivityVerbose()
-
toString
public String toString()
- Overrides:
toStringin classorg.apache.camel.support.DefaultConsumer
-
-