public class TcpOutboundGateway extends AbstractReplyProducingMessageHandler implements TcpSender, TcpListener, Lifecycle
Lifecycle methods delegate to the underlying AbstractConnectionFactory
AbstractReplyProducingMessageHandler.RequestHandlerIntegrationManagement.ManagementOverridesmessagingTemplateEXPRESSION_PARSER, loggerMETER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAMEHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE| Constructor and Description |
|---|
TcpOutboundGateway() |
| Modifier and Type | Method and Description |
|---|---|
void |
addNewConnection(TcpConnection connection)
When we are using sockets owned by a
TcpListener, this
method is called each time a new connection is made. |
protected void |
doInit() |
String |
getComponentType()
Subclasses may implement this method to provide component type information.
|
protected AbstractConnectionFactory |
getConnectionFactory() |
protected Object |
handleRequestMessage(Message<?> requestMessage)
Subclasses must implement this method to handle the request Message.
|
boolean |
isRunning() |
boolean |
onMessage(Message<?> message)
Called by a TCPConnection when a new message arrives.
|
void |
removeDeadConnection(TcpConnection connection)
When we are using sockets owned by a
TcpListener, this
method is called each time a connection is closed. |
void |
setCloseStreamAfterSend(boolean closeStreamAfterSend)
Set to true to close the connection ouput stream after sending without
closing the connection.
|
void |
setConnectionFactory(AbstractClientConnectionFactory connectionFactory) |
void |
setIntegrationEvaluationContext(EvaluationContext evaluationContext) |
void |
setRemoteTimeout(long remoteTimeout) |
void |
setRemoteTimeoutExpression(Expression remoteTimeoutExpression) |
void |
setReplyChannel(MessageChannel replyChannel)
Specify the Spring Integration reply channel.
|
void |
setReplyChannelName(String replyChannel)
Specify the Spring Integration reply channel name.
|
void |
setRequestTimeout(long requestTimeout) |
void |
setSecondChanceDelay(int secondChanceDelay)
When using NIO and the server closes the socket after sending the reply,
an error message representing the close may appear before the reply.
|
void |
start() |
void |
stop() |
doInvokeAdvisedRequestHandler, getBeanClassLoader, getIntegrationPatternType, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReplyaddNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeadershandleMessage, onComplete, onError, onNext, onSubscribebuildSendTimer, configureMetrics, destroy, getActiveCount, getActiveCountLong, getDuration, getErrorCount, getErrorCountLong, getHandleCount, getHandleCountLong, getHandlerMetrics, getManagedName, getManagedType, getMaxDuration, getMeanDuration, getMetricsCaptor, getMinDuration, getOrder, getOverrides, getStandardDeviationDuration, isCountsEnabled, isLoggingEnabled, isStatsEnabled, registerMetricsCaptor, reset, sendTimer, setCountsEnabled, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, setStatsEnabled, shouldTrackafterPropertiesSet, 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, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waiterrorCount, handleCountgetBeanName, getComponentNamepublic void setRequestTimeout(long requestTimeout)
requestTimeout - the requestTimeout to setpublic void setRemoteTimeout(long remoteTimeout)
remoteTimeout - the remoteTimeout to setpublic void setRemoteTimeoutExpression(Expression remoteTimeoutExpression)
remoteTimeoutExpression - the remoteTimeoutExpression to setpublic void setIntegrationEvaluationContext(EvaluationContext evaluationContext)
protected void doInit()
doInit in class AbstractReplyProducingMessageHandlerpublic void setSecondChanceDelay(int secondChanceDelay)
ErrorMessage is
received. Default 2 seconds.secondChanceDelay - the delay.protected Object handleRequestMessage(Message<?> requestMessage)
AbstractReplyProducingMessageHandlerhandleRequestMessage in class AbstractReplyProducingMessageHandlerrequestMessage - The request message.null.public boolean onMessage(Message<?> message)
TcpListeneronMessage in interface TcpListenermessage - The message.public void setConnectionFactory(AbstractClientConnectionFactory connectionFactory)
public void addNewConnection(TcpConnection connection)
TcpSenderTcpListener, this
method is called each time a new connection is made.addNewConnection in interface TcpSenderconnection - The connection.public void removeDeadConnection(TcpConnection connection)
TcpSenderTcpListener, this
method is called each time a connection is closed.removeDeadConnection in interface TcpSenderconnection - The connection.public void setReplyChannel(MessageChannel replyChannel)
replyChannel - The reply channel.public void setReplyChannelName(String replyChannel)
replyChannel - The reply channel.public void setCloseStreamAfterSend(boolean closeStreamAfterSend)
ByteArrayRawSerializer.
Requires a single-use connection factory.closeStreamAfterSend - true to close.public String getComponentType()
IntegrationObjectSupportgetComponentType in interface NamedComponentgetComponentType in class MessageHandlerSupportprotected AbstractConnectionFactory getConnectionFactory()