Spring Integration

org.springframework.integration.ip.tcp
Class TcpReceivingChannelAdapter

java.lang.Object
  extended by org.springframework.integration.context.IntegrationObjectSupport
      extended by org.springframework.integration.endpoint.AbstractEndpoint
          extended by org.springframework.integration.endpoint.MessageProducerSupport
              extended by org.springframework.integration.ip.tcp.TcpReceivingChannelAdapter
All Implemented Interfaces:
org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean, org.springframework.context.Lifecycle, org.springframework.context.Phased, org.springframework.context.SmartLifecycle, NamedComponent, MessageProducer, TrackableComponent, ClientModeCapable, TcpListener

public class TcpReceivingChannelAdapter
extends MessageProducerSupport
implements TcpListener, ClientModeCapable

Tcp inbound channel adapter using a TcpConnection to receive data - if the connection factory is a server factory, this Listener owns the connections. If it is a client factory, the sender owns the connection.

Since:
2.0
Author:
Gary Russell

Field Summary
 
Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport
logger
 
Constructor Summary
TcpReceivingChannelAdapter()
           
 
Method Summary
protected  void doStart()
          Takes no action by default.
protected  void doStop()
          Takes no action by default.
protected  ConnectionFactory getClientConnectionFactory()
           
 java.lang.String getComponentType()
          Subclasses may implement this method to provide component type information.
 long getRetryInterval()
           
protected  org.springframework.scheduling.TaskScheduler getScheduler()
           
protected  ConnectionFactory getServerConnectionFactory()
           
 boolean isClientMode()
           
 boolean isClientModeConnected()
           
 boolean isListening()
           
protected  void onInit()
          Subclasses may implement this for initialization logic.
 boolean onMessage(Message<?> message)
          Called by a TCPConnection when a new message arrives.
 void retryConnection()
          Immediately attempt to establish the connection.
 void setClientMode(boolean isClientMode)
           
 void setConnectionFactory(AbstractConnectionFactory connectionFactory)
          Sets the client or server connection factory; for this (an inbound adapter), if the factory is a client connection factory, the sockets are owned by a sending channel adapter and this adapter is used to receive replies.
 void setRetryInterval(long retryInterval)
           
 void setScheduler(org.springframework.scheduling.TaskScheduler scheduler)
           
 
Methods inherited from class org.springframework.integration.endpoint.MessageProducerSupport
sendMessage, setErrorChannel, setOutputChannel, setSendTimeout, setShouldTrack
 
Methods inherited from class org.springframework.integration.endpoint.AbstractEndpoint
getPhase, isAutoStartup, isRunning, setAutoStartup, setPhase, setTaskScheduler, start, stop, stop
 
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, 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.context.NamedComponent
getComponentName
 

Constructor Detail

TcpReceivingChannelAdapter

public TcpReceivingChannelAdapter()
Method Detail

onMessage

public boolean onMessage(Message<?> message)
Description copied from interface: TcpListener
Called by a TCPConnection when a new message arrives.

Specified by:
onMessage in interface TcpListener
Parameters:
message - The message.
Returns:
true if the message was intercepted

onInit

protected void onInit()
Description copied from class: IntegrationObjectSupport
Subclasses may implement this for initialization logic.

Overrides:
onInit in class MessageProducerSupport

doStart

protected void doStart()
Description copied from class: MessageProducerSupport
Takes no action by default. Subclasses may override this if they need lifecycle-managed behavior.

Overrides:
doStart in class MessageProducerSupport

doStop

protected void doStop()
Description copied from class: MessageProducerSupport
Takes no action by default. Subclasses may override this if they need lifecycle-managed behavior.

Overrides:
doStop in class MessageProducerSupport

setConnectionFactory

public void setConnectionFactory(AbstractConnectionFactory connectionFactory)
Sets the client or server connection factory; for this (an inbound adapter), if the factory is a client connection factory, the sockets are owned by a sending channel adapter and this adapter is used to receive replies.

Parameters:
connectionFactory - the connectionFactory to set

isListening

public boolean isListening()

getComponentType

public java.lang.String getComponentType()
Description copied from class: IntegrationObjectSupport
Subclasses may implement this method to provide component type information.

Specified by:
getComponentType in interface NamedComponent
Overrides:
getComponentType in class IntegrationObjectSupport

getClientConnectionFactory

protected ConnectionFactory getClientConnectionFactory()
Returns:
the clientConnectionFactory

getServerConnectionFactory

protected ConnectionFactory getServerConnectionFactory()
Returns:
the serverConnectionFactory

isClientMode

public boolean isClientMode()
Specified by:
isClientMode in interface ClientModeCapable
Returns:
the isClientMode

setClientMode

public void setClientMode(boolean isClientMode)
Parameters:
isClientMode - the isClientMode to set

getScheduler

protected org.springframework.scheduling.TaskScheduler getScheduler()
Returns:
the scheduler

setScheduler

public void setScheduler(org.springframework.scheduling.TaskScheduler scheduler)
Parameters:
scheduler - the scheduler to set

getRetryInterval

public long getRetryInterval()
Returns:
the retryInterval

setRetryInterval

public void setRetryInterval(long retryInterval)
Parameters:
retryInterval - the retryInterval to set

isClientModeConnected

public boolean isClientModeConnected()
Specified by:
isClientModeConnected in interface ClientModeCapable
Returns:
true if the endpoint is running in client mode.

retryConnection

public void retryConnection()
Description copied from interface: ClientModeCapable
Immediately attempt to establish the connection.

Specified by:
retryConnection in interface ClientModeCapable

Spring Integration