class com.mongodb.operation.AsyncQueryBatchCursor<T> implements com.mongodb.async.AsyncAggregateResponseBatchCursor<T>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.mongodb.operation.AsyncQueryBatchCursor
super_class: java.lang.Object
{
private static final org.bson.FieldNameValidator NO_OP_FIELD_NAME_VALIDATOR;
descriptor: Lorg/bson/FieldNameValidator;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String CURSOR;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "cursor"
private static final java.lang.String POST_BATCH_RESUME_TOKEN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "postBatchResumeToken"
private static final java.lang.String OPERATION_TIME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "operationTime"
private final com.mongodb.MongoNamespace namespace;
descriptor: Lcom/mongodb/MongoNamespace;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int limit;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.bson.codecs.Decoder<T> decoder;
descriptor: Lorg/bson/codecs/Decoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/bson/codecs/Decoder<TT;>;
private final long maxTimeMS;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.mongodb.binding.AsyncConnectionSource connectionSource;
descriptor: Lcom/mongodb/binding/AsyncConnectionSource;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicBoolean isClosed;
descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicReference<com.mongodb.ServerCursor> cursor;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lcom/mongodb/ServerCursor;>;
private volatile com.mongodb.connection.QueryResult<T> firstBatch;
descriptor: Lcom/mongodb/connection/QueryResult;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Lcom/mongodb/connection/QueryResult<TT;>;
private volatile int batchSize;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final java.util.concurrent.atomic.AtomicInteger count;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile org.bson.BsonDocument postBatchResumeToken;
descriptor: Lorg/bson/BsonDocument;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile org.bson.BsonTimestamp operationTime;
descriptor: Lorg/bson/BsonTimestamp;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean firstBatchEmpty;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.mongodb.internal.validator.NoOpFieldNameValidator
dup
invokespecial com.mongodb.internal.validator.NoOpFieldNameValidator.<init>:()V
putstatic com.mongodb.operation.AsyncQueryBatchCursor.NO_OP_FIELD_NAME_VALIDATOR:Lorg/bson/FieldNameValidator;
1: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(com.mongodb.connection.QueryResult<T>, int, int, long, org.bson.codecs.Decoder<T>, com.mongodb.binding.AsyncConnectionSource, com.mongodb.connection.AsyncConnection);
descriptor: (Lcom/mongodb/connection/QueryResult;IIJLorg/bson/codecs/Decoder;Lcom/mongodb/binding/AsyncConnectionSource;Lcom/mongodb/connection/AsyncConnection;)V
flags: (0x0000)
Code:
stack=10, locals=9, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 6 start local 7 start local 8 0: aload 0
aload 1
iload 2
iload 3
lload 4
aload 6
aload 7
aload 8
aconst_null
invokespecial com.mongodb.operation.AsyncQueryBatchCursor.<init>:(Lcom/mongodb/connection/QueryResult;IIJLorg/bson/codecs/Decoder;Lcom/mongodb/binding/AsyncConnectionSource;Lcom/mongodb/connection/AsyncConnection;Lorg/bson/BsonDocument;)V
1: return
end local 8 end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 2 1 firstBatch Lcom/mongodb/connection/QueryResult<TT;>;
0 2 2 limit I
0 2 3 batchSize I
0 2 4 maxTimeMS J
0 2 6 decoder Lorg/bson/codecs/Decoder<TT;>;
0 2 7 connectionSource Lcom/mongodb/binding/AsyncConnectionSource;
0 2 8 connection Lcom/mongodb/connection/AsyncConnection;
Signature: (Lcom/mongodb/connection/QueryResult<TT;>;IIJLorg/bson/codecs/Decoder<TT;>;Lcom/mongodb/binding/AsyncConnectionSource;Lcom/mongodb/connection/AsyncConnection;)V
MethodParameters:
Name Flags
firstBatch final
limit final
batchSize final
maxTimeMS final
decoder final
connectionSource final
connection final
void <init>(com.mongodb.connection.QueryResult<T>, int, int, long, org.bson.codecs.Decoder<T>, com.mongodb.binding.AsyncConnectionSource, com.mongodb.connection.AsyncConnection, org.bson.BsonDocument);
descriptor: (Lcom/mongodb/connection/QueryResult;IIJLorg/bson/codecs/Decoder;Lcom/mongodb/binding/AsyncConnectionSource;Lcom/mongodb/connection/AsyncConnection;Lorg/bson/BsonDocument;)V
flags: (0x0000)
Code:
stack=5, locals=10, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 6 start local 7 start local 8 start local 9 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Ljava/util/concurrent/atomic/AtomicBoolean;
2: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
3: ldc "maxTimeMS >= 0"
lload 4
lconst_0
lcmp
iflt 4
iconst_1
goto 5
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.connection.QueryResult int int long org.bson.codecs.Decoder com.mongodb.binding.AsyncConnectionSource com.mongodb.connection.AsyncConnection org.bson.BsonDocument
StackMap stack: java.lang.String
4: iconst_0
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.connection.QueryResult int int long org.bson.codecs.Decoder com.mongodb.binding.AsyncConnectionSource com.mongodb.connection.AsyncConnection org.bson.BsonDocument
StackMap stack: java.lang.String int
5: invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
6: aload 0
lload 4
putfield com.mongodb.operation.AsyncQueryBatchCursor.maxTimeMS:J
7: aload 0
aload 1
invokevirtual com.mongodb.connection.QueryResult.getNamespace:()Lcom/mongodb/MongoNamespace;
putfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
8: aload 0
aload 1
putfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatch:Lcom/mongodb/connection/QueryResult;
9: aload 0
iload 2
putfield com.mongodb.operation.AsyncQueryBatchCursor.limit:I
10: aload 0
iload 3
putfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
11: aload 0
aload 6
putfield com.mongodb.operation.AsyncQueryBatchCursor.decoder:Lorg/bson/codecs/Decoder;
12: aload 0
new java.util.concurrent.atomic.AtomicReference
dup
aload 1
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
putfield com.mongodb.operation.AsyncQueryBatchCursor.cursor:Ljava/util/concurrent/atomic/AtomicReference;
13: aload 0
ldc "connectionSource"
aload 7
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.mongodb.binding.AsyncConnectionSource
putfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
14: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
aload 1
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.size:()I
invokevirtual java.util.concurrent.atomic.AtomicInteger.addAndGet:(I)I
pop
15: aload 9
ifnull 18
16: aload 0
aload 9
ldc "operationTime"
aconst_null
invokevirtual org.bson.BsonDocument.getTimestamp:(Ljava/lang/Object;Lorg/bson/BsonTimestamp;)Lorg/bson/BsonTimestamp;
putfield com.mongodb.operation.AsyncQueryBatchCursor.operationTime:Lorg/bson/BsonTimestamp;
17: aload 0
aload 0
aload 9
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.getPostBatchResumeTokenFromResponse:(Lorg/bson/BsonDocument;)Lorg/bson/BsonDocument;
putfield com.mongodb.operation.AsyncQueryBatchCursor.postBatchResumeToken:Lorg/bson/BsonDocument;
18: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
putfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatchEmpty:Z
19: aload 1
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
ifnull 23
20: aload 7
invokeinterface com.mongodb.binding.AsyncConnectionSource.retain:()Lcom/mongodb/binding/AsyncConnectionSource;
pop
21: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.limitReached:()Z
ifeq 23
22: aload 0
aload 8
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursor:(Lcom/mongodb/connection/AsyncConnection;)V
23: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 24 1 firstBatch Lcom/mongodb/connection/QueryResult<TT;>;
0 24 2 limit I
0 24 3 batchSize I
0 24 4 maxTimeMS J
0 24 6 decoder Lorg/bson/codecs/Decoder<TT;>;
0 24 7 connectionSource Lcom/mongodb/binding/AsyncConnectionSource;
0 24 8 connection Lcom/mongodb/connection/AsyncConnection;
0 24 9 result Lorg/bson/BsonDocument;
Signature: (Lcom/mongodb/connection/QueryResult<TT;>;IIJLorg/bson/codecs/Decoder<TT;>;Lcom/mongodb/binding/AsyncConnectionSource;Lcom/mongodb/connection/AsyncConnection;Lorg/bson/BsonDocument;)V
MethodParameters:
Name Flags
firstBatch final
limit final
batchSize final
maxTimeMS final
decoder final
connectionSource final
connection final
result final
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.getAndSet:(Z)Z
ifne 2
1: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursorOnClose:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
public void next(com.mongodb.async.SingleResultCallback<java.util.List<T>>);
descriptor: (Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.next:(Lcom/mongodb/async/SingleResultCallback;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 2 1 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
Signature: (Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
callback final
public void tryNext(com.mongodb.async.SingleResultCallback<java.util.List<T>>);
descriptor: (Lcom/mongodb/async/SingleResultCallback;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.next:(Lcom/mongodb/async/SingleResultCallback;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 2 1 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
Signature: (Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;)V
MethodParameters:
Name Flags
callback final
public void setBatchSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc "open"
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Ljava/util/concurrent/atomic/AtomicBoolean;
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack: java.lang.String
1: iconst_1
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor int
StackMap stack: java.lang.String int
2: invokestatic com.mongodb.assertions.Assertions.isTrue:(Ljava/lang/String;Z)V
3: aload 0
iload 1
putfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 5 1 batchSize I
MethodParameters:
Name Flags
batchSize final
public int getBatchSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc "open"
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Ljava/util/concurrent/atomic/AtomicBoolean;
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack: java.lang.String
1: iconst_1
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.String int
2: invokestatic com.mongodb.assertions.Assertions.isTrue:(Ljava/lang/String;Z)V
3: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
public boolean isClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Ljava/util/concurrent/atomic/AtomicBoolean;
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
public org.bson.BsonDocument getPostBatchResumeToken();
descriptor: ()Lorg/bson/BsonDocument;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.postBatchResumeToken:Lorg/bson/BsonDocument;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
public org.bson.BsonTimestamp getOperationTime();
descriptor: ()Lorg/bson/BsonTimestamp;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.operationTime:Lorg/bson/BsonTimestamp;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
public boolean isFirstBatchEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatchEmpty:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
private void next(com.mongodb.async.SingleResultCallback<java.util.List<T>>, );
descriptor: (Lcom/mongodb/async/SingleResultCallback;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.isClosed:()Z
ifeq 8
1: aload 1
aconst_null
2: new com.mongodb.MongoException
dup
ldc "%s called after the cursor was closed."
iconst_1
anewarray java.lang.Object
dup
iconst_0
3: iload 2
ifeq 4
ldc "tryNext()"
goto 5
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.async.SingleResultCallback int
StackMap stack: com.mongodb.async.SingleResultCallback null new 2 new 2 java.lang.String java.lang.Object[] java.lang.Object[] int
4: ldc "next()"
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.async.SingleResultCallback int
StackMap stack: com.mongodb.async.SingleResultCallback null new 2 new 2 java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
5: aastore
6: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial com.mongodb.MongoException.<init>:(Ljava/lang/String;)V
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
7: goto 21
StackMap locals:
StackMap stack:
8: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatch:Lcom/mongodb/connection/QueryResult;
ifnull 15
iload 2
ifne 9
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatch:Lcom/mongodb/connection/QueryResult;
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 15
9: StackMap locals:
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatch:Lcom/mongodb/connection/QueryResult;
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
astore 3
start local 3 10: iload 2
ifeq 12
aload 3
invokeinterface java.util.List.isEmpty:()Z
ifeq 12
11: aconst_null
astore 3
12: StackMap locals: java.util.List
StackMap stack:
aload 0
aconst_null
putfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatch:Lcom/mongodb/connection/QueryResult;
13: aload 1
aload 3
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 3 14: goto 21
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.getServerCursor:()Lcom/mongodb/ServerCursor;
astore 3
start local 3 16: aload 3
ifnonnull 20
17: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
18: aload 1
aconst_null
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
19: goto 21
20: StackMap locals: com.mongodb.ServerCursor
StackMap stack:
aload 0
aload 3
aload 1
iload 2
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.getMore:(Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback;Z)V
end local 3 21: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 22 1 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
0 22 2 tryNext Z
10 14 3 results Ljava/util/List<TT;>;
16 21 3 localCursor Lcom/mongodb/ServerCursor;
Signature: (Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;Z)V
MethodParameters:
Name Flags
callback final
tryNext final
private boolean limitReached();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.limit:I
invokestatic java.lang.Math.abs:(I)I
ifeq 1
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.limit:I
invokestatic java.lang.Math.abs:(I)I
if_icmplt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
private void getMore(com.mongodb.ServerCursor, com.mongodb.async.SingleResultCallback<java.util.List<T>>, );
descriptor: (Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
new com.mongodb.operation.AsyncQueryBatchCursor$1
dup
aload 0
aload 2
aload 1
iload 3
invokespecial com.mongodb.operation.AsyncQueryBatchCursor$1.<init>:(Lcom/mongodb/operation/AsyncQueryBatchCursor;Lcom/mongodb/async/SingleResultCallback;Lcom/mongodb/ServerCursor;Z)V
invokeinterface com.mongodb.binding.AsyncConnectionSource.getConnection:(Lcom/mongodb/async/SingleResultCallback;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 2 1 cursor Lcom/mongodb/ServerCursor;
0 2 2 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
0 2 3 tryNext Z
Signature: (Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;Z)V
MethodParameters:
Name Flags
cursor final
callback final
tryNext final
private void getMore(com.mongodb.connection.AsyncConnection, com.mongodb.ServerCursor, com.mongodb.async.SingleResultCallback<java.util.List<T>>, );
descriptor: (Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=14, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokeinterface com.mongodb.connection.AsyncConnection.getDescription:()Lcom/mongodb/connection/ConnectionDescription;
invokestatic com.mongodb.internal.operation.ServerVersionHelper.serverIsAtLeastVersionThreeDotTwo:(Lcom/mongodb/connection/ConnectionDescription;)Z
ifeq 6
1: aload 1
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
invokevirtual com.mongodb.MongoNamespace.getDatabaseName:()Ljava/lang/String;
aload 0
aload 2
invokevirtual com.mongodb.ServerCursor.getId:()J
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.asGetMoreCommandDocument:(J)Lorg/bson/BsonDocument;
getstatic com.mongodb.operation.AsyncQueryBatchCursor.NO_OP_FIELD_NAME_VALIDATOR:Lorg/bson/FieldNameValidator;
2: invokestatic com.mongodb.ReadPreference.primary:()Lcom/mongodb/ReadPreference;
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.decoder:Lorg/bson/codecs/Decoder;
ldc "nextBatch"
invokestatic com.mongodb.operation.CommandResultDocumentCodec.create:(Lorg/bson/codecs/Decoder;Ljava/lang/String;)Lorg/bson/codecs/Codec;
3: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
invokeinterface com.mongodb.binding.AsyncConnectionSource.getSessionContext:()Lcom/mongodb/session/SessionContext;
new com.mongodb.operation.AsyncQueryBatchCursor$CommandResultSingleResultCallback
dup
aload 0
aload 1
aload 2
aload 3
iload 4
invokespecial com.mongodb.operation.AsyncQueryBatchCursor$CommandResultSingleResultCallback.<init>:(Lcom/mongodb/operation/AsyncQueryBatchCursor;Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback;Z)V
4: invokeinterface com.mongodb.connection.AsyncConnection.commandAsync:(Ljava/lang/String;Lorg/bson/BsonDocument;Lorg/bson/FieldNameValidator;Lcom/mongodb/ReadPreference;Lorg/bson/codecs/Decoder;Lcom/mongodb/session/SessionContext;Lcom/mongodb/async/SingleResultCallback;)V
5: goto 9
6: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
aload 2
invokevirtual com.mongodb.ServerCursor.getId:()J
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.limit:I
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
invokestatic com.mongodb.operation.CursorHelper.getNumberToReturn:(III)I
7: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.decoder:Lorg/bson/codecs/Decoder;
new com.mongodb.operation.AsyncQueryBatchCursor$QueryResultSingleResultCallback
dup
aload 0
aload 1
aload 3
iload 4
invokespecial com.mongodb.operation.AsyncQueryBatchCursor$QueryResultSingleResultCallback.<init>:(Lcom/mongodb/operation/AsyncQueryBatchCursor;Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/async/SingleResultCallback;Z)V
8: invokeinterface com.mongodb.connection.AsyncConnection.getMoreAsync:(Lcom/mongodb/MongoNamespace;JILorg/bson/codecs/Decoder;Lcom/mongodb/async/SingleResultCallback;)V
9: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 10 1 connection Lcom/mongodb/connection/AsyncConnection;
0 10 2 cursor Lcom/mongodb/ServerCursor;
0 10 3 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
0 10 4 tryNext Z
Signature: (Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;Z)V
MethodParameters:
Name Flags
connection final
cursor final
callback final
tryNext final
private org.bson.BsonDocument asGetMoreCommandDocument(long);
descriptor: (J)Lorg/bson/BsonDocument;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: new org.bson.BsonDocument
dup
ldc "getMore"
new org.bson.BsonInt64
dup
lload 1
invokespecial org.bson.BsonInt64.<init>:(J)V
invokespecial org.bson.BsonDocument.<init>:(Ljava/lang/String;Lorg/bson/BsonValue;)V
1: ldc "collection"
new org.bson.BsonString
dup
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
invokevirtual com.mongodb.MongoNamespace.getCollectionName:()Ljava/lang/String;
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
2: astore 3
start local 3 3: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.limit:I
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
invokestatic com.mongodb.operation.CursorHelper.getNumberToReturn:(III)I
invokestatic java.lang.Math.abs:(I)I
istore 4
start local 4 4: iload 4
ifeq 6
5: aload 3
ldc "batchSize"
new org.bson.BsonInt32
dup
iload 4
invokespecial org.bson.BsonInt32.<init>:(I)V
invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
pop
6: StackMap locals: org.bson.BsonDocument int
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.maxTimeMS:J
lconst_0
lcmp
ifeq 8
7: aload 3
ldc "maxTimeMS"
new org.bson.BsonInt64
dup
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.maxTimeMS:J
invokespecial org.bson.BsonInt64.<init>:(J)V
invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
pop
8: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 9 1 cursorId J
3 9 3 document Lorg/bson/BsonDocument;
4 9 4 batchSizeForGetMoreCommand I
MethodParameters:
Name Flags
cursorId final
private void killCursorOnClose();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.getServerCursor:()Lcom/mongodb/ServerCursor;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
new com.mongodb.operation.AsyncQueryBatchCursor$2
dup
aload 0
aload 1
invokespecial com.mongodb.operation.AsyncQueryBatchCursor$2.<init>:(Lcom/mongodb/operation/AsyncQueryBatchCursor;Lcom/mongodb/ServerCursor;)V
invokeinterface com.mongodb.binding.AsyncConnectionSource.getConnection:(Lcom/mongodb/async/SingleResultCallback;)V
3: StackMap locals: com.mongodb.ServerCursor
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
1 4 1 localCursor Lcom/mongodb/ServerCursor;
private void killCursor(com.mongodb.connection.AsyncConnection);
descriptor: (Lcom/mongodb/connection/AsyncConnection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.cursor:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.mongodb.ServerCursor
astore 2
start local 2 1: aload 2
ifnull 4
2: aload 0
aload 1
invokeinterface com.mongodb.connection.AsyncConnection.retain:()Lcom/mongodb/connection/AsyncConnection;
aload 2
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursorAsynchronouslyAndReleaseConnectionAndSource:(Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/ServerCursor;)V
3: goto 5
4: StackMap locals: com.mongodb.ServerCursor
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
invokeinterface com.mongodb.binding.AsyncConnectionSource.release:()V
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 6 1 connection Lcom/mongodb/connection/AsyncConnection;
1 6 2 localCursor Lcom/mongodb/ServerCursor;
MethodParameters:
Name Flags
connection final
private void killCursorAsynchronouslyAndReleaseConnectionAndSource(com.mongodb.connection.AsyncConnection, com.mongodb.ServerCursor);
descriptor: (Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/ServerCursor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface com.mongodb.connection.AsyncConnection.getDescription:()Lcom/mongodb/connection/ConnectionDescription;
invokestatic com.mongodb.internal.operation.ServerVersionHelper.serverIsAtLeastVersionThreeDotTwo:(Lcom/mongodb/connection/ConnectionDescription;)Z
ifeq 6
1: aload 1
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
invokevirtual com.mongodb.MongoNamespace.getDatabaseName:()Ljava/lang/String;
aload 0
aload 2
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.asKillCursorsCommandDocument:(Lcom/mongodb/ServerCursor;)Lorg/bson/BsonDocument;
getstatic com.mongodb.operation.AsyncQueryBatchCursor.NO_OP_FIELD_NAME_VALIDATOR:Lorg/bson/FieldNameValidator;
2: invokestatic com.mongodb.ReadPreference.primary:()Lcom/mongodb/ReadPreference;
new org.bson.codecs.BsonDocumentCodec
dup
invokespecial org.bson.codecs.BsonDocumentCodec.<init>:()V
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
invokeinterface com.mongodb.binding.AsyncConnectionSource.getSessionContext:()Lcom/mongodb/session/SessionContext;
3: new com.mongodb.operation.AsyncQueryBatchCursor$3
dup
aload 0
aload 1
invokespecial com.mongodb.operation.AsyncQueryBatchCursor$3.<init>:(Lcom/mongodb/operation/AsyncQueryBatchCursor;Lcom/mongodb/connection/AsyncConnection;)V
4: invokeinterface com.mongodb.connection.AsyncConnection.commandAsync:(Ljava/lang/String;Lorg/bson/BsonDocument;Lorg/bson/FieldNameValidator;Lcom/mongodb/ReadPreference;Lorg/bson/codecs/Decoder;Lcom/mongodb/session/SessionContext;Lcom/mongodb/async/SingleResultCallback;)V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
aload 2
invokevirtual com.mongodb.ServerCursor.getId:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
new com.mongodb.operation.AsyncQueryBatchCursor$4
dup
aload 0
aload 1
invokespecial com.mongodb.operation.AsyncQueryBatchCursor$4.<init>:(Lcom/mongodb/operation/AsyncQueryBatchCursor;Lcom/mongodb/connection/AsyncConnection;)V
invokeinterface com.mongodb.connection.AsyncConnection.killCursorAsync:(Lcom/mongodb/MongoNamespace;Ljava/util/List;Lcom/mongodb/async/SingleResultCallback;)V
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 8 1 connection Lcom/mongodb/connection/AsyncConnection;
0 8 2 localCursor Lcom/mongodb/ServerCursor;
MethodParameters:
Name Flags
connection final
localCursor final
private org.bson.BsonDocument asKillCursorsCommandDocument(com.mongodb.ServerCursor);
descriptor: (Lcom/mongodb/ServerCursor;)Lorg/bson/BsonDocument;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=2, args_size=2
start local 0 start local 1 0: new org.bson.BsonDocument
dup
ldc "killCursors"
new org.bson.BsonString
dup
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
invokevirtual com.mongodb.MongoNamespace.getCollectionName:()Ljava/lang/String;
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
invokespecial org.bson.BsonDocument.<init>:(Ljava/lang/String;Lorg/bson/BsonValue;)V
1: ldc "cursors"
new org.bson.BsonArray
dup
new org.bson.BsonInt64
dup
aload 1
invokevirtual com.mongodb.ServerCursor.getId:()J
invokespecial org.bson.BsonInt64.<init>:(J)V
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
invokespecial org.bson.BsonArray.<init>:(Ljava/util/List;)V
invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 3 1 localCursor Lcom/mongodb/ServerCursor;
MethodParameters:
Name Flags
localCursor final
private void handleGetMoreQueryResult(com.mongodb.connection.AsyncConnection, com.mongodb.async.SingleResultCallback<java.util.List<T>>, com.mongodb.connection.QueryResult<T>, );
descriptor: (Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/async/SingleResultCallback;Lcom/mongodb/connection/QueryResult;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.isClosed:()Z
ifeq 9
1: aload 1
invokeinterface com.mongodb.connection.AsyncConnection.release:()V
2: aload 2
aconst_null
3: new com.mongodb.MongoException
dup
ldc "The cursor was closed before %s completed."
iconst_1
anewarray java.lang.Object
dup
iconst_0
4: iload 4
ifeq 5
ldc "tryNext()"
goto 6
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.connection.AsyncConnection com.mongodb.async.SingleResultCallback com.mongodb.connection.QueryResult int
StackMap stack: com.mongodb.async.SingleResultCallback null new 3 new 3 java.lang.String java.lang.Object[] java.lang.Object[] int
5: ldc "next()"
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.connection.AsyncConnection com.mongodb.async.SingleResultCallback com.mongodb.connection.QueryResult int
StackMap stack: com.mongodb.async.SingleResultCallback null new 3 new 3 java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
6: aastore
7: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial com.mongodb.MongoException.<init>:(Ljava/lang/String;)V
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
8: return
9: StackMap locals:
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.cursor:Ljava/util/concurrent/atomic/AtomicReference;
aload 3
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
pop
10: iload 4
ifne 13
aload 3
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 13
aload 3
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
ifnull 13
11: aload 0
aload 1
aload 3
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
aload 2
iconst_0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.getMore:(Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/ServerCursor;Lcom/mongodb/async/SingleResultCallback;Z)V
12: goto 25
13: StackMap locals:
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
aload 3
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.size:()I
invokevirtual java.util.concurrent.atomic.AtomicInteger.addAndGet:(I)I
pop
14: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.limitReached:()Z
ifeq 18
15: aload 0
aload 1
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursor:(Lcom/mongodb/connection/AsyncConnection;)V
16: aload 1
invokeinterface com.mongodb.connection.AsyncConnection.release:()V
17: goto 21
18: StackMap locals:
StackMap stack:
aload 1
invokeinterface com.mongodb.connection.AsyncConnection.release:()V
19: aload 3
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
ifnonnull 21
20: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
invokeinterface com.mongodb.binding.AsyncConnectionSource.release:()V
21: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 24
22: aload 2
aconst_null
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
23: goto 25
24: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
25: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 26 1 connection Lcom/mongodb/connection/AsyncConnection;
0 26 2 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
0 26 3 result Lcom/mongodb/connection/QueryResult<TT;>;
0 26 4 tryNext Z
Signature: (Lcom/mongodb/connection/AsyncConnection;Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;Lcom/mongodb/connection/QueryResult<TT;>;Z)V
MethodParameters:
Name Flags
connection final
callback final
result final
tryNext final
com.mongodb.ServerCursor getServerCursor();
descriptor: ()Lcom/mongodb/ServerCursor;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.cursor:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast com.mongodb.ServerCursor
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
private org.bson.BsonDocument getPostBatchResumeTokenFromResponse(org.bson.BsonDocument);
descriptor: (Lorg/bson/BsonDocument;)Lorg/bson/BsonDocument;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "cursor"
aconst_null
invokevirtual org.bson.BsonDocument.getDocument:(Ljava/lang/Object;Lorg/bson/BsonDocument;)Lorg/bson/BsonDocument;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
ldc "postBatchResumeToken"
aconst_null
invokevirtual org.bson.BsonDocument.getDocument:(Ljava/lang/Object;Lorg/bson/BsonDocument;)Lorg/bson/BsonDocument;
areturn
3: StackMap locals: org.bson.BsonDocument
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 4 1 result Lorg/bson/BsonDocument;
1 4 2 cursor Lorg/bson/BsonDocument;
MethodParameters:
Name Flags
result final
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lcom/mongodb/async/AsyncAggregateResponseBatchCursor<TT;>;
SourceFile: "AsyncQueryBatchCursor.java"
NestMembers:
com.mongodb.operation.AsyncQueryBatchCursor$1 com.mongodb.operation.AsyncQueryBatchCursor$2 com.mongodb.operation.AsyncQueryBatchCursor$3 com.mongodb.operation.AsyncQueryBatchCursor$4 com.mongodb.operation.AsyncQueryBatchCursor$CommandResultSingleResultCallback com.mongodb.operation.AsyncQueryBatchCursor$QueryResultSingleResultCallback
InnerClasses:
com.mongodb.operation.AsyncQueryBatchCursor$1
com.mongodb.operation.AsyncQueryBatchCursor$2
com.mongodb.operation.AsyncQueryBatchCursor$3
com.mongodb.operation.AsyncQueryBatchCursor$4
private CommandResultSingleResultCallback = com.mongodb.operation.AsyncQueryBatchCursor$CommandResultSingleResultCallback of com.mongodb.operation.AsyncQueryBatchCursor
private QueryResultSingleResultCallback = com.mongodb.operation.AsyncQueryBatchCursor$QueryResultSingleResultCallback of com.mongodb.operation.AsyncQueryBatchCursor