Class JdkZlibDecoder

    • Constructor Detail

      • JdkZlibDecoder

        public JdkZlibDecoder()
        Creates a new instance with the default wrapper (ZlibWrapper.ZLIB).
      • JdkZlibDecoder

        public JdkZlibDecoder​(int maxAllocation)
        Creates a new instance with the default wrapper (ZlibWrapper.ZLIB) and the specified maximum buffer allocation.
        Parameters:
        maxAllocation - Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is decided by the ByteBufAllocator.
      • JdkZlibDecoder

        public JdkZlibDecoder​(byte[] dictionary)
        Creates a new instance with the specified preset dictionary. The wrapper is always ZlibWrapper.ZLIB because it is the only format that supports the preset dictionary.
      • JdkZlibDecoder

        public JdkZlibDecoder​(byte[] dictionary,
                              int maxAllocation)
        Creates a new instance with the specified preset dictionary and maximum buffer allocation. The wrapper is always ZlibWrapper.ZLIB because it is the only format that supports the preset dictionary.
        Parameters:
        maxAllocation - Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is decided by the ByteBufAllocator.
      • JdkZlibDecoder

        public JdkZlibDecoder​(ZlibWrapper wrapper,
                              int maxAllocation)
        Creates a new instance with the specified wrapper and maximum buffer allocation. Be aware that only ZlibWrapper.GZIP, ZlibWrapper.ZLIB and ZlibWrapper.NONE are supported atm.
        Parameters:
        maxAllocation - Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is decided by the ByteBufAllocator.
      • JdkZlibDecoder

        public JdkZlibDecoder​(ZlibWrapper wrapper,
                              boolean decompressConcatenated)
      • JdkZlibDecoder

        public JdkZlibDecoder​(ZlibWrapper wrapper,
                              boolean decompressConcatenated,
                              int maxAllocation)
      • JdkZlibDecoder

        public JdkZlibDecoder​(boolean decompressConcatenated)
      • JdkZlibDecoder

        public JdkZlibDecoder​(boolean decompressConcatenated,
                              int maxAllocation)
      • JdkZlibDecoder

        private JdkZlibDecoder​(ZlibWrapper wrapper,
                               byte[] dictionary,
                               boolean decompressConcatenated,
                               int maxAllocation)
    • Method Detail

      • isClosed

        public boolean isClosed()
        Description copied from class: ZlibDecoder
        Returns true if and only if the end of the compressed stream has been reached.
        Specified by:
        isClosed in class ZlibDecoder
      • decompressionBufferExhausted

        protected void decompressionBufferExhausted​(ByteBuf buffer)
        Description copied from class: ZlibDecoder
        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 the DecompressionException is thrown, such as log the data that was decompressed so far.
        Overrides:
        decompressionBufferExhausted in class ZlibDecoder
      • readGZIPHeader

        private boolean readGZIPHeader​(ByteBuf in)
      • readGZIPFooter

        private boolean readGZIPFooter​(ByteBuf buf)
      • verifyCrc

        private void verifyCrc​(ByteBuf in)
      • looksLikeZlib

        private static boolean looksLikeZlib​(short cmf_flg)