Class ServerRSocketConnector
java.lang.Object
org.springframework.integration.rsocket.AbstractRSocketConnector
org.springframework.integration.rsocket.ServerRSocketConnector
- All Implemented Interfaces:
 Aware,DisposableBean,InitializingBean,SmartInitializingSingleton,ApplicationContextAware,ApplicationEventPublisherAware,Lifecycle,Phased,SmartLifecycle
public class ServerRSocketConnector extends AbstractRSocketConnector implements ApplicationEventPublisherAware
A server 
AbstractRSocketConnector extension to accept and manage client RSocket connections.- Since:
 - 5.2
 - Author:
 - Artem Bilan
 - See Also:
 RSocketConnector
- 
Field Summary
Fields inherited from class org.springframework.integration.rsocket.AbstractRSocketConnector
rSocketMessageHandler - 
Constructor Summary
Constructors Constructor Description ServerRSocketConnector(io.rsocket.transport.ServerTransport<io.rsocket.transport.netty.server.CloseableChannel> serverTransport)Instantiate a server connector based on the providedServerTransport.ServerRSocketConnector(String bindAddress, int port)Instantiate a server connector based on theTcpServerTransport.ServerRSocketConnector(ServerRSocketMessageHandler serverRSocketMessageHandler)Instantiate a server connector based on a providedServerRSocketMessageHandlerwith an assumption that RSocket server is created externally as well.ServerRSocketConnector(reactor.netty.http.server.HttpServer server)Instantiate a server connector based on theWebsocketServerTransport. - 
Method Summary
Modifier and Type Method Description voidafterPropertiesSet()voidafterSingletonsInstantiated()voiddestroy()protected voiddoStart()reactor.core.publisher.Mono<Integer>getBoundPort()Return the port this internal server is bound or emptyMono.RSocketRequestergetClientRSocketRequester(Object key)Return connectedRSocketRequestermapped by key or null.Map<Object,RSocketRequester>getClientRSocketRequesters()Return connectedRSocketRequesters mapped by keys.voidsetApplicationContext(ApplicationContext applicationContext)voidsetApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)voidsetClientRSocketKeyStrategy(BiFunction<Map<String,Object>,DataBuffer,Object> clientRSocketKeyStrategy)Configure a strategy to determine a key for the clientRSocketRequesterconnected.voidsetDataMimeType(MimeType dataMimeType)Configure aMimeTypefor data exchanging.voidsetMetadataMimeType(MimeType metadataMimeType)Configure aMimeTypefor metadata exchanging.voidsetRSocketStrategies(RSocketStrategies rsocketStrategies)Configure aRSocketStrategiesfor data encoding/decoding.voidsetServerConfigurer(Consumer<io.rsocket.core.RSocketServer> serverConfigurer)Provide aConsumerto configure theRSocketServer.Methods inherited from class org.springframework.integration.rsocket.AbstractRSocketConnector
addEndpoint, getDataMimeType, getMetadataMimeType, getRSocketStrategies, isAutoStartup, isRunning, setAutoStartup, setEndpoints, start, stop 
- 
Constructor Details
- 
ServerRSocketConnector
Instantiate a server connector based on a providedServerRSocketMessageHandlerwith an assumption that RSocket server is created externally as well. All other options are ignored in favor of providedServerRSocketMessageHandlerand its external RSocket server configuration.- Parameters:
 serverRSocketMessageHandler- theServerRSocketMessageHandlerto rely on.- Since:
 - 5.2.1
 
 - 
ServerRSocketConnector
Instantiate a server connector based on theTcpServerTransport.- Parameters:
 bindAddress- the local address to bind TCP server onto.port- the local TCP port to bind.- See Also:
 ServerRSocketConnector(ServerTransport)
 - 
ServerRSocketConnector
public ServerRSocketConnector(reactor.netty.http.server.HttpServer server)Instantiate a server connector based on theWebsocketServerTransport.- Parameters:
 server- theHttpServerto use.- See Also:
 ServerRSocketConnector(ServerTransport)
 - 
ServerRSocketConnector
public ServerRSocketConnector(io.rsocket.transport.ServerTransport<io.rsocket.transport.netty.server.CloseableChannel> serverTransport)Instantiate a server connector based on the providedServerTransport.- Parameters:
 serverTransport- theServerTransportto make server based on.
 
 - 
 - 
Method Details
- 
setServerConfigurer
Provide aConsumerto configure theRSocketServer.- Parameters:
 serverConfigurer- theConsumerto configure theRSocketServer.- Since:
 - 5.2.6
 
 - 
setClientRSocketKeyStrategy
public void setClientRSocketKeyStrategy(BiFunction<Map<String,Object>,DataBuffer,Object> clientRSocketKeyStrategy)Configure a strategy to determine a key for the clientRSocketRequesterconnected. Defaults to thedestinationto which a client is connected.- Parameters:
 clientRSocketKeyStrategy- theBiFunctionto determine a key for clientRSocketRequesters.
 - 
setDataMimeType
Description copied from class:AbstractRSocketConnectorConfigure aMimeTypefor data exchanging.- Overrides:
 setDataMimeTypein classAbstractRSocketConnector- Parameters:
 dataMimeType- theMimeTypeto use.
 - 
setMetadataMimeType
Description copied from class:AbstractRSocketConnectorConfigure aMimeTypefor metadata exchanging. Default to"message/x.rsocket.composite-metadata.v0".- Overrides:
 setMetadataMimeTypein classAbstractRSocketConnector- Parameters:
 metadataMimeType- theMimeTypeto use.
 - 
setRSocketStrategies
Description copied from class:AbstractRSocketConnectorConfigure aRSocketStrategiesfor data encoding/decoding.- Overrides:
 setRSocketStrategiesin classAbstractRSocketConnector- Parameters:
 rsocketStrategies- theRSocketStrategiesto use.
 - 
setApplicationContext
- Specified by:
 setApplicationContextin interfaceApplicationContextAware- Overrides:
 setApplicationContextin classAbstractRSocketConnector- Throws:
 BeansException
 - 
setApplicationEventPublisher
- Specified by:
 setApplicationEventPublisherin interfaceApplicationEventPublisherAware
 - 
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
 afterPropertiesSetin interfaceInitializingBean- Overrides:
 afterPropertiesSetin classAbstractRSocketConnector
 - 
getClientRSocketRequesters
Return connectedRSocketRequesters mapped by keys.- Returns:
 - connected 
RSocketRequesters mapped by keys. - See Also:
 ServerRSocketMessageHandler.getClientRSocketRequesters()
 - 
getClientRSocketRequester
Return connectedRSocketRequestermapped by key or null.- Parameters:
 key- the mapping key.- Returns:
 - the 
RSocketRequesteror null. - See Also:
 ServerRSocketMessageHandler.getClientRSocketRequester(Object)
 - 
getBoundPort
Return the port this internal server is bound or emptyMono.- Returns:
 - the port this internal server is bound or empty 
Monoif an external server is used. 
 - 
doStart
protected void doStart()- Specified by:
 doStartin classAbstractRSocketConnector
 - 
destroy
public void destroy()- Specified by:
 destroyin interfaceDisposableBean
 - 
afterSingletonsInstantiated
public void afterSingletonsInstantiated()- Specified by:
 afterSingletonsInstantiatedin interfaceSmartInitializingSingleton- Overrides:
 afterSingletonsInstantiatedin classAbstractRSocketConnector
 
 -