OUT - The output type of the operatorF - The type of the user function@PublicEvolving public abstract class AbstractUdfStreamOperator<OUT,F extends org.apache.flink.api.common.functions.Function> extends AbstractStreamOperator<OUT> implements OutputTypeConfigurable<OUT>
AbstractStreamOperator.CountingOutput| Modifier and Type | Field and Description |
|---|---|
protected F |
userFunction
the user function
|
chainingStrategy, LOG, metrics, output| Constructor and Description |
|---|
AbstractUdfStreamOperator(F userFunction) |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
This method is called after all records have been added to the operators via the methods
OneInputStreamOperator.processElement(StreamRecord), or
TwoInputStreamOperator.processElement1(StreamRecord) and
TwoInputStreamOperator.processElement2(StreamRecord). |
void |
dispose()
This method is called at the very end of the operator's life, both in the case of a successful
completion of the operation, and in the case of a failure and canceling.
|
F |
getUserFunction()
Gets the user function executed in this operator.
|
org.apache.flink.configuration.Configuration |
getUserFunctionParameters()
Since the streaming API does not implement any parametrization of functions via a
configuration, the config returned here is actually empty.
|
void |
notifyOfCompletedCheckpoint(long checkpointId)
Called when the checkpoint with the given ID is completed and acknowledged on the JobManager.
|
void |
open()
This method is called immediately before any elements are processed, it should contain the
operator's initialization logic.
|
void |
restoreState(StreamTaskState state)
Restores the operator state, if this operator's execution is recovering from a checkpoint.
|
void |
setOutputType(org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo,
org.apache.flink.api.common.ExecutionConfig executionConfig)
Is called by the
StreamGraph.addOperator(Integer, String, StreamOperator, TypeInformation, TypeInformation, String)
method when the StreamGraph is generated. |
void |
setup(StreamTask<?,?> containingTask,
StreamConfig config,
Output<StreamRecord<OUT>> output)
Initializes the operator.
|
StreamTaskState |
snapshotOperatorState(long checkpointId,
long timestamp)
Called to draw a state snapshot from the operator.
|
getChainingStrategy, getContainingTask, getCurrentProcessingTime, getExecutionConfig, getMetricGroup, getOperatorConfig, getPartitionedState, getPartitionedState, getRuntimeContext, getStateBackend, getUserCodeClassloader, registerTimer, setChainingStrategy, setKeyContext, setKeyContextElement1, setKeyContextElement2protected final F extends org.apache.flink.api.common.functions.Function userFunction
public AbstractUdfStreamOperator(F userFunction)
public F getUserFunction()
public void setup(StreamTask<?,?> containingTask, StreamConfig config, Output<StreamRecord<OUT>> output)
StreamOperatorsetup in interface StreamOperator<OUT>setup in class AbstractStreamOperator<OUT>public void open()
throws Exception
AbstractStreamOperatorThe default implementation does nothing.
open in interface StreamOperator<OUT>open in class AbstractStreamOperator<OUT>Exception - An exception in this method causes the operator to fail.public void close()
throws Exception
AbstractStreamOperatorOneInputStreamOperator.processElement(StreamRecord), or
TwoInputStreamOperator.processElement1(StreamRecord) and
TwoInputStreamOperator.processElement2(StreamRecord).
The method is expected to flush all remaining buffered data. Exceptions during this flushing of buffered should be propagated, in order to cause the operation to be recognized asa failed, because the last data items are not processed properly.
close in interface StreamOperator<OUT>close in class AbstractStreamOperator<OUT>Exception - An exception in this method causes the operator to fail.public void dispose()
AbstractStreamOperatordispose in interface StreamOperator<OUT>dispose in class AbstractStreamOperator<OUT>public StreamTaskState snapshotOperatorState(long checkpointId, long timestamp) throws Exception
StreamOperatorsnapshotOperatorState in interface StreamOperator<OUT>snapshotOperatorState in class AbstractStreamOperator<OUT>checkpointId - The ID of the checkpoint.timestamp - The timestamp of the checkpoint.Exception - Forwards exceptions that occur while drawing snapshots from the operator
and the key/value state.public void restoreState(StreamTaskState state) throws Exception
StreamOperatorThis method is called after StreamOperator.setup(StreamTask, StreamConfig, Output)
and before StreamOperator.open().
restoreState in interface StreamOperator<OUT>restoreState in class AbstractStreamOperator<OUT>state - The state of operator that was snapshotted as part of checkpoint
from which the execution is restored.Exception - Exceptions during state restore should be forwarded, so that the system can
properly react to failed state restore and fail the execution attempt.public void notifyOfCompletedCheckpoint(long checkpointId)
throws Exception
StreamOperatornotifyOfCompletedCheckpoint in interface StreamOperator<OUT>notifyOfCompletedCheckpoint in class AbstractStreamOperator<OUT>checkpointId - The ID of the checkpoint that has been completed.Exception - Exceptions during checkpoint acknowledgement may be forwarded and will cause
the program to fail and enter recovery.public void setOutputType(org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo, org.apache.flink.api.common.ExecutionConfig executionConfig)
OutputTypeConfigurableStreamGraph.addOperator(Integer, String, StreamOperator, TypeInformation, TypeInformation, String)
method when the StreamGraph is generated. The
method is called with the output TypeInformation which is also used for the
StreamTask output serializer.setOutputType in interface OutputTypeConfigurable<OUT>outTypeInfo - Output type information of the StreamTaskexecutionConfig - Execution configurationpublic org.apache.flink.configuration.Configuration getUserFunctionParameters()
Copyright © 2014–2016 The Apache Software Foundation. All rights reserved.