final class ListCollectionsIterableImpl<TResult> extends java.lang.Object implements ListCollectionsIterable<TResult>
Modifier and Type | Field and Description |
---|---|
private int |
batchSize |
private CodecRegistry |
codecRegistry |
private java.lang.String |
databaseName |
private OperationExecutor |
executor |
private Bson |
filter |
private long |
maxTimeMS |
private ReadPreference |
readPreference |
private java.lang.Class<TResult> |
resultClass |
Constructor and Description |
---|
ListCollectionsIterableImpl(java.lang.String databaseName,
java.lang.Class<TResult> resultClass,
CodecRegistry codecRegistry,
ReadPreference readPreference,
OperationExecutor executor) |
Modifier and Type | Method and Description |
---|---|
ListCollectionsIterable<TResult> |
batchSize(int batchSize)
Sets the number of documents to return per batch.
|
private ListCollectionsOperation<TResult> |
createListCollectionsOperation() |
private MongoIterable<TResult> |
execute() |
ListCollectionsIterable<TResult> |
filter(Bson filter)
Sets the query filter to apply to the query.
|
TResult |
first()
Helper to return the first item in the iterator or null.
|
void |
forEach(Block<? super TResult> block)
Iterates over all documents in the view, applying the given block to each.
|
<A extends java.util.Collection<? super TResult>> |
into(A target)
Iterates over all the documents, adding each to the given target.
|
MongoCursor<TResult> |
iterator() |
<U> MongoIterable<U> |
map(Function<TResult,U> mapper)
Maps this iterable from the source document type to the target document type.
|
ListCollectionsIterable<TResult> |
maxTime(long maxTime,
java.util.concurrent.TimeUnit timeUnit)
Sets the maximum execution time on the server for this operation.
|
private BsonDocument |
toBsonDocument(Bson document) |
private final java.lang.String databaseName
private final java.lang.Class<TResult> resultClass
private final ReadPreference readPreference
private final CodecRegistry codecRegistry
private final OperationExecutor executor
private Bson filter
private int batchSize
private long maxTimeMS
ListCollectionsIterableImpl(java.lang.String databaseName, java.lang.Class<TResult> resultClass, CodecRegistry codecRegistry, ReadPreference readPreference, OperationExecutor executor)
public ListCollectionsIterable<TResult> filter(Bson filter)
ListCollectionsIterable
filter
in interface ListCollectionsIterable<TResult>
filter
- the filter, which may be null.public ListCollectionsIterable<TResult> maxTime(long maxTime, java.util.concurrent.TimeUnit timeUnit)
ListCollectionsIterable
maxTime
in interface ListCollectionsIterable<TResult>
maxTime
- the max timetimeUnit
- the time unit, which may not be nullpublic ListCollectionsIterable<TResult> batchSize(int batchSize)
ListCollectionsIterable
batchSize
in interface ListCollectionsIterable<TResult>
batchSize
in interface MongoIterable<TResult>
batchSize
- the batch sizepublic MongoCursor<TResult> iterator()
iterator
in interface MongoIterable<TResult>
iterator
in interface java.lang.Iterable<TResult>
public TResult first()
MongoIterable
first
in interface MongoIterable<TResult>
public <U> MongoIterable<U> map(Function<TResult,U> mapper)
MongoIterable
map
in interface MongoIterable<TResult>
U
- the target document typemapper
- a function that maps from the source to the target document typepublic void forEach(Block<? super TResult> block)
MongoIterable
Similar to map
but the function is fully encapsulated with no returned result.
forEach
in interface MongoIterable<TResult>
block
- the block to apply to each document of type T.public <A extends java.util.Collection<? super TResult>> A into(A target)
MongoIterable
into
in interface MongoIterable<TResult>
A
- the collection typetarget
- the collection to insert intoprivate MongoIterable<TResult> execute()
private ListCollectionsOperation<TResult> createListCollectionsOperation()
private BsonDocument toBsonDocument(Bson document)