org.springframework.web.reactive.socket.client

## Class StandardWebSocketClient

- java.lang.Object
- - org.springframework.web.reactive.socket.client.StandardWebSocketClient

All Implemented Interfaces:
  WebSocketClient

Direct Known Subclasses:
  TomcatWebSocketClient

    public class StandardWebSocketClient
    extends Object
    implements WebSocketClient

`WebSocketClient` implementation for use with the Java WebSocket API.

Since:
  5.0
Author:
  Violeta Georgieva, Rossen Stoyanchev
See Also:
  https://www.jcp.org/en/jsr/detail?id=356

### Constructor Summary

Constructors
Constructor and Description
`StandardWebSocketClient()` Default constructor that calls `ContainerProvider.getWebSocketContainer()` to obtain a (new) `WebSocketContainer` instance.
`StandardWebSocketClient(WebSocketContainer webSocketContainer)` Constructor accepting an existing `WebSocketContainer` instance.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected org.springframework.core.io.buffer.DataBufferFactory` `bufferFactory()`
`protected StandardWebSocketSession` `createWebSocketSession(Session session, HandshakeInfo info, reactor.core.publisher.MonoProcessor<Void> completion)`
`reactor.core.publisher.Mono<Void>` `execute(URI url, org.springframework.http.HttpHeaders headers, WebSocketHandler handler)` A variant of `WebSocketClient.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.
`WebSocketContainer` `getWebSocketContainer()` Return the configured `WebSocketContainer` to use.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### StandardWebSocketClient

    public StandardWebSocketClient()

Default constructor that calls `ContainerProvider.getWebSocketContainer()` to obtain a (new) `WebSocketContainer` instance.

#### StandardWebSocketClient

    public StandardWebSocketClient(WebSocketContainer webSocketContainer)

Constructor accepting an existing `WebSocketContainer` instance.

Parameters:
  `webSocketContainer` - a web socket container

### Method Detail

#### getWebSocketContainer

    public WebSocketContainer getWebSocketContainer()

Return the configured `WebSocketContainer` to use.

#### execute

    public reactor.core.publisher.Mono<Void> execute(URI url,
                                                     WebSocketHandler handler)

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 interface `WebSocketClient`
Parameters:
  `url` - the handshake url
  `handler` - 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 of `WebSocketClient.execute(URI, WebSocketHandler)` with custom headers.

Specified by:
  `execute` in interface `WebSocketClient`
Parameters:
  `url` - the handshake url
  `headers` - custom headers for the handshake request
  `handler` - the handler of the WebSocket session
Returns:
  completion `Mono<Void>` to indicate the outcome of the WebSocket session handling.

#### createWebSocketSession

    protected StandardWebSocketSession createWebSocketSession(Session session,
                                                              HandshakeInfo info,
                                                              reactor.core.publisher.MonoProcessor<Void> completion)

#### bufferFactory

    protected org.springframework.core.io.buffer.DataBufferFactory bufferFactory()