public class io.netty.handler.codec.http2.Http2ConnectionHandler extends io.netty.handler.codec.ByteToMessageDecoder implements io.netty.handler.codec.http2.Http2LifecycleManager, io.netty.channel.ChannelOutboundHandler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.netty.handler.codec.http2.Http2ConnectionHandler
super_class: io.netty.handler.codec.ByteToMessageDecoder
{
private static final io.netty.util.internal.logging.InternalLogger logger;
descriptor: Lio/netty/util/internal/logging/InternalLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final io.netty.handler.codec.http2.Http2Headers HEADERS_TOO_LARGE_HEADERS;
descriptor: Lio/netty/handler/codec/http2/Http2Headers;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final io.netty.buffer.ByteBuf HTTP_1_X_BUF;
descriptor: Lio/netty/buffer/ByteBuf;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final io.netty.handler.codec.http2.Http2ConnectionDecoder decoder;
descriptor: Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.handler.codec.http2.Http2ConnectionEncoder encoder;
descriptor: Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.netty.handler.codec.http2.Http2Settings initialSettings;
descriptor: Lio/netty/handler/codec/http2/Http2Settings;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private io.netty.channel.ChannelFutureListener closeListener;
descriptor: Lio/netty/channel/ChannelFutureListener;
flags: (0x0002) ACC_PRIVATE
private io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder byteDecoder;
descriptor: Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
flags: (0x0002) ACC_PRIVATE
private long gracefulShutdownTimeoutMillis;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$http2$Http2Stream$State;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$http2$Http2Exception$ShutdownHint;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc Lio/netty/handler/codec/http2/Http2ConnectionHandler;
invokestatic io.netty.util.internal.logging.InternalLoggerFactory.getInstance:(Ljava/lang/Class;)Lio/netty/util/internal/logging/InternalLogger;
putstatic io.netty.handler.codec.http2.Http2ConnectionHandler.logger:Lio/netty/util/internal/logging/InternalLogger;
1: iconst_0
2: getstatic io.netty.handler.codec.http.HttpResponseStatus.REQUEST_HEADER_FIELDS_TOO_LARGE:Lio/netty/handler/codec/http/HttpResponseStatus;
invokevirtual io.netty.handler.codec.http.HttpResponseStatus.codeAsText:()Lio/netty/util/AsciiString;
iconst_0
anewarray io.netty.util.AsciiString
3: invokestatic io.netty.handler.codec.http2.ReadOnlyHttp2Headers.serverHeaders:(ZLio/netty/util/AsciiString;[Lio/netty/util/AsciiString;)Lio/netty/handler/codec/http2/ReadOnlyHttp2Headers;
putstatic io.netty.handler.codec.http2.Http2ConnectionHandler.HEADERS_TOO_LARGE_HEADERS:Lio/netty/handler/codec/http2/Http2Headers;
4: bipush 7
newarray 8
dup
iconst_0
bipush 72
bastore
dup
iconst_1
bipush 84
bastore
dup
iconst_2
bipush 84
bastore
dup
iconst_3
bipush 80
bastore
dup
iconst_4
bipush 47
bastore
dup
iconst_5
bipush 49
bastore
dup
bipush 6
bipush 46
bastore
invokestatic io.netty.buffer.Unpooled.wrappedBuffer:([B)Lio/netty/buffer/ByteBuf;
5: invokestatic io.netty.buffer.Unpooled.unreleasableBuffer:(Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf;
6: invokevirtual io.netty.buffer.ByteBuf.asReadOnly:()Lio/netty/buffer/ByteBuf;
7: putstatic io.netty.handler.codec.http2.Http2ConnectionHandler.HTTP_1_X_BUF:Lio/netty/buffer/ByteBuf;
8: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(io.netty.handler.codec.http2.Http2ConnectionDecoder, io.netty.handler.codec.http2.Http2ConnectionEncoder, io.netty.handler.codec.http2.Http2Settings);
descriptor: (Lio/netty/handler/codec/http2/Http2ConnectionDecoder;Lio/netty/handler/codec/http2/Http2ConnectionEncoder;Lio/netty/handler/codec/http2/Http2Settings;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial io.netty.handler.codec.ByteToMessageDecoder.<init>:()V
1: aload 0
aload 3
ldc "initialSettings"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.Http2Settings
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.initialSettings:Lio/netty/handler/codec/http2/Http2Settings;
2: aload 0
aload 1
ldc "decoder"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.Http2ConnectionDecoder
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
3: aload 0
aload 2
ldc "encoder"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.Http2ConnectionEncoder
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
4: aload 2
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
aload 1
invokeinterface io.netty.handler.codec.http2.Http2ConnectionDecoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
if_acmpeq 6
5: new java.lang.IllegalArgumentException
dup
ldc "Encoder and Decoder do not share the same connection object"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler io.netty.handler.codec.http2.Http2ConnectionDecoder io.netty.handler.codec.http2.Http2ConnectionEncoder io.netty.handler.codec.http2.Http2Settings
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 7 1 decoder Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
0 7 2 encoder Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
0 7 3 initialSettings Lio/netty/handler/codec/http2/Http2Settings;
MethodParameters:
Name Flags
decoder
encoder
initialSettings
void <init>(boolean, io.netty.handler.codec.http2.Http2FrameWriter, io.netty.handler.codec.http2.Http2FrameLogger, io.netty.handler.codec.http2.Http2Settings);
descriptor: (ZLio/netty/handler/codec/http2/Http2FrameWriter;Lio/netty/handler/codec/http2/Http2FrameLogger;Lio/netty/handler/codec/http2/Http2Settings;)V
flags: (0x0000)
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial io.netty.handler.codec.ByteToMessageDecoder.<init>:()V
1: aload 0
aload 4
ldc "initialSettings"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.Http2Settings
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.initialSettings:Lio/netty/handler/codec/http2/Http2Settings;
2: new io.netty.handler.codec.http2.DefaultHttp2Connection
dup
iload 1
invokespecial io.netty.handler.codec.http2.DefaultHttp2Connection.<init>:(Z)V
astore 5
start local 5 3: aload 4
invokevirtual io.netty.handler.codec.http2.Http2Settings.maxHeaderListSize:()Ljava/lang/Long;
astore 6
start local 6 4: new io.netty.handler.codec.http2.DefaultHttp2FrameReader
dup
aload 6
ifnonnull 6
5: new io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder
dup
iconst_1
invokespecial io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder.<init>:(Z)V
goto 7
6: StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler int io.netty.handler.codec.http2.Http2FrameWriter io.netty.handler.codec.http2.Http2FrameLogger io.netty.handler.codec.http2.Http2Settings io.netty.handler.codec.http2.Http2Connection java.lang.Long
StackMap stack: new 4 new 4
new io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder
dup
iconst_1
aload 6
invokevirtual java.lang.Long.longValue:()J
invokespecial io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder.<init>:(ZJ)V
7: StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler int io.netty.handler.codec.http2.Http2FrameWriter io.netty.handler.codec.http2.Http2FrameLogger io.netty.handler.codec.http2.Http2Settings io.netty.handler.codec.http2.Http2Connection java.lang.Long
StackMap stack: new 4 new 4 io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder
invokespecial io.netty.handler.codec.http2.DefaultHttp2FrameReader.<init>:(Lio/netty/handler/codec/http2/Http2HeadersDecoder;)V
astore 7
start local 7 8: aload 3
ifnull 11
9: new io.netty.handler.codec.http2.Http2OutboundFrameLogger
dup
aload 2
aload 3
invokespecial io.netty.handler.codec.http2.Http2OutboundFrameLogger.<init>:(Lio/netty/handler/codec/http2/Http2FrameWriter;Lio/netty/handler/codec/http2/Http2FrameLogger;)V
astore 2
10: new io.netty.handler.codec.http2.Http2InboundFrameLogger
dup
aload 7
aload 3
invokespecial io.netty.handler.codec.http2.Http2InboundFrameLogger.<init>:(Lio/netty/handler/codec/http2/Http2FrameReader;Lio/netty/handler/codec/http2/Http2FrameLogger;)V
astore 7
11: StackMap locals: io.netty.handler.codec.http2.Http2FrameReader
StackMap stack:
aload 0
new io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder
dup
aload 5
aload 2
invokespecial io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder.<init>:(Lio/netty/handler/codec/http2/Http2Connection;Lio/netty/handler/codec/http2/Http2FrameWriter;)V
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
12: aload 0
new io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder
dup
aload 5
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
aload 7
invokespecial io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder.<init>:(Lio/netty/handler/codec/http2/Http2Connection;Lio/netty/handler/codec/http2/Http2ConnectionEncoder;Lio/netty/handler/codec/http2/Http2FrameReader;)V
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
13: 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 14 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 14 1 server Z
0 14 2 frameWriter Lio/netty/handler/codec/http2/Http2FrameWriter;
0 14 3 frameLogger Lio/netty/handler/codec/http2/Http2FrameLogger;
0 14 4 initialSettings Lio/netty/handler/codec/http2/Http2Settings;
3 14 5 connection Lio/netty/handler/codec/http2/Http2Connection;
4 14 6 maxHeaderListSize Ljava/lang/Long;
8 14 7 frameReader Lio/netty/handler/codec/http2/Http2FrameReader;
MethodParameters:
Name Flags
server
frameWriter
frameLogger
initialSettings
public long gracefulShutdownTimeoutMillis();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.gracefulShutdownTimeoutMillis:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
public void gracefulShutdownTimeoutMillis(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc -1
lcmp
ifge 4
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "gracefulShutdownTimeoutMillis: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
2: ldc " (expected: -1 for indefinite or >= 0)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
lload 1
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.gracefulShutdownTimeoutMillis:J
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 6 1 gracefulShutdownTimeoutMillis J
MethodParameters:
Name Flags
gracefulShutdownTimeoutMillis
public io.netty.handler.codec.http2.Http2Connection connection();
descriptor: ()Lio/netty/handler/codec/http2/Http2Connection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
public io.netty.handler.codec.http2.Http2ConnectionDecoder decoder();
descriptor: ()Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
public io.netty.handler.codec.http2.Http2ConnectionEncoder encoder();
descriptor: ()Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
private boolean prefaceSent();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
ifnull 1
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder.prefaceSent:()Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
public void onHttpClientUpgrade();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.isServer:()Z
ifeq 2
1: getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "Client-side HTTP upgrade requested for a server"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.prefaceSent:()Z
ifne 4
3: getstatic io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "HTTP upgrade must occur after preface was sent"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionDecoder.prefaceReceived:()Z
ifeq 6
5: getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "HTTP upgrade must occur before HTTP/2 preface is received"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.local:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
iconst_1
iconst_1
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.createStream:(IZ)Lio/netty/handler/codec/http2/Http2Stream;
pop
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
Exceptions:
throws io.netty.handler.codec.http2.Http2Exception
public void onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings);
descriptor: (Lio/netty/handler/codec/http2/Http2Settings;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.isServer:()Z
ifne 2
1: getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "Server-side HTTP upgrade requested for a client"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.prefaceSent:()Z
ifne 4
3: getstatic io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "HTTP upgrade must occur after preface was sent"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionDecoder.prefaceReceived:()Z
ifeq 6
5: getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "HTTP upgrade must occur before HTTP/2 preface is received"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
aload 1
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.remoteSettings:(Lio/netty/handler/codec/http2/Http2Settings;)V
7: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.remote:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
iconst_1
iconst_1
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.createStream:(IZ)Lio/netty/handler/codec/http2/Http2Stream;
pop
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 9 1 settings Lio/netty/handler/codec/http2/Http2Settings;
Exceptions:
throws io.netty.handler.codec.http2.Http2Exception
MethodParameters:
Name Flags
settings
public void flush(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.flowController:()Lio/netty/handler/codec/http2/Http2RemoteFlowController;
invokeinterface io.netty.handler.codec.http2.Http2RemoteFlowController.writePendingBytes:()V
1: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
pop
2: goto 8
StackMap locals:
StackMap stack: io.netty.handler.codec.http2.Http2Exception
3: astore 2
start local 2 4: aload 0
aload 1
iconst_1
aload 2
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;)V
end local 2 5: goto 8
6: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
start local 2 7: aload 0
aload 1
iconst_1
getstatic io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
aload 2
ldc "Error flushing"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;)V
end local 2 8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 9 1 ctx Lio/netty/channel/ChannelHandlerContext;
4 5 2 e Lio/netty/handler/codec/http2/Http2Exception;
7 8 2 cause Ljava/lang/Throwable;
Exception table:
from to target type
0 2 3 Class io.netty.handler.codec.http2.Http2Exception
0 2 6 Class java.lang.Throwable
MethodParameters:
Name Flags
ctx
public void handlerAdded(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
aload 0
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.lifecycleManager:(Lio/netty/handler/codec/http2/Http2LifecycleManager;)V
1: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
aload 0
invokeinterface io.netty.handler.codec.http2.Http2ConnectionDecoder.lifecycleManager:(Lio/netty/handler/codec/http2/Http2LifecycleManager;)V
2: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.flowController:()Lio/netty/handler/codec/http2/Http2RemoteFlowController;
aload 1
invokeinterface io.netty.handler.codec.http2.Http2RemoteFlowController.channelHandlerContext:(Lio/netty/channel/ChannelHandlerContext;)V
3: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.decoder:Lio/netty/handler/codec/http2/Http2ConnectionDecoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionDecoder.flowController:()Lio/netty/handler/codec/http2/Http2LocalFlowController;
aload 1
invokeinterface io.netty.handler.codec.http2.Http2LocalFlowController.channelHandlerContext:(Lio/netty/channel/ChannelHandlerContext;)V
4: aload 0
new io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder
dup
aload 0
aload 1
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionHandler;Lio/netty/channel/ChannelHandlerContext;)V
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 6 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
protected void handlerRemoved0(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
ifnull 3
1: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder.handlerRemoved:(Lio/netty/channel/ChannelHandlerContext;)V
2: aload 0
aconst_null
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 4 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
public void channelActive(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
ifnonnull 2
1: aload 0
new io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder
dup
aload 0
aload 1
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionHandler;Lio/netty/channel/ChannelHandlerContext;)V
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
2: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder.channelActive:(Lio/netty/channel/ChannelHandlerContext;)V
3: aload 0
aload 1
invokespecial io.netty.handler.codec.ByteToMessageDecoder.channelActive:(Lio/netty/channel/ChannelHandlerContext;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 5 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
public void channelInactive(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial io.netty.handler.codec.ByteToMessageDecoder.channelInactive:(Lio/netty/channel/ChannelHandlerContext;)V
1: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
ifnull 4
2: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder.channelInactive:(Lio/netty/channel/ChannelHandlerContext;)V
3: aload 0
aconst_null
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 5 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
public void channelWritabilityChanged(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.isWritable:()Z
ifeq 2
1: aload 0
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.flush:(Lio/netty/channel/ChannelHandlerContext;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.flowController:()Lio/netty/handler/codec/http2/Http2RemoteFlowController;
invokeinterface io.netty.handler.codec.http2.Http2RemoteFlowController.channelWritabilityChanged:()V
3: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
4: astore 2
5: aload 0
aload 1
invokespecial io.netty.handler.codec.ByteToMessageDecoder.channelWritabilityChanged:(Lio/netty/channel/ChannelHandlerContext;)V
6: aload 2
athrow
7: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial io.netty.handler.codec.ByteToMessageDecoder.channelWritabilityChanged:(Lio/netty/channel/ChannelHandlerContext;)V
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 9 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exception table:
from to target type
0 4 4 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
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=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.byteDecoder:Lio/netty/handler/codec/http2/Http2ConnectionHandler$BaseDecoder;
aload 1
aload 2
aload 3
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder.decode:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 in Lio/netty/buffer/ByteBuf;
0 2 3 out Ljava/util/List<Ljava/lang/Object;>;
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
in
out
public void bind(io.netty.channel.ChannelHandlerContext, java.net.SocketAddress, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokeinterface io.netty.channel.ChannelHandlerContext.bind:(Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 localAddress Ljava/net/SocketAddress;
0 2 3 promise Lio/netty/channel/ChannelPromise;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
localAddress
promise
public void connect(io.netty.channel.ChannelHandlerContext, java.net.SocketAddress, java.net.SocketAddress, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/net/SocketAddress;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 2
aload 3
aload 4
invokeinterface io.netty.channel.ChannelHandlerContext.connect:(Ljava/net/SocketAddress;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 remoteAddress Ljava/net/SocketAddress;
0 2 3 localAddress Ljava/net/SocketAddress;
0 2 4 promise Lio/netty/channel/ChannelPromise;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
remoteAddress
localAddress
promise
public void disconnect(io.netty.channel.ChannelHandlerContext, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokeinterface io.netty.channel.ChannelHandlerContext.disconnect:(Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 promise Lio/netty/channel/ChannelPromise;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
promise
public void close(io.netty.channel.ChannelHandlerContext, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface io.netty.channel.ChannelPromise.unvoid:()Lio/netty/channel/ChannelPromise;
astore 2
1: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.isActive:()Z
ifne 4
2: aload 1
aload 2
invokeinterface io.netty.channel.ChannelHandlerContext.close:(Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
3: return
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.goAwaySent:()Z
ifeq 5
aload 1
getstatic io.netty.buffer.Unpooled.EMPTY_BUFFER:Lio/netty/buffer/ByteBuf;
invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
goto 6
StackMap locals:
StackMap stack:
5: aload 0
aload 1
aconst_null
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.goAway:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Exception;)Lio/netty/channel/ChannelFuture;
StackMap locals:
StackMap stack: io.netty.channel.ChannelFuture
6: astore 3
start local 3 7: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
pop
8: aload 0
aload 1
aload 3
aload 2
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.doGracefulShutdown:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelFuture;Lio/netty/channel/ChannelPromise;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 10 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 10 2 promise Lio/netty/channel/ChannelPromise;
7 10 3 future Lio/netty/channel/ChannelFuture;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
promise
private void doGracefulShutdown(io.netty.channel.ChannelHandlerContext, io.netty.channel.ChannelFuture, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelFuture;Lio/netty/channel/ChannelPromise;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.isGracefulShutdownComplete:()Z
ifeq 3
1: aload 2
new io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener
dup
aload 1
aload 3
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener.<init>:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
2: goto 9
3: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.gracefulShutdownTimeoutMillis:J
lconst_0
lcmp
ifge 6
4: aload 0
new io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener
dup
aload 1
aload 3
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener.<init>:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.closeListener:Lio/netty/channel/ChannelFutureListener;
5: goto 9
6: StackMap locals:
StackMap stack:
aload 0
new io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener
dup
aload 1
aload 3
7: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.gracefulShutdownTimeoutMillis:J
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener.<init>:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;JLjava/util/concurrent/TimeUnit;)V
8: putfield io.netty.handler.codec.http2.Http2ConnectionHandler.closeListener:Lio/netty/channel/ChannelFutureListener;
9: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 10 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 10 2 future Lio/netty/channel/ChannelFuture;
0 10 3 promise Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
ctx
future
promise
public void deregister(io.netty.channel.ChannelHandlerContext, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokeinterface io.netty.channel.ChannelHandlerContext.deregister:(Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 promise Lio/netty/channel/ChannelPromise;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
promise
public void read(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.read:()Lio/netty/channel/ChannelHandlerContext;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
public void write(io.netty.channel.ChannelHandlerContext, java.lang.Object, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokeinterface io.netty.channel.ChannelHandlerContext.write:(Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 msg Ljava/lang/Object;
0 2 3 promise Lio/netty/channel/ChannelPromise;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
msg
promise
public void channelReadComplete(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.channelReadComplete0:(Lio/netty/channel/ChannelHandlerContext;)V
1: goto 5
StackMap locals:
StackMap stack: java.lang.Throwable
2: astore 2
3: aload 0
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.flush:(Lio/netty/channel/ChannelHandlerContext;)V
4: aload 2
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.flush:(Lio/netty/channel/ChannelHandlerContext;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 7 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exception table:
from to target type
0 2 2 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
void channelReadComplete0(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial io.netty.handler.codec.ByteToMessageDecoder.channelReadComplete:(Lio/netty/channel/ChannelHandlerContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
public void exceptionCaught(io.netty.channel.ChannelHandlerContext, java.lang.Throwable);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic io.netty.handler.codec.http2.Http2CodecUtil.getEmbeddedHttp2Exception:(Ljava/lang/Throwable;)Lio/netty/handler/codec/http2/Http2Exception;
ifnull 3
1: aload 0
aload 1
iconst_0
aload 2
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial io.netty.handler.codec.ByteToMessageDecoder.exceptionCaught:(Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)V
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 5 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 5 2 cause Ljava/lang/Throwable;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
cause
public void closeStreamLocal(io.netty.handler.codec.http2.Http2Stream, io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Stream$State:()[I
aload 1
invokeinterface io.netty.handler.codec.http2.Http2Stream.state:()Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iaload
tableswitch { // 4 - 5
4: 1
5: 1
default: 3
}
1: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.netty.handler.codec.http2.Http2Stream.closeLocalSide:()Lio/netty/handler/codec/http2/Http2Stream;
pop
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.closeStream:(Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 5 1 stream Lio/netty/handler/codec/http2/Http2Stream;
0 5 2 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
stream
future
public void closeStreamRemote(io.netty.handler.codec.http2.Http2Stream, io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Stream$State:()[I
aload 1
invokeinterface io.netty.handler.codec.http2.Http2Stream.state:()Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iaload
tableswitch { // 4 - 6
4: 1
5: 3
6: 1
default: 3
}
1: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.netty.handler.codec.http2.Http2Stream.closeRemoteSide:()Lio/netty/handler/codec/http2/Http2Stream;
pop
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.closeStream:(Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 5 1 stream Lio/netty/handler/codec/http2/Http2Stream;
0 5 2 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
stream
future
public void closeStream(io.netty.handler.codec.http2.Http2Stream, io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface io.netty.handler.codec.http2.Http2Stream.close:()Lio/netty/handler/codec/http2/Http2Stream;
pop
1: aload 2
invokeinterface io.netty.channel.ChannelFuture.isDone:()Z
ifeq 4
2: aload 0
aload 2
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.checkCloseConnection:(Lio/netty/channel/ChannelFuture;)V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 2
new io.netty.handler.codec.http2.Http2ConnectionHandler$1
dup
aload 0
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$1.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionHandler;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 6 1 stream Lio/netty/handler/codec/http2/Http2Stream;
0 6 2 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
stream final
future
public void onError(io.netty.channel.ChannelHandlerContext, boolean, java.lang.Throwable);
descriptor: (Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic io.netty.handler.codec.http2.Http2CodecUtil.getEmbeddedHttp2Exception:(Ljava/lang/Throwable;)Lio/netty/handler/codec/http2/Http2Exception;
astore 4
start local 4 1: aload 4
invokestatic io.netty.handler.codec.http2.Http2Exception.isStreamError:(Lio/netty/handler/codec/http2/Http2Exception;)Z
ifeq 4
2: aload 0
aload 1
iload 2
aload 3
aload 4
checkcast io.netty.handler.codec.http2.Http2Exception$StreamException
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onStreamError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception$StreamException;)V
3: goto 12
StackMap locals: io.netty.handler.codec.http2.Http2Exception
StackMap stack:
4: aload 4
instanceof io.netty.handler.codec.http2.Http2Exception$CompositeStreamException
ifeq 11
5: aload 4
checkcast io.netty.handler.codec.http2.Http2Exception$CompositeStreamException
astore 5
start local 5 6: aload 5
invokevirtual io.netty.handler.codec.http2.Http2Exception$CompositeStreamException.iterator:()Ljava/util/Iterator;
astore 7
goto 9
StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler io.netty.channel.ChannelHandlerContext int java.lang.Throwable io.netty.handler.codec.http2.Http2Exception io.netty.handler.codec.http2.Http2Exception$CompositeStreamException top java.util.Iterator
StackMap stack:
7: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.Http2Exception$StreamException
astore 6
start local 6 8: aload 0
aload 1
iload 2
aload 3
aload 6
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onStreamError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception$StreamException;)V
end local 6 9: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 5 10: goto 12
11: StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler io.netty.channel.ChannelHandlerContext int java.lang.Throwable io.netty.handler.codec.http2.Http2Exception
StackMap stack:
aload 0
aload 1
iload 2
aload 3
aload 4
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onConnectionError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception;)V
12: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.flush:()Lio/netty/channel/ChannelHandlerContext;
pop
13: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 14 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 14 2 outbound Z
0 14 3 cause Ljava/lang/Throwable;
1 14 4 embedded Lio/netty/handler/codec/http2/Http2Exception;
6 10 5 compositException Lio/netty/handler/codec/http2/Http2Exception$CompositeStreamException;
8 9 6 streamException Lio/netty/handler/codec/http2/Http2Exception$StreamException;
MethodParameters:
Name Flags
ctx
outbound
cause
protected boolean isGracefulShutdownComplete();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.numActiveStreams:()I
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
protected void onConnectionError(io.netty.channel.ChannelHandlerContext, boolean, java.lang.Throwable, io.netty.handler.codec.http2.Http2Exception);
descriptor: (Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
ifnonnull 2
1: new io.netty.handler.codec.http2.Http2Exception
dup
getstatic io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
aload 3
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
aload 3
invokespecial io.netty.handler.codec.http2.Http2Exception.<init>:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;Ljava/lang/Throwable;)V
astore 4
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
astore 5
start local 5 3: aload 0
aload 1
aload 4
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.goAway:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Exception;)Lio/netty/channel/ChannelFuture;
astore 6
start local 6 4: invokestatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Exception$ShutdownHint:()[I
aload 4
invokevirtual io.netty.handler.codec.http2.Http2Exception.shutdownHint:()Lio/netty/handler/codec/http2/Http2Exception$ShutdownHint;
invokevirtual io.netty.handler.codec.http2.Http2Exception$ShutdownHint.ordinal:()I
iaload
tableswitch { // 2 - 2
2: 5
default: 7
}
5: StackMap locals: io.netty.channel.ChannelPromise io.netty.channel.ChannelFuture
StackMap stack:
aload 0
aload 1
aload 6
aload 5
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.doGracefulShutdown:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelFuture;Lio/netty/channel/ChannelPromise;)V
6: goto 8
7: StackMap locals:
StackMap stack:
aload 6
new io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener
dup
aload 1
aload 5
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener.<init>:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelPromise;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
8: StackMap locals:
StackMap stack:
return
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 9 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 9 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 9 2 outbound Z
0 9 3 cause Ljava/lang/Throwable;
0 9 4 http2Ex Lio/netty/handler/codec/http2/Http2Exception;
3 9 5 promise Lio/netty/channel/ChannelPromise;
4 9 6 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
ctx
outbound
cause
http2Ex
protected void onStreamError(io.netty.channel.ChannelHandlerContext, boolean, java.lang.Throwable, io.netty.handler.codec.http2.Http2Exception$StreamException);
descriptor: (Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception$StreamException;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
invokevirtual io.netty.handler.codec.http2.Http2Exception$StreamException.streamId:()I
istore 5
start local 5 1: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
iload 5
invokeinterface io.netty.handler.codec.http2.Http2Connection.stream:(I)Lio/netty/handler/codec/http2/Http2Stream;
astore 6
start local 6 2: aload 4
instanceof io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException
ifeq 16
3: aload 4
checkcast io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException
invokevirtual io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException.duringDecode:()Z
ifeq 16
4: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.isServer:()Z
ifeq 16
5: aload 6
ifnonnull 11
6: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.remote:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
iload 5
iconst_1
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.createStream:(IZ)Lio/netty/handler/codec/http2/Http2Stream;
astore 6
7: goto 11
StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler io.netty.channel.ChannelHandlerContext int java.lang.Throwable io.netty.handler.codec.http2.Http2Exception$StreamException int io.netty.handler.codec.http2.Http2Stream
StackMap stack: io.netty.handler.codec.http2.Http2Exception
8: pop
9: aload 0
aload 1
iload 5
aload 4
invokevirtual io.netty.handler.codec.http2.Http2Exception$StreamException.error:()Lio/netty/handler/codec/http2/Http2Error;
invokevirtual io.netty.handler.codec.http2.Http2Error.code:()J
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.resetUnknownStream:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
10: return
11: StackMap locals:
StackMap stack:
aload 6
ifnull 16
aload 6
invokeinterface io.netty.handler.codec.http2.Http2Stream.isHeadersSent:()Z
ifne 16
12: aload 0
aload 1
aload 6
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.handleServerHeaderDecodeSizeError:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;)V
13: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 7
start local 7 15: aload 0
aload 1
iload 2
getstatic io.netty.handler.codec.http2.Http2Error.INTERNAL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
aload 7
ldc "Error DecodeSizeError"
iconst_0
anewarray java.lang.Object
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;)V
end local 7 16: StackMap locals:
StackMap stack:
aload 6
ifnonnull 19
17: aload 0
aload 1
iload 5
aload 4
invokevirtual io.netty.handler.codec.http2.Http2Exception$StreamException.error:()Lio/netty/handler/codec/http2/Http2Error;
invokevirtual io.netty.handler.codec.http2.Http2Error.code:()J
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.resetUnknownStream:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
18: goto 20
19: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 6
aload 4
invokevirtual io.netty.handler.codec.http2.Http2Exception$StreamException.error:()Lio/netty/handler/codec/http2/Http2Error;
invokevirtual io.netty.handler.codec.http2.Http2Error.code:()J
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.resetStream:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;JLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
20: StackMap locals:
StackMap stack:
return
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 21 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 21 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 21 2 outbound Z
0 21 3 cause Ljava/lang/Throwable;
0 21 4 http2Ex Lio/netty/handler/codec/http2/Http2Exception$StreamException;
1 21 5 streamId I
2 21 6 stream Lio/netty/handler/codec/http2/Http2Stream;
15 16 7 cause2 Ljava/lang/Throwable;
Exception table:
from to target type
6 7 8 Class io.netty.handler.codec.http2.Http2Exception
12 13 14 Class java.lang.Throwable
MethodParameters:
Name Flags
ctx
outbound
cause
http2Ex
protected void handleServerHeaderDecodeSizeError(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.http2.Http2Stream);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:()Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
aload 1
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.id:()I
getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.HEADERS_TOO_LARGE_HEADERS:Lio/netty/handler/codec/http2/Http2Headers;
iconst_0
iconst_1
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.writeHeaders:(Lio/netty/channel/ChannelHandlerContext;ILio/netty/handler/codec/http2/Http2Headers;IZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 2 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 2 2 stream Lio/netty/handler/codec/http2/Http2Stream;
MethodParameters:
Name Flags
ctx
stream
protected io.netty.handler.codec.http2.Http2FrameWriter frameWriter();
descriptor: ()Lio/netty/handler/codec/http2/Http2FrameWriter;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.encoder:()Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
invokeinterface io.netty.handler.codec.http2.Http2ConnectionEncoder.frameWriter:()Lio/netty/handler/codec/http2/Http2FrameWriter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
private io.netty.channel.ChannelFuture resetUnknownStream(io.netty.channel.ChannelHandlerContext, int, long, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.frameWriter:()Lio/netty/handler/codec/http2/Http2FrameWriter;
aload 1
iload 2
lload 3
aload 5
invokeinterface io.netty.handler.codec.http2.Http2FrameWriter.writeRstStream:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
astore 6
start local 6 1: aload 6
invokeinterface io.netty.channel.ChannelFuture.isDone:()Z
ifeq 4
2: aload 0
aload 1
aload 6
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.closeConnectionOnError:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelFuture;)V
3: goto 5
4: StackMap locals: io.netty.channel.ChannelFuture
StackMap stack:
aload 6
new io.netty.handler.codec.http2.Http2ConnectionHandler$2
dup
aload 0
aload 1
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$2.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionHandler;Lio/netty/channel/ChannelHandlerContext;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
5: StackMap locals:
StackMap stack:
aload 6
areturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 6 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 6 2 streamId I
0 6 3 errorCode J
0 6 5 promise Lio/netty/channel/ChannelPromise;
1 6 6 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
ctx final
streamId
errorCode
promise
public io.netty.channel.ChannelFuture resetStream(io.netty.channel.ChannelHandlerContext, int, long, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
iload 2
invokeinterface io.netty.handler.codec.http2.Http2Connection.stream:(I)Lio/netty/handler/codec/http2/Http2Stream;
astore 6
start local 6 1: aload 6
ifnonnull 3
2: aload 0
aload 1
iload 2
lload 3
aload 5
invokeinterface io.netty.channel.ChannelPromise.unvoid:()Lio/netty/channel/ChannelPromise;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.resetUnknownStream:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
3: StackMap locals: io.netty.handler.codec.http2.Http2Stream
StackMap stack:
aload 0
aload 1
aload 6
lload 3
aload 5
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.resetStream:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;JLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 4 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 4 2 streamId I
0 4 3 errorCode J
0 4 5 promise Lio/netty/channel/ChannelPromise;
1 4 6 stream Lio/netty/handler/codec/http2/Http2Stream;
MethodParameters:
Name Flags
ctx final
streamId
errorCode
promise
private io.netty.channel.ChannelFuture resetStream(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.http2.Http2Stream, long, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;JLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 5
invokeinterface io.netty.channel.ChannelPromise.unvoid:()Lio/netty/channel/ChannelPromise;
astore 5
1: aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.isResetSent:()Z
ifeq 3
2: aload 5
invokeinterface io.netty.channel.ChannelPromise.setSuccess:()Lio/netty/channel/ChannelPromise;
areturn
3: StackMap locals:
StackMap stack:
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.state:()Lio/netty/handler/codec/http2/Http2Stream$State;
getstatic io.netty.handler.codec.http2.Http2Stream$State.IDLE:Lio/netty/handler/codec/http2/Http2Stream$State;
if_acmpeq 5
4: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.local:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.created:(Lio/netty/handler/codec/http2/Http2Stream;)Z
ifeq 7
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.isHeadersSent:()Z
ifne 7
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.isPushPromiseSent:()Z
ifne 7
5: StackMap locals:
StackMap stack:
aload 5
invokeinterface io.netty.channel.ChannelPromise.setSuccess:()Lio/netty/channel/ChannelPromise;
astore 6
start local 6 6: goto 8
end local 6 7: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.frameWriter:()Lio/netty/handler/codec/http2/Http2FrameWriter;
aload 1
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.id:()I
lload 3
aload 5
invokeinterface io.netty.handler.codec.http2.Http2FrameWriter.writeRstStream:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
astore 6
start local 6 8: StackMap locals: io.netty.channel.ChannelFuture
StackMap stack:
aload 2
invokeinterface io.netty.handler.codec.http2.Http2Stream.resetSent:()Lio/netty/handler/codec/http2/Http2Stream;
pop
9: aload 6
invokeinterface io.netty.channel.ChannelFuture.isDone:()Z
ifeq 12
10: aload 0
aload 1
aload 2
aload 6
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.processRstStreamWriteResult:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
11: goto 13
12: StackMap locals:
StackMap stack:
aload 6
new io.netty.handler.codec.http2.Http2ConnectionHandler$3
dup
aload 0
aload 1
aload 2
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$3.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionHandler;Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
13: StackMap locals:
StackMap stack:
aload 6
areturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 14 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 14 2 stream Lio/netty/handler/codec/http2/Http2Stream;
0 14 3 errorCode J
0 14 5 promise Lio/netty/channel/ChannelPromise;
6 7 6 future Lio/netty/channel/ChannelFuture;
8 14 6 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
ctx final
stream final
errorCode
promise
public io.netty.channel.ChannelFuture goAway(io.netty.channel.ChannelHandlerContext, int, long, io.netty.buffer.ByteBuf, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;IJLio/netty/buffer/ByteBuf;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 5 start local 6 0: aload 6
invokeinterface io.netty.channel.ChannelPromise.unvoid:()Lio/netty/channel/ChannelPromise;
astore 6
1: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
astore 7
start local 7 2: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.goAwaySent:()Z
ifeq 11
3: iload 2
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.remote:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.lastStreamKnownByPeer:()I
if_icmpne 7
4: aload 5
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
5: aload 6
invokeinterface io.netty.channel.ChannelPromise.setSuccess:()Lio/netty/channel/ChannelPromise;
6: areturn
7: StackMap locals: io.netty.handler.codec.http2.Http2Connection
StackMap stack:
iload 2
aload 7
invokeinterface io.netty.handler.codec.http2.Http2Connection.remote:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.lastStreamKnownByPeer:()I
if_icmple 11
8: getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "Last stream identifier must not increase between sending multiple GOAWAY frames (was '%d', is '%d')."
iconst_2
anewarray java.lang.Object
dup
iconst_0
9: aload 7
invokeinterface io.netty.handler.codec.http2.Http2Connection.remote:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.lastStreamKnownByPeer:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
10: invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
athrow
11: StackMap locals:
StackMap stack:
aload 7
iload 2
lload 3
aload 5
invokeinterface io.netty.handler.codec.http2.Http2Connection.goAwaySent:(IJLio/netty/buffer/ByteBuf;)V
12: aload 5
invokevirtual io.netty.buffer.ByteBuf.retain:()Lio/netty/buffer/ByteBuf;
pop
13: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.frameWriter:()Lio/netty/handler/codec/http2/Http2FrameWriter;
aload 1
iload 2
lload 3
aload 5
aload 6
invokeinterface io.netty.handler.codec.http2.Http2FrameWriter.writeGoAway:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/buffer/ByteBuf;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
astore 8
start local 8 14: aload 8
invokeinterface io.netty.channel.ChannelFuture.isDone:()Z
ifeq 17
15: aload 1
iload 2
lload 3
aload 5
aload 8
invokestatic io.netty.handler.codec.http2.Http2ConnectionHandler.processGoAwayWriteResult:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/buffer/ByteBuf;Lio/netty/channel/ChannelFuture;)V
16: goto 18
17: StackMap locals: io.netty.channel.ChannelFuture
StackMap stack:
aload 8
new io.netty.handler.codec.http2.Http2ConnectionHandler$4
dup
aload 0
aload 1
iload 2
lload 3
aload 5
invokespecial io.netty.handler.codec.http2.Http2ConnectionHandler$4.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionHandler;Lio/netty/channel/ChannelHandlerContext;IJLio/netty/buffer/ByteBuf;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
18: StackMap locals:
StackMap stack:
aload 8
19: areturn
end local 8 end local 7 20: StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler io.netty.channel.ChannelHandlerContext int long io.netty.buffer.ByteBuf io.netty.channel.ChannelPromise
StackMap stack: java.lang.Throwable
astore 7
start local 7 21: aload 5
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
22: aload 6
aload 7
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
areturn
end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 23 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 23 2 lastStreamId I
0 23 3 errorCode J
0 23 5 debugData Lio/netty/buffer/ByteBuf;
0 23 6 promise Lio/netty/channel/ChannelPromise;
2 20 7 connection Lio/netty/handler/codec/http2/Http2Connection;
14 20 8 future Lio/netty/channel/ChannelFuture;
21 23 7 cause Ljava/lang/Throwable;
Exception table:
from to target type
0 6 20 Class java.lang.Throwable
7 19 20 Class java.lang.Throwable
MethodParameters:
Name Flags
ctx final
lastStreamId final
errorCode final
debugData final
promise
private void checkCloseConnection(io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/channel/ChannelFuture;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.closeListener:Lio/netty/channel/ChannelFutureListener;
ifnull 7
aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.isGracefulShutdownComplete:()Z
ifeq 7
1: aload 0
getfield io.netty.handler.codec.http2.Http2ConnectionHandler.closeListener:Lio/netty/channel/ChannelFutureListener;
astore 2
start local 2 2: aload 0
aconst_null
putfield io.netty.handler.codec.http2.Http2ConnectionHandler.closeListener:Lio/netty/channel/ChannelFutureListener;
3: aload 2
aload 1
invokeinterface io.netty.channel.ChannelFutureListener.operationComplete:(Lio/netty/util/concurrent/Future;)V
4: goto 7
StackMap locals: io.netty.handler.codec.http2.Http2ConnectionHandler io.netty.channel.ChannelFuture io.netty.channel.ChannelFutureListener
StackMap stack: java.lang.Exception
5: astore 3
start local 3 6: new java.lang.IllegalStateException
dup
ldc "Close listener threw an unexpected exception"
aload 3
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 8 1 future Lio/netty/channel/ChannelFuture;
2 7 2 closeListener Lio/netty/channel/ChannelFutureListener;
6 7 3 e Ljava/lang/Exception;
Exception table:
from to target type
3 4 5 Class java.lang.Exception
MethodParameters:
Name Flags
future
private io.netty.channel.ChannelFuture goAway(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.http2.Http2Exception);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Exception;)Lio/netty/channel/ChannelFuture;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 1
aload 2
invokevirtual io.netty.handler.codec.http2.Http2Exception.error:()Lio/netty/handler/codec/http2/Http2Error;
invokevirtual io.netty.handler.codec.http2.Http2Error.code:()J
goto 2
StackMap locals:
StackMap stack:
1: getstatic io.netty.handler.codec.http2.Http2Error.NO_ERROR:Lio/netty/handler/codec/http2/Http2Error;
invokevirtual io.netty.handler.codec.http2.Http2Error.code:()J
StackMap locals:
StackMap stack: long
2: lstore 3
start local 3 3: aload 0
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.remote:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.lastStreamCreated:()I
istore 5
start local 5 4: aload 0
aload 1
iload 5
lload 3
aload 1
aload 2
invokestatic io.netty.handler.codec.http2.Http2CodecUtil.toByteBuf:(Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)Lio/netty/buffer/ByteBuf;
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.newPromise:()Lio/netty/channel/ChannelPromise;
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.goAway:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/buffer/ByteBuf;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
end local 5 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/http2/Http2ConnectionHandler;
0 5 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 5 2 cause Lio/netty/handler/codec/http2/Http2Exception;
3 5 3 errorCode J
4 5 5 lastKnownStream I
MethodParameters:
Name Flags
ctx
cause
private void processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.http2.Http2Stream, io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokeinterface io.netty.channel.ChannelFuture.isSuccess:()Z
ifeq 3
1: aload 0
aload 2
aload 3
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.closeStream:(Lio/netty/handler/codec/http2/Http2Stream;Lio/netty/channel/ChannelFuture;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_1
aload 3
invokeinterface io.netty.channel.ChannelFuture.cause:()Ljava/lang/Throwable;
aconst_null
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onConnectionError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception;)V
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/http2/Http2ConnectionHandler;
0 5 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 5 2 stream Lio/netty/handler/codec/http2/Http2Stream;
0 5 3 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
ctx
stream
future
private void closeConnectionOnError(io.netty.channel.ChannelHandlerContext, io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/channel/ChannelFuture;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface io.netty.channel.ChannelFuture.isSuccess:()Z
ifne 2
1: aload 0
aload 1
iconst_1
aload 2
invokeinterface io.netty.channel.ChannelFuture.cause:()Ljava/lang/Throwable;
aconst_null
invokevirtual io.netty.handler.codec.http2.Http2ConnectionHandler.onConnectionError:(Lio/netty/channel/ChannelHandlerContext;ZLjava/lang/Throwable;Lio/netty/handler/codec/http2/Http2Exception;)V
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/http2/Http2ConnectionHandler;
0 3 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 3 2 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
ctx
future
private static io.netty.buffer.ByteBuf clientPrefaceString(io.netty.handler.codec.http2.Http2Connection);
descriptor: (Lio/netty/handler/codec/http2/Http2Connection;)Lio/netty/buffer/ByteBuf;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface io.netty.handler.codec.http2.Http2Connection.isServer:()Z
ifeq 1
invokestatic io.netty.handler.codec.http2.Http2CodecUtil.connectionPrefaceBuf:()Lio/netty/buffer/ByteBuf;
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: io.netty.buffer.ByteBuf
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 connection Lio/netty/handler/codec/http2/Http2Connection;
MethodParameters:
Name Flags
connection
private static void processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext, int, long, io.netty.buffer.ByteBuf, io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/channel/ChannelHandlerContext;IJLio/netty/buffer/ByteBuf;Lio/netty/channel/ChannelFuture;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 5 0: aload 5
invokeinterface io.netty.channel.ChannelFuture.isSuccess:()Z
ifeq 8
1: lload 2
getstatic io.netty.handler.codec.http2.Http2Error.NO_ERROR:Lio/netty/handler/codec/http2/Http2Error;
invokevirtual io.netty.handler.codec.http2.Http2Error.code:()J
lcmp
ifeq 17
2: getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.logger:Lio/netty/util/internal/logging/InternalLogger;
invokeinterface io.netty.util.internal.logging.InternalLogger.isDebugEnabled:()Z
ifeq 6
3: getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.logger:Lio/netty/util/internal/logging/InternalLogger;
ldc "{} Sent GOAWAY: lastStreamId '{}', errorCode '{}', debugData '{}'. Forcing shutdown of the connection."
iconst_5
anewarray java.lang.Object
dup
iconst_0
4: aload 0
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
aastore
dup
iconst_1
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_3
aload 4
getstatic io.netty.util.CharsetUtil.UTF_8:Ljava/nio/charset/Charset;
invokevirtual io.netty.buffer.ByteBuf.toString:(Ljava/nio/charset/Charset;)Ljava/lang/String;
aastore
dup
iconst_4
aload 5
invokeinterface io.netty.channel.ChannelFuture.cause:()Ljava/lang/Throwable;
aastore
5: invokeinterface io.netty.util.internal.logging.InternalLogger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
6: StackMap locals:
StackMap stack:
aload 0
invokeinterface io.netty.channel.ChannelHandlerContext.close:()Lio/netty/channel/ChannelFuture;
pop
7: goto 17
8: StackMap locals:
StackMap stack:
getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.logger:Lio/netty/util/internal/logging/InternalLogger;
invokeinterface io.netty.util.internal.logging.InternalLogger.isDebugEnabled:()Z
ifeq 12
9: getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.logger:Lio/netty/util/internal/logging/InternalLogger;
ldc "{} Sending GOAWAY failed: lastStreamId '{}', errorCode '{}', debugData '{}'. Forcing shutdown of the connection."
iconst_5
anewarray java.lang.Object
dup
iconst_0
10: aload 0
invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
aastore
dup
iconst_1
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_3
aload 4
getstatic io.netty.util.CharsetUtil.UTF_8:Ljava/nio/charset/Charset;
invokevirtual io.netty.buffer.ByteBuf.toString:(Ljava/nio/charset/Charset;)Ljava/lang/String;
aastore
dup
iconst_4
aload 5
invokeinterface io.netty.channel.ChannelFuture.cause:()Ljava/lang/Throwable;
aastore
11: invokeinterface io.netty.util.internal.logging.InternalLogger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
12: StackMap locals:
StackMap stack:
aload 0
invokeinterface io.netty.channel.ChannelHandlerContext.close:()Lio/netty/channel/ChannelFuture;
pop
13: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 6
15: aload 4
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
16: aload 6
athrow
17: StackMap locals:
StackMap stack:
aload 4
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
18: return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 ctx Lio/netty/channel/ChannelHandlerContext;
0 19 1 lastStreamId I
0 19 2 errorCode J
0 19 4 debugData Lio/netty/buffer/ByteBuf;
0 19 5 future Lio/netty/channel/ChannelFuture;
Exception table:
from to target type
0 14 14 any
MethodParameters:
Name Flags
ctx final
lastStreamId final
errorCode final
debugData final
future
static int[] $SWITCH_TABLE$io$netty$handler$codec$http2$Http2Stream$State();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Stream$State:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic io.netty.handler.codec.http2.Http2Stream$State.values:()[Lio/netty/handler/codec/http2/Http2Stream$State;
arraylength
newarray 10
astore 0
2: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.CLOSED:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
bipush 7
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.HALF_CLOSED_LOCAL:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iconst_5
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.HALF_CLOSED_REMOTE:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
bipush 6
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.IDLE:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.OPEN:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.RESERVED_LOCAL:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iconst_2
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic io.netty.handler.codec.http2.Http2Stream$State.RESERVED_REMOTE:Lio/netty/handler/codec/http2/Http2Stream$State;
invokevirtual io.netty.handler.codec.http2.Http2Stream$State.ordinal:()I
iconst_3
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
dup
putstatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Stream$State:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
static int[] $SWITCH_TABLE$io$netty$handler$codec$http2$Http2Exception$ShutdownHint();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Exception$ShutdownHint:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic io.netty.handler.codec.http2.Http2Exception$ShutdownHint.values:()[Lio/netty/handler/codec/http2/Http2Exception$ShutdownHint;
arraylength
newarray 10
astore 0
2: aload 0
getstatic io.netty.handler.codec.http2.Http2Exception$ShutdownHint.GRACEFUL_SHUTDOWN:Lio/netty/handler/codec/http2/Http2Exception$ShutdownHint;
invokevirtual io.netty.handler.codec.http2.Http2Exception$ShutdownHint.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic io.netty.handler.codec.http2.Http2Exception$ShutdownHint.HARD_SHUTDOWN:Lio/netty/handler/codec/http2/Http2Exception$ShutdownHint;
invokevirtual io.netty.handler.codec.http2.Http2Exception$ShutdownHint.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic io.netty.handler.codec.http2.Http2Exception$ShutdownHint.NO_SHUTDOWN:Lio/netty/handler/codec/http2/Http2Exception$ShutdownHint;
invokevirtual io.netty.handler.codec.http2.Http2Exception$ShutdownHint.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic io.netty.handler.codec.http2.Http2ConnectionHandler.$SWITCH_TABLE$io$netty$handler$codec$http2$Http2Exception$ShutdownHint:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
}
SourceFile: "Http2ConnectionHandler.java"
NestMembers:
io.netty.handler.codec.http2.Http2ConnectionHandler$1 io.netty.handler.codec.http2.Http2ConnectionHandler$2 io.netty.handler.codec.http2.Http2ConnectionHandler$3 io.netty.handler.codec.http2.Http2ConnectionHandler$4 io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1 io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder
InnerClasses:
public abstract Endpoint = io.netty.handler.codec.http2.Http2Connection$Endpoint of io.netty.handler.codec.http2.Http2Connection
io.netty.handler.codec.http2.Http2ConnectionHandler$1
io.netty.handler.codec.http2.Http2ConnectionHandler$2
io.netty.handler.codec.http2.Http2ConnectionHandler$3
io.netty.handler.codec.http2.Http2ConnectionHandler$4
private abstract BaseDecoder = io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder of io.netty.handler.codec.http2.Http2ConnectionHandler
private final ClosingChannelFutureListener = io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener of io.netty.handler.codec.http2.Http2ConnectionHandler
private final FrameDecoder = io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder of io.netty.handler.codec.http2.Http2ConnectionHandler
private final PrefaceDecoder = io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder of io.netty.handler.codec.http2.Http2ConnectionHandler
public final CompositeStreamException = io.netty.handler.codec.http2.Http2Exception$CompositeStreamException of io.netty.handler.codec.http2.Http2Exception
public final HeaderListSizeException = io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException of io.netty.handler.codec.http2.Http2Exception
public final ShutdownHint = io.netty.handler.codec.http2.Http2Exception$ShutdownHint of io.netty.handler.codec.http2.Http2Exception
public StreamException = io.netty.handler.codec.http2.Http2Exception$StreamException of io.netty.handler.codec.http2.Http2Exception
public final State = io.netty.handler.codec.http2.Http2Stream$State of io.netty.handler.codec.http2.Http2Stream