class io.netty.bootstrap.Bootstrap$2 implements io.netty.util.concurrent.FutureListener<java.net.SocketAddress>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.netty.bootstrap.Bootstrap$2
super_class: java.lang.Object
{
final io.netty.bootstrap.Bootstrap this$0;
descriptor: Lio/netty/bootstrap/Bootstrap;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final io.netty.channel.Channel val$channel;
descriptor: Lio/netty/channel/Channel;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final io.netty.channel.ChannelPromise val$promise;
descriptor: Lio/netty/channel/ChannelPromise;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.net.SocketAddress val$localAddress;
descriptor: Ljava/net/SocketAddress;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(io.netty.bootstrap.Bootstrap, io.netty.channel.Channel, io.netty.channel.ChannelPromise, java.net.SocketAddress);
descriptor: (Lio/netty/bootstrap/Bootstrap;Lio/netty/channel/Channel;Lio/netty/channel/ChannelPromise;Ljava/net/SocketAddress;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 0: aload 0
aload 1
putfield io.netty.bootstrap.Bootstrap$2.this$0:Lio/netty/bootstrap/Bootstrap;
aload 0
aload 2
putfield io.netty.bootstrap.Bootstrap$2.val$channel:Lio/netty/channel/Channel;
aload 0
aload 3
putfield io.netty.bootstrap.Bootstrap$2.val$promise:Lio/netty/channel/ChannelPromise;
aload 0
aload 4
putfield io.netty.bootstrap.Bootstrap$2.val$localAddress:Ljava/net/SocketAddress;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/bootstrap/Bootstrap$2;
MethodParameters:
Name Flags
this$0 final
val$channel final
val$promise final
val$localAddress final
public void operationComplete(io.netty.util.concurrent.Future<java.net.SocketAddress>);
descriptor: (Lio/netty/util/concurrent/Future;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
ifnull 4
1: aload 0
getfield io.netty.bootstrap.Bootstrap$2.val$channel:Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.close:()Lio/netty/channel/ChannelFuture;
pop
2: aload 0
getfield io.netty.bootstrap.Bootstrap$2.val$promise:Lio/netty/channel/ChannelPromise;
aload 1
invokeinterface io.netty.util.concurrent.Future.cause:()Ljava/lang/Throwable;
invokeinterface io.netty.channel.ChannelPromise.setFailure:(Ljava/lang/Throwable;)Lio/netty/channel/ChannelPromise;
pop
3: goto 5
4: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.netty.util.concurrent.Future.getNow:()Ljava/lang/Object;
checkcast java.net.SocketAddress
aload 0
getfield io.netty.bootstrap.Bootstrap$2.val$localAddress:Ljava/net/SocketAddress;
aload 0
getfield io.netty.bootstrap.Bootstrap$2.val$promise:Lio/netty/channel/ChannelPromise;
invokestatic io.netty.bootstrap.Bootstrap.doConnect:(Ljava/net/SocketAddress;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/netty/bootstrap/Bootstrap$2;
0 6 1 future Lio/netty/util/concurrent/Future<Ljava/net/SocketAddress;>;
Exceptions:
throws java.lang.Exception
Signature: (Lio/netty/util/concurrent/Future<Ljava/net/SocketAddress;>;)V
MethodParameters:
Name Flags
future
}
Signature: Ljava/lang/Object;Lio/netty/util/concurrent/FutureListener<Ljava/net/SocketAddress;>;
SourceFile: "Bootstrap.java"
EnclosingMethod: io.netty.bootstrap.Bootstrap.doResolveAndConnect0:(Lio/netty/channel/Channel;Ljava/net/SocketAddress;Ljava/net/SocketAddress;Lio/netty/channel/ChannelPromise;)Lio/netty/channel/ChannelFuture;
NestHost: io.netty.bootstrap.Bootstrap
InnerClasses:
io.netty.bootstrap.Bootstrap$2