Class TcpReceivingChannelAdapter

All Implemented Interfaces:
Aware, BeanFactoryAware, BeanNameAware, DisposableBean, InitializingBean, SmartInitializingSingleton, ApplicationContextAware, Lifecycle, Phased, SmartLifecycle, ComponentSourceAware, ExpressionCapable, OrderlyShutdownCapable, MessageProducer, IntegrationPattern, ClientModeCapable, TcpListener, NamedComponent, IntegrationInboundManagement, IntegrationManagement, ManageableLifecycle, ManageableSmartLifecycle, TrackableComponent

public class TcpReceivingChannelAdapter extends MessageProducerSupport implements TcpListener, ClientModeCapable, OrderlyShutdownCapable
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, Artem Bilan
  • Constructor Details

    • TcpReceivingChannelAdapter

      public TcpReceivingChannelAdapter()
  • Method Details

    • 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
      Take no action by default. Subclasses may override this if they need lifecycle-managed behavior. Protected by 'lifecycleLock'.
      Overrides:
      doStart in class MessageProducerSupport
    • doStop

      protected void doStop()
      Description copied from class: MessageProducerSupport
      Take 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 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
    • 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
    • beforeShutdown

      public int beforeShutdown()
      Description copied from interface: OrderlyShutdownCapable
      Called before shutdown begins. Implementations should stop accepting new messages. Can optionally return the number of active messages in process.
      Specified by:
      beforeShutdown in interface OrderlyShutdownCapable
      Returns:
      The number of active messages if available.
    • afterShutdown

      public int afterShutdown()
      Description copied from interface: OrderlyShutdownCapable
      Called after normal shutdown of schedulers, executors etc, and after the shutdown delay has elapsed, but before any forced shutdown of any remaining active scheduler/executor threads.Can optionally return the number of active messages still in process.
      Specified by:
      afterShutdown in interface OrderlyShutdownCapable
      Returns:
      The number of active messages if available.