public class TwoInputBroadcastProcessOperator<IN1,IN2,OUT> extends AbstractUdfStreamOperator<OUT,TwoInputBroadcastStreamProcessFunction<IN1,IN2,OUT>> implements TwoInputStreamOperator<IN1,IN2,OUT>, BoundedMultiInput
TwoInputBroadcastStreamProcessFunction
.Modifier and Type | Field and Description |
---|---|
protected TimestampCollector<OUT> |
collector |
protected DefaultRuntimeContext |
context |
protected NonPartitionedContext<OUT> |
nonPartitionedContext |
protected DefaultPartitionedContext |
partitionedContext |
userFunction
chainingStrategy, config, lastRecordAttributes1, lastRecordAttributes2, latencyStats, LOG, metrics, output, processingTimeService, stateHandler, stateKeySelector1, stateKeySelector2, timeServiceManager
Constructor and Description |
---|
TwoInputBroadcastProcessOperator(TwoInputBroadcastStreamProcessFunction<IN1,IN2,OUT> userFunction) |
Modifier and Type | Method and Description |
---|---|
protected Object |
currentKey() |
void |
endInput(int inputId)
It is notified that no more data will arrive from the input identified by the
inputId . |
protected NonPartitionedContext<OUT> |
getNonPartitionedContext() |
protected TimestampCollector<OUT> |
getOutputCollector() |
protected ProcessingTimeManager |
getProcessingTimeManager() |
void |
open()
This method is called immediately before any elements are processed, it should contain the
operator's initialization logic, e.g. state initialization.
|
void |
processElement1(StreamRecord<IN1> element)
Processes one element that arrived on the first input of this two-input operator.
|
void |
processElement2(StreamRecord<IN2> element)
Processes one element that arrived on the second input of this two-input operator.
|
close, finish, getUserFunction, getUserFunctionParameters, initializeState, notifyCheckpointAborted, notifyCheckpointComplete, setOutputType, setup, snapshotState
getChainingStrategy, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, isUsingCustomRawKeyedState, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark1, processWatermark2, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setChainingStrategy, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, snapshotState, useSplittableTimers
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
processLatencyMarker1, processLatencyMarker2, processRecordAttributes1, processRecordAttributes2, processWatermark1, processWatermark2, processWatermarkStatus1, processWatermarkStatus2
close, finish, getMetricGroup, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
notifyCheckpointAborted, notifyCheckpointComplete
getCurrentKey, setCurrentKey
hasKeyContext
protected transient TimestampCollector<OUT> collector
protected transient DefaultRuntimeContext context
protected transient DefaultPartitionedContext partitionedContext
protected transient NonPartitionedContext<OUT> nonPartitionedContext
public TwoInputBroadcastProcessOperator(TwoInputBroadcastStreamProcessFunction<IN1,IN2,OUT> userFunction)
public void open() throws Exception
AbstractStreamOperator
The default implementation does nothing.
open
in interface StreamOperator<OUT>
open
in class AbstractUdfStreamOperator<OUT,TwoInputBroadcastStreamProcessFunction<IN1,IN2,OUT>>
Exception
- An exception in this method causes the operator to fail.public void processElement1(StreamRecord<IN1> element) throws Exception
TwoInputStreamOperator
processElement1
in interface TwoInputStreamOperator<IN1,IN2,OUT>
Exception
public void processElement2(StreamRecord<IN2> element) throws Exception
TwoInputStreamOperator
processElement2
in interface TwoInputStreamOperator<IN1,IN2,OUT>
Exception
protected TimestampCollector<OUT> getOutputCollector()
protected NonPartitionedContext<OUT> getNonPartitionedContext()
public void endInput(int inputId) throws Exception
BoundedMultiInput
inputId
. The inputId
is numbered starting from 1, and `1` indicates the first input.
WARNING: It is not safe to use this method to commit any transactions or other side
effects! You can use this method to e.g. flush data buffered for the given input or implement
an ordered reading from multiple inputs via InputSelectable
.
endInput
in interface BoundedMultiInput
Exception
protected Object currentKey()
protected ProcessingTimeManager getProcessingTimeManager()
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.