Class FrameDecoderCrc

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

    public final class FrameDecoderCrc
    extends FrameDecoder
    Framing format that protects integrity of data in movement with CRCs (of both header and payload). Every on-wire frame contains: 1. Payload length (17 bits) 2. isSelfContained flag (1 bit) 3. Header padding (6 bits) 4. CRC24 of the header (24 bits) 5. Payload (up to 2 ^ 17 - 1 bits) 6. Payload CRC32 (32 bits) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Payload Length |C| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ CRC24 of Header | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | | + + | Payload | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CRC32 of Payload | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    • Method Detail

      • decode

        @Inline
        protected void decode​(java.util.Collection<FrameDecoder.Frame> into,
                              ShareableBytes newBytes,
                              int headerLength)
        Decode a number of frames using the above abstract method implementations. It is expected for this method to be invoked by the implementing class' FrameDecoder.decode(Collection, ShareableBytes) so that this implementation will be inlined, and all of the abstract method implementations will also be inlined.