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.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
private boolean isOperationInProgress;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean isClosed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean isClosePending;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
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.AtomicInteger
dup
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
putfield com.mongodb.operation.AsyncQueryBatchCursor.count:Ljava/util/concurrent/atomic/AtomicInteger;
2: aload 0
iconst_0
putfield com.mongodb.operation.AsyncQueryBatchCursor.isOperationInProgress:Z
3: aload 0
iconst_0
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
4: aload 0
iconst_0
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosePending:Z
5: ldc "maxTimeMS >= 0"
lload 4
lconst_0
lcmp
iflt 6
iconst_1
goto 7
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
6: 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
7: invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
8: aload 0
lload 4
putfield com.mongodb.operation.AsyncQueryBatchCursor.maxTimeMS:J
9: aload 0
aload 1
invokevirtual com.mongodb.connection.QueryResult.getNamespace:()Lcom/mongodb/MongoNamespace;
putfield com.mongodb.operation.AsyncQueryBatchCursor.namespace:Lcom/mongodb/MongoNamespace;
10: aload 0
aload 1
putfield com.mongodb.operation.AsyncQueryBatchCursor.firstBatch:Lcom/mongodb/connection/QueryResult;
11: aload 0
iload 2
putfield com.mongodb.operation.AsyncQueryBatchCursor.limit:I
12: aload 0
iload 3
putfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
13: aload 0
aload 6
putfield com.mongodb.operation.AsyncQueryBatchCursor.decoder:Lorg/bson/codecs/Decoder;
14: 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;
15: 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;
16: 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
17: aload 9
ifnull 20
18: 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;
19: 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;
20: 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
21: aload 1
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
ifnull 25
22: aload 7
invokeinterface com.mongodb.binding.AsyncConnectionSource.retain:()Lcom/mongodb/binding/AsyncConnectionSource;
pop
23: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.limitReached:()Z
ifeq 25
24: aload 0
aload 8
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursor:(Lcom/mongodb/connection/AsyncConnection;)V
25: 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 26 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 26 1 firstBatch Lcom/mongodb/connection/QueryResult<TT;>;
0 26 2 limit I
0 26 3 batchSize I
0 26 4 maxTimeMS J
0 26 6 decoder Lorg/bson/codecs/Decoder<TT;>;
0 26 7 connectionSource Lcom/mongodb/binding/AsyncConnectionSource;
0 26 8 connection Lcom/mongodb/connection/AsyncConnection;
0 26 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=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
dup
astore 2
monitorenter
2: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isOperationInProgress:Z
ifeq 5
3: aload 0
iconst_1
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosePending:Z
4: goto 10
5: StackMap locals: int com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
ifeq 6
iconst_0
goto 7
StackMap locals:
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: istore 1
8: aload 0
iconst_1
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
9: aload 0
iconst_0
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosePending:Z
10: StackMap locals:
StackMap stack:
aload 2
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 2
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
iload 1
ifeq 16
15: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursorOnClose:()V
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
1 17 1 killCursor Z
Exception table:
from to target type
2 11 12 any
12 13 12 any
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=3, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 2
monitorenter
1: ldc "open"
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
ifeq 2
iconst_0
goto 3
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor int com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.String
2: iconst_1
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor int com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.String int
3: invokestatic com.mongodb.assertions.Assertions.isTrue:(Ljava/lang/String;Z)V
4: aload 2
monitorexit
5: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
6: aload 2
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 10 1 batchSize I
Exception table:
from to target type
1 5 6 any
6 7 6 any
MethodParameters:
Name Flags
batchSize final
public int getBatchSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: ldc "open"
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
ifeq 2
iconst_0
goto 3
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.String
2: iconst_1
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.String int
3: invokestatic com.mongodb.assertions.Assertions.isTrue:(Ljava/lang/String;Z)V
4: aload 1
monitorexit
5: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
6: aload 1
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.batchSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
Exception table:
from to target type
1 5 6 any
6 7 6 any
public boolean isClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
aload 1
monitorexit
2: ireturn
3: StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
Exception table:
from to target type
1 2 3 any
3 4 3 any
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=5, 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 41
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 41
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 25
17: aload 0
dup
astore 4
monitorenter
18: aload 0
iconst_1
putfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
19: aload 4
monitorexit
20: goto 23
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.async.SingleResultCallback int com.mongodb.ServerCursor com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.Throwable
21: aload 4
monitorexit
22: athrow
23: StackMap locals:
StackMap stack:
aload 1
aconst_null
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
24: goto 41
25: StackMap locals:
StackMap stack:
aload 0
dup
astore 4
monitorenter
26: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosed:Z
ifeq 35
27: aload 1
aconst_null
28: new com.mongodb.MongoException
dup
ldc "%s called after the cursor was closed."
iconst_1
anewarray java.lang.Object
dup
iconst_0
29: iload 2
ifeq 30
ldc "tryNext()"
goto 31
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.async.SingleResultCallback int com.mongodb.ServerCursor com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: com.mongodb.async.SingleResultCallback null new 28 new 28 java.lang.String java.lang.Object[] java.lang.Object[] int
30: ldc "next()"
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor com.mongodb.async.SingleResultCallback int com.mongodb.ServerCursor com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: com.mongodb.async.SingleResultCallback null new 28 new 28 java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
31: aastore
32: 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
33: aload 4
monitorexit
34: return
35: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.mongodb.operation.AsyncQueryBatchCursor.isOperationInProgress:Z
36: aload 4
monitorexit
37: goto 40
StackMap locals:
StackMap stack: java.lang.Throwable
38: aload 4
monitorexit
39: athrow
40: StackMap locals:
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 41: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 42 1 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
0 42 2 tryNext Z
10 14 3 results Ljava/util/List<TT;>;
16 41 3 localCursor Lcom/mongodb/ServerCursor;
Exception table:
from to target type
18 20 21 any
21 22 21 any
26 34 38 any
35 37 38 any
38 39 38 any
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 endOperationInProgress();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
dup
astore 2
monitorenter
2: aload 0
iconst_0
putfield com.mongodb.operation.AsyncQueryBatchCursor.isOperationInProgress:Z
3: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.isClosePending:Z
istore 1
4: aload 2
monitorexit
5: goto 8
StackMap locals: com.mongodb.operation.AsyncQueryBatchCursor int com.mongodb.operation.AsyncQueryBatchCursor
StackMap stack: java.lang.Throwable
6: aload 2
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
iload 1
ifeq 10
9: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.close:()V
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
1 11 1 closePending Z
Exception table:
from to target type
2 5 6 any
6 7 6 any
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=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: 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.set:(Ljava/lang/Object;)V
1: iload 4
ifne 4
aload 3
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 4
aload 3
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
ifnull 4
2: 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
3: goto 17
4: 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
5: aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.limitReached:()Z
ifeq 9
6: aload 0
aload 1
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.killCursor:(Lcom/mongodb/connection/AsyncConnection;)V
7: aload 1
invokeinterface com.mongodb.connection.AsyncConnection.release:()V
8: goto 12
9: StackMap locals:
StackMap stack:
aload 1
invokeinterface com.mongodb.connection.AsyncConnection.release:()V
10: aload 3
invokevirtual com.mongodb.connection.QueryResult.getCursor:()Lcom/mongodb/ServerCursor;
ifnonnull 12
11: aload 0
getfield com.mongodb.operation.AsyncQueryBatchCursor.connectionSource:Lcom/mongodb/binding/AsyncConnectionSource;
invokeinterface com.mongodb.binding.AsyncConnectionSource.release:()V
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.mongodb.operation.AsyncQueryBatchCursor.endOperationInProgress:()V
13: aload 3
invokevirtual com.mongodb.connection.QueryResult.getResults:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 16
14: aload 2
aconst_null
aconst_null
invokeinterface com.mongodb.async.SingleResultCallback.onResult:(Ljava/lang/Object;Ljava/lang/Throwable;)V
15: goto 17
16: 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
17: 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 18 0 this Lcom/mongodb/operation/AsyncQueryBatchCursor<TT;>;
0 18 1 connection Lcom/mongodb/connection/AsyncConnection;
0 18 2 callback Lcom/mongodb/async/SingleResultCallback<Ljava/util/List<TT;>;>;
0 18 3 result Lcom/mongodb/connection/QueryResult<TT;>;
0 18 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