public final class jdk.internal.net.http.hpack.HPACK
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.internal.net.http.hpack.HPACK
super_class: java.lang.Object
{
private static final jdk.internal.net.http.hpack.HPACK$RootLogger LOGGER;
descriptor: Ljdk/internal/net/http/hpack/HPACK$RootLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.Map<java.lang.String, jdk.internal.net.http.hpack.HPACK$Logger$Level> logLevels;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/internal/net/http/hpack/HPACK$Logger$Level;>;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=0
0: ldc Ljdk/internal/net/http/hpack/HPACK;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic jdk.internal.net.http.hpack.HPACK.$assertionsDisabled:Z
3: ldc "NORMAL"
getstatic jdk.internal.net.http.hpack.HPACK$Logger$Level.NORMAL:Ljdk/internal/net/http/hpack/HPACK$Logger$Level;
ldc "EXTRA"
getstatic jdk.internal.net.http.hpack.HPACK$Logger$Level.EXTRA:Ljdk/internal/net/http/hpack/HPACK$Logger$Level;
invokestatic java.util.Map.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
4: putstatic jdk.internal.net.http.hpack.HPACK.logLevels:Ljava/util/Map;
5: ldc "jdk.internal.httpclient.hpack.log.level"
astore 0
start local 0 6: aload 0
invokedynamic run(Ljava/lang/String;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/internal/net/http/hpack/HPACK.lambda$0(Ljava/lang/String;)Ljava/lang/String; (6)
()Ljava/lang/String;
7: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 8: aload 1
ifnonnull 11
9: new jdk.internal.net.http.hpack.HPACK$RootLogger
dup
getstatic jdk.internal.net.http.hpack.HPACK$Logger$Level.NONE:Ljdk/internal/net/http/hpack/HPACK$Logger$Level;
invokespecial jdk.internal.net.http.hpack.HPACK$RootLogger.<init>:(Ljdk/internal/net/http/hpack/HPACK$Logger$Level;)V
putstatic jdk.internal.net.http.hpack.HPACK.LOGGER:Ljdk/internal/net/http/hpack/HPACK$RootLogger;
10: goto 23
11: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 1
invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
astore 2
start local 2 12: getstatic jdk.internal.net.http.hpack.HPACK.logLevels:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.internal.net.http.hpack.HPACK$Logger$Level
astore 3
start local 3 13: aload 3
ifnonnull 19
14: new jdk.internal.net.http.hpack.HPACK$RootLogger
dup
getstatic jdk.internal.net.http.hpack.HPACK$Logger$Level.NONE:Ljdk/internal/net/http/hpack/HPACK$Logger$Level;
invokespecial jdk.internal.net.http.hpack.HPACK$RootLogger.<init>:(Ljdk/internal/net/http/hpack/HPACK$Logger$Level;)V
putstatic jdk.internal.net.http.hpack.HPACK.LOGGER:Ljdk/internal/net/http/hpack/HPACK$RootLogger;
15: getstatic jdk.internal.net.http.hpack.HPACK.LOGGER:Ljdk/internal/net/http/hpack/HPACK$RootLogger;
getstatic java.lang.System$Logger$Level.INFO:Ljava/lang/System$Logger$Level;
16: aload 0
aload 1
invokedynamic get(Ljava/lang/String;Ljava/lang/String;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/internal/net/http/hpack/HPACK.lambda$1(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; (6)
()Ljava/lang/String;
17: invokevirtual jdk.internal.net.http.hpack.HPACK$RootLogger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
18: goto 23
19: StackMap locals: java.lang.String jdk.internal.net.http.hpack.HPACK$Logger$Level
StackMap stack:
new jdk.internal.net.http.hpack.HPACK$RootLogger
dup
aload 3
invokespecial jdk.internal.net.http.hpack.HPACK$RootLogger.<init>:(Ljdk/internal/net/http/hpack/HPACK$Logger$Level;)V
putstatic jdk.internal.net.http.hpack.HPACK.LOGGER:Ljdk/internal/net/http/hpack/HPACK$RootLogger;
20: getstatic jdk.internal.net.http.hpack.HPACK.LOGGER:Ljdk/internal/net/http/hpack/HPACK$RootLogger;
getstatic java.lang.System$Logger$Level.DEBUG:Ljava/lang/System$Logger$Level;
21: aload 3
invokedynamic get(Ljdk/internal/net/http/hpack/HPACK$Logger$Level;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/internal/net/http/hpack/HPACK.lambda$2(Ljdk/internal/net/http/hpack/HPACK$Logger$Level;)Ljava/lang/String; (6)
()Ljava/lang/String;
22: invokevirtual jdk.internal.net.http.hpack.HPACK$RootLogger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 3 end local 2 end local 1 end local 0 23: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
6 23 0 PROPERTY Ljava/lang/String;
8 23 1 value Ljava/lang/String;
12 23 2 upperCasedValue Ljava/lang/String;
13 23 3 l Ljdk/internal/net/http/hpack/HPACK$Logger$Level;
public static jdk.internal.net.http.hpack.HPACK$Logger getLogger();
descriptor: ()Ljdk/internal/net/http/hpack/HPACK$Logger;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic jdk.internal.net.http.hpack.HPACK.LOGGER:Ljdk/internal/net/http/hpack/HPACK$RootLogger;
areturn
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/hpack/HPACK;
public static int read(java.nio.ByteBuffer, long, int, jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer);
descriptor: (Ljava/nio/ByteBuffer;JILjdk/internal/net/http/hpack/HPACK$BufferUpdateConsumer;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 3 start local 4 0: bipush 64
iload 3
isub
iconst_3
ishr
aload 0
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic java.lang.Math.min:(II)I
istore 5
start local 5 1: iload 5
tableswitch { // 0 - 8
0: 2
1: 7
2: 5
3: 3
4: 17
5: 15
6: 13
7: 11
8: 21
default: 25
}
2: StackMap locals: int
StackMap stack:
goto 26
3: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
i2l
ldc 255
land
bipush 56
iload 3
isub
lshl
lor
lstore 1
4: iinc 3 8
5: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
i2l
ldc 255
land
bipush 56
iload 3
isub
lshl
lor
lstore 1
6: iinc 3 8
7: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
i2l
ldc 255
land
bipush 56
iload 3
isub
lshl
lor
lstore 1
8: iinc 3 8
9: aload 4
lload 1
iload 3
invokeinterface jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer.accept:(JI)V
10: goto 26
11: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
i2l
ldc 255
land
bipush 56
iload 3
isub
lshl
lor
lstore 1
12: iinc 3 8
13: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
i2l
ldc 255
land
bipush 56
iload 3
isub
lshl
lor
lstore 1
14: iinc 3 8
15: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
i2l
ldc 255
land
bipush 56
iload 3
isub
lshl
lor
lstore 1
16: iinc 3 8
17: StackMap locals:
StackMap stack:
lload 1
aload 0
invokevirtual java.nio.ByteBuffer.getInt:()I
i2l
ldc 4294967295
land
bipush 32
iload 3
isub
lshl
lor
lstore 1
18: iinc 3 32
19: aload 4
lload 1
iload 3
invokeinterface jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer.accept:(JI)V
20: goto 26
21: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.getLong:()J
lstore 1
22: bipush 64
istore 3
23: aload 4
lload 1
iload 3
invokeinterface jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer.accept:(JI)V
24: goto 26
25: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
iload 5
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
26: StackMap locals:
StackMap stack:
iload 5
ireturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 source Ljava/nio/ByteBuffer;
0 27 1 buffer J
0 27 3 bufferLen I
0 27 4 consumer Ljdk/internal/net/http/hpack/HPACK$BufferUpdateConsumer;
1 27 5 nBytes I
MethodParameters:
Name Flags
source
buffer
bufferLen
consumer
public static int write(long, int, jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer, java.nio.ByteBuffer);
descriptor: (JILjdk/internal/net/http/hpack/HPACK$BufferUpdateConsumer;Ljava/nio/ByteBuffer;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 2 start local 3 start local 4 0: iload 2
iconst_3
ishr
aload 4
invokevirtual java.nio.ByteBuffer.remaining:()I
invokestatic java.lang.Math.min:(II)I
istore 5
start local 5 1: iload 5
tableswitch { // 0 - 8
0: 2
1: 9
2: 6
3: 3
4: 23
5: 20
6: 17
7: 14
8: 28
default: 33
}
2: StackMap locals: int
StackMap stack:
goto 34
3: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 56
lushr
l2i
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
4: lload 0
bipush 8
lshl
lstore 0
5: iinc 2 -8
6: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 56
lushr
l2i
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
7: lload 0
bipush 8
lshl
lstore 0
8: iinc 2 -8
9: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 56
lushr
l2i
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
10: lload 0
bipush 8
lshl
lstore 0
11: iinc 2 -8
12: aload 3
lload 0
iload 2
invokeinterface jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer.accept:(JI)V
13: goto 34
14: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 56
lushr
l2i
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
15: lload 0
bipush 8
lshl
lstore 0
16: iinc 2 -8
17: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 56
lushr
l2i
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
18: lload 0
bipush 8
lshl
lstore 0
19: iinc 2 -8
20: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 56
lushr
l2i
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
21: lload 0
bipush 8
lshl
lstore 0
22: iinc 2 -8
23: StackMap locals:
StackMap stack:
aload 4
lload 0
bipush 32
lushr
l2i
invokevirtual java.nio.ByteBuffer.putInt:(I)Ljava/nio/ByteBuffer;
pop
24: lload 0
bipush 32
lshl
lstore 0
25: iinc 2 -32
26: aload 3
lload 0
iload 2
invokeinterface jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer.accept:(JI)V
27: goto 34
28: StackMap locals:
StackMap stack:
aload 4
lload 0
invokevirtual java.nio.ByteBuffer.putLong:(J)Ljava/nio/ByteBuffer;
pop
29: lconst_0
lstore 0
30: iconst_0
istore 2
31: aload 3
lload 0
iload 2
invokeinterface jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer.accept:(JI)V
32: goto 34
33: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
iload 5
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
34: StackMap locals:
StackMap stack:
iload 5
ireturn
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 buffer J
0 35 2 bufferLen I
0 35 3 consumer Ljdk/internal/net/http/hpack/HPACK$BufferUpdateConsumer;
0 35 4 destination Ljava/nio/ByteBuffer;
1 35 5 nBytes I
MethodParameters:
Name Flags
buffer
bufferLen
consumer
destination
static int bytesForBits(int);
descriptor: (I)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic jdk.internal.net.http.hpack.HPACK.$assertionsDisabled:Z
ifne 5
iload 0
bipush 8
idiv
iload 0
bipush 8
irem
ifeq 1
iconst_1
goto 2
StackMap locals:
StackMap stack: int
1: iconst_0
StackMap locals: int
StackMap stack: int int
2: iadd
iload 0
bipush 7
iadd
bipush 8
idiv
if_icmpne 4
3: iload 0
bipush 7
iadd
bipush 8
idiv
iload 0
bipush 7
iadd
iconst_3
ishr
if_icmpeq 5
StackMap locals:
StackMap stack:
4: new java.lang.AssertionError
dup
iload 0
invokespecial java.lang.AssertionError.<init>:(I)V
athrow
5: StackMap locals:
StackMap stack:
iload 0
bipush 7
iadd
iconst_3
ishr
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 n I
MethodParameters:
Name Flags
n
private static java.lang.String lambda$0(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.String lambda$1(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=6, locals=2, args_size=2
0: ldc "%s value '%s' not recognized (use %s); logging disabled"
iconst_3
anewarray java.lang.Object
dup
iconst_0
1: aload 0
aastore
dup
iconst_1
aload 1
aastore
dup
iconst_2
getstatic jdk.internal.net.http.hpack.HPACK.logLevels:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
ldc ", "
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
aastore
2: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
3: areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.String lambda$2(jdk.internal.net.http.hpack.HPACK$Logger$Level);
descriptor: (Ljdk/internal/net/http/hpack/HPACK$Logger$Level;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=1, args_size=1
0: ldc "logging level %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "HPACK.java"
NestMembers:
jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer jdk.internal.net.http.hpack.HPACK$Logger jdk.internal.net.http.hpack.HPACK$Logger$Level jdk.internal.net.http.hpack.HPACK$RootLogger
InnerClasses:
public abstract Logger = java.lang.System$Logger of java.lang.System
public final Level = java.lang.System$Logger$Level of java.lang.System$Logger
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
abstract BufferUpdateConsumer = jdk.internal.net.http.hpack.HPACK$BufferUpdateConsumer of jdk.internal.net.http.hpack.HPACK
public Logger = jdk.internal.net.http.hpack.HPACK$Logger of jdk.internal.net.http.hpack.HPACK
public final Level = jdk.internal.net.http.hpack.HPACK$Logger$Level of jdk.internal.net.http.hpack.HPACK$Logger
private final RootLogger = jdk.internal.net.http.hpack.HPACK$RootLogger of jdk.internal.net.http.hpack.HPACK