class io.vertx.core.net.impl.NetServerImpl$1 extends io.netty.channel.ChannelInitializer<io.netty.channel.Channel>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.vertx.core.net.impl.NetServerImpl$1
super_class: io.netty.channel.ChannelInitializer
{
final io.vertx.core.net.impl.NetServerImpl this$0;
descriptor: Lio/vertx/core/net/impl/NetServerImpl;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(io.vertx.core.net.impl.NetServerImpl);
descriptor: (Lio/vertx/core/net/impl/NetServerImpl;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
aload 0
invokespecial io.netty.channel.ChannelInitializer.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/net/impl/NetServerImpl$1;
MethodParameters:
Name Flags
this$0 final
protected void initChannel(io.netty.channel.Channel);
descriptor: (Lio/netty/channel/Channel;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
invokevirtual io.vertx.core.net.impl.NetServerImpl.accept:()Z
ifne 3
1: aload 1
invokeinterface io.netty.channel.Channel.close:()Lio/netty/channel/ChannelFuture;
pop
2: return
3: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.handlerManager:Lio/vertx/core/net/impl/HandlerManager;
aload 1
invokeinterface io.netty.channel.Channel.eventLoop:()Lio/netty/channel/EventLoop;
invokevirtual io.vertx.core.net.impl.HandlerManager.chooseHandler:(Lio/netty/channel/EventLoop;)Lio/vertx/core/net/impl/HandlerHolder;
astore 2
start local 2 4: aload 2
ifnull 16
5: aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
invokevirtual io.vertx.core.net.impl.SSLHelper.isSSL:()Z
ifeq 15
6: aload 1
invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc "handshaker"
new io.vertx.core.net.impl.SslHandshakeCompletionHandler
dup
aload 0
aload 2
aload 1
invokedynamic handle(Lio/vertx/core/net/impl/NetServerImpl$1;Lio/vertx/core/net/impl/HandlerHolder;Lio/netty/channel/Channel;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/net/impl/NetServerImpl$1.lambda$0(Lio/vertx/core/net/impl/HandlerHolder;Lio/netty/channel/Channel;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
invokespecial io.vertx.core.net.impl.SslHandshakeCompletionHandler.<init>:(Lio/vertx/core/Handler;)V
invokeinterface io.netty.channel.ChannelPipeline.addFirst:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
7: aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.options:Lio/vertx/core/net/NetServerOptions;
invokevirtual io.vertx.core.net.NetServerOptions.isSni:()Z
ifeq 11
8: new io.netty.handler.ssl.SniHandler
dup
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.vertx:Lio/vertx/core/impl/VertxInternal;
invokevirtual io.vertx.core.net.impl.SSLHelper.serverNameMapper:(Lio/vertx/core/impl/VertxInternal;)Lio/netty/util/Mapping;
invokespecial io.netty.handler.ssl.SniHandler.<init>:(Lio/netty/util/Mapping;)V
astore 3
start local 3 9: aload 1
invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc "ssl"
aload 3
invokeinterface io.netty.channel.ChannelPipeline.addFirst:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
end local 3 10: goto 16
11: StackMap locals: io.vertx.core.net.impl.HandlerHolder
StackMap stack:
new io.netty.handler.ssl.SslHandler
dup
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.vertx:Lio/vertx/core/impl/VertxInternal;
invokevirtual io.vertx.core.net.impl.SSLHelper.createEngine:(Lio/vertx/core/impl/VertxInternal;)Ljavax/net/ssl/SSLEngine;
invokespecial io.netty.handler.ssl.SslHandler.<init>:(Ljavax/net/ssl/SSLEngine;)V
astore 3
start local 3 12: aload 3
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
invokevirtual io.vertx.core.net.impl.SSLHelper.getSslHandshakeTimeout:()J
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
getfield io.vertx.core.net.impl.NetServerImpl.sslHelper:Lio/vertx/core/net/impl/SSLHelper;
invokevirtual io.vertx.core.net.impl.SSLHelper.getSslHandshakeTimeoutUnit:()Ljava/util/concurrent/TimeUnit;
invokevirtual io.netty.handler.ssl.SslHandler.setHandshakeTimeout:(JLjava/util/concurrent/TimeUnit;)V
13: aload 1
invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc "ssl"
aload 3
invokeinterface io.netty.channel.ChannelPipeline.addFirst:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
end local 3 14: goto 16
15: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
aload 2
aload 1
invokevirtual io.vertx.core.net.impl.NetServerImpl.connected:(Lio/vertx/core/net/impl/HandlerHolder;Lio/netty/channel/Channel;)V
16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lio/vertx/core/net/impl/NetServerImpl$1;
0 17 1 ch Lio/netty/channel/Channel;
4 17 2 handler Lio/vertx/core/net/impl/HandlerHolder<Lio/vertx/core/net/impl/NetServerImpl$Handlers;>;
9 10 3 sniHandler Lio/netty/handler/ssl/SniHandler;
12 14 3 sslHandler Lio/netty/handler/ssl/SslHandler;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
ch
private void lambda$0(io.vertx.core.net.impl.HandlerHolder, io.netty.channel.Channel, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/net/impl/HandlerHolder;Lio/netty/channel/Channel;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 3 0: aload 3
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 3
1: aload 0
getfield io.vertx.core.net.impl.NetServerImpl$1.this$0:Lio/vertx/core/net/impl/NetServerImpl;
aload 1
aload 2
invokevirtual io.vertx.core.net.impl.NetServerImpl.connected:(Lio/vertx/core/net/impl/HandlerHolder;Lio/netty/channel/Channel;)V
2: goto 8
3: StackMap locals:
StackMap stack:
aload 1
getfield io.vertx.core.net.impl.HandlerHolder.handler:Ljava/lang/Object;
checkcast io.vertx.core.net.impl.NetServerImpl$Handlers
getfield io.vertx.core.net.impl.NetServerImpl$Handlers.exceptionHandler:Lio/vertx/core/Handler;
astore 4
start local 4 4: aload 4
ifnull 7
5: aload 1
getfield io.vertx.core.net.impl.HandlerHolder.context:Lio/vertx/core/impl/ContextInternal;
aload 4
aload 3
invokedynamic handle(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/net/impl/NetServerImpl$1.lambda$1(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokeinterface io.vertx.core.impl.ContextInternal.executeFromIO:(Lio/vertx/core/Handler;)V
6: goto 8
7: StackMap locals: io.vertx.core.Handler
StackMap stack:
getstatic io.vertx.core.net.impl.NetServerImpl.log:Lio/vertx/core/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Client from origin "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface io.netty.channel.Channel.remoteAddress:()Ljava/net/SocketAddress;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " failed to connect over ssl: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;)V
end local 4 8: StackMap locals:
StackMap stack:
return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/core/net/impl/NetServerImpl$1;
0 9 3 ar Lio/vertx/core/AsyncResult<Lio/netty/channel/Channel;>;
4 8 4 exceptionHandler Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
private static void lambda$1(io.vertx.core.Handler, io.vertx.core.AsyncResult, java.lang.Void);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 2 0: aload 0
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
1: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 2 2 v Ljava/lang/Void;
}
Signature: Lio/netty/channel/ChannelInitializer<Lio/netty/channel/Channel;>;
SourceFile: "NetServerImpl.java"
EnclosingMethod: io.vertx.core.net.impl.NetServerImpl.listen:(Lio/vertx/core/Handler;Lio/vertx/core/net/SocketAddress;Lio/vertx/core/Handler;)V
NestHost: io.vertx.core.net.impl.NetServerImpl
InnerClasses:
io.vertx.core.net.impl.NetServerImpl$1
Handlers = io.vertx.core.net.impl.NetServerImpl$Handlers of io.vertx.core.net.impl.NetServerImpl
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles