class com.mongodb.async.client.internal.KeyManagementService$3 implements java.nio.channels.CompletionHandler<java.lang.Integer, java.lang.Void>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.mongodb.async.client.internal.KeyManagementService$3
super_class: java.lang.Object
{
final com.mongodb.async.client.internal.KeyManagementService this$0;
descriptor: Lcom/mongodb/async/client/internal/KeyManagementService;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final org.bson.ByteBuf val$buffer;
descriptor: Lorg/bson/ByteBuf;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final com.mongodb.crypt.capi.MongoKeyDecryptor val$keyDecryptor;
descriptor: Lcom/mongodb/crypt/capi/MongoKeyDecryptor;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final com.mongodb.connection.Stream val$stream;
descriptor: Lcom/mongodb/connection/Stream;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final com.mongodb.async.SingleResultCallback val$callback;
descriptor: Lcom/mongodb/async/SingleResultCallback;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.mongodb.async.client.internal.KeyManagementService, org.bson.ByteBuf, com.mongodb.crypt.capi.MongoKeyDecryptor, com.mongodb.connection.Stream, com.mongodb.async.SingleResultCallback);
descriptor: (Lcom/mongodb/async/client/internal/KeyManagementService;Lorg/bson/ByteBuf;Lcom/mongodb/crypt/capi/MongoKeyDecryptor;Lcom/mongodb/connection/Stream;Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0000)
Code:
stack=2, locals=6, args_size=6
start local 0 0: aload 0
aload 1
putfield com.mongodb.async.client.internal.KeyManagementService$3.this$0:Lcom/mongodb/async/client/internal/KeyManagementService;
aload 0
aload 2
putfield com.mongodb.async.client.internal.KeyManagementService$3.val$buffer:Lorg/bson/ByteBuf;
aload 0
aload 3
putfield com.mongodb.async.client.internal.KeyManagementService$3.val$keyDecryptor:Lcom/mongodb/crypt/capi/MongoKeyDecryptor;
aload 0
aload 4
putfield com.mongodb.async.client.internal.KeyManagementService$3.val$stream:Lcom/mongodb/connection/Stream;
aload 0
aload 5
putfield com.mongodb.async.client.internal.KeyManagementService$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/async/client/internal/KeyManagementService$3;
MethodParameters:
Name Flags
this$0 final
val$buffer final
val$keyDecryptor final
val$stream final
val$callback final
public void completed(java.lang.Integer, java.lang.Void);
descriptor: (Ljava/lang/Integer;Ljava/lang/Void;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$buffer:Lorg/bson/ByteBuf;
invokeinterface org.bson.ByteBuf.flip:()Lorg/bson/ByteBuf;
pop
1: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$keyDecryptor:Lcom/mongodb/crypt/capi/MongoKeyDecryptor;
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$buffer:Lorg/bson/ByteBuf;
invokeinterface org.bson.ByteBuf.asNIO:()Ljava/nio/ByteBuffer;
invokeinterface com.mongodb.crypt.capi.MongoKeyDecryptor.feed:(Ljava/nio/ByteBuffer;)V
2: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$buffer:Lorg/bson/ByteBuf;
invokeinterface org.bson.ByteBuf.release:()V
3: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.this$0:Lcom/mongodb/async/client/internal/KeyManagementService;
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$stream:Lcom/mongodb/connection/Stream;
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$keyDecryptor:Lcom/mongodb/crypt/capi/MongoKeyDecryptor;
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
invokevirtual com.mongodb.async.client.internal.KeyManagementService.streamRead:(Lcom/mongodb/connection/Stream;Lcom/mongodb/crypt/capi/MongoKeyDecryptor;Lcom/mongodb/async/SingleResultCallback;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/mongodb/async/client/internal/KeyManagementService$3;
0 5 1 integer Ljava/lang/Integer;
0 5 2 aVoid Ljava/lang/Void;
MethodParameters:
Name Flags
integer final
aVoid final
public void failed(java.lang.Throwable, java.lang.Void);
descriptor: (Ljava/lang/Throwable;Ljava/lang/Void;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$buffer:Lorg/bson/ByteBuf;
invokeinterface org.bson.ByteBuf.release:()V
1: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$stream:Lcom/mongodb/connection/Stream;
invokeinterface com.mongodb.connection.Stream.close:()V
2: aload 1
instanceof java.nio.channels.InterruptedByTimeoutException
ifeq 7
3: new com.mongodb.MongoSocketReadTimeoutException
dup
ldc "Timeout while receiving message from Key Management Service"
4: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.this$0:Lcom/mongodb/async/client/internal/KeyManagementService;
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$keyDecryptor:Lcom/mongodb/crypt/capi/MongoKeyDecryptor;
invokevirtual com.mongodb.async.client.internal.KeyManagementService.getServerAddress:(Lcom/mongodb/crypt/capi/MongoKeyDecryptor;)Lcom/mongodb/ServerAddress;
aload 1
5: invokespecial com.mongodb.MongoSocketReadTimeoutException.<init>:(Ljava/lang/String;Lcom/mongodb/ServerAddress;Ljava/lang/Throwable;)V
astore 3
start local 3 6: goto 10
end local 3 7: StackMap locals:
StackMap stack:
new com.mongodb.MongoSocketReadException
dup
ldc "Exception receiving message from Key Management Service"
8: aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.this$0:Lcom/mongodb/async/client/internal/KeyManagementService;
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$keyDecryptor:Lcom/mongodb/crypt/capi/MongoKeyDecryptor;
invokevirtual com.mongodb.async.client.internal.KeyManagementService.getServerAddress:(Lcom/mongodb/crypt/capi/MongoKeyDecryptor;)Lcom/mongodb/ServerAddress;
aload 1
9: invokespecial com.mongodb.MongoSocketReadException.<init>:(Ljava/lang/String;Lcom/mongodb/ServerAddress;Ljava/lang/Throwable;)V
astore 3
start local 3 10: StackMap locals: com.mongodb.MongoSocketException
StackMap stack:
aload 0
getfield com.mongodb.async.client.internal.KeyManagementService$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aconst_null
aload 3
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/mongodb/async/client/internal/KeyManagementService$3;
0 12 1 t Ljava/lang/Throwable;
0 12 2 aVoid Ljava/lang/Void;
6 7 3 exception Lcom/mongodb/MongoSocketException;
10 12 3 exception Lcom/mongodb/MongoSocketException;
MethodParameters:
Name Flags
t final
aVoid final
public void failed(java.lang.Throwable, java.lang.Object);
descriptor: (Ljava/lang/Throwable;Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual com.mongodb.async.client.internal.KeyManagementService$3.failed:(Ljava/lang/Throwable;Ljava/lang/Void;)V
return
LocalVariableTable:
Start End Slot Name Signature
public void completed(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.lang.Integer
aload 2
checkcast java.lang.Void
invokevirtual com.mongodb.async.client.internal.KeyManagementService$3.completed:(Ljava/lang/Integer;Ljava/lang/Void;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Ljava/nio/channels/CompletionHandler<Ljava/lang/Integer;Ljava/lang/Void;>;
SourceFile: "KeyManagementService.java"
EnclosingMethod: com.mongodb.async.client.internal.KeyManagementService.streamRead:(Lcom/mongodb/connection/Stream;Lcom/mongodb/crypt/capi/MongoKeyDecryptor;Lcom/mongodb/async/SingleResultCallback;)V
NestHost: com.mongodb.async.client.internal.KeyManagementService
InnerClasses:
com.mongodb.async.client.internal.KeyManagementService$3