Class RemoteFileEndpoint<T>
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultEndpoint
org.apache.camel.support.ScheduledPollEndpoint
org.apache.camel.component.file.GenericFileEndpoint<T>
org.apache.camel.component.file.remote.RemoteFileEndpoint<T>
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.ComponentAware,org.apache.camel.Endpoint,org.apache.camel.IsSingleton,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.BrowsableEndpoint,org.apache.camel.spi.EndpointServiceLocation,org.apache.camel.spi.HasCamelContext,org.apache.camel.spi.HasId,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
- Direct Known Subclasses:
FtpEndpoint,SftpEndpoint
public abstract class RemoteFileEndpoint<T>
extends org.apache.camel.component.file.GenericFileEndpoint<T>
implements org.apache.camel.spi.EndpointServiceLocation
Remote file endpoint.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.camel.spi.BrowsableEndpoint
org.apache.camel.spi.BrowsableEndpoint.BrowseStatus -
Field Summary
Fields inherited from class org.apache.camel.component.file.GenericFileEndpoint
allowNullBody, antExclude, antFilter, antFilterCaseSensitive, antInclude, appendChars, autoCreate, bufferSize, charset, checksumFileAlgorithm, configuration, DEFAULT_IDEMPOTENT_CACHE_SIZE, DEFAULT_IN_PROGRESS_CACHE_SIZE, delete, doneFileName, eagerDeleteTargetFile, eagerMaxMessagesPerPoll, exclude, excludeExt, exclusiveReadLockStrategy, fileExist, fileName, filter, filterDirectory, filterFile, flatten, idempotent, idempotentKey, idempotentRepository, include, includeExt, inProgressRepository, jailStartingDirectory, keepLastModified, localWorkDirectory, maxDepth, maxMessagesPerPoll, minDepth, move, moveExisting, moveExistingFileStrategy, moveFailed, noop, onCompletionExceptionHandler, preMove, preSort, processStrategy, readLock, readLockCheckInterval, readLockDeleteOrphanLockFiles, readLockIdempotentReleaseAsync, readLockIdempotentReleaseAsyncPoolSize, readLockIdempotentReleaseDelay, readLockIdempotentReleaseExecutorService, readLockLoggingLevel, readLockMarkerFile, readLockMinAge, readLockMinLength, readLockRemoveOnCommit, readLockRemoveOnRollback, readLockTimeout, recursive, shuffle, sortBy, sorter, tempFileName, tempPrefixFields 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
ConstructorsModifierConstructorDescriptionprotectedprotectedRemoteFileEndpoint(String uri, RemoteFileComponent<T> component, RemoteFileConfiguration configuration) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidValidates this endpoint if its configured properly.protected abstract RemoteFileConsumer<T> buildConsumer(org.apache.camel.Processor processor) Remote File Endpoints, impl this method to create a custom consumer specific to their "protocol" etc.protected abstract org.apache.camel.component.file.GenericFileProducer<T> Remote File Endpoints, impl this method to create a custom producer specific to their "protocol" etc.createConsumer(org.apache.camel.Processor processor) org.apache.camel.ExchangecreateExchange(org.apache.camel.component.file.GenericFile<T> file) org.apache.camel.PollingConsumerorg.apache.camel.component.file.GenericFileProducer<T> abstract RemoteFileOperations<T> Creates the operations to be used by the consumer or producer.charintlongbooleanisAbsolute(String name) booleanbooleanbooleanbooleanbooleanReturns human readable server information for logging purposevoidsetDisconnect(boolean disconnect) Whether or not to disconnect from remote FTP server right after use.voidsetDisconnectOnBatchComplete(boolean disconnectOnBatchComplete) Whether or not to disconnect from remote FTP server right after a Batch upload is complete.voidsetDownload(boolean download) Whether the FTP consumer should download the file.voidsetFastExistsCheck(boolean fastExistsCheck) If set this option to be true, camel-ftp will use the list file directly to check if the file exists.voidsetMaximumReconnectAttempts(int maximumReconnectAttempts) Specifies the maximum reconnect attempts Camel performs when it tries to connect to the remote FTP server.voidsetReconnectDelay(long reconnectDelay) Delay in millis Camel will wait before performing a reconnect attempt.Methods inherited from class org.apache.camel.component.file.GenericFileEndpoint
configureExchange, configureMessage, configureMoveOrPreMoveExpression, createDoneFileName, createGenericFileStrategy, doInit, doStart, doStop, getAntExclude, getAntFilter, getAntInclude, getAppendChars, getBrowseLimit, getBrowseStatus, getBufferSize, getCharset, getChecksumFileAlgorithm, getDoneFileName, getExchanges, getExchanges, getExclude, getExcludeExt, getExcludePattern, getExclusiveReadLockStrategy, getFileExist, getFileName, getFilter, getFilterDirectory, getFilterFile, getGeneratedFileName, getIdempotent, getIdempotentEager, getIdempotentKey, getIdempotentRepository, getInclude, getIncludeExt, getIncludePattern, getInProgressRepository, getLocalWorkDirectory, getMaxDepth, getMaxMessagesPerPoll, getMinDepth, getMove, getMoveExisting, getMoveExistingFileStrategy, getMoveFailed, getOnCompletionExceptionHandler, getPreMove, getProcessStrategy, getReadLock, getReadLockCheckInterval, getReadLockIdempotentReleaseAsyncPoolSize, getReadLockIdempotentReleaseDelay, getReadLockIdempotentReleaseExecutorService, getReadLockLoggingLevel, getReadLockMinAge, getReadLockMinLength, getReadLockTimeout, getScheme, getSortBy, getSorter, getTempFileName, getTempPrefix, isAllowNullBody, isAntFilterCaseSensitive, isAutoCreate, isDelete, isDoneFile, isEagerDeleteTargetFile, isEagerMaxMessagesPerPoll, isFlatten, isHiddenFilesEnabled, isIdempotent, isIdempotentEager, isIdempotentSet, isJailStartingDirectory, isKeepLastModified, isNoop, isPreSort, isReadLockDeleteOrphanLockFiles, isReadLockIdempotentReleaseAsync, isReadLockMarkerFile, isReadLockRemoveOnCommit, isReadLockRemoveOnRollback, isRecursive, isShuffle, isSynchronous, setAllowNullBody, setAntExclude, setAntFilterCaseSensitive, setAntInclude, setAppendChars, setAutoCreate, setBrowseLimit, setBufferSize, setCharset, setChecksumFileAlgorithm, setConfiguration, setDelete, setDoneFileName, setEagerDeleteTargetFile, setEagerMaxMessagesPerPoll, setExclude, setExcludeExt, setExclusiveReadLockStrategy, setFileExist, setFileName, setFileName, setFilter, setFilterDirectory, setFilterDirectory, setFilterFile, setFilterFile, setFlatten, setIdempotent, setIdempotentEager, setIdempotentKey, setIdempotentKey, setIdempotentRepository, setInclude, setIncludeExt, setInProgressRepository, setJailStartingDirectory, setKeepLastModified, setLocalWorkDirectory, setMaxDepth, setMaxMessagesPerPoll, setMinDepth, setMove, setMove, setMoveExisting, setMoveExisting, setMoveExistingFileStrategy, setMoveFailed, setMoveFailed, setNoop, setOnCompletionExceptionHandler, setPreMove, setPreMove, setPreSort, setProcessStrategy, setReadLock, setReadLockCheckInterval, setReadLockDeleteOrphanLockFiles, setReadLockIdempotentReleaseAsync, setReadLockIdempotentReleaseAsyncPoolSize, setReadLockIdempotentReleaseDelay, setReadLockIdempotentReleaseExecutorService, setReadLockLoggingLevel, setReadLockMarkerFile, setReadLockMinAge, setReadLockMinLength, setReadLockRemoveOnCommit, setReadLockRemoveOnRollback, setReadLockTimeout, setRecursive, setShuffle, setSortBy, setSortBy, setSortBy, setSorter, setSynchronous, setTempFileName, setTempFileName, setTempPrefixMethods inherited from class org.apache.camel.support.ScheduledPollEndpoint
configureConsumer, configureProperties, configureScheduledPollConsumerProperties, doConfigureConsumer, getBackoffErrorThreshold, getBackoffIdleThreshold, getBackoffMultiplier, getDefaultDelay, getDelay, getInitialDelay, getPollStrategy, getRepeatCount, getRunLoggingLevel, getScheduledExecutorService, getScheduler, getSchedulerProperties, getTimeUnit, isGreedy, isSendEmptyMessageWhenIdle, isStartScheduler, isUseFixedDelay, setBackoffErrorThreshold, setBackoffIdleThreshold, setBackoffMultiplier, setDelay, setGreedy, setInitialDelay, setPollStrategy, setRepeatCount, setRunLoggingLevel, setScheduledExecutorService, setScheduler, setSchedulerProperties, setSendEmptyMessageWhenIdle, setStartScheduler, setTimeUnit, setUseFixedDelayMethods inherited from class org.apache.camel.support.DefaultEndpoint
configurePollingConsumer, createAsyncProducer, createEndpointUri, createExchange, createExchange, equals, getCamelContext, getComponent, getEndpointKey, getEndpointUri, getExceptionHandler, getExchangePattern, getId, getPollingConsumerBlockTimeout, getPollingConsumerQueueSize, hashCode, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, isLenientProperties, isPollingConsumerBlockWhenFull, isPollingConsumerCopy, isSingleton, setAutowiredEnabled, setBridgeErrorHandler, setCamelContext, setComponent, setEndpointUri, setEndpointUriIfNotSpecified, setExceptionHandler, setExchangePattern, setLazyStartProducer, setPollingConsumerBlockTimeout, setPollingConsumerBlockWhenFull, setPollingConsumerCopy, setPollingConsumerQueueSize, setProperties, toStringMethods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doLifecycleChange, doResume, doShutdown, doSuspend, 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, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.camel.ComponentAware
getComponent, getComponent, setComponentMethods inherited from interface org.apache.camel.Endpoint
configureProperties, createAsyncProducer, createExchange, createExchange, getCamelContext, getEndpointBaseUri, getEndpointKey, getEndpointUri, getExchangePattern, isLenientProperties, isRemote, setCamelContextMethods inherited from interface org.apache.camel.IsSingleton
isSingletonMethods 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
-
Constructor Details
-
RemoteFileEndpoint
protected RemoteFileEndpoint() -
RemoteFileEndpoint
protected RemoteFileEndpoint(String uri, RemoteFileComponent<T> component, RemoteFileConfiguration configuration)
-
-
Method Details
-
isSingletonProducer
public boolean isSingletonProducer()- Specified by:
isSingletonProducerin interfaceorg.apache.camel.Endpoint
-
getConfiguration
- Overrides:
getConfigurationin classorg.apache.camel.component.file.GenericFileEndpoint<T>
-
getServiceUrl
- Specified by:
getServiceUrlin interfaceorg.apache.camel.spi.EndpointServiceLocation
-
getServiceProtocol
- Specified by:
getServiceProtocolin interfaceorg.apache.camel.spi.EndpointServiceLocation
-
getServiceMetadata
- Specified by:
getServiceMetadatain interfaceorg.apache.camel.spi.EndpointServiceLocation
-
createExchange
public org.apache.camel.Exchange createExchange(org.apache.camel.component.file.GenericFile<T> file) - Specified by:
createExchangein classorg.apache.camel.component.file.GenericFileEndpoint<T>
-
createProducer
-
createConsumer
-
createPollingConsumer
- Specified by:
createPollingConsumerin interfaceorg.apache.camel.Endpoint- Overrides:
createPollingConsumerin classorg.apache.camel.support.DefaultEndpoint- Throws:
Exception
-
afterPropertiesSet
protected void afterPropertiesSet()Validates this endpoint if its configured properly.- Throws:
IllegalArgumentException- is thrown if endpoint is invalid configured for its mandatory options
-
getParamsAsMap
- Overrides:
getParamsAsMapin classorg.apache.camel.component.file.GenericFileEndpoint<T>
-
buildConsumer
Remote File Endpoints, impl this method to create a custom consumer specific to their "protocol" etc.- Parameters:
processor- the processor- Returns:
- the created consumer
-
buildProducer
Remote File Endpoints, impl this method to create a custom producer specific to their "protocol" etc.- Returns:
- the created producer
-
createRemoteFileOperations
Creates the operations to be used by the consumer or producer.- Returns:
- a new created operations
- Throws:
Exception- is thrown if error creating operations.
-
remoteServerInformation
Returns human readable server information for logging purpose -
getFileSeparator
public char getFileSeparator()- Specified by:
getFileSeparatorin classorg.apache.camel.component.file.GenericFileEndpoint<T>
-
isAbsolute
- Specified by:
isAbsolutein classorg.apache.camel.component.file.GenericFileEndpoint<T>
-
getMaximumReconnectAttempts
public int getMaximumReconnectAttempts() -
setMaximumReconnectAttempts
public void setMaximumReconnectAttempts(int maximumReconnectAttempts) Specifies the maximum reconnect attempts Camel performs when it tries to connect to the remote FTP server. Use 0 to disable this behavior. -
getReconnectDelay
public long getReconnectDelay() -
setReconnectDelay
public void setReconnectDelay(long reconnectDelay) Delay in millis Camel will wait before performing a reconnect attempt. -
isDisconnect
public boolean isDisconnect() -
setDisconnect
public void setDisconnect(boolean disconnect) 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. -
isDisconnectOnBatchComplete
public boolean isDisconnectOnBatchComplete() -
setDisconnectOnBatchComplete
public void setDisconnectOnBatchComplete(boolean disconnectOnBatchComplete) Whether or not to disconnect from remote FTP server right after a Batch upload is complete. disconnectOnBatchComplete will only disconnect the current connection to the FTP server. -
isFastExistsCheck
public boolean isFastExistsCheck() -
setFastExistsCheck
public void setFastExistsCheck(boolean fastExistsCheck) 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. -
isDownload
public boolean isDownload() -
setDownload
public void setDownload(boolean download) 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.
-