public class io.netty.handler.codec.spdy.SpdyHttpDecoder extends io.netty.handler.codec.MessageToMessageDecoder<io.netty.handler.codec.spdy.SpdyFrame>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.netty.handler.codec.spdy.SpdyHttpDecoder
super_class: io.netty.handler.codec.MessageToMessageDecoder
{
private final boolean validateHeaders;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int spdyVersion;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int maxContentLength;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.Integer, io.netty.handler.codec.http.FullHttpMessage> messageMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Integer;Lio/netty/handler/codec/http/FullHttpMessage;>;
public void <init>(io.netty.handler.codec.spdy.SpdyVersion, int);
descriptor: (Lio/netty/handler/codec/spdy/SpdyVersion;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iload 2
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
iconst_1
invokespecial io.netty.handler.codec.spdy.SpdyHttpDecoder.<init>:(Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map;Z)V
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/spdy/SpdyHttpDecoder;
0 2 1 version Lio/netty/handler/codec/spdy/SpdyVersion;
0 2 2 maxContentLength I
MethodParameters:
Name Flags
version
maxContentLength
public void <init>(io.netty.handler.codec.spdy.SpdyVersion, int, boolean);
descriptor: (Lio/netty/handler/codec/spdy/SpdyVersion;IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
iload 3
invokespecial io.netty.handler.codec.spdy.SpdyHttpDecoder.<init>:(Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map;Z)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/spdy/SpdyHttpDecoder;
0 2 1 version Lio/netty/handler/codec/spdy/SpdyVersion;
0 2 2 maxContentLength I
0 2 3 validateHeaders Z
MethodParameters:
Name Flags
version
maxContentLength
validateHeaders
protected void <init>(io.netty.handler.codec.spdy.SpdyVersion, int, java.util.Map<java.lang.Integer, io.netty.handler.codec.http.FullHttpMessage>);
descriptor: (Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
aload 3
iconst_1
invokespecial io.netty.handler.codec.spdy.SpdyHttpDecoder.<init>:(Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map;Z)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/spdy/SpdyHttpDecoder;
0 2 1 version Lio/netty/handler/codec/spdy/SpdyVersion;
0 2 2 maxContentLength I
0 2 3 messageMap Ljava/util/Map<Ljava/lang/Integer;Lio/netty/handler/codec/http/FullHttpMessage;>;
Signature: (Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map<Ljava/lang/Integer;Lio/netty/handler/codec/http/FullHttpMessage;>;)V
MethodParameters:
Name Flags
version
maxContentLength
messageMap
protected void <init>(io.netty.handler.codec.spdy.SpdyVersion, int, java.util.Map<java.lang.Integer, io.netty.handler.codec.http.FullHttpMessage>, );
descriptor: (Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, 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.MessageToMessageDecoder.<init>:()V
1: aload 1
ifnonnull 3
2: new java.lang.NullPointerException
dup
ldc "version"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.handler.codec.spdy.SpdyVersion int java.util.Map int
StackMap stack:
iload 2
ifgt 7
4: new java.lang.IllegalArgumentException
dup
5: new java.lang.StringBuilder
dup
ldc "maxContentLength must be a positive integer: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.netty.handler.codec.spdy.SpdyVersion.getVersion:()I
putfield io.netty.handler.codec.spdy.SpdyHttpDecoder.spdyVersion:I
8: aload 0
iload 2
putfield io.netty.handler.codec.spdy.SpdyHttpDecoder.maxContentLength:I
9: aload 0
aload 3
putfield io.netty.handler.codec.spdy.SpdyHttpDecoder.messageMap:Ljava/util/Map;
10: aload 0
iload 4
putfield io.netty.handler.codec.spdy.SpdyHttpDecoder.validateHeaders:Z
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lio/netty/handler/codec/spdy/SpdyHttpDecoder;
0 12 1 version Lio/netty/handler/codec/spdy/SpdyVersion;
0 12 2 maxContentLength I
0 12 3 messageMap Ljava/util/Map<Ljava/lang/Integer;Lio/netty/handler/codec/http/FullHttpMessage;>;
0 12 4 validateHeaders Z
Signature: (Lio/netty/handler/codec/spdy/SpdyVersion;ILjava/util/Map<Ljava/lang/Integer;Lio/netty/handler/codec/http/FullHttpMessage;>;Z)V
MethodParameters:
Name Flags
version
maxContentLength
messageMap
validateHeaders
public void channelInactive(io.netty.channel.ChannelHandlerContext);
descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.messageMap:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 3
StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.channel.ChannelHandlerContext top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 2
start local 2 2: aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokestatic io.netty.util.ReferenceCountUtil.safeRelease:(Ljava/lang/Object;)V
end local 2 3: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.messageMap:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
5: aload 0
aload 1
invokespecial io.netty.handler.codec.MessageToMessageDecoder.channelInactive:(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/spdy/SpdyHttpDecoder;
0 7 1 ctx Lio/netty/channel/ChannelHandlerContext;
2 3 2 entry Ljava/util/Map$Entry<Ljava/lang/Integer;Lio/netty/handler/codec/http/FullHttpMessage;>;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ctx
protected io.netty.handler.codec.http.FullHttpMessage putMessage(int, io.netty.handler.codec.http.FullHttpMessage);
descriptor: (ILio/netty/handler/codec/http/FullHttpMessage;)Lio/netty/handler/codec/http/FullHttpMessage;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.messageMap:Ljava/util/Map;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http.FullHttpMessage
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/spdy/SpdyHttpDecoder;
0 1 1 streamId I
0 1 2 message Lio/netty/handler/codec/http/FullHttpMessage;
MethodParameters:
Name Flags
streamId
message
protected io.netty.handler.codec.http.FullHttpMessage getMessage(int);
descriptor: (I)Lio/netty/handler/codec/http/FullHttpMessage;
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.spdy.SpdyHttpDecoder.messageMap:Ljava/util/Map;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http.FullHttpMessage
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/spdy/SpdyHttpDecoder;
0 1 1 streamId I
MethodParameters:
Name Flags
streamId
protected io.netty.handler.codec.http.FullHttpMessage removeMessage(int);
descriptor: (I)Lio/netty/handler/codec/http/FullHttpMessage;
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.spdy.SpdyHttpDecoder.messageMap:Ljava/util/Map;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.netty.handler.codec.http.FullHttpMessage
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/spdy/SpdyHttpDecoder;
0 1 1 streamId I
MethodParameters:
Name Flags
streamId
protected void decode(io.netty.channel.ChannelHandlerContext, io.netty.handler.codec.spdy.SpdyFrame, java.util.List<java.lang.Object>);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/spdy/SpdyFrame;Ljava/util/List;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
instanceof io.netty.handler.codec.spdy.SpdySynStreamFrame
ifeq 54
1: aload 2
checkcast io.netty.handler.codec.spdy.SpdySynStreamFrame
astore 4
start local 4 2: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.streamId:()I
istore 5
start local 5 3: iload 5
invokestatic io.netty.handler.codec.spdy.SpdyCodecUtil.isServerId:(I)Z
ifeq 31
4: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.associatedStreamId:()I
istore 6
start local 6 5: iload 6
ifne 10
6: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.INVALID_STREAM:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
7: astore 7
start local 7 8: aload 1
aload 7
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
9: return
end local 7 10: StackMap locals: io.netty.handler.codec.spdy.SpdySynStreamFrame int int
StackMap stack:
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.isLast:()Z
ifeq 15
11: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.PROTOCOL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
12: astore 7
start local 7 13: aload 1
aload 7
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
14: return
end local 7 15: StackMap locals:
StackMap stack:
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.isTruncated:()Z
ifeq 20
16: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.INTERNAL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
17: astore 7
start local 7 18: aload 1
aload 7
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
19: return
end local 7 20: StackMap locals:
StackMap stack:
aload 4
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.alloc:()Lio/netty/buffer/ByteBufAllocator;
invokestatic io.netty.handler.codec.spdy.SpdyHttpDecoder.createHttpRequest:(Lio/netty/handler/codec/spdy/SpdyHeadersFrame;Lio/netty/buffer/ByteBufAllocator;)Lio/netty/handler/codec/http/FullHttpRequest;
astore 7
start local 7 21: aload 7
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.spdy.SpdyHttpHeaders$Names.STREAM_ID:Lio/netty/util/AsciiString;
iload 5
invokevirtual io.netty.handler.codec.http.HttpHeaders.setInt:(Ljava/lang/CharSequence;I)Lio/netty/handler/codec/http/HttpHeaders;
pop
22: aload 7
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.spdy.SpdyHttpHeaders$Names.ASSOCIATED_TO_STREAM_ID:Lio/netty/util/AsciiString;
iload 6
invokevirtual io.netty.handler.codec.http.HttpHeaders.setInt:(Ljava/lang/CharSequence;I)Lio/netty/handler/codec/http/HttpHeaders;
pop
23: aload 7
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.spdy.SpdyHttpHeaders$Names.PRIORITY:Lio/netty/util/AsciiString;
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.priority:()B
invokevirtual io.netty.handler.codec.http.HttpHeaders.setInt:(Ljava/lang/CharSequence;I)Lio/netty/handler/codec/http/HttpHeaders;
pop
24: aload 3
aload 7
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 7 25: goto 134
StackMap locals:
StackMap stack: java.lang.Throwable
26: pop
27: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.PROTOCOL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
28: astore 7
start local 7 29: aload 1
aload 7
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
end local 7 end local 6 30: goto 134
31: StackMap locals:
StackMap stack:
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.isTruncated:()Z
ifeq 39
32: new io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame
dup
iload 5
invokespecial io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame.<init>:(I)V
astore 6
start local 6 33: aload 6
iconst_1
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.setLast:(Z)Lio/netty/handler/codec/spdy/SpdySynReplyFrame;
pop
34: aload 6
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
astore 7
start local 7 35: aload 7
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.STATUS:Lio/netty/util/AsciiString;
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.code:()I
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.setInt:(Ljava/lang/Object;I)Lio/netty/handler/codec/Headers;
pop
36: aload 7
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.VERSION:Lio/netty/util/AsciiString;
getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_0:Lio/netty/handler/codec/http/HttpVersion;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.setObject:(Ljava/lang/Object;Ljava/lang/Object;)Lio/netty/handler/codec/Headers;
pop
37: aload 1
aload 6
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
38: return
end local 7 end local 6 39: StackMap locals:
StackMap stack:
aload 4
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.alloc:()Lio/netty/buffer/ByteBufAllocator;
invokestatic io.netty.handler.codec.spdy.SpdyHttpDecoder.createHttpRequest:(Lio/netty/handler/codec/spdy/SpdyHeadersFrame;Lio/netty/buffer/ByteBufAllocator;)Lio/netty/handler/codec/http/FullHttpRequest;
astore 6
start local 6 40: aload 6
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.spdy.SpdyHttpHeaders$Names.STREAM_ID:Lio/netty/util/AsciiString;
iload 5
invokevirtual io.netty.handler.codec.http.HttpHeaders.setInt:(Ljava/lang/CharSequence;I)Lio/netty/handler/codec/http/HttpHeaders;
pop
41: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynStreamFrame.isLast:()Z
ifeq 44
42: aload 3
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
43: goto 134
44: StackMap locals: io.netty.handler.codec.http.FullHttpRequest
StackMap stack:
aload 0
iload 5
aload 6
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.putMessage:(ILio/netty/handler/codec/http/FullHttpMessage;)Lio/netty/handler/codec/http/FullHttpMessage;
pop
end local 6 45: goto 134
StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.channel.ChannelHandlerContext io.netty.handler.codec.spdy.SpdyFrame java.util.List io.netty.handler.codec.spdy.SpdySynStreamFrame int
StackMap stack: java.lang.Throwable
46: pop
47: new io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame
dup
iload 5
invokespecial io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame.<init>:(I)V
astore 6
start local 6 48: aload 6
iconst_1
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.setLast:(Z)Lio/netty/handler/codec/spdy/SpdySynReplyFrame;
pop
49: aload 6
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
astore 7
start local 7 50: aload 7
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.STATUS:Lio/netty/util/AsciiString;
getstatic io.netty.handler.codec.http.HttpResponseStatus.BAD_REQUEST:Lio/netty/handler/codec/http/HttpResponseStatus;
invokevirtual io.netty.handler.codec.http.HttpResponseStatus.code:()I
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.setInt:(Ljava/lang/Object;I)Lio/netty/handler/codec/Headers;
pop
51: aload 7
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.VERSION:Lio/netty/util/AsciiString;
getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_0:Lio/netty/handler/codec/http/HttpVersion;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.setObject:(Ljava/lang/Object;Ljava/lang/Object;)Lio/netty/handler/codec/Headers;
pop
52: aload 1
aload 6
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
end local 7 end local 6 end local 5 end local 4 53: goto 134
StackMap locals:
StackMap stack:
54: aload 2
instanceof io.netty.handler.codec.spdy.SpdySynReplyFrame
ifeq 76
55: aload 2
checkcast io.netty.handler.codec.spdy.SpdySynReplyFrame
astore 4
start local 4 56: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.streamId:()I
istore 5
start local 5 57: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.isTruncated:()Z
ifeq 62
58: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.INTERNAL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
59: astore 6
start local 6 60: aload 1
aload 6
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
61: return
end local 6 62: StackMap locals: io.netty.handler.codec.spdy.SpdySynReplyFrame int
StackMap stack:
aload 4
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.alloc:()Lio/netty/buffer/ByteBufAllocator;
aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.validateHeaders:Z
invokestatic io.netty.handler.codec.spdy.SpdyHttpDecoder.createHttpResponse:(Lio/netty/handler/codec/spdy/SpdyHeadersFrame;Lio/netty/buffer/ByteBufAllocator;Z)Lio/netty/handler/codec/http/FullHttpResponse;
63: astore 6
start local 6 64: aload 6
invokeinterface io.netty.handler.codec.http.FullHttpResponse.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.spdy.SpdyHttpHeaders$Names.STREAM_ID:Lio/netty/util/AsciiString;
iload 5
invokevirtual io.netty.handler.codec.http.HttpHeaders.setInt:(Ljava/lang/CharSequence;I)Lio/netty/handler/codec/http/HttpHeaders;
pop
65: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdySynReplyFrame.isLast:()Z
ifeq 69
66: aload 6
lconst_0
invokestatic io.netty.handler.codec.http.HttpUtil.setContentLength:(Lio/netty/handler/codec/http/HttpMessage;J)V
67: aload 3
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
68: goto 134
69: StackMap locals: io.netty.handler.codec.http.FullHttpResponse
StackMap stack:
aload 0
iload 5
aload 6
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.putMessage:(ILio/netty/handler/codec/http/FullHttpMessage;)Lio/netty/handler/codec/http/FullHttpMessage;
pop
end local 6 70: goto 134
StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.channel.ChannelHandlerContext io.netty.handler.codec.spdy.SpdyFrame java.util.List io.netty.handler.codec.spdy.SpdySynReplyFrame int
StackMap stack: java.lang.Throwable
71: pop
72: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.PROTOCOL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
73: astore 6
start local 6 74: aload 1
aload 6
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
end local 6 end local 5 end local 4 75: goto 134
StackMap locals:
StackMap stack:
76: aload 2
instanceof io.netty.handler.codec.spdy.SpdyHeadersFrame
ifeq 110
77: aload 2
checkcast io.netty.handler.codec.spdy.SpdyHeadersFrame
astore 4
start local 4 78: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.streamId:()I
istore 5
start local 5 79: aload 0
iload 5
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.getMessage:(I)Lio/netty/handler/codec/http/FullHttpMessage;
astore 6
start local 6 80: aload 6
ifnonnull 100
81: iload 5
invokestatic io.netty.handler.codec.spdy.SpdyCodecUtil.isServerId:(I)Z
ifeq 99
82: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.isTruncated:()Z
ifeq 87
83: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.INTERNAL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
84: astore 7
start local 7 85: aload 1
aload 7
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
86: return
end local 7 87: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame int io.netty.handler.codec.http.FullHttpMessage
StackMap stack:
aload 4
aload 1
invokeinterface io.netty.channel.ChannelHandlerContext.alloc:()Lio/netty/buffer/ByteBufAllocator;
aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.validateHeaders:Z
invokestatic io.netty.handler.codec.spdy.SpdyHttpDecoder.createHttpResponse:(Lio/netty/handler/codec/spdy/SpdyHeadersFrame;Lio/netty/buffer/ByteBufAllocator;Z)Lio/netty/handler/codec/http/FullHttpResponse;
astore 6
88: aload 6
invokeinterface io.netty.handler.codec.http.FullHttpMessage.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.spdy.SpdyHttpHeaders$Names.STREAM_ID:Lio/netty/util/AsciiString;
iload 5
invokevirtual io.netty.handler.codec.http.HttpHeaders.setInt:(Ljava/lang/CharSequence;I)Lio/netty/handler/codec/http/HttpHeaders;
pop
89: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.isLast:()Z
ifeq 93
90: aload 6
lconst_0
invokestatic io.netty.handler.codec.http.HttpUtil.setContentLength:(Lio/netty/handler/codec/http/HttpMessage;J)V
91: aload 3
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
92: goto 99
93: StackMap locals:
StackMap stack:
aload 0
iload 5
aload 6
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.putMessage:(ILio/netty/handler/codec/http/FullHttpMessage;)Lio/netty/handler/codec/http/FullHttpMessage;
pop
94: goto 99
StackMap locals:
StackMap stack: java.lang.Throwable
95: pop
96: new io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame
dup
iload 5
getstatic io.netty.handler.codec.spdy.SpdyStreamStatus.PROTOCOL_ERROR:Lio/netty/handler/codec/spdy/SpdyStreamStatus;
invokespecial io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame.<init>:(ILio/netty/handler/codec/spdy/SpdyStreamStatus;)V
97: astore 7
start local 7 98: aload 1
aload 7
invokeinterface io.netty.channel.ChannelHandlerContext.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
end local 7 99: StackMap locals:
StackMap stack:
return
100: StackMap locals:
StackMap stack:
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.isTruncated:()Z
ifne 105
101: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.iterator:()Ljava/util/Iterator;
astore 8
goto 104
StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.channel.ChannelHandlerContext io.netty.handler.codec.spdy.SpdyFrame java.util.List io.netty.handler.codec.spdy.SpdyHeadersFrame int io.netty.handler.codec.http.FullHttpMessage top java.util.Iterator
StackMap stack:
102: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 7
start local 7 103: aload 6
invokeinterface io.netty.handler.codec.http.FullHttpMessage.headers:()Lio/netty/handler/codec/http/HttpHeaders;
aload 7
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.CharSequence
aload 7
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokevirtual io.netty.handler.codec.http.HttpHeaders.add:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
end local 7 104: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 102
105: StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.channel.ChannelHandlerContext io.netty.handler.codec.spdy.SpdyFrame java.util.List io.netty.handler.codec.spdy.SpdyHeadersFrame int io.netty.handler.codec.http.FullHttpMessage
StackMap stack:
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.isLast:()Z
ifeq 134
106: aload 6
aload 6
invokeinterface io.netty.handler.codec.http.FullHttpMessage.content:()Lio/netty/buffer/ByteBuf;
invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
i2l
invokestatic io.netty.handler.codec.http.HttpUtil.setContentLength:(Lio/netty/handler/codec/http/HttpMessage;J)V
107: aload 0
iload 5
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.removeMessage:(I)Lio/netty/handler/codec/http/FullHttpMessage;
pop
108: aload 3
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 end local 5 end local 4 109: goto 134
StackMap locals:
StackMap stack:
110: aload 2
instanceof io.netty.handler.codec.spdy.SpdyDataFrame
ifeq 130
111: aload 2
checkcast io.netty.handler.codec.spdy.SpdyDataFrame
astore 4
start local 4 112: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyDataFrame.streamId:()I
istore 5
start local 5 113: aload 0
iload 5
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.getMessage:(I)Lio/netty/handler/codec/http/FullHttpMessage;
astore 6
start local 6 114: aload 6
ifnonnull 116
115: return
116: StackMap locals: io.netty.handler.codec.spdy.SpdyDataFrame int io.netty.handler.codec.http.FullHttpMessage
StackMap stack:
aload 6
invokeinterface io.netty.handler.codec.http.FullHttpMessage.content:()Lio/netty/buffer/ByteBuf;
astore 7
start local 7 117: aload 7
invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.maxContentLength:I
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyDataFrame.content:()Lio/netty/buffer/ByteBuf;
invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
isub
if_icmple 122
118: aload 0
iload 5
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.removeMessage:(I)Lio/netty/handler/codec/http/FullHttpMessage;
pop
119: new io.netty.handler.codec.TooLongFrameException
dup
120: new java.lang.StringBuilder
dup
ldc "HTTP content length exceeded "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield io.netty.handler.codec.spdy.SpdyHttpDecoder.maxContentLength:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bytes."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
121: invokespecial io.netty.handler.codec.TooLongFrameException.<init>:(Ljava/lang/String;)V
athrow
122: StackMap locals: io.netty.buffer.ByteBuf
StackMap stack:
aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyDataFrame.content:()Lio/netty/buffer/ByteBuf;
astore 8
start local 8 123: aload 8
invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
istore 9
start local 9 124: aload 7
aload 8
aload 8
invokevirtual io.netty.buffer.ByteBuf.readerIndex:()I
iload 9
invokevirtual io.netty.buffer.ByteBuf.writeBytes:(Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf;
pop
125: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyDataFrame.isLast:()Z
ifeq 134
126: aload 6
aload 7
invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
i2l
invokestatic io.netty.handler.codec.http.HttpUtil.setContentLength:(Lio/netty/handler/codec/http/HttpMessage;J)V
127: aload 0
iload 5
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.removeMessage:(I)Lio/netty/handler/codec/http/FullHttpMessage;
pop
128: aload 3
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 129: goto 134
StackMap locals: io.netty.handler.codec.spdy.SpdyHttpDecoder io.netty.channel.ChannelHandlerContext io.netty.handler.codec.spdy.SpdyFrame java.util.List
StackMap stack:
130: aload 2
instanceof io.netty.handler.codec.spdy.SpdyRstStreamFrame
ifeq 134
131: aload 2
checkcast io.netty.handler.codec.spdy.SpdyRstStreamFrame
astore 4
start local 4 132: aload 4
invokeinterface io.netty.handler.codec.spdy.SpdyRstStreamFrame.streamId:()I
istore 5
start local 5 133: aload 0
iload 5
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.removeMessage:(I)Lio/netty/handler/codec/http/FullHttpMessage;
pop
end local 5 end local 4 134: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 135 0 this Lio/netty/handler/codec/spdy/SpdyHttpDecoder;
0 135 1 ctx Lio/netty/channel/ChannelHandlerContext;
0 135 2 msg Lio/netty/handler/codec/spdy/SpdyFrame;
0 135 3 out Ljava/util/List<Ljava/lang/Object;>;
2 53 4 spdySynStreamFrame Lio/netty/handler/codec/spdy/SpdySynStreamFrame;
3 53 5 streamId I
5 30 6 associatedToStreamId I
8 10 7 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
13 15 7 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
18 20 7 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
21 25 7 httpRequestWithEntity Lio/netty/handler/codec/http/FullHttpRequest;
29 30 7 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
33 39 6 spdySynReplyFrame Lio/netty/handler/codec/spdy/SpdySynReplyFrame;
35 39 7 frameHeaders Lio/netty/handler/codec/spdy/SpdyHeaders;
40 45 6 httpRequestWithEntity Lio/netty/handler/codec/http/FullHttpRequest;
48 53 6 spdySynReplyFrame Lio/netty/handler/codec/spdy/SpdySynReplyFrame;
50 53 7 frameHeaders Lio/netty/handler/codec/spdy/SpdyHeaders;
56 75 4 spdySynReplyFrame Lio/netty/handler/codec/spdy/SpdySynReplyFrame;
57 75 5 streamId I
60 62 6 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
64 70 6 httpResponseWithEntity Lio/netty/handler/codec/http/FullHttpResponse;
74 75 6 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
78 109 4 spdyHeadersFrame Lio/netty/handler/codec/spdy/SpdyHeadersFrame;
79 109 5 streamId I
80 109 6 fullHttpMessage Lio/netty/handler/codec/http/FullHttpMessage;
85 87 7 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
98 99 7 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
103 104 7 e Ljava/util/Map$Entry<Ljava/lang/CharSequence;Ljava/lang/CharSequence;>;
112 129 4 spdyDataFrame Lio/netty/handler/codec/spdy/SpdyDataFrame;
113 129 5 streamId I
114 129 6 fullHttpMessage Lio/netty/handler/codec/http/FullHttpMessage;
117 129 7 content Lio/netty/buffer/ByteBuf;
123 129 8 spdyDataFrameData Lio/netty/buffer/ByteBuf;
124 129 9 spdyDataFrameDataLen I
132 134 4 spdyRstStreamFrame Lio/netty/handler/codec/spdy/SpdyRstStreamFrame;
133 134 5 streamId I
Exception table:
from to target type
20 25 26 Class java.lang.Throwable
39 45 46 Class java.lang.Throwable
62 70 71 Class java.lang.Throwable
87 94 95 Class java.lang.Throwable
Exceptions:
throws java.lang.Exception
Signature: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/spdy/SpdyFrame;Ljava/util/List<Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
ctx
msg
out
private static io.netty.handler.codec.http.FullHttpRequest createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame, io.netty.buffer.ByteBufAllocator);
descriptor: (Lio/netty/handler/codec/spdy/SpdyHeadersFrame;Lio/netty/buffer/ByteBufAllocator;)Lio/netty/handler/codec/http/FullHttpRequest;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=14, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
astore 2
start local 2 1: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.METHOD:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.getAsString:(Ljava/lang/CharSequence;)Ljava/lang/String;
invokestatic io.netty.handler.codec.http.HttpMethod.valueOf:(Ljava/lang/String;)Lio/netty/handler/codec/http/HttpMethod;
astore 3
start local 3 2: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.PATH:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.getAsString:(Ljava/lang/CharSequence;)Ljava/lang/String;
astore 4
start local 4 3: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.VERSION:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.getAsString:(Ljava/lang/CharSequence;)Ljava/lang/String;
invokestatic io.netty.handler.codec.http.HttpVersion.valueOf:(Ljava/lang/String;)Lio/netty/handler/codec/http/HttpVersion;
astore 5
start local 5 4: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.METHOD:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
5: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.PATH:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
6: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.VERSION:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
7: iconst_1
istore 6
start local 6 8: aload 1
invokeinterface io.netty.buffer.ByteBufAllocator.buffer:()Lio/netty/buffer/ByteBuf;
astore 7
start local 7 9: new io.netty.handler.codec.http.DefaultFullHttpRequest
dup
aload 5
aload 3
aload 4
aload 7
invokespecial io.netty.handler.codec.http.DefaultFullHttpRequest.<init>:(Lio/netty/handler/codec/http/HttpVersion;Lio/netty/handler/codec/http/HttpMethod;Ljava/lang/String;Lio/netty/buffer/ByteBuf;)V
astore 8
start local 8 10: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.SCHEME:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
11: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.HOST:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.CharSequence
astore 9
start local 9 12: aload 2
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.HOST:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
13: aload 8
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.HOST:Lio/netty/util/AsciiString;
aload 9
invokevirtual io.netty.handler.codec.http.HttpHeaders.set:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
14: aload 0
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.iterator:()Ljava/util/Iterator;
astore 11
goto 17
StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpMethod java.lang.String io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf io.netty.handler.codec.http.FullHttpRequest java.lang.CharSequence top java.util.Iterator
StackMap stack:
15: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 10
start local 10 16: aload 8
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
aload 10
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.CharSequence
aload 10
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokevirtual io.netty.handler.codec.http.HttpHeaders.add:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
end local 10 17: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
18: aload 8
iconst_1
invokestatic io.netty.handler.codec.http.HttpUtil.setKeepAlive:(Lio/netty/handler/codec/http/HttpMessage;Z)V
19: aload 8
invokeinterface io.netty.handler.codec.http.FullHttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.TRANSFER_ENCODING:Lio/netty/util/AsciiString;
invokevirtual io.netty.handler.codec.http.HttpHeaders.remove:(Ljava/lang/CharSequence;)Lio/netty/handler/codec/http/HttpHeaders;
pop
20: iconst_0
istore 6
21: aload 8
astore 13
22: iload 6
ifeq 24
23: aload 7
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
24: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpMethod java.lang.String io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf io.netty.handler.codec.http.FullHttpRequest java.lang.CharSequence top top top io.netty.handler.codec.http.FullHttpRequest
StackMap stack:
aload 13
areturn
end local 9 end local 8 25: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpMethod java.lang.String io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf
StackMap stack: java.lang.Throwable
astore 12
26: iload 6
ifeq 28
27: aload 7
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
28: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpMethod java.lang.String io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf top top top top java.lang.Throwable
StackMap stack:
aload 12
athrow
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 29 0 requestFrame Lio/netty/handler/codec/spdy/SpdyHeadersFrame;
0 29 1 alloc Lio/netty/buffer/ByteBufAllocator;
1 29 2 headers Lio/netty/handler/codec/spdy/SpdyHeaders;
2 29 3 method Lio/netty/handler/codec/http/HttpMethod;
3 29 4 url Ljava/lang/String;
4 29 5 httpVersion Lio/netty/handler/codec/http/HttpVersion;
8 29 6 release Z
9 29 7 buffer Lio/netty/buffer/ByteBuf;
10 25 8 req Lio/netty/handler/codec/http/FullHttpRequest;
12 25 9 host Ljava/lang/CharSequence;
16 17 10 e Ljava/util/Map$Entry<Ljava/lang/CharSequence;Ljava/lang/CharSequence;>;
Exception table:
from to target type
9 22 25 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
requestFrame
alloc
private static io.netty.handler.codec.http.FullHttpResponse createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame, io.netty.buffer.ByteBufAllocator, boolean);
descriptor: (Lio/netty/handler/codec/spdy/SpdyHeadersFrame;Lio/netty/buffer/ByteBufAllocator;Z)Lio/netty/handler/codec/http/FullHttpResponse;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=13, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
astore 3
start local 3 1: aload 3
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.STATUS:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.CharSequence
invokestatic io.netty.handler.codec.http.HttpResponseStatus.parseLine:(Ljava/lang/CharSequence;)Lio/netty/handler/codec/http/HttpResponseStatus;
astore 4
start local 4 2: aload 3
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.VERSION:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.getAsString:(Ljava/lang/CharSequence;)Ljava/lang/String;
invokestatic io.netty.handler.codec.http.HttpVersion.valueOf:(Ljava/lang/String;)Lio/netty/handler/codec/http/HttpVersion;
astore 5
start local 5 3: aload 3
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.STATUS:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
4: aload 3
getstatic io.netty.handler.codec.spdy.SpdyHeaders$HttpNames.VERSION:Lio/netty/util/AsciiString;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.remove:(Ljava/lang/Object;)Z
pop
5: iconst_1
istore 6
start local 6 6: aload 1
invokeinterface io.netty.buffer.ByteBufAllocator.buffer:()Lio/netty/buffer/ByteBuf;
astore 7
start local 7 7: new io.netty.handler.codec.http.DefaultFullHttpResponse
dup
aload 5
aload 4
aload 7
iload 2
invokespecial io.netty.handler.codec.http.DefaultFullHttpResponse.<init>:(Lio/netty/handler/codec/http/HttpVersion;Lio/netty/handler/codec/http/HttpResponseStatus;Lio/netty/buffer/ByteBuf;Z)V
astore 8
start local 8 8: aload 0
invokeinterface io.netty.handler.codec.spdy.SpdyHeadersFrame.headers:()Lio/netty/handler/codec/spdy/SpdyHeaders;
invokeinterface io.netty.handler.codec.spdy.SpdyHeaders.iterator:()Ljava/util/Iterator;
astore 10
goto 11
StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator int io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpResponseStatus io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf io.netty.handler.codec.http.FullHttpResponse top java.util.Iterator
StackMap stack:
9: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 9
start local 9 10: aload 8
invokeinterface io.netty.handler.codec.http.FullHttpResponse.headers:()Lio/netty/handler/codec/http/HttpHeaders;
aload 9
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.CharSequence
aload 9
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokevirtual io.netty.handler.codec.http.HttpHeaders.add:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
end local 9 11: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
12: aload 8
iconst_1
invokestatic io.netty.handler.codec.http.HttpUtil.setKeepAlive:(Lio/netty/handler/codec/http/HttpMessage;Z)V
13: aload 8
invokeinterface io.netty.handler.codec.http.FullHttpResponse.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.TRANSFER_ENCODING:Lio/netty/util/AsciiString;
invokevirtual io.netty.handler.codec.http.HttpHeaders.remove:(Ljava/lang/CharSequence;)Lio/netty/handler/codec/http/HttpHeaders;
pop
14: aload 8
invokeinterface io.netty.handler.codec.http.FullHttpResponse.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.TRAILER:Lio/netty/util/AsciiString;
invokevirtual io.netty.handler.codec.http.HttpHeaders.remove:(Ljava/lang/CharSequence;)Lio/netty/handler/codec/http/HttpHeaders;
pop
15: iconst_0
istore 6
16: aload 8
astore 12
17: iload 6
ifeq 19
18: aload 7
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
19: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator int io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpResponseStatus io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf io.netty.handler.codec.http.FullHttpResponse top top top io.netty.handler.codec.http.FullHttpResponse
StackMap stack:
aload 12
areturn
end local 8 20: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator int io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpResponseStatus io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf
StackMap stack: java.lang.Throwable
astore 11
21: iload 6
ifeq 23
22: aload 7
invokevirtual io.netty.buffer.ByteBuf.release:()Z
pop
23: StackMap locals: io.netty.handler.codec.spdy.SpdyHeadersFrame io.netty.buffer.ByteBufAllocator int io.netty.handler.codec.spdy.SpdyHeaders io.netty.handler.codec.http.HttpResponseStatus io.netty.handler.codec.http.HttpVersion int io.netty.buffer.ByteBuf top top top java.lang.Throwable
StackMap stack:
aload 11
athrow
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 24 0 responseFrame Lio/netty/handler/codec/spdy/SpdyHeadersFrame;
0 24 1 alloc Lio/netty/buffer/ByteBufAllocator;
0 24 2 validateHeaders Z
1 24 3 headers Lio/netty/handler/codec/spdy/SpdyHeaders;
2 24 4 status Lio/netty/handler/codec/http/HttpResponseStatus;
3 24 5 version Lio/netty/handler/codec/http/HttpVersion;
6 24 6 release Z
7 24 7 buffer Lio/netty/buffer/ByteBuf;
8 20 8 res Lio/netty/handler/codec/http/FullHttpResponse;
10 11 9 e Ljava/util/Map$Entry<Ljava/lang/CharSequence;Ljava/lang/CharSequence;>;
Exception table:
from to target type
7 17 20 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
responseFrame
alloc
validateHeaders
protected void decode(io.netty.channel.ChannelHandlerContext, java.lang.Object, java.util.List);
descriptor: (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
checkcast io.netty.handler.codec.spdy.SpdyFrame
aload 3
invokevirtual io.netty.handler.codec.spdy.SpdyHttpDecoder.decode:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/spdy/SpdyFrame;Ljava/util/List;)V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
}
Signature: Lio/netty/handler/codec/MessageToMessageDecoder<Lio/netty/handler/codec/spdy/SpdyFrame;>;
SourceFile: "SpdyHttpDecoder.java"
InnerClasses:
public final HttpNames = io.netty.handler.codec.spdy.SpdyHeaders$HttpNames of io.netty.handler.codec.spdy.SpdyHeaders
public final Names = io.netty.handler.codec.spdy.SpdyHttpHeaders$Names of io.netty.handler.codec.spdy.SpdyHttpHeaders
public abstract Entry = java.util.Map$Entry of java.util.Map