public class com.mongodb.internal.connection.InternalStreamConnectionInitializer implements com.mongodb.internal.connection.InternalConnectionInitializer
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.mongodb.internal.connection.InternalStreamConnectionInitializer
super_class: java.lang.Object
{
private final java.util.List<com.mongodb.internal.connection.Authenticator> authenticators;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lcom/mongodb/internal/connection/Authenticator;>;
private final org.bson.BsonDocument clientMetadataDocument;
descriptor: Lorg/bson/BsonDocument;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<com.mongodb.MongoCompressor> requestedCompressors;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lcom/mongodb/MongoCompressor;>;
private final boolean checkSaslSupportedMechs;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(java.util.List<com.mongodb.internal.connection.Authenticator>, org.bson.BsonDocument, java.util.List<com.mongodb.MongoCompressor>);
descriptor: (Ljava/util/List;Lorg/bson/BsonDocument;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
ldc "authenticators"
aload 1
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
2: aload 0
aload 2
putfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.clientMetadataDocument:Lorg/bson/BsonDocument;
3: aload 0
ldc "requestedCompressors"
aload 3
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
putfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.requestedCompressors:Ljava/util/List;
4: aload 0
aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
invokeinterface java.util.List.size:()I
ifle 5
aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
instanceof com.mongodb.internal.connection.DefaultAuthenticator
ifeq 5
iconst_1
goto 6
StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer java.util.List org.bson.BsonDocument java.util.List
StackMap stack: com.mongodb.internal.connection.InternalStreamConnectionInitializer
5: iconst_0
StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer java.util.List org.bson.BsonDocument java.util.List
StackMap stack: com.mongodb.internal.connection.InternalStreamConnectionInitializer int
6: putfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.checkSaslSupportedMechs:Z
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 8 1 authenticators Ljava/util/List<Lcom/mongodb/internal/connection/Authenticator;>;
0 8 2 clientMetadataDocument Lorg/bson/BsonDocument;
0 8 3 requestedCompressors Ljava/util/List<Lcom/mongodb/MongoCompressor;>;
Signature: (Ljava/util/List<Lcom/mongodb/internal/connection/Authenticator;>;Lorg/bson/BsonDocument;Ljava/util/List<Lcom/mongodb/MongoCompressor;>;)V
MethodParameters:
Name Flags
authenticators final
clientMetadataDocument final
requestedCompressors final
public com.mongodb.connection.ConnectionDescription initialize(com.mongodb.internal.connection.InternalConnection);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;)Lcom/mongodb/connection/ConnectionDescription;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: ldc "internalConnection"
aload 1
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
aload 1
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.initializeConnectionDescription:(Lcom/mongodb/internal/connection/InternalConnection;)Lcom/mongodb/connection/ConnectionDescription;
astore 2
start local 2 2: aload 0
aload 1
aload 2
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticateAll:(Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;)V
3: aload 0
aload 1
aload 2
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.completeConnectionDescriptionInitialization:(Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;)Lcom/mongodb/connection/ConnectionDescription;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 4 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
2 4 2 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
MethodParameters:
Name Flags
internalConnection final
public void initializeAsync(com.mongodb.internal.connection.InternalConnection, com.mongodb.async.SingleResultCallback<com.mongodb.connection.ConnectionDescription>);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 0
aload 1
aload 2
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.createConnectionDescriptionCallback:(Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)Lcom/mongodb/async/SingleResultCallback;
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.initializeConnectionDescriptionAsync:(Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 2 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
0 2 2 callback Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;
Signature: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;)V
MethodParameters:
Name Flags
internalConnection final
callback final
private com.mongodb.async.SingleResultCallback<com.mongodb.connection.ConnectionDescription> createConnectionDescriptionCallback(com.mongodb.internal.connection.InternalConnection, com.mongodb.async.SingleResultCallback<com.mongodb.connection.ConnectionDescription>);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)Lcom/mongodb/async/SingleResultCallback;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new com.mongodb.internal.connection.InternalStreamConnectionInitializer$1
dup
aload 0
aload 2
aload 1
invokespecial com.mongodb.internal.connection.InternalStreamConnectionInitializer$1.<init>:(Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;Lcom/mongodb/async/SingleResultCallback;Lcom/mongodb/internal/connection/InternalConnection;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 1 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
0 1 2 callback Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;
Signature: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;)Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;
MethodParameters:
Name Flags
internalConnection final
callback final
private com.mongodb.connection.ConnectionDescription initializeConnectionDescription(com.mongodb.internal.connection.InternalConnection);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;)Lcom/mongodb/connection/ConnectionDescription;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.createIsMasterCommand:()Lorg/bson/BsonDocument;
astore 3
start local 3 1: ldc "admin"
aload 3
aload 1
invokestatic com.mongodb.internal.connection.CommandHelper.executeCommand:(Ljava/lang/String;Lorg/bson/BsonDocument;Lcom/mongodb/internal/connection/InternalConnection;)Lorg/bson/BsonDocument;
astore 2
start local 2 2: goto 8
end local 2 StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer com.mongodb.internal.connection.InternalConnection top org.bson.BsonDocument
StackMap stack: com.mongodb.MongoException
3: astore 4
start local 4 4: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.checkSaslSupportedMechs:Z
ifeq 7
aload 4
invokevirtual com.mongodb.MongoException.getCode:()I
bipush 11
if_icmpne 7
5: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.mongodb.internal.connection.Authenticator
invokevirtual com.mongodb.internal.connection.Authenticator.getMongoCredential:()Lcom/mongodb/MongoCredential;
astore 5
start local 5 6: new com.mongodb.MongoSecurityException
dup
aload 5
ldc "Exception authenticating %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 4
invokespecial com.mongodb.MongoSecurityException.<init>:(Lcom/mongodb/MongoCredential;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 7: StackMap locals: com.mongodb.MongoException
StackMap stack:
aload 4
athrow
end local 4 start local 2 8: StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer com.mongodb.internal.connection.InternalConnection org.bson.BsonDocument org.bson.BsonDocument
StackMap stack:
ldc "admin"
new org.bson.BsonDocument
dup
ldc "buildinfo"
new org.bson.BsonInt32
dup
iconst_1
invokespecial org.bson.BsonInt32.<init>:(I)V
invokespecial org.bson.BsonDocument.<init>:(Ljava/lang/String;Lorg/bson/BsonValue;)V
aload 1
invokestatic com.mongodb.internal.connection.CommandHelper.executeCommand:(Ljava/lang/String;Lorg/bson/BsonDocument;Lcom/mongodb/internal/connection/InternalConnection;)Lorg/bson/BsonDocument;
astore 4
start local 4 9: aload 1
invokeinterface com.mongodb.internal.connection.InternalConnection.getDescription:()Lcom/mongodb/connection/ConnectionDescription;
invokevirtual com.mongodb.connection.ConnectionDescription.getConnectionId:()Lcom/mongodb/connection/ConnectionId;
10: aload 2
aload 4
11: invokestatic com.mongodb.internal.connection.DescriptionHelper.createConnectionDescription:(Lcom/mongodb/connection/ConnectionId;Lorg/bson/BsonDocument;Lorg/bson/BsonDocument;)Lcom/mongodb/connection/ConnectionDescription;
astore 5
start local 5 12: aload 0
aload 2
aload 5
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.setFirstAuthenticator:(Lorg/bson/BsonDocument;Lcom/mongodb/connection/ConnectionDescription;)V
13: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 14 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
2 3 2 isMasterResult Lorg/bson/BsonDocument;
8 14 2 isMasterResult Lorg/bson/BsonDocument;
1 14 3 isMasterCommandDocument Lorg/bson/BsonDocument;
4 8 4 e Lcom/mongodb/MongoException;
6 7 5 credential Lcom/mongodb/MongoCredential;
9 14 4 buildInfoResult Lorg/bson/BsonDocument;
12 14 5 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
Exception table:
from to target type
1 2 3 Class com.mongodb.MongoException
MethodParameters:
Name Flags
internalConnection final
private org.bson.BsonDocument createIsMasterCommand();
descriptor: ()Lorg/bson/BsonDocument;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=1
start local 0 0: new org.bson.BsonDocument
dup
ldc "ismaster"
new org.bson.BsonInt32
dup
iconst_1
invokespecial org.bson.BsonInt32.<init>:(I)V
invokespecial org.bson.BsonDocument.<init>:(Ljava/lang/String;Lorg/bson/BsonValue;)V
astore 1
start local 1 1: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.clientMetadataDocument:Lorg/bson/BsonDocument;
ifnull 3
2: aload 1
ldc "client"
aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.clientMetadataDocument:Lorg/bson/BsonDocument;
invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
pop
3: StackMap locals: org.bson.BsonDocument
StackMap stack:
aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.requestedCompressors:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 10
4: new org.bson.BsonArray
dup
invokespecial org.bson.BsonArray.<init>:()V
astore 2
start local 2 5: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.requestedCompressors:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 8
StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer org.bson.BsonDocument org.bson.BsonArray top java.util.Iterator
StackMap stack:
6: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.mongodb.MongoCompressor
astore 3
start local 3 7: aload 2
new org.bson.BsonString
dup
aload 3
invokevirtual com.mongodb.MongoCompressor.getName:()Ljava/lang/String;
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
invokevirtual org.bson.BsonArray.add:(Lorg/bson/BsonValue;)Z
pop
end local 3 8: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
9: aload 1
ldc "compression"
aload 2
invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
pop
end local 2 10: StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer org.bson.BsonDocument
StackMap stack:
aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.checkSaslSupportedMechs:Z
ifeq 15
11: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.mongodb.internal.connection.Authenticator
invokevirtual com.mongodb.internal.connection.Authenticator.getMongoCredential:()Lcom/mongodb/MongoCredential;
astore 2
start local 2 12: aload 1
ldc "saslSupportedMechs"
13: new org.bson.BsonString
dup
new java.lang.StringBuilder
dup
aload 2
invokevirtual com.mongodb.MongoCredential.getSource:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual com.mongodb.MongoCredential.getUserName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
14: invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
pop
end local 2 15: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
1 16 1 isMasterCommandDocument Lorg/bson/BsonDocument;
5 10 2 compressors Lorg/bson/BsonArray;
7 8 3 cur Lcom/mongodb/MongoCompressor;
12 15 2 credential Lcom/mongodb/MongoCredential;
private com.mongodb.connection.ConnectionDescription completeConnectionDescriptionInitialization(com.mongodb.internal.connection.InternalConnection, com.mongodb.connection.ConnectionDescription);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;)Lcom/mongodb/connection/ConnectionDescription;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.mongodb.connection.ConnectionDescription.getConnectionId:()Lcom/mongodb/connection/ConnectionId;
invokevirtual com.mongodb.connection.ConnectionId.getServerValue:()Ljava/lang/Integer;
ifnull 2
1: aload 2
areturn
2: StackMap locals:
StackMap stack:
aload 0
ldc "admin"
3: new org.bson.BsonDocument
dup
ldc "getlasterror"
new org.bson.BsonInt32
dup
iconst_1
invokespecial org.bson.BsonInt32.<init>:(I)V
invokespecial org.bson.BsonDocument.<init>:(Ljava/lang/String;Lorg/bson/BsonValue;)V
4: aload 1
5: invokestatic com.mongodb.internal.connection.CommandHelper.executeCommandWithoutCheckingForFailure:(Ljava/lang/String;Lorg/bson/BsonDocument;Lcom/mongodb/internal/connection/InternalConnection;)Lorg/bson/BsonDocument;
6: aload 2
7: invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.applyGetLastErrorResult:(Lorg/bson/BsonDocument;Lcom/mongodb/connection/ConnectionDescription;)Lcom/mongodb/connection/ConnectionDescription;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 8 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
0 8 2 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
MethodParameters:
Name Flags
internalConnection final
connectionDescription final
private void authenticateAll(com.mongodb.internal.connection.InternalConnection, com.mongodb.connection.ConnectionDescription);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.mongodb.connection.ConnectionDescription.getServerType:()Lcom/mongodb/connection/ServerType;
getstatic com.mongodb.connection.ServerType.REPLICA_SET_ARBITER:Lcom/mongodb/connection/ServerType;
if_acmpeq 5
1: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer com.mongodb.internal.connection.InternalConnection com.mongodb.connection.ConnectionDescription top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.mongodb.internal.connection.Authenticator
astore 3
start local 3 3: aload 3
aload 1
aload 2
invokevirtual com.mongodb.internal.connection.Authenticator.authenticate:(Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;)V
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: StackMap locals: com.mongodb.internal.connection.InternalStreamConnectionInitializer com.mongodb.internal.connection.InternalConnection com.mongodb.connection.ConnectionDescription
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 6 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
0 6 2 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
3 4 3 cur Lcom/mongodb/internal/connection/Authenticator;
MethodParameters:
Name Flags
internalConnection final
connectionDescription final
private void initializeConnectionDescriptionAsync(com.mongodb.internal.connection.InternalConnection, com.mongodb.async.SingleResultCallback<com.mongodb.connection.ConnectionDescription>);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: ldc "admin"
aload 0
invokevirtual com.mongodb.internal.connection.InternalStreamConnectionInitializer.createIsMasterCommand:()Lorg/bson/BsonDocument;
aload 1
1: new com.mongodb.internal.connection.InternalStreamConnectionInitializer$2
dup
aload 0
aload 2
aload 1
invokespecial com.mongodb.internal.connection.InternalStreamConnectionInitializer$2.<init>:(Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;Lcom/mongodb/async/SingleResultCallback;Lcom/mongodb/internal/connection/InternalConnection;)V
2: invokestatic com.mongodb.internal.connection.CommandHelper.executeCommandAsync:(Ljava/lang/String;Lorg/bson/BsonDocument;Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 4 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
0 4 2 callback Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;
Signature: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;)V
MethodParameters:
Name Flags
internalConnection final
callback final
private void setFirstAuthenticator(org.bson.BsonDocument, com.mongodb.connection.ConnectionDescription);
descriptor: (Lorg/bson/BsonDocument;Lcom/mongodb/connection/ConnectionDescription;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.checkSaslSupportedMechs:Z
ifeq 4
1: aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
iconst_0
aload 0
getfield com.mongodb.internal.connection.InternalStreamConnectionInitializer.authenticators:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.mongodb.internal.connection.DefaultAuthenticator
2: aload 1
aload 2
invokevirtual com.mongodb.internal.connection.DefaultAuthenticator.getAuthenticatorFromIsMasterResult:(Lorg/bson/BsonDocument;Lcom/mongodb/connection/ConnectionDescription;)Lcom/mongodb/internal/connection/Authenticator;
3: invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 5 1 isMasterResult Lorg/bson/BsonDocument;
0 5 2 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
MethodParameters:
Name Flags
isMasterResult final
connectionDescription final
private void completeConnectionDescriptionInitializationAsync(com.mongodb.internal.connection.InternalConnection, com.mongodb.connection.ConnectionDescription, com.mongodb.async.SingleResultCallback<com.mongodb.connection.ConnectionDescription>);
descriptor: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokevirtual com.mongodb.connection.ConnectionDescription.getConnectionId:()Lcom/mongodb/connection/ConnectionId;
invokevirtual com.mongodb.connection.ConnectionId.getServerValue:()Ljava/lang/Integer;
ifnull 3
1: aload 3
aload 2
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
2: return
3: StackMap locals:
StackMap stack:
ldc "admin"
new org.bson.BsonDocument
dup
ldc "getlasterror"
new org.bson.BsonInt32
dup
iconst_1
invokespecial org.bson.BsonInt32.<init>:(I)V
invokespecial org.bson.BsonDocument.<init>:(Ljava/lang/String;Lorg/bson/BsonValue;)V
4: aload 1
5: new com.mongodb.internal.connection.InternalStreamConnectionInitializer$3
dup
aload 0
aload 3
aload 2
invokespecial com.mongodb.internal.connection.InternalStreamConnectionInitializer$3.<init>:(Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;Lcom/mongodb/async/SingleResultCallback;Lcom/mongodb/connection/ConnectionDescription;)V
6: invokestatic com.mongodb.internal.connection.CommandHelper.executeCommandAsync:(Ljava/lang/String;Lorg/bson/BsonDocument;Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/async/SingleResultCallback;)V
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 8 1 internalConnection Lcom/mongodb/internal/connection/InternalConnection;
0 8 2 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
0 8 3 callback Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;
Signature: (Lcom/mongodb/internal/connection/InternalConnection;Lcom/mongodb/connection/ConnectionDescription;Lcom/mongodb/async/SingleResultCallback<Lcom/mongodb/connection/ConnectionDescription;>;)V
MethodParameters:
Name Flags
internalConnection final
connectionDescription final
callback final
private com.mongodb.connection.ConnectionDescription applyGetLastErrorResult(org.bson.BsonDocument, com.mongodb.connection.ConnectionDescription);
descriptor: (Lorg/bson/BsonDocument;Lcom/mongodb/connection/ConnectionDescription;)Lcom/mongodb/connection/ConnectionDescription;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "connectionId"
invokevirtual org.bson.BsonDocument.containsKey:(Ljava/lang/Object;)Z
ifeq 3
1: aload 2
invokevirtual com.mongodb.connection.ConnectionDescription.getConnectionId:()Lcom/mongodb/connection/ConnectionId;
aload 1
ldc "connectionId"
invokevirtual org.bson.BsonDocument.getNumber:(Ljava/lang/Object;)Lorg/bson/BsonNumber;
invokevirtual org.bson.BsonNumber.intValue:()I
invokevirtual com.mongodb.connection.ConnectionId.withServerValue:(I)Lcom/mongodb/connection/ConnectionId;
astore 3
start local 3 2: goto 4
end local 3 3: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.mongodb.connection.ConnectionDescription.getConnectionId:()Lcom/mongodb/connection/ConnectionId;
astore 3
start local 3 4: StackMap locals: com.mongodb.connection.ConnectionId
StackMap stack:
aload 2
aload 3
invokevirtual com.mongodb.connection.ConnectionDescription.withConnectionId:(Lcom/mongodb/connection/ConnectionId;)Lcom/mongodb/connection/ConnectionDescription;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/mongodb/internal/connection/InternalStreamConnectionInitializer;
0 5 1 getLastErrorResult Lorg/bson/BsonDocument;
0 5 2 connectionDescription Lcom/mongodb/connection/ConnectionDescription;
2 3 3 connectionId Lcom/mongodb/connection/ConnectionId;
4 5 3 connectionId Lcom/mongodb/connection/ConnectionId;
MethodParameters:
Name Flags
getLastErrorResult final
connectionDescription final
}
SourceFile: "InternalStreamConnectionInitializer.java"
NestMembers:
com.mongodb.internal.connection.InternalStreamConnectionInitializer$1 com.mongodb.internal.connection.InternalStreamConnectionInitializer$1$1 com.mongodb.internal.connection.InternalStreamConnectionInitializer$2 com.mongodb.internal.connection.InternalStreamConnectionInitializer$2$1 com.mongodb.internal.connection.InternalStreamConnectionInitializer$3 com.mongodb.internal.connection.InternalStreamConnectionInitializer$CompoundAuthenticator
InnerClasses:
com.mongodb.internal.connection.InternalStreamConnectionInitializer$1
com.mongodb.internal.connection.InternalStreamConnectionInitializer$2
com.mongodb.internal.connection.InternalStreamConnectionInitializer$3
private CompoundAuthenticator = com.mongodb.internal.connection.InternalStreamConnectionInitializer$CompoundAuthenticator of com.mongodb.internal.connection.InternalStreamConnectionInitializer