class com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener implements io.netty.channel.ChannelFutureListener
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener
super_class: java.lang.Object
{
private final java.util.Queue<java.net.SocketAddress> socketAddressQueue;
descriptor: Ljava/util/Queue;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Queue<Ljava/net/SocketAddress;>;
private final io.netty.channel.ChannelFuture channelFuture;
descriptor: Lio/netty/channel/ChannelFuture;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.mongodb.connection.AsyncCompletionHandler<java.lang.Void> handler;
descriptor: Lcom/mongodb/connection/AsyncCompletionHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lcom/mongodb/connection/AsyncCompletionHandler<Ljava/lang/Void;>;
final com.mongodb.connection.netty.NettyStream this$0;
descriptor: Lcom/mongodb/connection/netty/NettyStream;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(java.util.Queue<java.net.SocketAddress>, io.netty.channel.ChannelFuture, com.mongodb.connection.AsyncCompletionHandler<java.lang.Void>);
descriptor: (Lcom/mongodb/connection/netty/NettyStream;Ljava/util/Queue;Lio/netty/channel/ChannelFuture;Lcom/mongodb/connection/AsyncCompletionHandler;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 start local 2 start local 3 start local 4 0: aload 0
aload 1
putfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.this$0:Lcom/mongodb/connection/netty/NettyStream;
1: aload 0
invokespecial java.lang.Object.<init>:()V
2: aload 0
aload 2
putfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.socketAddressQueue:Ljava/util/Queue;
3: aload 0
aload 3
putfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.channelFuture:Lio/netty/channel/ChannelFuture;
4: aload 0
aload 4
putfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.handler:Lcom/mongodb/connection/AsyncCompletionHandler;
5: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/mongodb/connection/netty/NettyStream$OpenChannelFutureListener;
0 6 2 socketAddressQueue Ljava/util/Queue<Ljava/net/SocketAddress;>;
0 6 3 channelFuture Lio/netty/channel/ChannelFuture;
0 6 4 handler Lcom/mongodb/connection/AsyncCompletionHandler<Ljava/lang/Void;>;
Signature: (Ljava/util/Queue<Ljava/net/SocketAddress;>;Lio/netty/channel/ChannelFuture;Lcom/mongodb/connection/AsyncCompletionHandler<Ljava/lang/Void;>;)V
MethodParameters:
Name Flags
this$0 final
socketAddressQueue final
channelFuture final
handler final
public void operationComplete(io.netty.channel.ChannelFuture);
descriptor: (Lio/netty/channel/ChannelFuture;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface io.netty.channel.ChannelFuture.isSuccess:()Z
ifeq 5
1: aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.this$0:Lcom/mongodb/connection/netty/NettyStream;
aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.channelFuture:Lio/netty/channel/ChannelFuture;
invokeinterface io.netty.channel.ChannelFuture.channel:()Lio/netty/channel/Channel;
putfield com.mongodb.connection.netty.NettyStream.channel:Lio/netty/channel/Channel;
2: aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.channel:Lio/netty/channel/Channel;
invokeinterface io.netty.channel.Channel.closeFuture:()Lio/netty/channel/ChannelFuture;
new com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener$1
dup
aload 0
invokespecial com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener$1.<init>:(Lcom/mongodb/connection/netty/NettyStream$OpenChannelFutureListener;)V
invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
pop
3: aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.handler:Lcom/mongodb/connection/AsyncCompletionHandler;
aconst_null
invokeinterface com.mongodb.connection.AsyncCompletionHandler.completed:(Ljava/lang/Object;)V
4: goto 9
5: StackMap locals:
StackMap stack:
aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.socketAddressQueue:Ljava/util/Queue;
invokeinterface java.util.Queue.isEmpty:()Z
ifeq 8
6: aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.handler:Lcom/mongodb/connection/AsyncCompletionHandler;
new com.mongodb.MongoSocketOpenException
dup
ldc "Exception opening socket"
aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.this$0:Lcom/mongodb/connection/netty/NettyStream;
invokevirtual com.mongodb.connection.netty.NettyStream.getAddress:()Lcom/mongodb/ServerAddress;
aload 1
invokeinterface io.netty.channel.ChannelFuture.cause:()Ljava/lang/Throwable;
invokespecial com.mongodb.MongoSocketOpenException.<init>:(Ljava/lang/String;Lcom/mongodb/ServerAddress;Ljava/lang/Throwable;)V
invokeinterface com.mongodb.connection.AsyncCompletionHandler.failed:(Ljava/lang/Throwable;)V
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.this$0:Lcom/mongodb/connection/netty/NettyStream;
aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.handler:Lcom/mongodb/connection/AsyncCompletionHandler;
aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.socketAddressQueue:Ljava/util/Queue;
invokevirtual com.mongodb.connection.netty.NettyStream.initializeChannel:(Lcom/mongodb/connection/AsyncCompletionHandler;Ljava/util/Queue;)V
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/mongodb/connection/netty/NettyStream$OpenChannelFutureListener;
0 10 1 future Lio/netty/channel/ChannelFuture;
MethodParameters:
Name Flags
future final
public void operationComplete(io.netty.util.concurrent.Future);
descriptor: (Lio/netty/util/concurrent/Future;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.netty.channel.ChannelFuture
invokevirtual com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.operationComplete:(Lio/netty/channel/ChannelFuture;)V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
static com.mongodb.connection.netty.NettyStream access$1(com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener);
descriptor: (Lcom/mongodb/connection/netty/NettyStream$OpenChannelFutureListener;)Lcom/mongodb/connection/netty/NettyStream;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
getfield com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener.this$0:Lcom/mongodb/connection/netty/NettyStream;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "NettyStream.java"
NestHost: com.mongodb.connection.netty.NettyStream
InnerClasses:
private OpenChannelFutureListener = com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener of com.mongodb.connection.netty.NettyStream
com.mongodb.connection.netty.NettyStream$OpenChannelFutureListener$1