T
- The type of documents the cursor contains@NotThreadSafe public interface BatchCursor<T> extends Iterator<List<T>>, Closeable
next
method will return the first batch, and subsequent calls will trigger a request to get the next batch
of results. Clients can control the batch size by setting the batchSize
property between calls to next
.Modifier and Type | Method and Description |
---|---|
void |
close() |
int |
getBatchSize()
Gets the batch size to use when requesting the next batch.
|
ServerAddress |
getServerAddress()
Returns the server address
|
ServerCursor |
getServerCursor()
Returns the server cursor
|
boolean |
hasNext()
Returns true if another batch of results exists.
|
List<T> |
next()
Returns the next batch of results.
|
void |
setBatchSize(int batchSize)
Sets the batch size to use when requesting the next batch.
|
List<T> |
tryNext()
A special
next() case that returns the next batch if available or null. |
forEachRemaining, remove
void close()
close
in interface AutoCloseable
close
in interface Closeable
boolean hasNext()
List<T> next()
next
in interface Iterator<List<T>>
NoSuchElementException
- if no next batch existsvoid setBatchSize(int batchSize)
batchSize
- the non-negative batch size. 0 means to use the server default.int getBatchSize()
List<T> tryNext()
next()
case that returns the next batch if available or null.
Tailable cursors are an example where this is useful. A call to tryNext()
may return null, but in the future calling
tryNext()
would return a new batch if a document had been added to the capped collection.
ServerCursor getServerCursor()
ServerAddress getServerAddress()