public final class io.netty.example.http.snoop.HttpSnoopClient
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.netty.example.http.snoop.HttpSnoopClient
super_class: java.lang.Object
{
static final java.lang.String URL;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc "url"
ldc "http://127.0.0.1:8080/"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
putstatic io.netty.example.http.snoop.HttpSnoopClient.URL:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/example/http/snoop/HttpSnoopClient;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=12, args_size=1
start local 0 0: new java.net.URI
dup
getstatic io.netty.example.http.snoop.HttpSnoopClient.URL:Ljava/lang/String;
invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 1
invokevirtual java.net.URI.getScheme:()Ljava/lang/String;
ifnonnull 2
ldc "http"
goto 3
StackMap locals: java.net.URI
StackMap stack:
2: aload 1
invokevirtual java.net.URI.getScheme:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
3: astore 2
start local 2 4: aload 1
invokevirtual java.net.URI.getHost:()Ljava/lang/String;
ifnonnull 5
ldc "127.0.0.1"
goto 6
StackMap locals: java.lang.String
StackMap stack:
5: aload 1
invokevirtual java.net.URI.getHost:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
6: astore 3
start local 3 7: aload 1
invokevirtual java.net.URI.getPort:()I
istore 4
start local 4 8: iload 4
iconst_m1
if_icmpne 14
9: ldc "http"
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 12
10: bipush 80
istore 4
11: goto 14
StackMap locals: java.lang.String int
StackMap stack:
12: ldc "https"
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 14
13: sipush 443
istore 4
14: StackMap locals:
StackMap stack:
ldc "http"
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 17
ldc "https"
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 17
15: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Only HTTP(S) is supported."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
16: return
17: StackMap locals:
StackMap stack:
ldc "https"
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
istore 5
start local 5 18: iload 5
ifeq 23
19: invokestatic io.netty.handler.ssl.SslContextBuilder.forClient:()Lio/netty/handler/ssl/SslContextBuilder;
20: getstatic io.netty.handler.ssl.util.InsecureTrustManagerFactory.INSTANCE:Ljavax/net/ssl/TrustManagerFactory;
invokevirtual io.netty.handler.ssl.SslContextBuilder.trustManager:(Ljavax/net/ssl/TrustManagerFactory;)Lio/netty/handler/ssl/SslContextBuilder;
invokevirtual io.netty.handler.ssl.SslContextBuilder.build:()Lio/netty/handler/ssl/SslContext;
21: astore 6
start local 6 22: goto 24
end local 6 23: StackMap locals: int
StackMap stack:
aconst_null
astore 6
start local 6 24: StackMap locals: io.netty.handler.ssl.SslContext
StackMap stack:
new io.netty.channel.nio.NioEventLoopGroup
dup
invokespecial io.netty.channel.nio.NioEventLoopGroup.<init>:()V
astore 7
start local 7 25: new io.netty.bootstrap.Bootstrap
dup
invokespecial io.netty.bootstrap.Bootstrap.<init>:()V
astore 8
start local 8 26: aload 8
aload 7
invokevirtual io.netty.bootstrap.Bootstrap.group:(Lio/netty/channel/EventLoopGroup;)Lio/netty/bootstrap/AbstractBootstrap;
checkcast io.netty.bootstrap.Bootstrap
27: ldc Lio/netty/channel/socket/nio/NioSocketChannel;
invokevirtual io.netty.bootstrap.Bootstrap.channel:(Ljava/lang/Class;)Lio/netty/bootstrap/AbstractBootstrap;
checkcast io.netty.bootstrap.Bootstrap
28: new io.netty.example.http.snoop.HttpSnoopClientInitializer
dup
aload 6
invokespecial io.netty.example.http.snoop.HttpSnoopClientInitializer.<init>:(Lio/netty/handler/ssl/SslContext;)V
invokevirtual io.netty.bootstrap.Bootstrap.handler:(Lio/netty/channel/ChannelHandler;)Lio/netty/bootstrap/AbstractBootstrap;
pop
29: aload 8
aload 3
iload 4
invokevirtual io.netty.bootstrap.Bootstrap.connect:(Ljava/lang/String;I)Lio/netty/channel/ChannelFuture;
invokeinterface io.netty.channel.ChannelFuture.sync:()Lio/netty/channel/ChannelFuture;
invokeinterface io.netty.channel.ChannelFuture.channel:()Lio/netty/channel/Channel;
astore 9
start local 9 30: new io.netty.handler.codec.http.DefaultFullHttpRequest
dup
31: getstatic io.netty.handler.codec.http.HttpVersion.HTTP_1_1:Lio/netty/handler/codec/http/HttpVersion;
getstatic io.netty.handler.codec.http.HttpMethod.GET:Lio/netty/handler/codec/http/HttpMethod;
aload 1
invokevirtual java.net.URI.getRawPath:()Ljava/lang/String;
32: invokespecial io.netty.handler.codec.http.DefaultFullHttpRequest.<init>:(Lio/netty/handler/codec/http/HttpVersion;Lio/netty/handler/codec/http/HttpMethod;Ljava/lang/String;)V
astore 10
start local 10 33: aload 10
invokeinterface io.netty.handler.codec.http.HttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.HOST:Lio/netty/util/AsciiString;
aload 3
invokevirtual io.netty.handler.codec.http.HttpHeaders.set:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
34: aload 10
invokeinterface io.netty.handler.codec.http.HttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.CONNECTION:Lio/netty/util/AsciiString;
getstatic io.netty.handler.codec.http.HttpHeaderValues.CLOSE:Lio/netty/util/AsciiString;
invokevirtual io.netty.handler.codec.http.HttpHeaders.set:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
35: aload 10
invokeinterface io.netty.handler.codec.http.HttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
getstatic io.netty.handler.codec.http.HttpHeaderNames.ACCEPT_ENCODING:Lio/netty/util/AsciiString;
getstatic io.netty.handler.codec.http.HttpHeaderValues.GZIP:Lio/netty/util/AsciiString;
invokevirtual io.netty.handler.codec.http.HttpHeaders.set:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
36: aload 10
invokeinterface io.netty.handler.codec.http.HttpRequest.headers:()Lio/netty/handler/codec/http/HttpHeaders;
37: getstatic io.netty.handler.codec.http.HttpHeaderNames.COOKIE:Lio/netty/util/AsciiString;
38: getstatic io.netty.handler.codec.http.cookie.ClientCookieEncoder.STRICT:Lio/netty/handler/codec/http/cookie/ClientCookieEncoder;
iconst_2
anewarray io.netty.handler.codec.http.cookie.Cookie
dup
iconst_0
39: new io.netty.handler.codec.http.cookie.DefaultCookie
dup
ldc "my-cookie"
ldc "foo"
invokespecial io.netty.handler.codec.http.cookie.DefaultCookie.<init>:(Ljava/lang/String;Ljava/lang/String;)V
aastore
dup
iconst_1
40: new io.netty.handler.codec.http.cookie.DefaultCookie
dup
ldc "another-cookie"
ldc "bar"
invokespecial io.netty.handler.codec.http.cookie.DefaultCookie.<init>:(Ljava/lang/String;Ljava/lang/String;)V
aastore
41: invokevirtual io.netty.handler.codec.http.cookie.ClientCookieEncoder.encode:([Lio/netty/handler/codec/http/cookie/Cookie;)Ljava/lang/String;
42: invokevirtual io.netty.handler.codec.http.HttpHeaders.set:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/netty/handler/codec/http/HttpHeaders;
pop
43: aload 9
aload 10
invokeinterface io.netty.channel.Channel.writeAndFlush:(Ljava/lang/Object;)Lio/netty/channel/ChannelFuture;
pop
44: aload 9
invokeinterface io.netty.channel.Channel.closeFuture:()Lio/netty/channel/ChannelFuture;
invokeinterface io.netty.channel.ChannelFuture.sync:()Lio/netty/channel/ChannelFuture;
pop
end local 10 end local 9 end local 8 45: goto 49
StackMap locals: java.lang.String[] java.net.URI java.lang.String java.lang.String int int io.netty.handler.ssl.SslContext io.netty.channel.EventLoopGroup
StackMap stack: java.lang.Throwable
46: astore 11
47: aload 7
invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:()Lio/netty/util/concurrent/Future;
pop
48: aload 11
athrow
49: StackMap locals:
StackMap stack:
aload 7
invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:()Lio/netty/util/concurrent/Future;
pop
50: 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 51 0 args [Ljava/lang/String;
1 51 1 uri Ljava/net/URI;
4 51 2 scheme Ljava/lang/String;
7 51 3 host Ljava/lang/String;
8 51 4 port I
18 51 5 ssl Z
22 23 6 sslCtx Lio/netty/handler/ssl/SslContext;
24 51 6 sslCtx Lio/netty/handler/ssl/SslContext;
25 51 7 group Lio/netty/channel/EventLoopGroup;
26 45 8 b Lio/netty/bootstrap/Bootstrap;
30 45 9 ch Lio/netty/channel/Channel;
33 45 10 request Lio/netty/handler/codec/http/HttpRequest;
Exception table:
from to target type
25 46 46 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
args
}
SourceFile: "HttpSnoopClient.java"