public class io.netty.handler.codec.protobuf.ProtobufDecoderNano extends io.netty.handler.codec.MessageToMessageDecoder<io.netty.buffer.ByteBuf>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.netty.handler.codec.protobuf.ProtobufDecoderNano
super_class: io.netty.handler.codec.MessageToMessageDecoder
{
private final java.lang.Class<? extends com.google.protobuf.nano.MessageNano> clazz;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<+Lcom/google/protobuf/nano/MessageNano;>;
public void <init>(java.lang.Class<? extends com.google.protobuf.nano.MessageNano>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial io.netty.handler.codec.MessageToMessageDecoder.<init>:()V
1: aload 0
aload 1
ldc "You must provide a Class"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Class
putfield io.netty.handler.codec.protobuf.ProtobufDecoderNano.clazz:Ljava/lang/Class;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/protobuf/ProtobufDecoderNano;
0 3 1 clazz Ljava/lang/Class<+Lcom/google/protobuf/nano/MessageNano;>;
Signature: (Ljava/lang/Class<+Lcom/google/protobuf/nano/MessageNano;>;)V
MethodParameters:
Name Flags
clazz
protected void decode(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf, java.util.List<java.lang.Object>);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
istore 6
start local 6 1: aload 2
invokevirtual io.netty.buffer.ByteBuf.hasArray:()Z
ifeq 5
2: aload 2
invokevirtual io.netty.buffer.ByteBuf.array:()[B
astore 4
start local 4 3: aload 2
invokevirtual io.netty.buffer.ByteBuf.arrayOffset:()I
aload 2
invokevirtual io.netty.buffer.ByteBuf.readerIndex:()I
iadd
istore 5
start local 5 4: goto 8
end local 5 end local 4 5: StackMap locals: io.netty.handler.codec.protobuf.ProtobufDecoderNano io.netty.channel.ChannelHandlerContext io.netty.buffer.ByteBuf java.util.List top top int
StackMap stack:
iload 6
newarray 8
astore 4
start local 4 6: aload 2
aload 2
invokevirtual io.netty.buffer.ByteBuf.readerIndex:()I
aload 4
iconst_0
iload 6
invokevirtual io.netty.buffer.ByteBuf.getBytes:(I[BII)Lio/netty/buffer/ByteBuf;
pop
7: iconst_0
istore 5
start local 5 8: StackMap locals: io.netty.handler.codec.protobuf.ProtobufDecoderNano io.netty.channel.ChannelHandlerContext io.netty.buffer.ByteBuf java.util.List byte[] int int
StackMap stack:
aload 0
getfield io.netty.handler.codec.protobuf.ProtobufDecoderNano.clazz:Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.google.protobuf.nano.MessageNano
astore 7
start local 7 9: aload 3
aload 7
aload 4
iload 5
iload 6
invokestatic com.google.protobuf.nano.MessageNano.mergeFrom:(Lcom/google/protobuf/nano/MessageNano;[BII)Lcom/google/protobuf/nano/MessageNano;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/netty/handler/codec/protobuf/ProtobufDecoderNano;
0 11 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 11 2 msg Lio/netty/buffer/ByteBuf;
0 11 3 out Ljava/util/List<Ljava/lang/Object;>;
3 5 4 array [B
6 11 4 array [B
4 5 5 offset I
8 11 5 offset I
1 11 6 length I
9 11 7 prototype Lcom/google/protobuf/nano/MessageNano;
Exceptions:
throws java.lang.Exception
Signature: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List<Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
ctx
msg
out
protected void decode(io.netty.channel.ChannelHandlerContext, java.lang.Object, java.util.List);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
checkcast io.netty.buffer.ByteBuf
aload 3
invokevirtual io.netty.handler.codec.protobuf.ProtobufDecoderNano.decode:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
}
Signature: Lio/netty/handler/codec/MessageToMessageDecoder<Lio/netty/buffer/ByteBuf;>;
SourceFile: "ProtobufDecoderNano.java"
InnerClasses:
public abstract Sharable = io.netty.channel.ChannelHandler$Sharable of io.netty.channel.ChannelHandler
RuntimeVisibleAnnotations:
io.netty.channel.ChannelHandler$Sharable()