public abstract class AbstractRemoteFileStreamingMessageSource<F> extends AbstractFetchLimitingMessageSource<InputStream> implements BeanFactoryAware, InitializingBean
InputStream payload
referencing a remote file.EXPRESSION_PARSER, logger| Modifier | Constructor and Description |
|---|---|
protected |
AbstractRemoteFileStreamingMessageSource(RemoteFileTemplate<F> template,
Comparator<AbstractFileInfo<F>> comparator) |
| Modifier and Type | Method and Description |
|---|---|
void |
afterPropertiesSet() |
protected abstract List<AbstractFileInfo<F>> |
asFileInfoList(Collection<F> files) |
protected void |
doInit()
Subclasses can override to perform initialization - called from
InitializingBean.afterPropertiesSet(). |
protected Object |
doReceive()
Subclasses must implement this method.
|
protected Object |
doReceive(int maxFetchSize)
Subclasses must implement this method.
|
protected RemoteFileTemplate<F> |
getRemoteFileTemplate() |
protected AbstractFileInfo<F> |
poll() |
protected String |
remotePath(AbstractFileInfo<F> file) |
protected void |
rollbackFromFileToListEnd(List<F> filteredFiles,
F file) |
void |
setFilter(FileListFilter<F> filter)
Set the filter to be applied to the remote files before transferring.
|
void |
setRemoteDirectory(String remoteDirectory)
Specify the full path to the remote directory.
|
void |
setRemoteDirectoryExpression(Expression remoteDirectoryExpression)
Specify an expression that evaluates to the full path to the remote directory.
|
void |
setRemoteFileSeparator(String remoteFileSeparator)
Set the remote file separator; default '/'
|
getMaxFetchSize, setMaxFetchSizebuildMessage, getComponentName, getManagedName, getManagedType, getMessageCount, getMessageCountLong, isCountsEnabled, isLoggingEnabled, receive, reset, setBeanName, setCountsEnabled, setHeaderExpressions, setLoggingEnabled, setManagedName, setManagedTypeevaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, setBeanFactory, setConversionServiceclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsetBeanFactorygetManagedName, getManagedType, getMessageCount, getMessageCountLong, setManagedName, setManagedTypeisCountsEnabled, isLoggingEnabled, reset, setCountsEnabled, setLoggingEnabledgetComponentTypeprotected AbstractRemoteFileStreamingMessageSource(RemoteFileTemplate<F> template, Comparator<AbstractFileInfo<F>> comparator)
public void setRemoteDirectory(String remoteDirectory)
remoteDirectory - The remote directory.public void setRemoteDirectoryExpression(Expression remoteDirectoryExpression)
remoteDirectoryExpression - The remote directory expression.public void setRemoteFileSeparator(String remoteFileSeparator)
remoteFileSeparator - the remote file separator.public void setFilter(FileListFilter<F> filter)
filter - the file list filter.protected RemoteFileTemplate<F> getRemoteFileTemplate()
public final void afterPropertiesSet()
afterPropertiesSet in interface InitializingBeanafterPropertiesSet in class AbstractExpressionEvaluatorprotected void doInit()
InitializingBean.afterPropertiesSet().protected Object doReceive()
AbstractMessageSourcedoReceive in class AbstractFetchLimitingMessageSource<InputStream>protected Object doReceive(int maxFetchSize)
AbstractFetchLimitingMessageSourcedoReceive in class AbstractFetchLimitingMessageSource<InputStream>maxFetchSize - the maximum number of messages to fetch if a fetch is
necessary.protected AbstractFileInfo<F> poll()
protected String remotePath(AbstractFileInfo<F> file)
protected abstract List<AbstractFileInfo<F>> asFileInfoList(Collection<F> files)