Class FileTailingMessageProducerSupport

java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.endpoint.AbstractEndpoint
org.springframework.integration.endpoint.MessageProducerSupport
org.springframework.integration.file.tail.FileTailingMessageProducerSupport
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.beans.factory.SmartInitializingSingleton, org.springframework.context.ApplicationContextAware, org.springframework.context.ApplicationEventPublisherAware, org.springframework.context.Lifecycle, org.springframework.context.Phased, org.springframework.context.SmartLifecycle, org.springframework.integration.context.ExpressionCapable, org.springframework.integration.core.MessageProducer, org.springframework.integration.IntegrationPattern, org.springframework.integration.support.context.NamedComponent, org.springframework.integration.support.management.ManageableLifecycle, org.springframework.integration.support.management.ManageableSmartLifecycle, org.springframework.integration.support.management.TrackableComponent
Direct Known Subclasses:
ApacheCommonsFileTailingMessageProducer, OSDelegatingFileTailingMessageProducer

public abstract class FileTailingMessageProducerSupport
extends org.springframework.integration.endpoint.MessageProducerSupport
implements org.springframework.context.ApplicationEventPublisherAware
Base class for file tailing inbound adapters.
Since:
3.0
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static class  FileTailingMessageProducerSupport.FileTailingEvent  
    static class  FileTailingMessageProducerSupport.FileTailingIdleEvent  
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static long DEFAULT_TAIL_ATTEMPTS_DELAY
    The default delay between tail attempts in milliseconds.

    Fields inherited from class org.springframework.integration.endpoint.AbstractEndpoint

    lifecycleCondition, lifecycleLock

    Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport

    EXPRESSION_PARSER, logger

    Fields inherited from interface org.springframework.context.SmartLifecycle

    DEFAULT_PHASE
  • Constructor Summary

    Constructors 
    Constructor Description
    FileTailingMessageProducerSupport()  
  • Method Summary

    Modifier and Type Method Description
    protected void doStart()  
    protected void doStop()  
    java.lang.String getComponentType()  
    protected java.io.File getFile()  
    protected long getMissingFileDelay()  
    protected org.springframework.core.task.TaskExecutor getTaskExecutor()  
    protected void publish​(java.lang.String message)  
    protected void send​(java.lang.String line)  
    void setApplicationEventPublisher​(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)  
    void setFile​(java.io.File file)
    The name of the file you wish to tail.
    void setIdleEventInterval​(long idleEventInterval)
    How often to emit FileTailingMessageProducerSupport.FileTailingIdleEvents in milliseconds.
    void setTailAttemptsDelay​(long tailAttemptsDelay)
    The delay in milliseconds between attempts to tail a non-existent file, or between attempts to execute a process if it fails for any reason.
    void setTaskExecutor​(org.springframework.core.task.TaskExecutor taskExecutor)
    A task executor; default is a SimpleAsyncTaskExecutor.

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

    afterSingletonsInstantiated, buildErrorMessage, getErrorChannel, getErrorMessageAttributes, getIntegrationPatternType, getMessagingTemplate, getOutputChannel, onInit, sendErrorMessageIfNecessary, sendMessage, setErrorChannel, setErrorChannelName, setErrorMessageStrategy, setOutputChannel, setOutputChannelName, setSendTimeout, setShouldTrack, subscribeToPublisher

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

    destroy, doStop, getPhase, getRole, isActive, isAutoStartup, isRunning, setAutoStartup, setPhase, setRole, start, stop, stop

    Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport

    afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface org.springframework.integration.support.context.NamedComponent

    getBeanName, getComponentName
  • Field Details

  • Constructor Details

  • Method Details

    • setApplicationEventPublisher

      public void setApplicationEventPublisher​(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)
      Specified by:
      setApplicationEventPublisher in interface org.springframework.context.ApplicationEventPublisherAware
    • setFile

      public void setFile​(java.io.File file)
      The name of the file you wish to tail.
      Parameters:
      file - The absolute path of the file.
    • getFile

      protected java.io.File getFile()
    • setTaskExecutor

      public void setTaskExecutor​(org.springframework.core.task.TaskExecutor taskExecutor)
      A task executor; default is a SimpleAsyncTaskExecutor.
      Parameters:
      taskExecutor - The task executor.
    • setTailAttemptsDelay

      public void setTailAttemptsDelay​(long tailAttemptsDelay)
      The delay in milliseconds between attempts to tail a non-existent file, or between attempts to execute a process if it fails for any reason.
      Parameters:
      tailAttemptsDelay - the delay.
    • setIdleEventInterval

      public void setIdleEventInterval​(long idleEventInterval)
      How often to emit FileTailingMessageProducerSupport.FileTailingIdleEvents in milliseconds.
      Parameters:
      idleEventInterval - the interval.
      Since:
      5.0
    • getMissingFileDelay

      protected long getMissingFileDelay()
    • getTaskExecutor

      protected org.springframework.core.task.TaskExecutor getTaskExecutor()
    • getComponentType

      public java.lang.String getComponentType()
      Specified by:
      getComponentType in interface org.springframework.integration.support.context.NamedComponent
      Overrides:
      getComponentType in class org.springframework.integration.context.IntegrationObjectSupport
    • send

      protected void send​(java.lang.String line)
    • publish

      protected void publish​(java.lang.String message)
    • doStart

      protected void doStart()
      Overrides:
      doStart in class org.springframework.integration.endpoint.MessageProducerSupport
    • doStop

      protected void doStop()
      Overrides:
      doStop in class org.springframework.integration.endpoint.MessageProducerSupport