...
2) SourceReaderBase would create a wrapper SourceOutput instance to intercept the records emitted by RecordEmitter. EofOnRecordEvaluator is invoked on every intercepted records.
3) When every a record is matched by EofOnRecordEvaluator, SourceReaderBase stops emitting records from this split and informs SplitFetcherManager to stop fetching from this split.
...