Class FastLzFrameEncoder

  • All Implemented Interfaces:
    io.netty.channel.ChannelHandler, io.netty.channel.ChannelOutboundHandler

    public class FastLzFrameEncoder
    extends MessageToByteEncoder<io.netty.buffer.ByteBuf>
    Compresses a ByteBuf using the FastLZ algorithm. See FastLZ format.
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler

        io.netty.channel.ChannelHandler.Sharable
    • Constructor Summary

      Constructors 
      Constructor Description
      FastLzFrameEncoder()
      Creates a FastLZ encoder without checksum calculator and with auto detection of compression level.
      FastLzFrameEncoder​(boolean validateChecksums)
      Creates a FastLZ encoder with auto detection of compression level and calculation of checksums as specified.
      FastLzFrameEncoder​(int level)
      Creates a FastLZ encoder with specified compression level and without checksum calculator.
      FastLzFrameEncoder​(int level, Checksum checksum)
      Creates a FastLZ encoder with specified compression level and checksum calculator.
    • Constructor Detail

      • FastLzFrameEncoder

        public FastLzFrameEncoder()
        Creates a FastLZ encoder without checksum calculator and with auto detection of compression level.
      • FastLzFrameEncoder

        public FastLzFrameEncoder​(int level)
        Creates a FastLZ encoder with specified compression level and without checksum calculator.
        Parameters:
        level - supports only these values: 0 - Encoder will choose level automatically depending on the length of the input buffer. 1 - Level 1 is the fastest compression and generally useful for short data. 2 - Level 2 is slightly slower but it gives better compression ratio.
      • FastLzFrameEncoder

        public FastLzFrameEncoder​(boolean validateChecksums)
        Creates a FastLZ encoder with auto detection of compression level and calculation of checksums as specified.
        Parameters:
        validateChecksums - If true, the checksum of each block will be calculated and this value will be added to the header of block. By default FastLzFrameEncoder uses Adler32 for checksum calculation.
      • FastLzFrameEncoder

        public FastLzFrameEncoder​(int level,
                                  Checksum checksum)
        Creates a FastLZ encoder with specified compression level and checksum calculator.
        Parameters:
        level - supports only these values: 0 - Encoder will choose level automatically depending on the length of the input buffer. 1 - Level 1 is the fastest compression and generally useful for short data. 2 - Level 2 is slightly slower but it gives better compression ratio.
        checksum - the Checksum instance to use to check data for integrity. You may set null if you don't want to validate checksum of each block.
    • Method Detail

      • encode

        protected void encode​(io.netty.channel.ChannelHandlerContext ctx,
                              io.netty.buffer.ByteBuf in,
                              io.netty.buffer.ByteBuf out)
                       throws Exception
        Description copied from class: MessageToByteEncoder
        Encode a message into a ByteBuf. This method will be called for each written message that can be handled by this encoder.
        Specified by:
        encode in class MessageToByteEncoder<io.netty.buffer.ByteBuf>
        Parameters:
        ctx - the ChannelHandlerContext which this MessageToByteEncoder belongs to
        in - the message to encode
        out - the ByteBuf into which the encoded message will be written
        Throws:
        Exception - is thrown if an error occurs