org.jboss.netty.handler.codec.http.websocketx

## Class WebSocket08FrameDecoder

- java.lang.Object
- - org.jboss.netty.channel.SimpleChannelUpstreamHandler
  - - org.jboss.netty.handler.codec.frame.FrameDecoder
    - - org.jboss.netty.handler.codec.replay.ReplayingDecoder<WebSocket08FrameDecoder.State>
      - - org.jboss.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder

- All Implemented Interfaces:
    ChannelHandler, ChannelUpstreamHandler, LifeCycleAwareChannelHandler
  Direct Known Subclasses:
    WebSocket13FrameDecoder

      public class WebSocket08FrameDecoder
      extends ReplayingDecoder<WebSocket08FrameDecoder.State>

  Decodes a web socket frame from wire protocol version 8 format. This code was forked from webbit and modified.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `WebSocket08FrameDecoder.State`

    - ### Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler

      `ChannelHandler.Sharable`

  - ### Field Summary

    - ### Fields inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder

      `cumulation, DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WebSocket08FrameDecoder(boolean maskedPayload, boolean allowExtensions)` Constructor with default values
    `WebSocket08FrameDecoder(boolean maskedPayload, boolean allowExtensions, long maxFramePayloadLength)` Constructor

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `checkCloseFrameBody(Channel channel, ChannelBuffer buffer)`
    `protected Object` | `decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, WebSocket08FrameDecoder.State state)` Decodes the received packets so far into a frame.

    - ### Methods inherited from class org.jboss.netty.handler.codec.replay.ReplayingDecoder

      `checkpoint, checkpoint, cleanup, decode, decodeLast, decodeLast, getState, internalBuffer, messageReceived, setState`

    - ### Methods inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder

      `actualReadableBytes, afterAdd, afterRemove, appendToCumulation, beforeAdd, beforeRemove, channelClosed, channelDisconnected, exceptionCaught, getMaxCumulationBufferCapacity, getMaxCumulationBufferComponents, isUnfold, newCumulationBuffer, replace, setMaxCumulationBufferCapacity, setMaxCumulationBufferComponents, setUnfold, unfoldAndFireMessageReceived, updateCumulation`

    - ### Methods inherited from class org.jboss.netty.channel.SimpleChannelUpstreamHandler

      `channelBound, channelConnected, channelInterestChanged, channelOpen, channelUnbound, childChannelClosed, childChannelOpen, handleUpstream, writeComplete`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### WebSocket08FrameDecoder

          public WebSocket08FrameDecoder(boolean maskedPayload,
                                 boolean allowExtensions)

      Constructor with default values
      Parameters:
        `maskedPayload` - 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

    - #### WebSocket08FrameDecoder

          public WebSocket08FrameDecoder(boolean maskedPayload,
                                 boolean allowExtensions,
                                 long maxFramePayloadLength)

      Constructor
      Parameters:
        `maskedPayload` - 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.

  - ### Method Detail

    - #### decode

          protected Object decode(ChannelHandlerContext ctx,
                      Channel channel,
                      ChannelBuffer buffer,
                      WebSocket08FrameDecoder.State state)
                           throws Exception

      Description copied from class: `ReplayingDecoder`
      Decodes the received packets so far into a frame.
      Specified by:
        `decode` in class `ReplayingDecoder<WebSocket08FrameDecoder.State>`
      Parameters:
        `ctx` - the context of this handler
        `channel` - the current channel
        `buffer` - the cumulative buffer of received packets so far. Note that the buffer might be empty, which means you should not make an assumption that the buffer contains at least one byte in your decoder implementation.
        `state` - the current decoder state (`null` if unused)
      Returns:
        the decoded frame
      Throws:
        `Exception`

    - #### checkCloseFrameBody

          protected void checkCloseFrameBody(Channel channel,
                                 ChannelBuffer buffer)
                                      throws CorruptedFrameException

      Throws:
        `CorruptedFrameException`

Copyright © 2008-2012 The Netty Project. All Rights Reserved.