Class AbstractWebSocketSession<T>
java.lang.Object
org.springframework.web.reactive.socket.adapter.AbstractWebSocketSession<T>
- Type Parameters:
- T- the native delegate type
- All Implemented Interfaces:
- WebSocketSession
- Direct Known Subclasses:
- AbstractListenerWebSocketSession,- Netty5WebSocketSessionSupport,- NettyWebSocketSessionSupport
Convenient base class for 
WebSocketSession implementations that
 holds common fields and exposes accessors. Also implements the
 WebSocketMessage factory methods.- Since:
- 5.0
- Author:
- Rossen Stoyanchev
- 
Field SummaryFields
- 
Constructor SummaryConstructorsModifierConstructorDescriptionprotectedAbstractWebSocketSession(T delegate, String id, HandshakeInfo info, DataBufferFactory bufferFactory) Create a new WebSocket session.
- 
Method SummaryModifier and TypeMethodDescriptionbinaryMessage(Function<DataBufferFactory, DataBuffer> payloadFactory) Factory method to create a binary WebSocketMessage using theWebSocketSession.bufferFactory()for the session.Return aDataBufferFactory to create message payloads.Return the map with attributes associated with the WebSocket session.protected TReturn information from the handshake request.getId()Return the id for the session.protected StringpingMessage(Function<DataBufferFactory, DataBuffer> payloadFactory) Factory method to create a ping WebSocketMessage using theWebSocketSession.bufferFactory()for the session.pongMessage(Function<DataBufferFactory, DataBuffer> payloadFactory) Factory method to create a pong WebSocketMessage using theWebSocketSession.bufferFactory()for the session.abstract reactor.core.publisher.Flux<WebSocketMessage>receive()Provides access to the stream of inbound messages.abstract reactor.core.publisher.Mono<Void>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 theWebSocketSession.bufferFactory()for the session.toString()Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.web.reactive.socket.WebSocketSessionclose, close, closeStatus, isOpen
- 
Field Details- 
logger
 
- 
- 
Constructor Details- 
AbstractWebSocketSessionprotected AbstractWebSocketSession(T delegate, String id, HandshakeInfo info, DataBufferFactory bufferFactory) Create a new WebSocket session.
 
- 
- 
Method Details- 
getDelegate
- 
getIdDescription copied from interface:WebSocketSessionReturn the id for the session.- Specified by:
- getIdin interface- WebSocketSession
 
- 
getHandshakeInfoDescription copied from interface:WebSocketSessionReturn information from the handshake request.- Specified by:
- getHandshakeInfoin interface- WebSocketSession
 
- 
bufferFactoryDescription copied from interface:WebSocketSessionReturn aDataBufferFactory to create message payloads.- Specified by:
- bufferFactoryin interface- WebSocketSession
- Returns:
- the buffer factory for the session
 
- 
getAttributesDescription copied from interface:WebSocketSessionReturn the map with attributes associated with the WebSocket session.- Specified by:
- getAttributesin interface- WebSocketSession
- Returns:
- a Map with the session attributes (never null)
 
- 
getLogPrefix
- 
receiveDescription copied from interface:WebSocketSessionProvides 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.- Specified by:
- receivein interface- WebSocketSession
 
- 
sendDescription copied from interface:WebSocketSessionGive 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.- Specified by:
- sendin interface- WebSocketSession
 
- 
textMessageDescription copied from interface:WebSocketSessionFactory method to create a textWebSocketMessageusing theWebSocketSession.bufferFactory()for the session.- Specified by:
- textMessagein interface- WebSocketSession
 
- 
binaryMessageDescription copied from interface:WebSocketSessionFactory method to create a binary WebSocketMessage using theWebSocketSession.bufferFactory()for the session.- Specified by:
- binaryMessagein interface- WebSocketSession
 
- 
pingMessageDescription copied from interface:WebSocketSessionFactory method to create a ping WebSocketMessage using theWebSocketSession.bufferFactory()for the session.- Specified by:
- pingMessagein interface- WebSocketSession
 
- 
pongMessageDescription copied from interface:WebSocketSessionFactory method to create a pong WebSocketMessage using theWebSocketSession.bufferFactory()for the session.- Specified by:
- pongMessagein interface- WebSocketSession
 
- 
toString
 
-