in flink-connector-mongodb/src/main/java/org/apache/flink/connector/mongodb/source/MongoSource.java [130:150]
public SourceReader<OUT, MongoSourceSplit> createReader(SourceReaderContext readerContext) {
FutureCompletingBlockingQueue<RecordsWithSplitIds<BsonDocument>> elementsQueue =
new FutureCompletingBlockingQueue<>();
MongoSourceReaderContext mongoReaderContext =
new MongoSourceReaderContext(readerContext, limit);
Supplier<SplitReader<BsonDocument, MongoSourceSplit>> splitReaderSupplier =
() ->
new MongoScanSourceSplitReader(
connectionOptions,
readOptions,
projectedFields,
mongoReaderContext);
return new MongoSourceReader<>(
elementsQueue,
splitReaderSupplier,
new MongoRecordEmitter<>(deserializationSchema),
mongoReaderContext);
}