abstract class io.netty.handler.codec.compression.ByteBufChecksum implements java.util.zip.Checksum
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: io.netty.handler.codec.compression.ByteBufChecksum
super_class: java.lang.Object
{
private static final java.lang.reflect.Method ADLER32_UPDATE_METHOD;
descriptor: Ljava/lang/reflect/Method;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.reflect.Method CRC32_UPDATE_METHOD;
descriptor: Ljava/lang/reflect/Method;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final io.netty.util.ByteProcessor updateProcessor;
descriptor: Lio/netty/util/ByteProcessor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.zip.Adler32
dup
invokespecial java.util.zip.Adler32.<init>:()V
invokestatic io.netty.handler.codec.compression.ByteBufChecksum.updateByteBuffer:(Ljava/util/zip/Checksum;)Ljava/lang/reflect/Method;
putstatic io.netty.handler.codec.compression.ByteBufChecksum.ADLER32_UPDATE_METHOD:Ljava/lang/reflect/Method;
1: new java.util.zip.CRC32
dup
invokespecial java.util.zip.CRC32.<init>:()V
invokestatic io.netty.handler.codec.compression.ByteBufChecksum.updateByteBuffer:(Ljava/util/zip/Checksum;)Ljava/lang/reflect/Method;
putstatic io.netty.handler.codec.compression.ByteBufChecksum.CRC32_UPDATE_METHOD:Ljava/lang/reflect/Method;
2: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new io.netty.handler.codec.compression.ByteBufChecksum$1
dup
aload 0
invokespecial io.netty.handler.codec.compression.ByteBufChecksum$1.<init>:(Lio/netty/handler/codec/compression/ByteBufChecksum;)V
putfield io.netty.handler.codec.compression.ByteBufChecksum.updateProcessor:Lio/netty/util/ByteProcessor;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/compression/ByteBufChecksum;
private static java.lang.reflect.Method updateByteBuffer(java.util.zip.Checksum);
descriptor: (Ljava/util/zip/Checksum;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: invokestatic io.netty.util.internal.PlatformDependent.javaVersion:()I
bipush 8
if_icmplt 7
1: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc "update"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/nio/ByteBuffer;
aastore
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 1
start local 1 2: aload 1
aload 1
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
aastore
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.lang.Throwable
pop
6: aconst_null
areturn
7: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 checksum Ljava/util/zip/Checksum;
2 5 1 method Ljava/lang/reflect/Method;
Exception table:
from to target type
1 4 5 Class java.lang.Throwable
MethodParameters:
Name Flags
checksum
static io.netty.handler.codec.compression.ByteBufChecksum wrapChecksum(java.util.zip.Checksum);
descriptor: (Ljava/util/zip/Checksum;)Lio/netty/handler/codec/compression/ByteBufChecksum;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
ldc "checksum"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
instanceof java.util.zip.Adler32
ifeq 3
getstatic io.netty.handler.codec.compression.ByteBufChecksum.ADLER32_UPDATE_METHOD:Ljava/lang/reflect/Method;
ifnull 3
2: new io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum
dup
aload 0
getstatic io.netty.handler.codec.compression.ByteBufChecksum.ADLER32_UPDATE_METHOD:Ljava/lang/reflect/Method;
invokespecial io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum.<init>:(Ljava/util/zip/Checksum;Ljava/lang/reflect/Method;)V
areturn
3: StackMap locals:
StackMap stack:
aload 0
instanceof java.util.zip.CRC32
ifeq 5
getstatic io.netty.handler.codec.compression.ByteBufChecksum.CRC32_UPDATE_METHOD:Ljava/lang/reflect/Method;
ifnull 5
4: new io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum
dup
aload 0
getstatic io.netty.handler.codec.compression.ByteBufChecksum.CRC32_UPDATE_METHOD:Ljava/lang/reflect/Method;
invokespecial io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum.<init>:(Ljava/util/zip/Checksum;Ljava/lang/reflect/Method;)V
areturn
5: StackMap locals:
StackMap stack:
new io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum
dup
aload 0
invokespecial io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum.<init>:(Ljava/util/zip/Checksum;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 checksum Ljava/util/zip/Checksum;
MethodParameters:
Name Flags
checksum
public void update(io.netty.buffer.ByteBuf, int, int);
descriptor: (Lio/netty/buffer/ByteBuf;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual io.netty.buffer.ByteBuf.hasArray:()Z
ifeq 3
1: aload 0
aload 1
invokevirtual io.netty.buffer.ByteBuf.array:()[B
aload 1
invokevirtual io.netty.buffer.ByteBuf.arrayOffset:()I
iload 2
iadd
iload 3
invokevirtual io.netty.handler.codec.compression.ByteBufChecksum.update:([BII)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
iload 2
iload 3
aload 0
getfield io.netty.handler.codec.compression.ByteBufChecksum.updateProcessor:Lio/netty/util/ByteProcessor;
invokevirtual io.netty.buffer.ByteBuf.forEachByte:(IILio/netty/util/ByteProcessor;)I
pop
4: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/compression/ByteBufChecksum;
0 5 1 b Lio/netty/buffer/ByteBuf;
0 5 2 off I
0 5 3 len I
MethodParameters:
Name Flags
b
off
len
}
SourceFile: "ByteBufChecksum.java"
NestMembers:
io.netty.handler.codec.compression.ByteBufChecksum$1 io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum
InnerClasses:
io.netty.handler.codec.compression.ByteBufChecksum$1
private final ReflectiveByteBufChecksum = io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum of io.netty.handler.codec.compression.ByteBufChecksum
private SlowByteBufChecksum = io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum of io.netty.handler.codec.compression.ByteBufChecksum