public class FixedLengthFrameDecoder extends ByteToMessageDecoder
ByteBuf
s by the fixed number
of bytes. For example, if you received the following four fragmented packets:
+---+----+------+----+ | A | BC | DEFG | HI | +---+----+------+----+A
FixedLengthFrameDecoder
(3)
will decode them into the
following three packets with the fixed length:
+-----+-----+-----+ | ABC | DEF | GHI | +-----+-----+-----+
ChannelHandler.Sharable
Constructor and Description |
---|
FixedLengthFrameDecoder(int frameLength)
Calls
FixedLengthFrameDecoder(int, boolean) with false |
FixedLengthFrameDecoder(int frameLength,
boolean allocateFullBuffer)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
protected Object |
decode(ChannelHandlerContext ctx,
ByteBuf in)
Decode the from one
ByteBuf to an other. |
ByteBuf |
newInboundBuffer(ChannelHandlerContext ctx)
Create a new unpooled
ByteBuf by default. |
callDecode, channelInactive, channelReadSuspended, decodeLast, inboundBufferUpdated, isSingleDecode, setSingleDecode
discardInboundReadBytes, freeInboundBuffer, inboundBufferUpdated
channelActive, channelRegistered, channelUnregistered, userEventTriggered
afterAdd, afterRemove, beforeAdd, beforeRemove, exceptionCaught
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
channelActive, channelRegistered, channelUnregistered, userEventTriggered
afterAdd, afterRemove, beforeAdd, beforeRemove, exceptionCaught
public FixedLengthFrameDecoder(int frameLength)
FixedLengthFrameDecoder(int, boolean)
with false
public FixedLengthFrameDecoder(int frameLength, boolean allocateFullBuffer)
frameLength
- the length of the frameallocateFullBuffer
- true
if the cumulative ByteBuf
should use the
frameLength
as its initial sizepublic ByteBuf newInboundBuffer(ChannelHandlerContext ctx) throws Exception
ChannelInboundByteHandlerAdapter
ByteBuf
by default. Sub-classes may override this to offer a more
optimized implementation.newInboundBuffer
in interface ChannelInboundByteHandler
newInboundBuffer
in class ChannelInboundByteHandlerAdapter
Exception
protected Object decode(ChannelHandlerContext ctx, ByteBuf in) throws Exception
ByteToMessageDecoder
ByteBuf
to an other. This method will be called till either the input
ByteBuf
has nothing to read anymore, till nothing was read from the input ByteBuf
or till
this method returns null
.decode
in class ByteToMessageDecoder
ctx
- the ChannelHandlerContext
which this ByteToByteDecoder
belongs toin
- the ByteBuf
from which to read dataByteBuf
was decoded, or null
if
there was not enough data left in the ByteBuf
to decode.Exception
- is thrown if an error accourCopyright © 2008-2013 The Netty Project. All Rights Reserved.