Class StaticFileSplitEnumerator
java.lang.Object
org.apache.flink.connector.file.src.impl.StaticFileSplitEnumerator
- All Implemented Interfaces:
AutoCloseable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,,PendingSplitsCheckpoint<FileSourceSplit>> org.apache.flink.api.connector.source.SupportsBatchSnapshot
@Internal
public class StaticFileSplitEnumerator
extends Object
implements org.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>, org.apache.flink.api.connector.source.SupportsBatchSnapshot
A SplitEnumerator implementation for bounded / batch
FileSource input.
This enumerator takes all files that are present in the configured input directories and assigns them to the readers. Once all files are processed, the source is finished.
The implementation of this class is rather thin. The actual logic for creating the set of
FileSourceSplits to process, and the logic to decide which reader gets what split, are in FileEnumerator and in FileSplitAssigner, respectively.
-
Constructor Summary
ConstructorsConstructorDescriptionStaticFileSplitEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<FileSourceSplit> context, FileSplitAssigner splitAssigner) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddReader(int subtaskId) voidaddSplitsBack(List<FileSourceSplit> splits, int subtaskId) voidclose()voidhandleSourceEvent(int subtaskId, org.apache.flink.api.connector.source.SourceEvent sourceEvent) voidhandleSplitRequest(int subtask, String hostname) snapshotState(long checkpointId) voidstart()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.api.common.state.CheckpointListener
notifyCheckpointAbortedMethods inherited from interface org.apache.flink.api.connector.source.SplitEnumerator
notifyCheckpointComplete
-
Constructor Details
-
StaticFileSplitEnumerator
public StaticFileSplitEnumerator(org.apache.flink.api.connector.source.SplitEnumeratorContext<FileSourceSplit> context, FileSplitAssigner splitAssigner)
-
-
Method Details
-
start
public void start()- Specified by:
startin interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>> - Throws:
IOException
-
addReader
public void addReader(int subtaskId) - Specified by:
addReaderin interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>
-
handleSplitRequest
- Specified by:
handleSplitRequestin interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>
-
handleSourceEvent
public void handleSourceEvent(int subtaskId, org.apache.flink.api.connector.source.SourceEvent sourceEvent) - Specified by:
handleSourceEventin interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>
-
addSplitsBack
- Specified by:
addSplitsBackin interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>
-
snapshotState
- Specified by:
snapshotStatein interfaceorg.apache.flink.api.connector.source.SplitEnumerator<FileSourceSplit,PendingSplitsCheckpoint<FileSourceSplit>>
-