Class OSDelegatingFileTailingMessageProducer
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.endpoint.AbstractEndpoint
org.springframework.integration.endpoint.MessageProducerSupport
org.springframework.integration.file.tail.FileTailingMessageProducerSupport
org.springframework.integration.file.tail.OSDelegatingFileTailingMessageProducer
- All Implemented Interfaces:
java.lang.Runnable
,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
,org.springframework.scheduling.SchedulingAwareRunnable
public class OSDelegatingFileTailingMessageProducer extends FileTailingMessageProducerSupport implements org.springframework.scheduling.SchedulingAwareRunnable
A file tailing message producer that delegates to the OS tail program.
This is likely the most efficient mechanism on platforms that support it.
Default options are "-F -n 0" (follow file name, no existing records).
- Since:
- 3.0
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.integration.file.tail.FileTailingMessageProducerSupport
FileTailingMessageProducerSupport.FileTailingEvent, FileTailingMessageProducerSupport.FileTailingIdleEvent
-
Field Summary
Fields inherited from class org.springframework.integration.file.tail.FileTailingMessageProducerSupport
DEFAULT_TAIL_ATTEMPTS_DELAY
Fields inherited from class org.springframework.integration.endpoint.AbstractEndpoint
lifecycleCondition, lifecycleLock
-
Constructor Summary
Constructors Constructor Description OSDelegatingFileTailingMessageProducer()
-
Method Summary
Modifier and Type Method Description protected void
doStart()
protected void
doStop()
java.lang.String
getCommand()
java.lang.String
getComponentType()
boolean
isLongLived()
protected void
onInit()
void
run()
Reads lines from stdout and sends in a message to the output channel.void
setEnableStatusReader(boolean enableStatusReader)
If false, thread for capturing stderr will not be started and stderr output will be ignoredvoid
setOptions(java.lang.String options)
Methods inherited from class org.springframework.integration.file.tail.FileTailingMessageProducerSupport
getFile, getMissingFileDelay, getTaskExecutor, publish, send, setApplicationEventPublisher, setFile, setIdleEventInterval, setTailAttemptsDelay, setTaskExecutor
Methods inherited from class org.springframework.integration.endpoint.MessageProducerSupport
afterSingletonsInstantiated, buildErrorMessage, getErrorChannel, getErrorMessageAttributes, getIntegrationPatternType, getMessagingTemplate, getOutputChannel, 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
-
Constructor Details
-
OSDelegatingFileTailingMessageProducer
public OSDelegatingFileTailingMessageProducer()
-
-
Method Details
-
setOptions
public void setOptions(java.lang.String options) -
setEnableStatusReader
public void setEnableStatusReader(boolean enableStatusReader)If false, thread for capturing stderr will not be started and stderr output will be ignored- Parameters:
enableStatusReader
- true or false- Since:
- 4.3.6
-
getCommand
public java.lang.String getCommand() -
getComponentType
public java.lang.String getComponentType()- Specified by:
getComponentType
in interfaceorg.springframework.integration.support.context.NamedComponent
- Overrides:
getComponentType
in classFileTailingMessageProducerSupport
-
isLongLived
public boolean isLongLived()- Specified by:
isLongLived
in interfaceorg.springframework.scheduling.SchedulingAwareRunnable
-
onInit
protected void onInit()- Overrides:
onInit
in classorg.springframework.integration.endpoint.MessageProducerSupport
-
doStart
protected void doStart()- Overrides:
doStart
in classFileTailingMessageProducerSupport
-
doStop
protected void doStop()- Overrides:
doStop
in classFileTailingMessageProducerSupport
-
run
public void run()Reads lines from stdout and sends in a message to the output channel.- Specified by:
run
in interfacejava.lang.Runnable
-