Class TableOperatorWrapper<OP extends org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>>
- java.lang.Object
-
- org.apache.flink.table.runtime.operators.multipleinput.TableOperatorWrapper<OP>
-
- All Implemented Interfaces:
Serializable
public class TableOperatorWrapper<OP extends org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>> extends Object implements Serializable
This class handles the close, endInput and other related logic of aStreamOperator. It also automatically propagates the end-input operation to the next wrapper that theoutputEdgespoints to, so we only need to call the head wrapper'sendOperatorInput(int)method.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTableOperatorWrapper.EdgeThe edge connecting twoTableOperatorWrappers.
-
Constructor Summary
Constructors Constructor Description TableOperatorWrapper(org.apache.flink.streaming.api.operators.StreamOperatorFactory<org.apache.flink.table.data.RowData> factory, String operatorName, List<org.apache.flink.api.common.typeinfo.TypeInformation<?>> allInputTypes, org.apache.flink.api.common.typeinfo.TypeInformation<?> outputType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddInput(TableOperatorWrapper<?> input, int inputId)voidclose()voidcreateOperator(org.apache.flink.streaming.api.operators.StreamOperatorParameters<org.apache.flink.table.data.RowData> parameters)voidendOperatorInput(int inputId)booleanequals(Object o)List<org.apache.flink.api.common.typeinfo.TypeInformation<?>>getAllInputTypes()intgetEndedInputCount()List<TableOperatorWrapper.Edge>getInputEdges()List<TableOperatorWrapper<?>>getInputWrappers()doublegetManagedMemoryFraction()StringgetOperatorName()List<TableOperatorWrapper.Edge>getOutputEdges()org.apache.flink.api.common.typeinfo.TypeInformation<?>getOutputType()List<TableOperatorWrapper<?>>getOutputWrappers()OPgetStreamOperator()inthashCode()booleanisClosed()Checks if the wrapped operator has been closed.voidsetManagedMemoryFraction(double managedMemoryFraction)StringtoString()
-
-
-
Constructor Detail
-
TableOperatorWrapper
public TableOperatorWrapper(org.apache.flink.streaming.api.operators.StreamOperatorFactory<org.apache.flink.table.data.RowData> factory, String operatorName, List<org.apache.flink.api.common.typeinfo.TypeInformation<?>> allInputTypes, org.apache.flink.api.common.typeinfo.TypeInformation<?> outputType)
-
-
Method Detail
-
createOperator
public void createOperator(org.apache.flink.streaming.api.operators.StreamOperatorParameters<org.apache.flink.table.data.RowData> parameters)
-
getStreamOperator
public OP getStreamOperator()
-
getAllInputTypes
public List<org.apache.flink.api.common.typeinfo.TypeInformation<?>> getAllInputTypes()
-
getOutputType
public org.apache.flink.api.common.typeinfo.TypeInformation<?> getOutputType()
-
addInput
public void addInput(TableOperatorWrapper<?> input, int inputId)
-
setManagedMemoryFraction
public void setManagedMemoryFraction(double managedMemoryFraction)
-
getManagedMemoryFraction
public double getManagedMemoryFraction()
-
getInputEdges
public List<TableOperatorWrapper.Edge> getInputEdges()
-
getInputWrappers
public List<TableOperatorWrapper<?>> getInputWrappers()
-
getOutputEdges
public List<TableOperatorWrapper.Edge> getOutputEdges()
-
getOutputWrappers
public List<TableOperatorWrapper<?>> getOutputWrappers()
-
isClosed
public boolean isClosed()
Checks if the wrapped operator has been closed.Note that this method must be called in the task thread.
-
getOperatorName
public String getOperatorName()
-
getEndedInputCount
@VisibleForTesting public int getEndedInputCount()
-
-