Class WebSocket08FrameDecoder

All Implemented Interfaces:
ChannelHandler, ChannelInboundHandler, WebSocketFrameDecoder
Direct Known Subclasses:
WebSocket07FrameDecoder, WebSocket13FrameDecoder

public class WebSocket08FrameDecoder extends ByteToMessageDecoder implements WebSocketFrameDecoder
Decodes a web socket frame from wire protocol version 8 format. This code was forked from webbit and modified.
  • Field Details

    • logger

      private static final InternalLogger logger
    • OPCODE_CONT

      private static final byte OPCODE_CONT
      See Also:
    • OPCODE_TEXT

      private static final byte OPCODE_TEXT
      See Also:
    • OPCODE_BINARY

      private static final byte OPCODE_BINARY
      See Also:
    • OPCODE_CLOSE

      private static final byte OPCODE_CLOSE
      See Also:
    • OPCODE_PING

      private static final byte OPCODE_PING
      See Also:
    • OPCODE_PONG

      private static final byte OPCODE_PONG
      See Also:
    • config

      private final WebSocketDecoderConfig config
    • fragmentedFramesCount

      private int fragmentedFramesCount
    • frameFinalFlag

      private boolean frameFinalFlag
    • frameMasked

      private boolean frameMasked
    • frameRsv

      private int frameRsv
    • frameOpcode

      private int frameOpcode
    • framePayloadLength

      private long framePayloadLength
    • mask

      private int mask
    • framePayloadLen1

      private int framePayloadLen1
    • receivedClosingHandshake

      private boolean receivedClosingHandshake
    • state

  • Constructor Details

    • WebSocket08FrameDecoder

      public WebSocket08FrameDecoder(boolean expectMaskedFrames, boolean allowExtensions, int maxFramePayloadLength)
      Constructor
      Parameters:
      expectMaskedFrames - Web socket servers must set this to true processed incoming masked payload. Client implementations must set this to false.
      allowExtensions - Flag to allow reserved extension bits to be used or not
      maxFramePayloadLength - Maximum length of a frame's payload. Setting this to an appropriate value for you application helps check for denial of services attacks.
    • WebSocket08FrameDecoder

      public WebSocket08FrameDecoder(boolean expectMaskedFrames, boolean allowExtensions, int maxFramePayloadLength, boolean allowMaskMismatch)
      Constructor
      Parameters:
      expectMaskedFrames - Web socket servers must set this to true processed incoming masked payload. Client implementations must set this to false.
      allowExtensions - Flag to allow reserved extension bits to be used or not
      maxFramePayloadLength - Maximum length of a frame's payload. Setting this to an appropriate value for you application helps check for denial of services attacks.
      allowMaskMismatch - When set to true, frames which are not masked properly according to the standard will still be accepted.
    • WebSocket08FrameDecoder

      public WebSocket08FrameDecoder(WebSocketDecoderConfig decoderConfig)
      Constructor
      Parameters:
      decoderConfig - Frames decoder configuration.
  • Method Details