Class ZlibDecoder
- java.lang.Object
-
- io.netty.channel.ChannelHandlerAdapter
-
- io.netty.channel.ChannelInboundHandlerAdapter
-
- io.netty.handler.codec.ByteToMessageDecoder
-
- io.netty.handler.codec.compression.ZlibDecoder
-
- All Implemented Interfaces:
io.netty.channel.ChannelHandler,io.netty.channel.ChannelInboundHandler
- Direct Known Subclasses:
JdkZlibDecoder,JZlibDecoder
public abstract class ZlibDecoder extends io.netty.handler.codec.ByteToMessageDecoderDecompresses aByteBufusing the deflate algorithm.
-
-
Field Summary
Fields Modifier and Type Field Description protected intmaxAllocationMaximum allowed size of the decompression buffer.
-
Constructor Summary
Constructors Constructor Description ZlibDecoder()Same asZlibDecoder(int)with maxAllocation = 0.ZlibDecoder(int maxAllocation)Construct a new ZlibDecoder.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voiddecompressionBufferExhausted(io.netty.buffer.ByteBuf buffer)Called when the decompression buffer cannot be expanded further.abstract booleanisClosed()Returnstrueif and only if the end of the compressed stream has been reached.protected io.netty.buffer.ByteBufprepareDecompressBuffer(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf buffer, int preferredSize)Allocate or expand the decompression buffer, without exceeding the maximum allocation.-
Methods inherited from class io.netty.handler.codec.ByteToMessageDecoder
actualReadableBytes, callDecode, channelInactive, channelRead, channelReadComplete, decode, decodeLast, discardSomeReadBytes, handlerRemoved, handlerRemoved0, internalBuffer, isSingleDecode, setCumulator, setDiscardAfterReads, setSingleDecode, userEventTriggered
-
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught
-
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, isSharable
-
-
-
-
Constructor Detail
-
ZlibDecoder
public ZlibDecoder()
Same asZlibDecoder(int)with maxAllocation = 0.
-
ZlibDecoder
public ZlibDecoder(int maxAllocation)
Construct a new ZlibDecoder.- Parameters:
maxAllocation- Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is decided by theByteBufAllocator.
-
-
Method Detail
-
isClosed
public abstract boolean isClosed()
Returnstrueif and only if the end of the compressed stream has been reached.
-
prepareDecompressBuffer
protected io.netty.buffer.ByteBuf prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf buffer, int preferredSize)Allocate or expand the decompression buffer, without exceeding the maximum allocation. CallsdecompressionBufferExhausted(ByteBuf)if the buffer is full and cannot be expanded further.
-
decompressionBufferExhausted
protected void decompressionBufferExhausted(io.netty.buffer.ByteBuf buffer)
Called when the decompression buffer cannot be expanded further. Default implementation is a no-op, but subclasses can override in case they want to do something before theDecompressionExceptionis thrown, such as log the data that was decompressed so far.
-
-