Class CharacterStreamReadingMessageSource
java.lang.Object
org.springframework.integration.util.AbstractExpressionEvaluator
org.springframework.integration.endpoint.AbstractMessageSource<String>
org.springframework.integration.stream.CharacterStreamReadingMessageSource
- 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.ApplicationEventPublisherAware
,org.springframework.integration.core.MessageSource<String>
,org.springframework.integration.IntegrationPattern
,org.springframework.integration.support.context.NamedComponent
,org.springframework.integration.support.management.IntegrationInboundManagement
,org.springframework.integration.support.management.IntegrationManagement
public class CharacterStreamReadingMessageSource
extends org.springframework.integration.endpoint.AbstractMessageSource<String>
implements org.springframework.context.ApplicationEventPublisherAware
A pollable source for
Readers
.-
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
ConstructorsConstructorDescriptionConstruct an instance with the provider reader.CharacterStreamReadingMessageSource
(Reader reader, int bufferSize) Construct an instance with the provider reader and buffer size.CharacterStreamReadingMessageSource
(Reader reader, int bufferSize, boolean blockToDetectEOF) Construct an instance with the provided reader and buffer size. -
Method Summary
Modifier and TypeMethodDescriptionvoid
setApplicationEventPublisher
(org.springframework.context.ApplicationEventPublisher applicationEventPublisher) stdin()
Create a source that reads fromSystem.in
.Create a source that reads fromSystem.in
.Create a source that reads fromSystem.in
.Create a source that reads fromSystem.in
.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, onInit, 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, isObserved, registerObservationRegistry
Methods inherited from interface org.springframework.integration.core.MessageSource
getIntegrationPatternType
-
Constructor Details
-
CharacterStreamReadingMessageSource
Construct an instance with the provider reader.AbstractMessageSource.receive()
will returnnull
when the reader is not ready.- Parameters:
reader
- the reader.
-
CharacterStreamReadingMessageSource
Construct an instance with the provider reader and buffer size.AbstractMessageSource.receive()
will returnnull
when the reader is not ready.- Parameters:
reader
- the reader.bufferSize
- the buffer size.
-
CharacterStreamReadingMessageSource
Construct an instance with the provided reader and buffer size. WhenblockToDetectEOF
isfalse
,AbstractMessageSource.receive()
will returnnull
when the reader is not ready. When it istrue
, the thread will block until data is available; when the underlying stream is closed, aStreamClosedEvent
is published to inform the application via anApplicationListener
. This can be useful, for example, when piping stdincat foo.txt | java -jar my.jar
orjava -jar my.jar < foo.txt
- Parameters:
reader
- the reader.bufferSize
- the buffer size; if negative use the default inBufferedReader
.blockToDetectEOF
- true to block the thread until data is available and publish aStreamClosedEvent
at EOF.- Since:
- 5.0
-
-
Method Details
-
setApplicationEventPublisher
public void setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher applicationEventPublisher) - Specified by:
setApplicationEventPublisher
in interfaceorg.springframework.context.ApplicationEventPublisherAware
-
getComponentType
- Specified by:
getComponentType
in interfaceorg.springframework.integration.support.context.NamedComponent
-
doReceive
- Specified by:
doReceive
in classorg.springframework.integration.endpoint.AbstractMessageSource<String>
-
stdin
Create a source that reads fromSystem.in
. EOF will not be detected.- Returns:
- the stream.
-
stdin
Create a source that reads fromSystem.in
. EOF will not be detected.- Parameters:
charsetName
- the charset to use when converting bytes to String.- Returns:
- the stream.
-
stdinPipe
Create a source that reads fromSystem.in
. EOF will be detected and the application context closed.- Returns:
- the stream.
- Since:
- 5.0
- See Also:
-
stdinPipe
Create a source that reads fromSystem.in
. EOF will be detected and the application context closed.- Parameters:
charsetName
- the charset to use when converting bytes to String.- Returns:
- the stream.
- Since:
- 5.0
- See Also:
-