class implements io.undertow.server.protocol.framed.FrameHeaderData
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.undertow.protocols.http2.Http2FrameHeaderParser
super_class: java.lang.Object
{
final byte[] ;
descriptor: [B
flags: (0x0010) ACC_FINAL
int ;
descriptor: I
flags: (0x0000)
int ;
descriptor: I
flags: (0x0000)
int ;
descriptor: I
flags: (0x0000)
int ;
descriptor: I
flags: (0x0000)
int ;
descriptor: I
flags: (0x0000)
io.undertow.protocols.http2.Http2PushBackParser ;
descriptor: Lio/undertow/protocols/http2/Http2PushBackParser;
flags: (0x0000)
io.undertow.protocols.http2.Http2HeadersParser ;
descriptor: Lio/undertow/protocols/http2/Http2HeadersParser;
flags: (0x0000)
private static final int ;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -129
private io.undertow.protocols.http2.Http2Channel ;
descriptor: Lio/undertow/protocols/http2/Http2Channel;
flags: (0x0002) ACC_PRIVATE
void (io.undertow.protocols.http2.Http2Channel, io.undertow.protocols.http2.Http2HeadersParser);
descriptor: (Lio/undertow/protocols/http2/Http2Channel;Lio/undertow/protocols/http2/Http2HeadersParser;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
bipush 9
newarray 8
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
2: aload 0
iconst_0
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.read:I
3: aload 0
aconst_null
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
4: aload 0
aconst_null
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
5: aload 0
aload 1
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
6: aload 0
aload 2
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
0 8 1 http2Channel Lio/undertow/protocols/http2/Http2Channel;
0 8 2 continuationParser Lio/undertow/protocols/http2/Http2HeadersParser;
MethodParameters:
Name Flags
http2Channel
continuationParser
public boolean handle(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
ifnonnull 60
1: aload 0
aload 1
invokevirtual io.undertow.protocols.http2.Http2FrameHeaderParser.parseFrameHeader:(Ljava/nio/ByteBuffer;)Z
ifne 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
ifnull 5
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
bipush 9
if_icmpeq 5
4: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.expectedContinuationFrame:()Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
tableswitch { // 0 - 9
0: 6
1: 10
2: 53
3: 16
4: 43
5: 29
6: 37
7: 33
8: 49
9: 20
default: 59
}
6: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
ifne 8
7: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
iconst_0
invokeinterface io.undertow.UndertowMessages.streamIdMustNotBeZeroForFrameType:(I)Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2DataFrameParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2DataFrameParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
9: goto 60
10: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
ifne 12
11: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
iconst_1
invokeinterface io.undertow.UndertowMessages.streamIdMustNotBeZeroForFrameType:(I)Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2HeadersParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.getDecoder:()Lio/undertow/protocols/http2/HpackDecoder;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.isClient:()Z
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.getMaxHeaders:()I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.getMaxHeaderListSize:()I
invokespecial io.undertow.protocols.http2.Http2HeadersParser.<init>:(ILio/undertow/protocols/http2/HpackDecoder;ZIII)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
13: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_4
invokestatic org.xnio.Bits.allAreClear:(II)Z
ifeq 60
14: aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
checkcast io.undertow.protocols.http2.Http2HeadersParser
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
15: goto 60
16: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
iconst_4
if_icmpeq 18
17: new io.undertow.protocols.http2.ConnectionErrorException
dup
bipush 6
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.incorrectFrameSize:()Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2RstStreamParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2RstStreamParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
19: goto 60
20: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
ifnonnull 23
21: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
iconst_1
invokevirtual io.undertow.protocols.http2.Http2Channel.sendGoAway:(I)V
22: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.http2ContinuationFrameNotExpected:()Ljava/io/IOException;
athrow
23: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
invokevirtual io.undertow.protocols.http2.Http2HeadersParser.getStreamId:()I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
if_icmpeq 26
24: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
iconst_1
invokevirtual io.undertow.protocols.http2.Http2Channel.sendGoAway:(I)V
25: getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.http2ContinuationFrameNotExpected:()Ljava/io/IOException;
athrow
26: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
27: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokevirtual io.undertow.protocols.http2.Http2HeadersParser.moreData:(I)V
28: goto 60
29: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2PushPromiseParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.getDecoder:()Lio/undertow/protocols/http2/HpackDecoder;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.isClient:()Z
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.getMaxHeaders:()I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
invokevirtual io.undertow.protocols.http2.Http2Channel.getMaxHeaderListSize:()I
invokespecial io.undertow.protocols.http2.Http2PushPromiseParser.<init>:(ILio/undertow/protocols/http2/HpackDecoder;ZIII)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
30: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_4
invokestatic org.xnio.Bits.allAreClear:(II)Z
ifeq 60
31: aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
checkcast io.undertow.protocols.http2.Http2HeadersParser
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
32: goto 60
33: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
ifeq 35
34: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
bipush 7
invokeinterface io.undertow.UndertowMessages.streamIdMustBeZeroForFrameType:(I)Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
35: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2GoAwayParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2GoAwayParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
36: goto 60
37: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
bipush 8
if_icmpeq 39
38: new io.undertow.protocols.http2.ConnectionErrorException
dup
bipush 6
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.invalidPingSize:()Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
ifeq 41
40: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
bipush 6
invokeinterface io.undertow.UndertowMessages.streamIdMustBeZeroForFrameType:(I)Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
41: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2PingParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2PingParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
42: goto 60
43: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
bipush 6
irem
ifeq 45
44: new io.undertow.protocols.http2.ConnectionErrorException
dup
bipush 6
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.incorrectFrameSize:()Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
45: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
ifeq 47
46: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
iconst_4
invokeinterface io.undertow.UndertowMessages.streamIdMustBeZeroForFrameType:(I)Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
47: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2SettingsParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2SettingsParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
48: goto 60
49: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
iconst_4
if_icmpeq 51
50: new io.undertow.protocols.http2.ConnectionErrorException
dup
bipush 6
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.incorrectFrameSize:()Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
51: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2WindowUpdateParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2WindowUpdateParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
52: goto 60
53: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
iconst_5
if_icmpeq 55
54: new io.undertow.protocols.http2.ConnectionErrorException
dup
bipush 6
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
invokeinterface io.undertow.UndertowMessages.incorrectFrameSize:()Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
55: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
ifne 57
56: new io.undertow.protocols.http2.ConnectionErrorException
dup
iconst_1
getstatic io.undertow.UndertowMessages.MESSAGES:Lio/undertow/UndertowMessages;
iconst_2
invokeinterface io.undertow.UndertowMessages.streamIdMustNotBeZeroForFrameType:(I)Ljava/lang/String;
invokespecial io.undertow.protocols.http2.ConnectionErrorException.<init>:(ILjava/lang/String;)V
athrow
57: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2PriorityParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2PriorityParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
58: goto 60
59: StackMap locals:
StackMap stack:
aload 0
new io.undertow.protocols.http2.Http2DiscardParser
dup
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
invokespecial io.undertow.protocols.http2.Http2DiscardParser.<init>:(I)V
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
60: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
aload 1
aload 0
invokevirtual io.undertow.protocols.http2.Http2PushBackParser.parse:(Ljava/nio/ByteBuffer;Lio/undertow/protocols/http2/Http2FrameHeaderParser;)V
61: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
ifnull 64
62: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_4
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 64
63: aload 0
aconst_null
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
64: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
invokevirtual io.undertow.protocols.http2.Http2PushBackParser.isFinished:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
0 65 1 byteBuffer Ljava/nio/ByteBuffer;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
byteBuffer final
private boolean (java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
aload 0
dup
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.read:I
dup_x1
iconst_1
iadd
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.read:I
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
bastore
2: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.read:I
bipush 9
if_icmpge 3
aload 1
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 1
3: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.read:I
bipush 9
if_icmpeq 5
4: iconst_0
ireturn
5: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
iconst_0
baload
sipush 255
iand
bipush 16
ishl
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
6: aload 0
dup
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
iconst_1
baload
sipush 255
iand
bipush 8
ishl
iadd
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
7: aload 0
dup
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
iconst_2
baload
sipush 255
iand
iadd
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
8: aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
iconst_3
baload
sipush 255
iand
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
9: aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
iconst_4
baload
sipush 255
iand
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
10: aload 0
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
iconst_5
baload
sipush -129
iand
sipush 255
iand
bipush 24
ishl
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
11: aload 0
dup
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
bipush 6
baload
sipush 255
iand
bipush 16
ishl
iadd
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
12: aload 0
dup
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
bipush 7
baload
sipush 255
iand
bipush 8
ishl
iadd
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
13: aload 0
dup
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.header:[B
bipush 8
baload
sipush 255
iand
iadd
putfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
14: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
0 15 1 byteBuffer Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
byteBuffer
public long ();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
ifeq 2
1: lconst_0
lreturn
2: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
i2l
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
int ();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.length:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
public io.undertow.server.protocol.framed.AbstractFramedStreamSourceChannel<?, ?, ?> getExistingChannel();
descriptor: ()Lio/undertow/server/protocol/framed/AbstractFramedStreamSourceChannel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
ifeq 3
1: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
bipush 9
if_icmpeq 3
2: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
iconst_2
if_icmpne 16
3: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_1
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 6
4: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
invokevirtual io.undertow.protocols.http2.Http2Channel.removeStreamSource:(I)Lio/undertow/protocols/http2/Http2StreamSourceChannel;
astore 1
start local 1 5: goto 12
end local 1 StackMap locals:
StackMap stack:
6: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
bipush 9
if_icmpne 11
7: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
invokevirtual io.undertow.protocols.http2.Http2Channel.getIncomingStream:(I)Lio/undertow/protocols/http2/Http2StreamSourceChannel;
astore 1
start local 1 8: aload 1
ifnull 12
aload 1
invokevirtual io.undertow.protocols.http2.Http2StreamSourceChannel.isHeadersEndStream:()Z
ifeq 12
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_4
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 12
9: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
invokevirtual io.undertow.protocols.http2.Http2Channel.removeStreamSource:(I)Lio/undertow/protocols/http2/Http2StreamSourceChannel;
pop
10: goto 12
end local 1 11: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
invokevirtual io.undertow.protocols.http2.Http2Channel.getIncomingStream:(I)Lio/undertow/protocols/http2/Http2StreamSourceChannel;
astore 1
start local 1 12: StackMap locals: io.undertow.protocols.http2.Http2StreamSourceChannel
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
ifne 15
aload 1
ifnull 15
13: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
checkcast io.undertow.protocols.http2.Http2DataFrameParser
astore 2
start local 2 14: aload 1
aload 0
invokevirtual io.undertow.protocols.http2.Http2FrameHeaderParser.getFrameLength:()J
aload 2
invokevirtual io.undertow.protocols.http2.Http2DataFrameParser.getPadding:()I
i2l
lsub
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_1
invokestatic org.xnio.Bits.anyAreSet:(II)Z
invokevirtual io.undertow.protocols.http2.Http2StreamSourceChannel.updateContentSize:(JZ)V
end local 2 15: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 16: StackMap locals:
StackMap stack:
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.type:I
iconst_1
if_icmpne 25
17: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
invokevirtual io.undertow.protocols.http2.Http2Channel.getIncomingStream:(I)Lio/undertow/protocols/http2/Http2StreamSourceChannel;
astore 2
start local 2 18: aload 2
ifnull 24
19: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_1
invokestatic org.xnio.Bits.anyAreClear:(II)Z
ifeq 22
20: getstatic io.undertow.UndertowLogger.REQUEST_IO_LOGGER:Lio/undertow/UndertowLogger;
ldc "Received HTTP/2 trailers header without end stream set"
invokeinterface io.undertow.UndertowLogger.debug:(Ljava/lang/Object;)V
21: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
iconst_1
invokevirtual io.undertow.protocols.http2.Http2Channel.sendGoAway:(I)V
22: StackMap locals: io.undertow.protocols.http2.Http2FrameHeaderParser top io.undertow.protocols.http2.Http2StreamSourceChannel
StackMap stack:
aload 2
invokevirtual io.undertow.protocols.http2.Http2StreamSourceChannel.isHeadersEndStream:()Z
ifne 24
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.flags:I
iconst_4
invokestatic org.xnio.Bits.anyAreSet:(II)Z
ifeq 24
23: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.http2Channel:Lio/undertow/protocols/http2/Http2Channel;
aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.streamId:I
invokevirtual io.undertow.protocols.http2.Http2Channel.removeStreamSource:(I)Lio/undertow/protocols/http2/Http2StreamSourceChannel;
pop
24: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 25: StackMap locals: io.undertow.protocols.http2.Http2FrameHeaderParser
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
5 6 1 http2StreamSourceChannel Lio/undertow/protocols/http2/Http2StreamSourceChannel;
8 11 1 http2StreamSourceChannel Lio/undertow/protocols/http2/Http2StreamSourceChannel;
12 16 1 http2StreamSourceChannel Lio/undertow/protocols/http2/Http2StreamSourceChannel;
14 15 2 dataFrameParser Lio/undertow/protocols/http2/Http2DataFrameParser;
18 25 2 channel Lio/undertow/protocols/http2/Http2StreamSourceChannel;
Signature: ()Lio/undertow/server/protocol/framed/AbstractFramedStreamSourceChannel<***>;
io.undertow.protocols.http2.Http2PushBackParser ();
descriptor: ()Lio/undertow/protocols/http2/Http2PushBackParser;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.parser:Lio/undertow/protocols/http2/Http2PushBackParser;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
io.undertow.protocols.http2.Http2HeadersParser ();
descriptor: ()Lio/undertow/protocols/http2/Http2HeadersParser;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.undertow.protocols.http2.Http2FrameHeaderParser.continuationParser:Lio/undertow/protocols/http2/Http2HeadersParser;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/undertow/protocols/http2/Http2FrameHeaderParser;
}
SourceFile: "Http2FrameHeaderParser.java"