Class WebSocket00FrameDecoder
java.lang.Object
org.jboss.netty.channel.SimpleChannelUpstreamHandler
org.jboss.netty.handler.codec.frame.FrameDecoder
org.jboss.netty.handler.codec.replay.ReplayingDecoder<VoidEnum>
org.jboss.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder
- All Implemented Interfaces:
ChannelHandler
,ChannelUpstreamHandler
,LifeCycleAwareChannelHandler
Decodes
ChannelBuffer
s into WebSocketFrame
s.
For the detailed instruction on adding add Web Socket support to your HTTP server, take a look into the
WebSocketServer example located in the org.jboss.netty.example.http.websocket
package.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler
ChannelHandler.Sharable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final long
private final long
private boolean
Fields inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder
cumulation, DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS
-
Constructor Summary
ConstructorsConstructorDescriptionWebSocket00FrameDecoder
(long maxFrameSize) Creates a new instance ofWebSocketFrameDecoder
with the specifiedmaxFrameSize
. -
Method Summary
Modifier and TypeMethodDescriptionprotected Object
decode
(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, VoidEnum state) Decodes the received packets so far into a frame.private WebSocketFrame
decodeBinaryFrame
(byte type, ChannelBuffer buffer) private WebSocketFrame
decodeTextFrame
(ChannelBuffer buffer) 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
-
Field Details
-
DEFAULT_MAX_FRAME_SIZE
private static final long DEFAULT_MAX_FRAME_SIZE- See Also:
-
maxFrameSize
private final long maxFrameSize -
receivedClosingHandshake
private boolean receivedClosingHandshake
-
-
Constructor Details
-
WebSocket00FrameDecoder
public WebSocket00FrameDecoder() -
WebSocket00FrameDecoder
public WebSocket00FrameDecoder(long maxFrameSize) Creates a new instance ofWebSocketFrameDecoder
with the specifiedmaxFrameSize
. If the client sends a frame size larger thanmaxFrameSize
, the channel will be closed.- Parameters:
maxFrameSize
- the maximum frame size to decode
-
-
Method Details
-
decode
protected Object decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, VoidEnum state) throws Exception Description copied from class:ReplayingDecoder
Decodes the received packets so far into a frame.- Specified by:
decode
in classReplayingDecoder<VoidEnum>
- 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
-
decodeBinaryFrame
private WebSocketFrame decodeBinaryFrame(byte type, ChannelBuffer buffer) throws TooLongFrameException - Throws:
TooLongFrameException
-
decodeTextFrame
- Throws:
TooLongFrameException
-