Class ReactorNetty2TcpClient<P>
java.lang.Object
org.springframework.messaging.tcp.reactor.ReactorNetty2TcpClient<P>
- Type Parameters:
P- the type of payload for in and outbound messages
- All Implemented Interfaces:
TcpOperations<P>
Reactor Netty based implementation of
TcpOperations.
This class is based on ReactorNettyTcpClient.
- Since:
- 6.0
- Author:
- Rossen Stoyanchev
-
Constructor Summary
ConstructorsConstructorDescriptionReactorNetty2TcpClient(String host, int port, TcpMessageCodec<P> codec) Simple constructor with the host and port to use to connect to.ReactorNetty2TcpClient(Function<reactor.netty5.tcp.TcpClient, reactor.netty5.tcp.TcpClient> clientConfigurer, TcpMessageCodec<P> codec) A variant ofReactorNetty2TcpClient(String, int, TcpMessageCodec)that still manages the lifecycle of theTcpClientand underlying resources, but allows for direct configuration of other properties of the client through aFunction<TcpClient, TcpClient>.ReactorNetty2TcpClient(reactor.netty5.tcp.TcpClient tcpClient, TcpMessageCodec<P> codec) Constructor with an externally createdTcpClientinstance whose lifecycle is expected to be managed externally. -
Method Summary
Modifier and TypeMethodDescriptionconnectAsync(TcpConnectionHandler<P> handler) Open a new connection.connectAsync(TcpConnectionHandler<P> handler, ReconnectStrategy strategy) Open a new connection and a strategy for reconnecting if the connection fails.protected reactor.netty5.tcp.TcpClientextendTcpClient(reactor.netty5.tcp.TcpClient tcpClient, TcpConnectionHandler<P> handler) Provides an opportunity to initialize theTcpClientfor the givenTcpConnectionHandlerwhich may implement sub-interfaces such asStompTcpConnectionHandlerthat expose further information.Return the currently configured Logger.voidSet an alternative logger to use than the one based on the class name.Shut down and close any open connections.toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.messaging.tcp.TcpOperations
connect, connect, shutdown
-
Constructor Details
-
ReactorNetty2TcpClient
Simple constructor with the host and port to use to connect to.This constructor manages the lifecycle of the
TcpClientand underlying resources such asConnectionProvider,LoopResources, andChannelGroup.For full control over the initialization and lifecycle of the TcpClient, use
ReactorNetty2TcpClient(TcpClient, TcpMessageCodec).- Parameters:
host- the host to connect toport- the port to connect tocodec- for encoding and decoding the input/output byte streams- See Also:
-
ReactorNetty2TcpClient
public ReactorNetty2TcpClient(Function<reactor.netty5.tcp.TcpClient, reactor.netty5.tcp.TcpClient> clientConfigurer, TcpMessageCodec<P> codec) A variant ofReactorNetty2TcpClient(String, int, TcpMessageCodec)that still manages the lifecycle of theTcpClientand underlying resources, but allows for direct configuration of other properties of the client through aFunction<TcpClient, TcpClient>.- Parameters:
clientConfigurer- the configurer functioncodec- for encoding and decoding the input/output byte streams- Since:
- 5.1.3
- See Also:
-
ReactorNetty2TcpClient
Constructor with an externally createdTcpClientinstance whose lifecycle is expected to be managed externally.- Parameters:
tcpClient- the TcpClient instance to usecodec- for encoding and decoding the input/output byte streams- See Also:
-
-
Method Details
-
setLogger
Set an alternative logger to use than the one based on the class name.- Parameters:
logger- the logger to use- Since:
- 5.1
-
getLogger
Return the currently configured Logger.- Since:
- 5.1
-
connectAsync
Description copied from interface:TcpOperationsOpen a new connection.- Specified by:
connectAsyncin interfaceTcpOperations<P>- Parameters:
handler- a handler to manage the connection- Returns:
- a CompletableFuture that can be used to determine when and if the connection is successfully established
-
extendTcpClient
protected reactor.netty5.tcp.TcpClient extendTcpClient(reactor.netty5.tcp.TcpClient tcpClient, TcpConnectionHandler<P> handler) Provides an opportunity to initialize theTcpClientfor the givenTcpConnectionHandlerwhich may implement sub-interfaces such asStompTcpConnectionHandlerthat expose further information.- Parameters:
tcpClient- the candidate TcpClienthandler- the handler for the TCP connection- Returns:
- the same handler or an updated instance
-
connectAsync
public CompletableFuture<Void> connectAsync(TcpConnectionHandler<P> handler, ReconnectStrategy strategy) Description copied from interface:TcpOperationsOpen a new connection and a strategy for reconnecting if the connection fails.- Specified by:
connectAsyncin interfaceTcpOperations<P>- Parameters:
handler- a handler to manage the connectionstrategy- a strategy for reconnecting- Returns:
- a CompletableFuture that can be used to determine when and if the initial connection is successfully established
-
shutdownAsync
Description copied from interface:TcpOperationsShut down and close any open connections.- Specified by:
shutdownAsyncin interfaceTcpOperations<P>- Returns:
- a CompletableFuture that can be used to determine when and if the connection is successfully closed
-
toString
-