Class SftpStreamingMessageSource

java.lang.Object
org.springframework.integration.util.AbstractExpressionEvaluator
org.springframework.integration.endpoint.AbstractMessageSource<T>
org.springframework.integration.endpoint.AbstractFetchLimitingMessageSource<java.io.InputStream>
org.springframework.integration.file.remote.AbstractRemoteFileStreamingMessageSource<com.jcraft.jsch.ChannelSftp.LsEntry>
org.springframework.integration.sftp.inbound.SftpStreamingMessageSource
All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.Lifecycle, org.springframework.integration.core.MessageSource<java.io.InputStream>, org.springframework.integration.IntegrationPattern, org.springframework.integration.support.context.NamedComponent, org.springframework.integration.support.management.IntegrationInboundManagement, org.springframework.integration.support.management.IntegrationManagement, org.springframework.integration.support.management.ManageableLifecycle, org.springframework.integration.support.management.MessageSourceManagement

public class SftpStreamingMessageSource
extends org.springframework.integration.file.remote.AbstractRemoteFileStreamingMessageSource<com.jcraft.jsch.ChannelSftp.LsEntry>
Message source for streaming SFTP remote file contents.
Since:
4.3
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagement

    org.springframework.integration.support.management.IntegrationManagement.ManagementOverrides
  • Field Summary

    Fields inherited from class org.springframework.integration.util.AbstractExpressionEvaluator

    EXPRESSION_PARSER, logger

    Fields inherited from interface org.springframework.integration.support.management.IntegrationManagement

    METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
  • Constructor Summary

    Constructors 
    Constructor Description
    SftpStreamingMessageSource​(org.springframework.integration.file.remote.RemoteFileTemplate<com.jcraft.jsch.ChannelSftp.LsEntry> template)
    Construct an instance with the supplied template.
    SftpStreamingMessageSource​(org.springframework.integration.file.remote.RemoteFileTemplate<com.jcraft.jsch.ChannelSftp.LsEntry> template, java.util.Comparator<com.jcraft.jsch.ChannelSftp.LsEntry> comparator)
    Construct an instance with the supplied template and comparator.
  • Method Summary

    Modifier and Type Method Description
    protected java.util.List<org.springframework.integration.file.remote.AbstractFileInfo<com.jcraft.jsch.ChannelSftp.LsEntry>> asFileInfoList​(java.util.Collection<com.jcraft.jsch.ChannelSftp.LsEntry> files)  
    java.lang.String getComponentType()  
    protected boolean isDirectory​(com.jcraft.jsch.ChannelSftp.LsEntry file)  

    Methods inherited from class org.springframework.integration.file.remote.AbstractRemoteFileStreamingMessageSource

    doInit, doReceive, doSetFilter, getRemoteFileTemplate, isRunning, onInit, poll, remotePath, rollbackFromFileToListEnd, setFileInfoJson, setFilter, setRemoteDirectory, setRemoteDirectoryExpression, setRemoteFileSeparator, start, stop

    Methods inherited from class org.springframework.integration.endpoint.AbstractFetchLimitingMessageSource

    doReceive, getMaxFetchSize, setMaxFetchSize

    Methods inherited from class org.springframework.integration.endpoint.AbstractMessageSource

    buildMessage, destroy, getBeanName, getComponentName, getManagedName, getManagedType, getOverrides, isLoggingEnabled, receive, registerMetricsCaptor, setBeanName, setHeaderExpressions, setLoggingEnabled, setManagedName, setManagedType

    Methods inherited from class org.springframework.integration.util.AbstractExpressionEvaluator

    afterPropertiesSet, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, setBeanFactory, setConversionService

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.springframework.integration.support.management.IntegrationManagement

    getThisAs

    Methods inherited from interface org.springframework.integration.core.MessageSource

    getIntegrationPatternType
  • Constructor Details

    • SftpStreamingMessageSource

      public SftpStreamingMessageSource​(org.springframework.integration.file.remote.RemoteFileTemplate<com.jcraft.jsch.ChannelSftp.LsEntry> template)
      Construct an instance with the supplied template.
      Parameters:
      template - the template.
    • SftpStreamingMessageSource

      public SftpStreamingMessageSource​(org.springframework.integration.file.remote.RemoteFileTemplate<com.jcraft.jsch.ChannelSftp.LsEntry> template, java.util.Comparator<com.jcraft.jsch.ChannelSftp.LsEntry> comparator)
      Construct an instance with the supplied template and comparator. Note: the comparator is applied each time the remote directory is listed which only occurs when the previous list is exhausted.
      Parameters:
      template - the template.
      comparator - the comparator.
  • Method Details

    • getComponentType

      public java.lang.String getComponentType()
    • asFileInfoList

      protected java.util.List<org.springframework.integration.file.remote.AbstractFileInfo<com.jcraft.jsch.ChannelSftp.LsEntry>> asFileInfoList​(java.util.Collection<com.jcraft.jsch.ChannelSftp.LsEntry> files)
      Specified by:
      asFileInfoList in class org.springframework.integration.file.remote.AbstractRemoteFileStreamingMessageSource<com.jcraft.jsch.ChannelSftp.LsEntry>
    • isDirectory

      protected boolean isDirectory​(com.jcraft.jsch.ChannelSftp.LsEntry file)
      Specified by:
      isDirectory in class org.springframework.integration.file.remote.AbstractRemoteFileStreamingMessageSource<com.jcraft.jsch.ChannelSftp.LsEntry>