class com.mongodb.connection.netty.NettyStream$1 extends io.netty.channel.ChannelInitializer<io.netty.channel.socket.SocketChannel>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.mongodb.connection.netty.NettyStream$1
super_class: io.netty.channel.ChannelInitializer
{
final com.mongodb.connection.netty.NettyStream this$0;
descriptor: Lcom/mongodb/connection/netty/NettyStream;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.mongodb.connection.netty.NettyStream);
descriptor: (Lcom/mongodb/connection/netty/NettyStream;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // com.mongodb.connection.netty.NettyStream$1 this
0: .line 135
aload 0 /* this */
aload 1
putfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
aload 0 /* this */
invokespecial io.netty.channel.ChannelInitializer.<init>:()V
return
end local 0 // com.mongodb.connection.netty.NettyStream$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/connection/netty/NettyStream$1;
MethodParameters:
Name Flags
this$0 final
public void initChannel(io.netty.channel.socket.SocketChannel);
descriptor: (Lio/netty/channel/socket/SocketChannel;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 // com.mongodb.connection.netty.NettyStream$1 this
start local 1 // io.netty.channel.socket.SocketChannel ch
0: .line 138
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.sslSettings:Lcom/mongodb/connection/SslSettings;
invokevirtual com.mongodb.connection.SslSettings.isEnabled:()Z
ifeq 9
1: .line 139
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
invokevirtual com.mongodb.connection.netty.NettyStream.getSslContext:()Ljavax/net/ssl/SSLContext;
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.address:Lcom/mongodb/ServerAddress;
invokevirtual com.mongodb.ServerAddress.getHost:()Ljava/lang/String;
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.address:Lcom/mongodb/ServerAddress;
invokevirtual com.mongodb.ServerAddress.getPort:()I
invokevirtual javax.net.ssl.SSLContext.createSSLEngine:(Ljava/lang/String;I)Ljavax/net/ssl/SSLEngine;
astore 2 /* engine */
start local 2 // javax.net.ssl.SSLEngine engine
2: .line 140
aload 2 /* engine */
iconst_1
invokevirtual javax.net.ssl.SSLEngine.setUseClientMode:(Z)V
3: .line 141
aload 2 /* engine */
invokevirtual javax.net.ssl.SSLEngine.getSSLParameters:()Ljavax/net/ssl/SSLParameters;
astore 3 /* sslParameters */
start local 3 // javax.net.ssl.SSLParameters sslParameters
4: .line 142
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.address:Lcom/mongodb/ServerAddress;
invokevirtual com.mongodb.ServerAddress.getHost:()Ljava/lang/String;
aload 3 /* sslParameters */
invokestatic com.mongodb.internal.connection.SslHelper.enableSni:(Ljava/lang/String;Ljavax/net/ssl/SSLParameters;)V
5: .line 143
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.sslSettings:Lcom/mongodb/connection/SslSettings;
invokevirtual com.mongodb.connection.SslSettings.isInvalidHostNameAllowed:()Z
ifne 7
6: .line 144
aload 3 /* sslParameters */
invokestatic com.mongodb.internal.connection.SslHelper.enableHostNameVerification:(Ljavax/net/ssl/SSLParameters;)V
7: .line 146
StackMap locals: javax.net.ssl.SSLEngine javax.net.ssl.SSLParameters
StackMap stack:
aload 2 /* engine */
aload 3 /* sslParameters */
invokevirtual javax.net.ssl.SSLEngine.setSSLParameters:(Ljavax/net/ssl/SSLParameters;)V
8: .line 147
aload 1 /* ch */
invokeinterface io.netty.channel.socket.SocketChannel.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc "ssl"
new io.netty.handler.ssl.SslHandler
dup
aload 2 /* engine */
iconst_0
invokespecial io.netty.handler.ssl.SslHandler.<init>:(Ljavax/net/ssl/SSLEngine;Z)V
invokeinterface io.netty.channel.ChannelPipeline.addFirst:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
end local 3 // javax.net.ssl.SSLParameters sslParameters
end local 2 // javax.net.ssl.SSLEngine engine
9: .line 149
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
getfield com.mongodb.connection.netty.NettyStream.settings:Lcom/mongodb/connection/SocketSettings;
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual com.mongodb.connection.SocketSettings.getReadTimeout:(Ljava/util/concurrent/TimeUnit;)I
istore 2 /* readTimeout */
start local 2 // int readTimeout
10: .line 150
iload 2 /* readTimeout */
ifle 12
11: .line 151
aload 1 /* ch */
invokeinterface io.netty.channel.socket.SocketChannel.pipeline:()Lio/netty/channel/ChannelPipeline;
ldc "ReadTimeoutHandler"
new com.mongodb.connection.netty.ReadTimeoutHandler
dup
iload 2 /* readTimeout */
i2l
invokespecial com.mongodb.connection.netty.ReadTimeoutHandler.<init>:(J)V
invokeinterface io.netty.channel.ChannelPipeline.addLast:(Ljava/lang/String;Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
12: .line 153
StackMap locals: int
StackMap stack:
aload 1 /* ch */
invokeinterface io.netty.channel.socket.SocketChannel.pipeline:()Lio/netty/channel/ChannelPipeline;
iconst_1
anewarray io.netty.channel.ChannelHandler
dup
iconst_0
new com.mongodb.connection.netty.NettyStream$InboundBufferHandler
dup
aload 0 /* this */
getfield com.mongodb.connection.netty.NettyStream$1.this$0:Lcom/mongodb/connection/netty/NettyStream;
invokespecial com.mongodb.connection.netty.NettyStream$InboundBufferHandler.<init>:(Lcom/mongodb/connection/netty/NettyStream;)V
aastore
invokeinterface io.netty.channel.ChannelPipeline.addLast:([Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
pop
13: .line 154
return
end local 2 // int readTimeout
end local 1 // io.netty.channel.socket.SocketChannel ch
end local 0 // com.mongodb.connection.netty.NettyStream$1 this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/mongodb/connection/netty/NettyStream$1;
0 14 1 ch Lio/netty/channel/socket/SocketChannel;
2 9 2 engine Ljavax/net/ssl/SSLEngine;
4 9 3 sslParameters Ljavax/net/ssl/SSLParameters;
10 14 2 readTimeout I
MethodParameters:
Name Flags
ch final
public void initChannel(io.netty.channel.Channel);
descriptor: (Lio/netty/channel/Channel;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: .line 1
aload 0
aload 1
checkcast io.netty.channel.socket.SocketChannel
invokevirtual com.mongodb.connection.netty.NettyStream$1.initChannel:(Lio/netty/channel/socket/SocketChannel;)V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
}
Signature: Lio/netty/channel/ChannelInitializer<Lio/netty/channel/socket/SocketChannel;>;
SourceFile: "NettyStream.java"
EnclosingMethod: com.mongodb.connection.netty.NettyStream.initializeChannel:(Lcom/mongodb/connection/AsyncCompletionHandler;Ljava/util/Queue;)V
NestHost: com.mongodb.connection.netty.NettyStream
InnerClasses:
com.mongodb.connection.netty.NettyStream$1
private InboundBufferHandler = com.mongodb.connection.netty.NettyStream$InboundBufferHandler of com.mongodb.connection.netty.NettyStream