Class ReactorNettyWebSocketSession
java.lang.Object
org.springframework.web.reactive.socket.adapter.AbstractWebSocketSession<T>
org.springframework.web.reactive.socket.adapter.NettyWebSocketSessionSupport<ReactorNettyWebSocketSession.WebSocketConnection>
org.springframework.web.reactive.socket.adapter.ReactorNettyWebSocketSession
- All Implemented Interfaces:
WebSocketSession
public class ReactorNettyWebSocketSession
extends NettyWebSocketSessionSupport<ReactorNettyWebSocketSession.WebSocketConnection>
- Since:
- 5.0
- Author:
- Rossen Stoyanchev
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Simple container forNettyInbound
andNettyOutbound
. -
Field Summary
Fields inherited from class org.springframework.web.reactive.socket.adapter.NettyWebSocketSessionSupport
DEFAULT_FRAME_MAX_SIZE
Fields inherited from class org.springframework.web.reactive.socket.adapter.AbstractWebSocketSession
logger
-
Constructor Summary
ConstructorDescriptionReactorNettyWebSocketSession
(reactor.netty.http.websocket.WebsocketInbound inbound, reactor.netty.http.websocket.WebsocketOutbound outbound, HandshakeInfo info, NettyDataBufferFactory bufferFactory) Constructor for the session, using theNettyWebSocketSessionSupport.DEFAULT_FRAME_MAX_SIZE
value.ReactorNettyWebSocketSession
(reactor.netty.http.websocket.WebsocketInbound inbound, reactor.netty.http.websocket.WebsocketOutbound outbound, HandshakeInfo info, NettyDataBufferFactory bufferFactory, int maxFramePayloadLength) Constructor with an additional maxFramePayloadLength argument. -
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Mono<Void>
close
(CloseStatus status) Close the WebSocket session with the given status.reactor.core.publisher.Mono<CloseStatus>
Provides access to theCloseStatus
with which the session is closed either locally or remotely, or completes empty if the session ended without a status.io.netty.channel.ChannelId
Return the id of the underlying Netty channel.boolean
isOpen()
Whether the underlying connection is open.reactor.core.publisher.Flux<WebSocketMessage>
receive()
Provides access to the stream of inbound messages.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.Methods inherited from class org.springframework.web.reactive.socket.adapter.NettyWebSocketSessionSupport
bufferFactory, toFrame, toMessage
Methods inherited from class org.springframework.web.reactive.socket.adapter.AbstractWebSocketSession
binaryMessage, getAttributes, getDelegate, getHandshakeInfo, getId, getLogPrefix, pingMessage, pongMessage, textMessage, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.springframework.web.reactive.socket.WebSocketSession
close
-
Constructor Details
-
ReactorNettyWebSocketSession
public ReactorNettyWebSocketSession(reactor.netty.http.websocket.WebsocketInbound inbound, reactor.netty.http.websocket.WebsocketOutbound outbound, HandshakeInfo info, NettyDataBufferFactory bufferFactory) Constructor for the session, using theNettyWebSocketSessionSupport.DEFAULT_FRAME_MAX_SIZE
value. -
ReactorNettyWebSocketSession
public ReactorNettyWebSocketSession(reactor.netty.http.websocket.WebsocketInbound inbound, reactor.netty.http.websocket.WebsocketOutbound outbound, HandshakeInfo info, NettyDataBufferFactory bufferFactory, int maxFramePayloadLength) Constructor with an additional maxFramePayloadLength argument.- Since:
- 5.1
-
-
Method Details
-
getChannelId
public io.netty.channel.ChannelId getChannelId()Return the id of the underlying Netty channel.- Since:
- 5.3.4
-
receive
Description copied from interface:WebSocketSession
Provides access to the stream of inbound messages.This stream receives a completion or error signal when the connection is closed. In a typical
WebSocketHandler
implementation 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
WebSocketHandler
and the reference for more details and examples of how to handle the session.- Specified by:
receive
in interfaceWebSocketSession
- Specified by:
receive
in classAbstractWebSocketSession<ReactorNettyWebSocketSession.WebSocketConnection>
-
send
Description copied from interface:WebSocketSession
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
WebSocketHandler
and the reference for more details and examples of how to handle the session.- Specified by:
send
in interfaceWebSocketSession
- Specified by:
send
in classAbstractWebSocketSession<ReactorNettyWebSocketSession.WebSocketConnection>
-
isOpen
public boolean isOpen()Description copied from interface:WebSocketSession
Whether the underlying connection is open. -
close
Description copied from interface:WebSocketSession
Close the WebSocket session with the given status.- Parameters:
status
- the close status
-
closeStatus
Description copied from interface:WebSocketSession
Provides access to theCloseStatus
with which the session is closed either locally or remotely, or completes empty if the session ended without a status.
-