public class io.netty.handler.codec.http2.StreamBufferingEncoder extends io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.netty.handler.codec.http2.StreamBufferingEncoder
super_class: io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder
{
private final java.util.TreeMap<java.lang.Integer, io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream> pendingStreams;
descriptor: Ljava/util/TreeMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/TreeMap<Ljava/lang/Integer;Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;>;
private int maxConcurrentStreams;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean closed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(io.netty.handler.codec.http2.Http2ConnectionEncoder);
descriptor: (Lio/netty/handler/codec/http2/Http2ConnectionEncoder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
bipush 100
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionEncoder;I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 2 1 delegate Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
MethodParameters:
Name Flags
delegate
public void <init>(io.netty.handler.codec.http2.Http2ConnectionEncoder, int);
descriptor: (Lio/netty/handler/codec/http2/Http2ConnectionEncoder;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.<init>:(Lio/netty/handler/codec/http2/Http2ConnectionEncoder;)V
1: aload 0
new java.util.TreeMap
dup
invokespecial java.util.TreeMap.<init>:()V
putfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
2: aload 0
iload 2
putfield io.netty.handler.codec.http2.StreamBufferingEncoder.maxConcurrentStreams:I
3: aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
new io.netty.handler.codec.http2.StreamBufferingEncoder$1
dup
aload 0
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$1.<init>:(Lio/netty/handler/codec/http2/StreamBufferingEncoder;)V
invokeinterface io.netty.handler.codec.http2.Http2Connection.addListener:(Lio/netty/handler/codec/http2/Http2Connection$Listener;)V
4: 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/StreamBufferingEncoder;
0 5 1 delegate Lio/netty/handler/codec/http2/Http2ConnectionEncoder;
0 5 2 initialMaxConcurrentStreams I
MethodParameters:
Name Flags
delegate
initialMaxConcurrentStreams
public int numBufferedStreams();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
public io.netty.channel.ChannelFuture writeHeaders(io.netty.channel.ChannelHandlerContext, int, io.netty.handler.codec.http2.Http2Headers, int, boolean, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;ILio/netty/handler/codec/http2/Http2Headers;IZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 1
iload 2
aload 3
iconst_0
bipush 16
1: iconst_0
iload 4
iload 5
aload 6
2: invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.writeHeaders:(Lio/netty/channel/ChannelHandlerContext;ILio/netty/handler/codec/http2/Http2Headers;ISZIZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
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 3 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 3 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 3 2 streamId I
0 3 3 headers Lio/netty/handler/codec/http2/Http2Headers;
0 3 4 padding I
0 3 5 endStream Z
0 3 6 promise Lio/netty/channel/ChannelPromise;
MethodParameters:
Name Flags
ctx
streamId
headers
padding
endStream
promise
public io.netty.channel.ChannelFuture writeHeaders(io.netty.channel.ChannelHandlerContext, int, io.netty.handler.codec.http2.Http2Headers, int, short, boolean, int, boolean, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;ILio/netty/handler/codec/http2/Http2Headers;ISZIZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=11, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.closed:Z
ifeq 2
1: aload 9
new io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException
dup
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException.<init>:()V
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
areturn
2: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.isExistingStream:(I)Z
ifne 3
aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.goAwayReceived:()Z
ifeq 6
3: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
aload 3
iload 4
iload 5
4: iload 6
iload 7
iload 8
aload 9
5: invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.writeHeaders:(Lio/netty/channel/ChannelHandlerContext;ILio/netty/handler/codec/http2/Http2Headers;ISZIZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.canCreateStream:()Z
ifeq 10
7: aload 0
aload 1
iload 2
aload 3
iload 4
iload 5
8: iload 6
iload 7
iload 8
aload 9
9: invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.writeHeaders:(Lio/netty/channel/ChannelHandlerContext;ILio/netty/handler/codec/http2/Http2Headers;ISZIZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
10: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
astore 10
start local 10 11: aload 10
ifnonnull 14
12: new io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
dup
aload 1
iload 2
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.<init>:(Lio/netty/channel/ChannelHandlerContext;I)V
astore 10
13: aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 10
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: StackMap locals: io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
StackMap stack:
aload 10
getfield io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.frames:Ljava/util/Queue;
new io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame
dup
aload 0
aload 3
iload 4
iload 5
iload 6
15: iload 7
iload 8
aload 9
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame.<init>:(Lio/netty/handler/codec/http2/StreamBufferingEncoder;Lio/netty/handler/codec/http2/Http2Headers;ISZIZLio/netty/channel/ChannelPromise;)V
16: invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
pop
17: aload 9
areturn
end local 10 end local 9 end local 8 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 18 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 18 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 18 2 streamId I
0 18 3 headers Lio/netty/handler/codec/http2/Http2Headers;
0 18 4 streamDependency I
0 18 5 weight S
0 18 6 exclusive Z
0 18 7 padding I
0 18 8 endOfStream Z
0 18 9 promise Lio/netty/channel/ChannelPromise;
11 18 10 pendingStream Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;
MethodParameters:
Name Flags
ctx
streamId
headers
streamDependency
weight
exclusive
padding
endOfStream
promise
public io.netty.channel.ChannelFuture writeRstStream(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=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
iload 2
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.isExistingStream:(I)Z
ifeq 2
1: aload 0
aload 1
iload 2
lload 3
aload 5
invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.writeRstStream:(Lio/netty/channel/ChannelHandlerContext;IJLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.TreeMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
astore 6
start local 6 3: aload 6
ifnull 7
4: aload 6
aconst_null
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.close:(Ljava/lang/Throwable;)V
5: aload 5
invokeinterface io.netty.channel.ChannelPromise.setSuccess:()Lio/netty/channel/ChannelPromise;
pop
6: goto 8
7: StackMap locals: io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
StackMap stack:
aload 5
getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "Stream does not exist %d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
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;
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
pop
8: StackMap locals:
StackMap stack:
aload 5
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 9 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 9 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 9 2 streamId I
0 9 3 errorCode J
0 9 5 promise Lio/netty/channel/ChannelPromise;
3 9 6 stream Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;
MethodParameters:
Name Flags
ctx
streamId
errorCode
promise
public io.netty.channel.ChannelFuture writeData(io.netty.channel.ChannelHandlerContext, int, io.netty.buffer.ByteBuf, int, boolean, io.netty.channel.ChannelPromise);
descriptor: (Lio/netty/channel/ChannelHandlerContext;ILio/netty/buffer/ByteBuf;IZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
iload 2
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.isExistingStream:(I)Z
ifeq 2
1: aload 0
aload 1
iload 2
aload 3
iload 4
iload 5
aload 6
invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.writeData:(Lio/netty/channel/ChannelHandlerContext;ILio/netty/buffer/ByteBuf;IZLio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
astore 7
start local 7 3: aload 7
ifnull 6
4: aload 7
getfield io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.frames:Ljava/util/Queue;
new io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame
dup
aload 0
aload 3
iload 4
iload 5
aload 6
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame.<init>:(Lio/netty/handler/codec/http2/StreamBufferingEncoder;Lio/netty/buffer/ByteBuf;IZLio/netty/channel/ChannelPromise;)V
invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
pop
5: goto 8
6: StackMap locals: io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
StackMap stack:
aload 3
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
7: aload 6
getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
ldc "Stream does not exist %d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
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;
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
pop
8: StackMap locals:
StackMap stack:
aload 6
areturn
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 9 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 9 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 9 2 streamId I
0 9 3 data Lio/netty/buffer/ByteBuf;
0 9 4 padding I
0 9 5 endOfStream Z
0 9 6 promise Lio/netty/channel/ChannelPromise;
3 9 7 pendingStream Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;
MethodParameters:
Name Flags
ctx
streamId
data
padding
endOfStream
promise
public void remoteSettings(io.netty.handler.codec.http2.Http2Settings);
descriptor: (Lio/netty/handler/codec/http2/Http2Settings;)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.http2.DecoratingHttp2ConnectionEncoder.remoteSettings:(Lio/netty/handler/codec/http2/Http2Settings;)V
1: aload 0
aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.local:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.maxActiveStreams:()I
putfield io.netty.handler.codec.http2.StreamBufferingEncoder.maxConcurrentStreams:I
2: aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.tryCreatePendingStreams:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 4 1 settings Lio/netty/handler/codec/http2/Http2Settings;
Exceptions:
throws io.netty.handler.codec.http2.Http2Exception
MethodParameters:
Name Flags
settings
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.closed:Z
ifne 11
1: aload 0
iconst_1
putfield io.netty.handler.codec.http2.StreamBufferingEncoder.closed:Z
2: new io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException
dup
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException.<init>:()V
astore 1
start local 1 3: goto 6
4: StackMap locals: io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.pollFirstEntry:()Ljava/util/Map$Entry;
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
astore 2
start local 2 5: aload 2
aload 1
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.close:(Ljava/lang/Throwable;)V
end local 2 6: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.isEmpty:()Z
ifeq 4
end local 1 7: goto 11
StackMap locals: io.netty.handler.codec.http2.StreamBufferingEncoder
StackMap stack: java.lang.Throwable
8: astore 3
9: aload 0
invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.close:()V
10: aload 3
athrow
11: StackMap locals:
StackMap stack:
aload 0
invokespecial io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder.close:()V
12: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
3 7 1 e Lio/netty/handler/codec/http2/StreamBufferingEncoder$Http2ChannelClosedException;
5 6 2 stream Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;
Exception table:
from to target type
0 8 8 any
private void tryCreatePendingStreams();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: goto 7
1: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.pollFirstEntry:()Ljava/util/Map$Entry;
astore 1
start local 1 2: aload 1
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
astore 2
start local 2 3: aload 2
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.sendFrames:()V
4: goto 7
StackMap locals: io.netty.handler.codec.http2.StreamBufferingEncoder java.util.Map$Entry io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
StackMap stack: java.lang.Throwable
5: astore 3
start local 3 6: aload 2
aload 3
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.close:(Ljava/lang/Throwable;)V
end local 3 end local 2 end local 1 7: StackMap locals:
StackMap stack:
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.isEmpty:()Z
ifne 8
aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.canCreateStream:()Z
ifne 1
8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
2 7 1 entry Ljava/util/Map$Entry<Ljava/lang/Integer;Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;>;
3 7 2 pendingStream Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;
6 7 3 t Ljava/lang/Throwable;
Exception table:
from to target type
3 4 5 Class java.lang.Throwable
private void cancelGoAwayStreams(int, long, io.netty.buffer.ByteBuf);
descriptor: (IJLio/netty/buffer/ByteBuf;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.pendingStreams:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
start local 5 1: new io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException
dup
iload 1
lload 2
aload 4
invokestatic io.netty.buffer.ByteBufUtil.getBytes:(Lio/netty/buffer/ByteBuf;)[B
invokespecial io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException.<init>:(IJ[B)V
astore 6
start local 6 2: goto 7
3: StackMap locals: java.util.Iterator java.lang.Exception
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
astore 7
start local 7 4: aload 7
getfield io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.streamId:I
iload 1
if_icmple 7
5: aload 5
invokeinterface java.util.Iterator.remove:()V
6: aload 7
aload 6
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream.close:(Ljava/lang/Throwable;)V
end local 7 7: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
8: return
end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 9 1 lastStreamId I
0 9 2 errorCode J
0 9 4 debugData Lio/netty/buffer/ByteBuf;
1 9 5 iter Ljava/util/Iterator<Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;>;
2 9 6 e Ljava/lang/Exception;
4 7 7 stream Lio/netty/handler/codec/http2/StreamBufferingEncoder$PendingStream;
MethodParameters:
Name Flags
lastStreamId
errorCode
debugData
private boolean canCreateStream();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.local:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.numActiveStreams:()I
aload 0
getfield io.netty.handler.codec.http2.StreamBufferingEncoder.maxConcurrentStreams:I
if_icmpge 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/StreamBufferingEncoder;
private boolean isExistingStream(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
invokevirtual io.netty.handler.codec.http2.StreamBufferingEncoder.connection:()Lio/netty/handler/codec/http2/Http2Connection;
invokeinterface io.netty.handler.codec.http2.Http2Connection.local:()Lio/netty/handler/codec/http2/Http2Connection$Endpoint;
invokeinterface io.netty.handler.codec.http2.Http2Connection$Endpoint.lastStreamCreated:()I
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/http2/StreamBufferingEncoder;
0 2 1 streamId I
MethodParameters:
Name Flags
streamId
}
SourceFile: "StreamBufferingEncoder.java"
NestMembers:
io.netty.handler.codec.http2.StreamBufferingEncoder$1 io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame io.netty.handler.codec.http2.StreamBufferingEncoder$Frame io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream
InnerClasses:
public abstract Endpoint = io.netty.handler.codec.http2.Http2Connection$Endpoint of io.netty.handler.codec.http2.Http2Connection
public abstract Listener = io.netty.handler.codec.http2.Http2Connection$Listener of io.netty.handler.codec.http2.Http2Connection
io.netty.handler.codec.http2.StreamBufferingEncoder$1
private final DataFrame = io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame of io.netty.handler.codec.http2.StreamBufferingEncoder
private abstract Frame = io.netty.handler.codec.http2.StreamBufferingEncoder$Frame of io.netty.handler.codec.http2.StreamBufferingEncoder
private final HeadersFrame = io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame of io.netty.handler.codec.http2.StreamBufferingEncoder
public final Http2ChannelClosedException = io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException of io.netty.handler.codec.http2.StreamBufferingEncoder
public final Http2GoAwayException = io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException of io.netty.handler.codec.http2.StreamBufferingEncoder
private final PendingStream = io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream of io.netty.handler.codec.http2.StreamBufferingEncoder
public abstract Entry = java.util.Map$Entry of java.util.Map