public final class io.netty.example.spdy.server.SpdyServer
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.netty.example.spdy.server.SpdyServer
super_class: java.lang.Object
{
static final int PORT;
descriptor: I
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 "port"
ldc "8443"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
putstatic io.netty.example.spdy.server.SpdyServer.PORT:I
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/spdy/server/SpdyServer;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=8, args_size=1
start local 0 0: new io.netty.handler.ssl.util.SelfSignedCertificate
dup
invokespecial io.netty.handler.ssl.util.SelfSignedCertificate.<init>:()V
astore 1
start local 1 1: aload 1
invokevirtual io.netty.handler.ssl.util.SelfSignedCertificate.certificate:()Ljava/io/File;
aload 1
invokevirtual io.netty.handler.ssl.util.SelfSignedCertificate.privateKey:()Ljava/io/File;
invokestatic io.netty.handler.ssl.SslContextBuilder.forServer:(Ljava/io/File;Ljava/io/File;)Lio/netty/handler/ssl/SslContextBuilder;
2: new io.netty.handler.ssl.ApplicationProtocolConfig
dup
3: getstatic io.netty.handler.ssl.ApplicationProtocolConfig$Protocol.NPN:Lio/netty/handler/ssl/ApplicationProtocolConfig$Protocol;
4: getstatic io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior.NO_ADVERTISE:Lio/netty/handler/ssl/ApplicationProtocolConfig$SelectorFailureBehavior;
5: getstatic io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior.ACCEPT:Lio/netty/handler/ssl/ApplicationProtocolConfig$SelectedListenerFailureBehavior;
iconst_2
anewarray java.lang.String
dup
iconst_0
6: ldc "spdy/3.1"
aastore
dup
iconst_1
7: ldc "http/1.1"
8: aastore
invokespecial io.netty.handler.ssl.ApplicationProtocolConfig.<init>:(Lio/netty/handler/ssl/ApplicationProtocolConfig$Protocol;Lio/netty/handler/ssl/ApplicationProtocolConfig$SelectorFailureBehavior;Lio/netty/handler/ssl/ApplicationProtocolConfig$SelectedListenerFailureBehavior;[Ljava/lang/String;)V
invokevirtual io.netty.handler.ssl.SslContextBuilder.applicationProtocolConfig:(Lio/netty/handler/ssl/ApplicationProtocolConfig;)Lio/netty/handler/ssl/SslContextBuilder;
9: invokevirtual io.netty.handler.ssl.SslContextBuilder.build:()Lio/netty/handler/ssl/SslContext;
10: astore 2
start local 2 11: new io.netty.channel.nio.NioEventLoopGroup
dup
iconst_1
invokespecial io.netty.channel.nio.NioEventLoopGroup.<init>:(I)V
astore 3
start local 3 12: new io.netty.channel.nio.NioEventLoopGroup
dup
invokespecial io.netty.channel.nio.NioEventLoopGroup.<init>:()V
astore 4
start local 4 13: new io.netty.bootstrap.ServerBootstrap
dup
invokespecial io.netty.bootstrap.ServerBootstrap.<init>:()V
astore 5
start local 5 14: aload 5
getstatic io.netty.channel.ChannelOption.SO_BACKLOG:Lio/netty/channel/ChannelOption;
sipush 1024
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual io.netty.bootstrap.ServerBootstrap.option:(Lio/netty/channel/ChannelOption;Ljava/lang/Object;)Lio/netty/bootstrap/AbstractBootstrap;
pop
15: aload 5
aload 3
aload 4
invokevirtual io.netty.bootstrap.ServerBootstrap.group:(Lio/netty/channel/EventLoopGroup;Lio/netty/channel/EventLoopGroup;)Lio/netty/bootstrap/ServerBootstrap;
16: ldc Lio/netty/channel/socket/nio/NioServerSocketChannel;
invokevirtual io.netty.bootstrap.ServerBootstrap.channel:(Ljava/lang/Class;)Lio/netty/bootstrap/AbstractBootstrap;
checkcast io.netty.bootstrap.ServerBootstrap
17: new io.netty.handler.logging.LoggingHandler
dup
getstatic io.netty.handler.logging.LogLevel.INFO:Lio/netty/handler/logging/LogLevel;
invokespecial io.netty.handler.logging.LoggingHandler.<init>:(Lio/netty/handler/logging/LogLevel;)V
invokevirtual io.netty.bootstrap.ServerBootstrap.handler:(Lio/netty/channel/ChannelHandler;)Lio/netty/bootstrap/AbstractBootstrap;
checkcast io.netty.bootstrap.ServerBootstrap
18: new io.netty.example.spdy.server.SpdyServerInitializer
dup
aload 2
invokespecial io.netty.example.spdy.server.SpdyServerInitializer.<init>:(Lio/netty/handler/ssl/SslContext;)V
invokevirtual io.netty.bootstrap.ServerBootstrap.childHandler:(Lio/netty/channel/ChannelHandler;)Lio/netty/bootstrap/ServerBootstrap;
pop
19: aload 5
getstatic io.netty.example.spdy.server.SpdyServer.PORT:I
invokevirtual io.netty.bootstrap.ServerBootstrap.bind:(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 6
start local 6 20: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Open your SPDY-enabled web browser and navigate to https://127.0.0.1:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic io.netty.example.spdy.server.SpdyServer.PORT:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 47
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
21: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "If using Chrome browser, check your SPDY sessions at chrome://net-internals/#spdy"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
22: aload 6
invokeinterface io.netty.channel.Channel.closeFuture:()Lio/netty/channel/ChannelFuture;
invokeinterface io.netty.channel.ChannelFuture.sync:()Lio/netty/channel/ChannelFuture;
pop
end local 6 end local 5 23: goto 28
StackMap locals: java.lang.String[] io.netty.handler.ssl.util.SelfSignedCertificate io.netty.handler.ssl.SslContext io.netty.channel.EventLoopGroup io.netty.channel.EventLoopGroup
StackMap stack: java.lang.Throwable
24: astore 7
25: aload 3
invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:()Lio/netty/util/concurrent/Future;
pop
26: aload 4
invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:()Lio/netty/util/concurrent/Future;
pop
27: aload 7
athrow
28: StackMap locals:
StackMap stack:
aload 3
invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:()Lio/netty/util/concurrent/Future;
pop
29: aload 4
invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:()Lio/netty/util/concurrent/Future;
pop
30: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 args [Ljava/lang/String;
1 31 1 ssc Lio/netty/handler/ssl/util/SelfSignedCertificate;
11 31 2 sslCtx Lio/netty/handler/ssl/SslContext;
12 31 3 bossGroup Lio/netty/channel/EventLoopGroup;
13 31 4 workerGroup Lio/netty/channel/EventLoopGroup;
14 23 5 b Lio/netty/bootstrap/ServerBootstrap;
20 23 6 ch Lio/netty/channel/Channel;
Exception table:
from to target type
13 24 24 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
args
}
SourceFile: "SpdyServer.java"
InnerClasses:
public final Protocol = io.netty.handler.ssl.ApplicationProtocolConfig$Protocol of io.netty.handler.ssl.ApplicationProtocolConfig
public final SelectedListenerFailureBehavior = io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior of io.netty.handler.ssl.ApplicationProtocolConfig
public final SelectorFailureBehavior = io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior of io.netty.handler.ssl.ApplicationProtocolConfig