public class HybridSourceReader<T> extends Object implements org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>
This reader processes splits from a sequence of sources as determined by the enumerator. The
current source is provided with SwitchSourceEvent and the reader does not require upfront
knowledge of the number and order of sources. At a given point in time one underlying reader is
active.
When the underlying reader has consumed all input for a source, HybridSourceReader
sends SourceReaderFinishedEvent to the coordinator.
This reader does not make assumptions about the order in which sources are activated. When
recovering from a checkpoint it may start processing splits for a previous source, which is
indicated via SwitchSourceEvent.
| 构造器和说明 |
|---|
HybridSourceReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addSplits(List<HybridSourceSplit> splits) |
void |
close() |
void |
handleSourceEvents(org.apache.flink.api.connector.source.SourceEvent sourceEvent) |
CompletableFuture<Void> |
isAvailable() |
void |
notifyCheckpointAborted(long checkpointId) |
void |
notifyCheckpointComplete(long checkpointId) |
void |
notifyNoMoreSplits() |
org.apache.flink.core.io.InputStatus |
pollNext(org.apache.flink.api.connector.source.ReaderOutput output) |
List<HybridSourceSplit> |
snapshotState(long checkpointId) |
void |
start() |
public HybridSourceReader(org.apache.flink.api.connector.source.SourceReaderContext readerContext)
public void start()
start 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>public org.apache.flink.core.io.InputStatus pollNext(org.apache.flink.api.connector.source.ReaderOutput output)
throws Exception
pollNext 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>Exceptionpublic List<HybridSourceSplit> snapshotState(long checkpointId)
snapshotState 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>public void notifyCheckpointComplete(long checkpointId)
throws Exception
notifyCheckpointComplete 在接口中 org.apache.flink.api.common.state.CheckpointListenernotifyCheckpointComplete 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>Exceptionpublic void notifyCheckpointAborted(long checkpointId)
throws Exception
notifyCheckpointAborted 在接口中 org.apache.flink.api.common.state.CheckpointListenerExceptionpublic CompletableFuture<Void> isAvailable()
isAvailable 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>public void addSplits(List<HybridSourceSplit> splits)
addSplits 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>public void notifyNoMoreSplits()
notifyNoMoreSplits 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>public void handleSourceEvents(org.apache.flink.api.connector.source.SourceEvent sourceEvent)
handleSourceEvents 在接口中 org.apache.flink.api.connector.source.SourceReader<T,HybridSourceSplit>public void close()
throws Exception
close 在接口中 AutoCloseableExceptionCopyright © 2014–2023 The Apache Software Foundation. All rights reserved.