Home / Class/ ProtobufEncoderNano Class — netty Architecture

ProtobufEncoderNano Class — netty Architecture

Architecture documentation for the ProtobufEncoderNano class in ProtobufEncoderNano.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  e9d84c23_7425_9199_3e43_6da8130ce8f6["ProtobufEncoderNano"]
  b0587da3_8977_a2f4_c000_a240b95a2032["ProtobufEncoderNano.java"]
  e9d84c23_7425_9199_3e43_6da8130ce8f6 -->|defined in| b0587da3_8977_a2f4_c000_a240b95a2032
  e06a463e_a21b_93e2_e19b_feba298587ee["ProtobufEncoderNano()"]
  e9d84c23_7425_9199_3e43_6da8130ce8f6 -->|method| e06a463e_a21b_93e2_e19b_feba298587ee
  1e756dc0_be9b_7a92_7456_79f84a4bcbab["encode()"]
  e9d84c23_7425_9199_3e43_6da8130ce8f6 -->|method| 1e756dc0_be9b_7a92_7456_79f84a4bcbab

Relationship Graph

Source Code

codec-protobuf/src/main/java/io/netty/handler/codec/protobuf/ProtobufEncoderNano.java lines 59–77

@ChannelHandler.Sharable
public class ProtobufEncoderNano extends MessageToMessageEncoder<MessageNano> {
    public ProtobufEncoderNano() {
        super(MessageNano.class);
    }

    @Override
    protected void encode(
            ChannelHandlerContext ctx, MessageNano msg, List<Object> out) throws Exception {
        final int size = msg.getSerializedSize();
        final ByteBuf buffer = ctx.alloc().heapBuffer(size, size);
        final byte[] array = buffer.array();
        CodedOutputByteBufferNano cobbn = CodedOutputByteBufferNano.newInstance(array,
                buffer.arrayOffset(), buffer.capacity());
        msg.writeTo(cobbn);
        buffer.writerIndex(size);
        out.add(buffer);
    }
}

Frequently Asked Questions

What is the ProtobufEncoderNano class?
ProtobufEncoderNano is a class in the netty codebase, defined in codec-protobuf/src/main/java/io/netty/handler/codec/protobuf/ProtobufEncoderNano.java.
Where is ProtobufEncoderNano defined?
ProtobufEncoderNano is defined in codec-protobuf/src/main/java/io/netty/handler/codec/protobuf/ProtobufEncoderNano.java at line 59.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free