Class RemoteFileConsumer<T>
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<T>
- 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.HostedService,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
- Direct Known Subclasses:
FtpConsumer,SftpConsumer
public abstract class RemoteFileConsumer<T>
extends org.apache.camel.component.file.GenericFileConsumer<T>
Base class for remote file consumers.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected booleanprotected booleanprotected booleanFields inherited from class org.apache.camel.component.file.GenericFileConsumer
customProcessor, eagerLimitMaxMessagesPerPoll, endpoint, operations, pendingExchanges, prepareOnStartup, processStrategy, shutdownRunningTaskFields inherited from class org.apache.camel.support.ScheduledBatchPollingConsumer
maxMessagesPerPollFields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedRemoteFileConsumer(RemoteFileEndpoint<T> endpoint, org.apache.camel.Processor processor, RemoteFileOperations<T> operations, org.apache.camel.component.file.GenericFileProcessStrategy processStrategy) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidprotected org.apache.camel.ExchangecreateExchange(org.apache.camel.component.file.GenericFile<T> file) protected voidprotected abstract booleandoPollDirectory(org.apache.camel.Exchange dynamic, String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<T>> fileList, int depth) Poll directory given by dirName or absolutePathprotected booleandoSafePollSubDirectory(org.apache.camel.Exchange dynamic, String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<T>> fileList, int depth) Executes doPollDirectory and on exception checks if it can be ignored by calling ignoreCannotRetrieveFile.protected voiddoStop()protected voidprotected RemoteFileOperations<T> protected booleanWhether there is a starting directory configured.protected voidpostPollCheck(int polledMessages) protected booleanprotected booleanprocessExchange(org.apache.camel.Exchange exchange) protected StringReturns human-readable server information for logging purposeMethods inherited from class org.apache.camel.component.file.GenericFileConsumer
afterPoll, beforePoll, canPollMoreFiles, customProcessExchange, doInit, doStart, evaluateFileExpression, getCustomProcessor, getRelativeFilePath, hasExtExlusions, hasExtInclusions, ignoreCannotRetrieveFile, isEagerLimitMaxMessagesPerPoll, isMatched, isMatched, isMatchedHiddenFile, isRetrieveFile, isValidFile, onInit, poll, poll, pollDirectory, processBatch, removeExcessiveInProgressFiles, removeExcessiveInProgressFiles, setCustomProcessor, setEagerLimitMaxMessagesPerPoll, setOperations, setRetrieveFile, updateFileHeadersMethods inherited from class org.apache.camel.support.ScheduledBatchPollingConsumer
deferShutdown, getMaxMessagesPerPoll, getPendingExchangesSize, isBatchAllowed, prepareShutdown, processEmptyMessage, setMaxMessagesPerPollMethods inherited from class org.apache.camel.support.ScheduledPollConsumer
addLastErrorDetail, afterConfigureScheduler, doBuild, doShutdown, doSuspend, forceConsumerAsReady, getBackoffCounter, getBackoffErrorThreshold, getBackoffIdleThreshold, getBackoffMultiplier, getCounter, getDelay, getErrorCounter, getInitialDelay, getLastError, getLastErrorDetails, getPollStrategy, getRepeatCount, getRunLoggingLevel, getScheduledExecutorService, getScheduler, getSchedulerProperties, getSuccessCounter, getTimeUnit, initialHealthCheckState, isConsumerReady, 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, startSchedulerMethods inherited from class org.apache.camel.support.DefaultConsumer
createExchange, createUoW, defaultConsumerCallback, doneUoW, getAsyncProcessor, getExceptionHandler, getHealthCheck, getProcessor, getRoute, getRouteId, handleException, handleException, handleException, isHostedService, releaseExchange, setExceptionHandler, setHealthCheck, setRoute, setRouteId, toStringMethods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, fail, getInternalLock, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.camel.Consumer
createExchange, defaultConsumerCallback, getProcessor, releaseExchangeMethods inherited from interface org.apache.camel.health.HealthCheckAware
getHealthCheck, setHealthCheckMethods inherited from interface org.apache.camel.Service
build, close, init, start, stopMethods inherited from interface org.apache.camel.ShutdownableService
shutdownMethods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspendingMethods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Field Details
-
loggedIn
protected transient boolean loggedIn -
loggedInWarning
protected transient boolean loggedInWarning -
autoCreatedDone
protected transient boolean autoCreatedDone -
autoCreateWarning
protected transient boolean autoCreateWarning
-
-
Constructor Details
-
RemoteFileConsumer
protected RemoteFileConsumer(RemoteFileEndpoint<T> endpoint, org.apache.camel.Processor processor, RemoteFileOperations<T> operations, org.apache.camel.component.file.GenericFileProcessStrategy processStrategy)
-
-
Method Details
-
getEndpoint
- Specified by:
getEndpointin interfaceorg.apache.camel.EndpointAware- Overrides:
getEndpointin classorg.apache.camel.support.DefaultConsumer
-
getOperations
-
createExchange
protected org.apache.camel.Exchange createExchange(org.apache.camel.component.file.GenericFile<T> file) - Specified by:
createExchangein classorg.apache.camel.component.file.GenericFileConsumer<T>
-
prePollCheck
-
postPollCheck
protected void postPollCheck(int polledMessages) - Overrides:
postPollCheckin classorg.apache.camel.component.file.GenericFileConsumer<T>
-
processExchange
protected boolean processExchange(org.apache.camel.Exchange exchange) - Overrides:
processExchangein classorg.apache.camel.component.file.GenericFileConsumer<T>
-
hasStartingDirectory
protected boolean hasStartingDirectory()Whether there is a starting directory configured. -
doStop
-
disconnect
protected void disconnect() -
forceDisconnect
protected void forceDisconnect() -
connectIfNecessary
protected void connectIfNecessary() -
autoCreateIfNecessary
protected void autoCreateIfNecessary() throws org.apache.camel.component.file.GenericFileOperationFailedException- Throws:
org.apache.camel.component.file.GenericFileOperationFailedException
-
remoteServer
Returns human-readable server information for logging purpose -
doSafePollSubDirectory
protected boolean doSafePollSubDirectory(org.apache.camel.Exchange dynamic, String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<T>> fileList, int depth) Executes doPollDirectory and on exception checks if it can be ignored by calling ignoreCannotRetrieveFile.- 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
- Throws:
org.apache.camel.component.file.GenericFileOperationFailedException- if the exception during doPollDirectory can not be ignored
-
doPollDirectory
protected abstract boolean doPollDirectory(org.apache.camel.Exchange dynamic, String absolutePath, String dirName, List<org.apache.camel.component.file.GenericFile<T>> fileList, int depth) Poll directory given by dirName or absolutePath- 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
-