class com.mongodb.operation.AsyncChangeStreamBatchCursor$3 implements com.mongodb.async.SingleResultCallback<java.util.List<org.bson.RawBsonDocument>>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.mongodb.operation.AsyncChangeStreamBatchCursor$3
super_class: java.lang.Object
{
final com.mongodb.operation.AsyncChangeStreamBatchCursor this$0;
descriptor: Lcom/mongodb/operation/AsyncChangeStreamBatchCursor;
flags: (0x1010) 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.operation.AsyncChangeStreamBatchCursor, com.mongodb.async.SingleResultCallback);
descriptor: (Lcom/mongodb/operation/AsyncChangeStreamBatchCursor;Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 0: aload 0
aload 1
putfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.this$0:Lcom/mongodb/operation/AsyncChangeStreamBatchCursor;
aload 0
aload 2
putfield com.mongodb.operation.AsyncChangeStreamBatchCursor$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/operation/AsyncChangeStreamBatchCursor$3;
MethodParameters:
Name Flags
this$0 final
val$callback final
public void onResult(java.util.List<org.bson.RawBsonDocument>, java.lang.Throwable);
descriptor: (Ljava/util/List;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 3
1: aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aconst_null
aload 2
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
2: goto 22
StackMap locals:
StackMap stack:
3: aload 1
ifnull 21
4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 5: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals: com.mongodb.operation.AsyncChangeStreamBatchCursor$3 java.util.List java.lang.Throwable java.util.List top java.util.Iterator
StackMap stack:
6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.bson.RawBsonDocument
astore 4
start local 4 7: aload 4
ldc "_id"
invokevirtual org.bson.RawBsonDocument.containsKey:(Ljava/lang/Object;)Z
ifne 12
8: aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aconst_null
9: new com.mongodb.MongoChangeStreamException
dup
ldc "Cannot provide resume functionality when the resume token is missing."
invokespecial com.mongodb.MongoChangeStreamException.<init>:(Ljava/lang/String;)V
10: invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
11: return
12: StackMap locals: com.mongodb.operation.AsyncChangeStreamBatchCursor$3 java.util.List java.lang.Throwable java.util.List org.bson.RawBsonDocument java.util.Iterator
StackMap stack:
aload 3
aload 4
aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.this$0:Lcom/mongodb/operation/AsyncChangeStreamBatchCursor;
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor.changeStreamOperation:Lcom/mongodb/operation/ChangeStreamOperation;
invokevirtual com.mongodb.operation.ChangeStreamOperation.getDecoder:()Lorg/bson/codecs/Decoder;
invokevirtual org.bson.RawBsonDocument.decode:(Lorg/bson/codecs/Decoder;)Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: goto 17
StackMap locals:
StackMap stack: java.lang.Exception
14: astore 6
start local 6 15: aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aconst_null
aload 6
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
16: return
end local 6 end local 4 17: StackMap locals: com.mongodb.operation.AsyncChangeStreamBatchCursor$3 java.util.List java.lang.Throwable java.util.List top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
18: aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.this$0:Lcom/mongodb/operation/AsyncChangeStreamBatchCursor;
aload 1
aload 1
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.bson.RawBsonDocument
ldc "_id"
invokevirtual org.bson.RawBsonDocument.getDocument:(Ljava/lang/Object;)Lorg/bson/BsonDocument;
putfield com.mongodb.operation.AsyncChangeStreamBatchCursor.resumeToken:Lorg/bson/BsonDocument;
19: aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aload 3
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 3 20: goto 22
21: StackMap locals: com.mongodb.operation.AsyncChangeStreamBatchCursor$3 java.util.List java.lang.Throwable
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncChangeStreamBatchCursor$3.val$callback:Lcom/mongodb/async/SingleResultCallback;
aconst_null
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
22: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/mongodb/operation/AsyncChangeStreamBatchCursor$3;
0 23 1 rawDocuments Ljava/util/List<Lorg/bson/RawBsonDocument;>;
0 23 2 t Ljava/lang/Throwable;
5 20 3 results Ljava/util/List<TT;>;
7 17 4 rawDocument Lorg/bson/RawBsonDocument;
15 17 6 e Ljava/lang/Exception;
Exception table:
from to target type
12 13 14 Class java.lang.Exception
Signature: (Ljava/util/List<Lorg/bson/RawBsonDocument;>;Ljava/lang/Throwable;)V
MethodParameters:
Name Flags
rawDocuments final
t final
public void onResult(java.lang.Object, java.lang.Throwable);
descriptor: (Ljava/lang/Object;Ljava/lang/Throwable;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.util.List
aload 2
invokevirtual com.mongodb.operation.AsyncChangeStreamBatchCursor$3.onResult:(Ljava/util/List;Ljava/lang/Throwable;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<Lorg/bson/RawBsonDocument;>;>;
SourceFile: "AsyncChangeStreamBatchCursor.java"
EnclosingMethod: com.mongodb.operation.AsyncChangeStreamBatchCursor.convertResultsCallback:(Lcom/mongodb/async/SingleResultCallback;)Lcom/mongodb/async/SingleResultCallback;
NestHost: com.mongodb.operation.AsyncChangeStreamBatchCursor
InnerClasses:
com.mongodb.operation.AsyncChangeStreamBatchCursor$3