Class WebSocketServerProtocolHandler

  • All Implemented Interfaces:
    ChannelHandler

    public class WebSocketServerProtocolHandler
    extends MessageToMessageDecoder<WebSocketFrame>
    This handler does all the heavy lifting for you to run a websocket server. It takes care of websocket handshaking as well as processing of control frames (Close, Ping, Pong). Text and Binary data frames are passed to the next handler in the pipeline (implemented by you) for processing. See io.netty5.example.http.websocketx.html5.WebSocketServer for usage. The implementation of this handler assumes that you just want to run a websocket server and not process other types HTTP requests (like GET and POST). If you wish to support both HTTP requests and websockets in the one server, refer to the io.netty5.example.http.websocketx.server.WebSocketServer example. To know once a handshake was done you can intercept the ChannelHandler.channelInboundEvent(ChannelHandlerContext, Object) and check if the event was instance of WebSocketServerHandshakeCompletionEvent, the event will contain extra information about the handshake such as the request and selected subprotocol.
    • Constructor Detail

      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(WebSocketServerProtocolConfig serverConfig)
        Base constructor
        Parameters:
        serverConfig - Server protocol configuration.
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              boolean checkStartsWith)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              boolean checkStartsWith,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              boolean allowMaskMismatch)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              boolean allowMaskMismatch,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              boolean allowMaskMismatch,
                                              boolean checkStartsWith)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              boolean allowMaskMismatch,
                                              boolean checkStartsWith,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              boolean allowMaskMismatch,
                                              boolean checkStartsWith,
                                              boolean dropPongFrames)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean allowExtensions,
                                              int maxFrameSize,
                                              boolean allowMaskMismatch,
                                              boolean checkStartsWith,
                                              boolean dropPongFrames,
                                              long handshakeTimeoutMillis)
      • WebSocketServerProtocolHandler

        public WebSocketServerProtocolHandler​(String websocketPath,
                                              String subprotocols,
                                              boolean checkStartsWith,
                                              boolean dropPongFrames,
                                              long handshakeTimeoutMillis,
                                              WebSocketDecoderConfig decoderConfig)