Class JettyWebSocketClient
java.lang.Object
org.springframework.web.reactive.socket.client.JettyWebSocketClient
- All Implemented Interfaces:
org.springframework.context.Lifecycle
,WebSocketClient
public class JettyWebSocketClient
extends Object
implements WebSocketClient, org.springframework.context.Lifecycle
A
WebSocketClient
implementation for use with Jetty
WebSocketClient
.
Note: the Jetty WebSocketClient
requires
lifecycle management and must be started and stopped. This is automatically
managed when this class is declared as a Spring bean and created with the
default constructor. See constructor notes for more details.
- Since:
- 5.0
- Author:
- Violeta Georgieva, Rossen Stoyanchev, Juergen Hoeller
-
Constructor Summary
ConstructorDescriptionDefault constructor that creates and manages an instance of a JettyWebSocketClient
.JettyWebSocketClient
(org.eclipse.jetty.websocket.client.WebSocketClient jettyClient) Constructor that accepts an existing instance of a JettyWebSocketClient
. -
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Mono<Void>
execute
(URI url, org.springframework.http.HttpHeaders headers, WebSocketHandler handler) A variant ofWebSocketClient.execute(URI, WebSocketHandler)
with custom headers.reactor.core.publisher.Mono<Void>
execute
(URI url, WebSocketHandler handler) Execute a handshake request to the given url and handle the resulting WebSocket session with the given handler.org.eclipse.jetty.websocket.client.WebSocketClient
Return the underlying JettyWebSocketClient
.boolean
void
start()
void
stop()
-
Constructor Details
-
JettyWebSocketClient
public JettyWebSocketClient()Default constructor that creates and manages an instance of a JettyWebSocketClient
. The instance can be obtained withgetJettyClient()
for further configuration.Note: When this constructor is used
Lifecycle
methods of this class are delegated to the JettyWebSocketClient
. -
JettyWebSocketClient
public JettyWebSocketClient(org.eclipse.jetty.websocket.client.WebSocketClient jettyClient) Constructor that accepts an existing instance of a JettyWebSocketClient
.Note: Use of this constructor implies the Jetty
WebSocketClient
is externally managed and henceLifecycle
methods of this class are not delegated to it.
-
-
Method Details
-
getJettyClient
public org.eclipse.jetty.websocket.client.WebSocketClient getJettyClient()Return the underlying JettyWebSocketClient
. -
start
public void start()- Specified by:
start
in interfaceorg.springframework.context.Lifecycle
-
stop
public void stop()- Specified by:
stop
in interfaceorg.springframework.context.Lifecycle
-
isRunning
public boolean isRunning()- Specified by:
isRunning
in interfaceorg.springframework.context.Lifecycle
-
execute
Description copied from interface:WebSocketClient
Execute a handshake request to the given url and handle the resulting WebSocket session with the given handler.- Specified by:
execute
in interfaceWebSocketClient
- Parameters:
url
- the handshake urlhandler
- the handler of the WebSocket session- Returns:
- completion
Mono<Void>
to indicate the outcome of the WebSocket session handling.
-
execute
public reactor.core.publisher.Mono<Void> execute(URI url, org.springframework.http.HttpHeaders headers, WebSocketHandler handler) Description copied from interface:WebSocketClient
A variant ofWebSocketClient.execute(URI, WebSocketHandler)
with custom headers.- Specified by:
execute
in interfaceWebSocketClient
- Parameters:
url
- the handshake urlheaders
- custom headers for the handshake requesthandler
- the handler of the WebSocket session- Returns:
- completion
Mono<Void>
to indicate the outcome of the WebSocket session handling.
-