Class TcpNetServerConnectionFactory
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.ip.tcp.connection.AbstractConnectionFactory
org.springframework.integration.ip.tcp.connection.AbstractServerConnectionFactory
org.springframework.integration.ip.tcp.connection.TcpNetServerConnectionFactory
- All Implemented Interfaces:
- Runnable,- Aware,- BeanFactoryAware,- BeanNameAware,- InitializingBean,- ApplicationContextAware,- ApplicationEventPublisherAware,- Lifecycle,- ExpressionCapable,- OrderlyShutdownCapable,- ConnectionFactory,- TcpServerConnectionFactory,- NamedComponent,- ManageableLifecycle,- SchedulingAwareRunnable
Implements a server connection factory that produces 
TcpNetConnections using
 a ServerSocket. Must have a TcpListener registered.- Since:
- 2.0
- Author:
- Gary Russell, Artem Bilan, Mário Dias
- 
Field SummaryFields inherited from class org.springframework.integration.ip.tcp.connection.AbstractConnectionFactoryDEFAULT_REPLY_TIMEOUT, lifecycleMonitorFields inherited from class org.springframework.integration.context.IntegrationObjectSupportEXPRESSION_PARSER, logger
- 
Constructor SummaryConstructorsConstructorDescriptionTcpNetServerConnectionFactory(int port) Listens for incoming connections on the port.
- 
Method SummaryModifier and TypeMethodDescriptionprotected ServerSocketcreateServerSocket(int port, int backlog, InetAddress whichNic) Create a newServerSocket.Subclasses may implement this method to provide component type information.intgetPort()Return the port this server is listening on.protected ServerSocketReturn theSocketAddressthat the underlyingServerSocketis bound to.protected TcpSocketFactorySupportvoidrun()If no listener registers, exits.voidsetTcpNetConnectionSupport(TcpNetConnectionSupport connectionSupport) Set theTcpNetConnectionSupportto use to create connection objects.voidsetTcpSocketFactorySupport(TcpSocketFactorySupport tcpSocketFactorySupport) Set theTcpSocketFactorySupportused to create server sockets.voidstop()Stops the server.Methods inherited from class org.springframework.integration.ip.tcp.connection.AbstractServerConnectionFactoryafterShutdown, beforeShutdown, getBacklog, getConnection, getLocalAddress, initializeConnection, isListening, isLongLived, isShuttingDown, postProcessServerSocket, publishServerExceptionEvent, publishServerListeningEvent, setBacklog, setListening, setLocalAddress, startMethods inherited from class org.springframework.integration.ip.tcp.connection.AbstractConnectionFactoryaddConnection, checkActive, closeConnection, delayRead, doAccept, getApplicationEventPublisher, getDelayedReads, getDeserializer, getHost, getLifecycleMonitor, getListener, getMapper, getOpenConnectionIds, getReadDelay, getSender, getSenders, getSerializer, getSoLinger, getSoReceiveBufferSize, getSoSendBufferSize, getSoTimeout, getSoTrafficClass, getSslHandshakeTimeout, getTaskExecutor, getTcpSocketSupport, harvestClosedConnections, isActive, isLookupHost, isRunning, isSingleUse, isSoKeepAlive, isSoTcpNoDelay, onInit, processNioSelections, registerListener, registerSender, setActive, setApplicationEventPublisher, setDeserializer, setHost, setInterceptorFactoryChain, setLeaveOpen, setLookupHost, setMapper, setNioHarvestInterval, setPort, setReadDelay, setSerializer, setSingleUse, setSocketAttributes, setSoKeepAlive, setSoLinger, setSoReceiveBufferSize, setSoSendBufferSize, setSoTcpNoDelay, setSoTimeout, setSoTrafficClass, setSslHandshakeTimeout, setTaskExecutor, setTcpSocketSupport, toString, unregisterSender, wrapConnectionMethods inherited from class org.springframework.integration.context.IntegrationObjectSupportafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskSchedulerMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.scheduling.SchedulingAwareRunnablegetQualifier
- 
Constructor Details- 
TcpNetServerConnectionFactorypublic TcpNetServerConnectionFactory(int port) Listens for incoming connections on the port.- Parameters:
- port- The port.
 
 
- 
- 
Method Details- 
getComponentTypeDescription copied from class:IntegrationObjectSupportSubclasses may implement this method to provide component type information.- Specified by:
- getComponentTypein interface- NamedComponent
- Overrides:
- getComponentTypein class- IntegrationObjectSupport
 
- 
getPortpublic int getPort()Description copied from interface:TcpServerConnectionFactoryReturn the port this server is listening on. If the factory is configured to listen on a random port (0), this will return the actual port after the factory is started. It may return the previous value if the factory is stopped.- Specified by:
- getPortin interface- TcpServerConnectionFactory
- Overrides:
- getPortin class- AbstractConnectionFactory
- Returns:
- the port
 
- 
getServerSocketAddressDescription copied from interface:TcpServerConnectionFactoryReturn theSocketAddressthat the underlyingServerSocketis bound to.- Specified by:
- getServerSocketAddressin interface- TcpServerConnectionFactory
- Overrides:
- getServerSocketAddressin class- AbstractServerConnectionFactory
- Returns:
- the socket address.
 
- 
setTcpSocketFactorySupportSet theTcpSocketFactorySupportused to create server sockets.- Parameters:
- tcpSocketFactorySupport- the- TcpSocketFactorySupport
 
- 
setTcpNetConnectionSupportSet theTcpNetConnectionSupportto use to create connection objects.- Parameters:
- connectionSupport- the connection support.
- Since:
- 5.0
 
- 
runpublic void run()If no listener registers, exits. Accepts incoming connections and creates TcpConnections for each new connection. Invokes {AbstractServerConnectionFactory.initializeConnection(TcpConnectionSupport, Socket)and executes the connectionRunnable.run()using the task executor. I/O errors on the server socket/channel are logged and the factory is stopped.
- 
createServerSocketprotected ServerSocket createServerSocket(int port, int backlog, @Nullable InetAddress whichNic) throws IOException Create a newServerSocket. This default implementation uses the defaultServerSocketFactory. Override to use some other mechanism- Parameters:
- port- The port.
- backlog- The server socket backlog.
- whichNic- An InetAddress if binding to a specific network interface. Set to null when configured to bind to all interfaces.
- Returns:
- The Server Socket.
- Throws:
- IOException- Any IOException.
 
- 
stoppublic void stop()Description copied from class:AbstractConnectionFactoryStops the server.- Specified by:
- stopin interface- Lifecycle
- Specified by:
- stopin interface- ManageableLifecycle
- Overrides:
- stopin class- AbstractConnectionFactory
 
- 
getServerSocket- Returns:
- the serverSocket
 
- 
getTcpSocketFactorySupport
 
-