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:
WebSocket07FrameDecoder
,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 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 Description WebSocket08FrameDecoder(boolean maskedPayload, boolean allowExtensions)
Constructor with default valuesWebSocket08FrameDecoder(boolean maskedPayload, boolean allowExtensions, long maxFramePayloadLength)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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, extractFrame, 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
-
-
-
-
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 notmaxFramePayloadLength
- 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 classReplayingDecoder<WebSocket08FrameDecoder.State>
- Parameters:
ctx
- the context of this handlerchannel
- the current channelbuffer
- 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
-
-