Class AbstractWebSocketClient
java.lang.Object
org.springframework.web.socket.client.AbstractWebSocketClient
- All Implemented Interfaces:
WebSocketClient
- Direct Known Subclasses:
JettyWebSocketClient,StandardWebSocketClient
Abstract base class for
WebSocketClient implementations.- Since:
- 4.0
- Author:
- Rossen Stoyanchev
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoHandshake(WebSocketHandler webSocketHandler, String uriTemplate, Object... uriVars) final ListenableFuture<WebSocketSession>doHandshake(WebSocketHandler webSocketHandler, WebSocketHttpHeaders headers, URI uri) protected abstract ListenableFuture<WebSocketSession>doHandshakeInternal(WebSocketHandler webSocketHandler, HttpHeaders headers, URI uri, List<String> subProtocols, List<WebSocketExtension> extensions, Map<String, Object> attributes) Perform the actual handshake to establish a connection to the server.
-
Field Details
-
logger
-
-
Constructor Details
-
AbstractWebSocketClient
public AbstractWebSocketClient()
-
-
Method Details
-
doHandshake
public ListenableFuture<WebSocketSession> doHandshake(WebSocketHandler webSocketHandler, String uriTemplate, Object... uriVars) - Specified by:
doHandshakein interfaceWebSocketClient
-
doHandshake
public final ListenableFuture<WebSocketSession> doHandshake(WebSocketHandler webSocketHandler, @Nullable WebSocketHttpHeaders headers, URI uri) - Specified by:
doHandshakein interfaceWebSocketClient
-
assertUri
-
doHandshakeInternal
protected abstract ListenableFuture<WebSocketSession> doHandshakeInternal(WebSocketHandler webSocketHandler, HttpHeaders headers, URI uri, List<String> subProtocols, List<WebSocketExtension> extensions, Map<String, Object> attributes) Perform the actual handshake to establish a connection to the server.- Parameters:
webSocketHandler- the client-side handler for WebSocket messagesheaders- the HTTP headers to use for the handshake, with unwanted (forbidden) headers filtered out (nevernull)uri- the target URI for the handshake (nevernull)subProtocols- requested sub-protocols, or an empty listextensions- requested WebSocket extensions, or an empty listattributes- the attributes to associate with the WebSocketSession, i.e. viaWebSocketSession.getAttributes(); currently always an empty map.- Returns:
- the established WebSocket session wrapped in a ListenableFuture.
-