Class ReactorNettywebSocketSession

All Implemented Interfaces:
webSocketSession

public class ReactorNettywebSocketSession extends NettywebSocketSessionSupport<ReactorNettywebSocketSession.webSocketConnection>
webSocketSession implementation for use with the Reactor Netty's NettyInbound and NettyOutbound.
Since:
5.0
Author:
Rossen Stoyanchev
  • 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 the NettywebSocketSessionSupport.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

      public reactor.core.publisher.Flux<webSocketMessage> 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 interface webSocketSession
      Specified by:
      receive in class AbstractwebSocketSession<ReactorNettywebSocketSession.webSocketConnection>
    • send

      public reactor.core.publisher.Mono<Void> send(Publisher<webSocketMessage> messages)
      Description copied from interface: webSocketSession
      Give a source of outgoing messages, write the messages and return a Mono<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 interface webSocketSession
      Specified by:
      send in class AbstractwebSocketSession<ReactorNettywebSocketSession.webSocketConnection>
    • isOpen

      public boolean isOpen()
      Description copied from interface: webSocketSession
      Whether the underlying connection is open.
    • close

      public reactor.core.publisher.Mono<Void> close(CloseStatus status)
      Description copied from interface: webSocketSession
      Close the webSocket session with the given status.
      Parameters:
      status - the close status
    • closeStatus

      public reactor.core.publisher.Mono<CloseStatus> closeStatus()
      Description copied from interface: webSocketSession
      Provides access to the CloseStatus with which the session is closed either locally or remotely, or completes empty if the session ended without a status.