SplitT - the type of the splits.@Internal public class SourceCoordinatorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit> extends Object implements org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT>, AutoCloseable
OperatorCoordinator. Compared with SplitEnumeratorContext
this class allows interaction with state and sending OperatorEvent to the SourceOperator
while SplitEnumeratorContext only allows sending SourceEvent.
The context serves a few purposes:
SourceEvents to the source readers.
| Constructor and Description |
|---|
SourceCoordinatorContext(SourceCoordinatorProvider.CoordinatorExecutorThreadFactory coordinatorThreadFactory,
int numWorkerThreads,
OperatorCoordinator.Context operatorCoordinatorContext,
org.apache.flink.core.io.SimpleVersionedSerializer<SplitT> splitSerializer) |
| Modifier and Type | Method and Description |
|---|---|
void |
assignSplits(org.apache.flink.api.connector.source.SplitsAssignment<SplitT> assignment) |
<T> void |
callAsync(Callable<T> callable,
java.util.function.BiConsumer<T,Throwable> handler) |
<T> void |
callAsync(Callable<T> callable,
java.util.function.BiConsumer<T,Throwable> handler,
long initialDelay,
long period) |
void |
close() |
int |
currentParallelism() |
org.apache.flink.metrics.groups.SplitEnumeratorMetricGroup |
metricGroup() |
Map<Integer,org.apache.flink.api.connector.source.ReaderInfo> |
registeredReaders() |
void |
runInCoordinatorThread(Runnable runnable)
If the runnable throws an Exception, the corresponding job is failed.
|
void |
sendEventToSourceReader(int subtaskId,
org.apache.flink.api.connector.source.SourceEvent event) |
void |
signalNoMoreSplits(int subtask) |
public SourceCoordinatorContext(SourceCoordinatorProvider.CoordinatorExecutorThreadFactory coordinatorThreadFactory, int numWorkerThreads, OperatorCoordinator.Context operatorCoordinatorContext, org.apache.flink.core.io.SimpleVersionedSerializer<SplitT> splitSerializer)
public org.apache.flink.metrics.groups.SplitEnumeratorMetricGroup metricGroup()
metricGroup in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public void sendEventToSourceReader(int subtaskId,
org.apache.flink.api.connector.source.SourceEvent event)
sendEventToSourceReader in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public int currentParallelism()
currentParallelism in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public Map<Integer,org.apache.flink.api.connector.source.ReaderInfo> registeredReaders()
registeredReaders in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public void assignSplits(org.apache.flink.api.connector.source.SplitsAssignment<SplitT> assignment)
assignSplits in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public void signalNoMoreSplits(int subtask)
signalNoMoreSplits in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public <T> void callAsync(Callable<T> callable, java.util.function.BiConsumer<T,Throwable> handler, long initialDelay, long period)
callAsync in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public <T> void callAsync(Callable<T> callable, java.util.function.BiConsumer<T,Throwable> handler)
callAsync in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public void runInCoordinatorThread(Runnable runnable)
runInCoordinatorThread in interface org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>public void close()
throws InterruptedException
close in interface AutoCloseableInterruptedExceptionCopyright © 2014–2022 The Apache Software Foundation. All rights reserved.