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:
Runnable,Aware,BeanFactoryAware,BeanNameAware,DisposableBean,InitializingBean,SmartInitializingSingleton,ApplicationContextAware,ApplicationEventPublisherAware,Lifecycle,Phased,SmartLifecycle,ComponentSourceAware,ExpressionCapable,MessageProducer,IntegrationPattern,NamedComponent,IntegrationInboundManagement,IntegrationManagement,ManageableLifecycle,ManageableSmartLifecycle,TrackableComponent,SchedulingAwareRunnable
public class OSDelegatingFileTailingMessageProducer
extends FileTailingMessageProducerSupport
implements 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
- Author:
- Gary Russell, Gavin Gray, Ali Shahbour, Artem Bilan, Trung Pham
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.integration.file.tail.FileTailingMessageProducerSupport
FileTailingMessageProducerSupport.FileTailingEvent, FileTailingMessageProducerSupport.FileTailingIdleEventNested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagement
IntegrationManagement.ManagementOverrides -
Field Summary
Fields inherited from class org.springframework.integration.file.tail.FileTailingMessageProducerSupport
DEFAULT_TAIL_ATTEMPTS_DELAYFields inherited from class org.springframework.integration.endpoint.AbstractEndpoint
lifecycleLockFields inherited from class org.springframework.integration.context.IntegrationObjectSupport
EXPRESSION_PARSER, loggerFields inherited from interface org.springframework.integration.support.management.IntegrationManagement
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAMEFields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoStart()Take no action by default.protected voiddoStop()Take no action by default.booleanprotected voidonInit()Subclasses may implement this for initialization logic.voidrun()Reads lines from stdout and sends in a message to the output channel.voidsetEnableStatusReader(boolean enableStatusReader) If false, thread for capturing stderr will not be started and stderr output will be ignored.voidsetOptions(@Nullable String options) Methods inherited from class org.springframework.integration.file.tail.FileTailingMessageProducerSupport
getFile, getMissingFileDelay, getTaskExecutor, publish, send, setApplicationEventPublisher, setFile, setIdleEventInterval, setTailAttemptsDelay, setTaskExecutorMethods inherited from class org.springframework.integration.endpoint.MessageProducerSupport
afterSingletonsInstantiated, buildErrorMessage, getErrorChannel, getErrorMessageAttributes, getErrorMessageStrategy, getIntegrationPatternType, getMessagingTemplate, getOutputChannel, getRequiredOutputChannel, isObserved, registerObservationRegistry, sendErrorMessageIfNecessary, sendMessage, setErrorChannel, setErrorChannelName, setErrorMessageStrategy, setObservationConvention, setOutputChannel, setOutputChannelName, setSendTimeout, setShouldTrack, subscribeToPublisherMethods inherited from class org.springframework.integration.endpoint.AbstractEndpoint
destroy, doStop, getPhase, getRole, isActive, isAutoStartup, isRunning, setAutoStartup, setPhase, setRole, start, stop, stopMethods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentDescription, getComponentName, getComponentSource, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentDescription, setComponentName, setComponentSource, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.integration.support.management.IntegrationManagement
destroy, getManagedName, getManagedType, getOverrides, getThisAs, isLoggingEnabled, registerMetricsCaptor, setLoggingEnabled, setManagedName, setManagedTypeMethods inherited from interface org.springframework.integration.support.context.NamedComponent
getBeanName, getComponentNameMethods inherited from interface org.springframework.scheduling.SchedulingAwareRunnable
getQualifierMethods inherited from interface org.springframework.context.SmartLifecycle
isPauseable
-
Constructor Details
-
OSDelegatingFileTailingMessageProducer
public OSDelegatingFileTailingMessageProducer()
-
-
Method Details
-
setOptions
-
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
-
getComponentType
- Specified by:
getComponentTypein interfaceNamedComponent- Overrides:
getComponentTypein classFileTailingMessageProducerSupport
-
isLongLived
public boolean isLongLived()- Specified by:
isLongLivedin interfaceSchedulingAwareRunnable
-
onInit
protected void onInit()Description copied from class:IntegrationObjectSupportSubclasses may implement this for initialization logic.- Overrides:
onInitin classMessageProducerSupport
-
doStart
protected void doStart()Description copied from class:MessageProducerSupportTake no action by default. Subclasses may override this if they need lifecycle-managed behavior. Protected by 'lifecycleLock'.- Overrides:
doStartin classFileTailingMessageProducerSupport
-
doStop
protected void doStop()Description copied from class:MessageProducerSupportTake no action by default. Subclasses may override this if they need lifecycle-managed behavior.- Overrides:
doStopin classFileTailingMessageProducerSupport
-
run
-