Class TestingSplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
- java.lang.Object
-
- org.apache.flink.connector.testutils.source.reader.TestingSplitEnumeratorContext<SplitT>
-
- Type Parameters:
SplitT- The generic type of the splits.
- All Implemented Interfaces:
org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT>
public class TestingSplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit> extends Object implements org.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT>
A test implementation of theSplitEnumeratorContext, with manual, non-concurrent interaction and intercepting of state.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTestingSplitEnumeratorContext.SplitAssignmentState<SplitT extends org.apache.flink.api.connector.source.SourceSplit>The state of the split assignment for a subtask.
-
Constructor Summary
Constructors Constructor Description TestingSplitEnumeratorContext(int parallelism)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidassignSplits(org.apache.flink.api.connector.source.SplitsAssignment<SplitT> newSplitAssignments)<T> voidcallAsync(Callable<T> callable, BiConsumer<T,Throwable> handler)<T> voidcallAsync(Callable<T> callable, BiConsumer<T,Throwable> handler, long initialDelay, long period)intcurrentParallelism()org.apache.flink.core.testutils.ManuallyTriggeredScheduledExecutorServicegetExecutorService()Map<Integer,List<org.apache.flink.api.connector.source.SourceEvent>>getSentEvents()Map<Integer,TestingSplitEnumeratorContext.SplitAssignmentState<SplitT>>getSplitAssignments()org.apache.flink.metrics.groups.SplitEnumeratorMetricGroupmetricGroup()Map<Integer,org.apache.flink.api.connector.source.ReaderInfo>registeredReaders()voidregisterReader(int subtask, String hostname)voidrunInCoordinatorThread(Runnable runnable)voidsendEventToSourceReader(int subtaskId, int attemptNumber, org.apache.flink.api.connector.source.SourceEvent event)voidsendEventToSourceReader(int subtaskId, org.apache.flink.api.connector.source.SourceEvent event)voidsetIsProcessingBacklog(boolean isProcessingBacklog)voidsignalNoMoreSplits(int subtask)voidtriggerAllActions()
-
-
-
Method Detail
-
triggerAllActions
public void triggerAllActions()
-
getExecutorService
public org.apache.flink.core.testutils.ManuallyTriggeredScheduledExecutorService getExecutorService()
-
getSplitAssignments
public Map<Integer,TestingSplitEnumeratorContext.SplitAssignmentState<SplitT>> getSplitAssignments()
-
getSentEvents
public Map<Integer,List<org.apache.flink.api.connector.source.SourceEvent>> getSentEvents()
-
registerReader
public void registerReader(int subtask, String hostname)
-
metricGroup
public org.apache.flink.metrics.groups.SplitEnumeratorMetricGroup metricGroup()
- Specified by:
metricGroupin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
sendEventToSourceReader
public void sendEventToSourceReader(int subtaskId, org.apache.flink.api.connector.source.SourceEvent event)- Specified by:
sendEventToSourceReaderin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
sendEventToSourceReader
public void sendEventToSourceReader(int subtaskId, int attemptNumber, org.apache.flink.api.connector.source.SourceEvent event)- Specified by:
sendEventToSourceReaderin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
currentParallelism
public int currentParallelism()
- Specified by:
currentParallelismin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
registeredReaders
public Map<Integer,org.apache.flink.api.connector.source.ReaderInfo> registeredReaders()
- Specified by:
registeredReadersin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
assignSplits
public void assignSplits(org.apache.flink.api.connector.source.SplitsAssignment<SplitT> newSplitAssignments)
- Specified by:
assignSplitsin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
signalNoMoreSplits
public void signalNoMoreSplits(int subtask)
- Specified by:
signalNoMoreSplitsin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
callAsync
public <T> void callAsync(Callable<T> callable, BiConsumer<T,Throwable> handler)
- Specified by:
callAsyncin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
callAsync
public <T> void callAsync(Callable<T> callable, BiConsumer<T,Throwable> handler, long initialDelay, long period)
- Specified by:
callAsyncin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
runInCoordinatorThread
public void runInCoordinatorThread(Runnable runnable)
- Specified by:
runInCoordinatorThreadin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
setIsProcessingBacklog
public void setIsProcessingBacklog(boolean isProcessingBacklog)
- Specified by:
setIsProcessingBacklogin interfaceorg.apache.flink.api.connector.source.SplitEnumeratorContext<SplitT extends org.apache.flink.api.connector.source.SourceSplit>
-
-