Interface WebSocketSession
- All Known Implementing Classes:
AbstractListenerWebSocketSession, AbstractWebSocketSession, JettyWebSocketSession, NettyWebSocketSessionSupport, ReactorNettyWebSocketSession, StandardWebSocketSession, TomcatWebSocketSession
public interface WebSocketSession
Represents a WebSocket session.
Use session.receive() to compose on
the inbound message stream, and session.send(publisher) to provide the outbound message stream.
- Since:
- 5.0
- Author:
- Rossen Stoyanchev
-
Method Summary
Modifier and TypeMethodDescriptionbinaryMessage(Function<DataBufferFactory, DataBuffer> payloadFactory) Factory method to create a binary WebSocketMessage using thebufferFactory()for the session.Return aDataBufferFactory to create message payloads.close()Close the WebSocket session withCloseStatus.NORMAL.close(CloseStatus status) Close the WebSocket session with the given status.Provides access to theCloseStatuswith which the session is closed either locally or remotely, or completes empty if the session ended without a status.Return the map with attributes associated with the WebSocket session.Return information from the handshake request.getId()Return the id for the session.booleanisOpen()Whether the underlying connection is open.pingMessage(Function<DataBufferFactory, DataBuffer> payloadFactory) Factory method to create a ping WebSocketMessage using thebufferFactory()for the session.pongMessage(Function<DataBufferFactory, DataBuffer> payloadFactory) Factory method to create a pong WebSocketMessage using thebufferFactory()for the session.receive()Provides access to the stream of inbound messages.send(Publisher<WebSocketMessage> messages) Give a source of outgoing messages, write the messages and return aMono<Void>that completes when the source completes and writing is done.textMessage(String payload) Factory method to create a textWebSocketMessageusing thebufferFactory()for the session.
-
Method Details
-
getId
String getId()Return the id for the session. -
getHandshakeInfo
HandshakeInfo getHandshakeInfo()Return information from the handshake request. -
bufferFactory
DataBufferFactory bufferFactory()Return aDataBufferFactory to create message payloads.- Returns:
- the buffer factory for the session
-
getAttributes
-
receive
Flux<WebSocketMessage> receive()Provides access to the stream of inbound messages.This stream receives a completion or error signal when the connection is closed. In a typical
WebSocketHandlerimplementation this stream is composed into the overall processing flow, so that when the connection is closed, handling will end.See the class-level doc of
WebSocketHandlerand the reference for more details and examples of how to handle the session. -
send
Give a source of outgoing messages, write the messages and return aMono<Void>that completes when the source completes and writing is done.See the class-level doc of
WebSocketHandlerand the reference for more details and examples of how to handle the session. -
isOpen
boolean isOpen()Whether the underlying connection is open.- Since:
- 5.3.1
-
close
Close the WebSocket session withCloseStatus.NORMAL. -
close
Close the WebSocket session with the given status.- Parameters:
status- the close status
-
closeStatus
Mono<CloseStatus> closeStatus()Provides access to theCloseStatuswith which the session is closed either locally or remotely, or completes empty if the session ended without a status.- Since:
- 5.3
-
textMessage
Factory method to create a textWebSocketMessageusing thebufferFactory()for the session. -
binaryMessage
Factory method to create a binary WebSocketMessage using thebufferFactory()for the session. -
pingMessage
Factory method to create a ping WebSocketMessage using thebufferFactory()for the session. -
pongMessage
Factory method to create a pong WebSocketMessage using thebufferFactory()for the session.
-