Class LookupJoinRunner
java.lang.Object
org.apache.flink.api.common.functions.AbstractRichFunction
org.apache.flink.streaming.api.functions.ProcessFunction<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>
org.apache.flink.table.runtime.operators.join.lookup.LookupJoinRunner
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.functions.Function,org.apache.flink.api.common.functions.RichFunction
- Direct Known Subclasses:
LookupJoinWithCalcRunner
public class LookupJoinRunner
extends org.apache.flink.streaming.api.functions.ProcessFunction<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>
The join runner to lookup the dimension table.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.flink.streaming.api.functions.ProcessFunction
org.apache.flink.streaming.api.functions.ProcessFunction.Context, org.apache.flink.streaming.api.functions.ProcessFunction.OnTimerContext -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ListenableCollector<org.apache.flink.table.data.RowData>protected final booleanprotected org.apache.flink.table.data.GenericRowDataprotected org.apache.flink.table.data.utils.JoinedRowDataprotected FilterConditionprotected final int -
Constructor Summary
ConstructorsConstructorDescriptionLookupJoinRunner(GeneratedFunction<org.apache.flink.api.common.functions.FlatMapFunction<org.apache.flink.table.data.RowData, org.apache.flink.table.data.RowData>> generatedFetcher, GeneratedCollector<ListenableCollector<org.apache.flink.table.data.RowData>> generatedCollector, GeneratedFunction<FilterCondition> generatedPreFilterCondition, boolean isLeftOuterJoin, int tableFieldsCount) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voiddoFetch(org.apache.flink.table.data.RowData in) org.apache.flink.util.Collector<org.apache.flink.table.data.RowData>voidopen(org.apache.flink.api.common.functions.OpenContext openContext) voidpadNullForLeftJoin(org.apache.flink.table.data.RowData in, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) booleanpreFilter(org.apache.flink.table.data.RowData in) voidprepareCollector(org.apache.flink.table.data.RowData in, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) voidprocessElement(org.apache.flink.table.data.RowData in, org.apache.flink.streaming.api.functions.ProcessFunction<org.apache.flink.table.data.RowData, org.apache.flink.table.data.RowData>.org.apache.flink.streaming.api.functions.ProcessFunction.Context ctx, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) Methods inherited from class org.apache.flink.streaming.api.functions.ProcessFunction
onTimerMethods inherited from class org.apache.flink.api.common.functions.AbstractRichFunction
getIterationRuntimeContext, getRuntimeContext, setRuntimeContext
-
Field Details
-
isLeftOuterJoin
protected final boolean isLeftOuterJoin -
tableFieldsCount
protected final int tableFieldsCount -
collector
-
outRow
protected transient org.apache.flink.table.data.utils.JoinedRowData outRow -
preFilterCondition
-
nullRow
protected transient org.apache.flink.table.data.GenericRowData nullRow
-
-
Constructor Details
-
LookupJoinRunner
public LookupJoinRunner(GeneratedFunction<org.apache.flink.api.common.functions.FlatMapFunction<org.apache.flink.table.data.RowData, org.apache.flink.table.data.RowData>> generatedFetcher, GeneratedCollector<ListenableCollector<org.apache.flink.table.data.RowData>> generatedCollector, GeneratedFunction<FilterCondition> generatedPreFilterCondition, boolean isLeftOuterJoin, int tableFieldsCount)
-
-
Method Details
-
open
- Specified by:
openin interfaceorg.apache.flink.api.common.functions.RichFunction- Overrides:
openin classorg.apache.flink.api.common.functions.AbstractRichFunction- Throws:
Exception
-
processElement
public void processElement(org.apache.flink.table.data.RowData in, org.apache.flink.streaming.api.functions.ProcessFunction<org.apache.flink.table.data.RowData, org.apache.flink.table.data.RowData>.org.apache.flink.streaming.api.functions.ProcessFunction.Context ctx, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) throws Exception- Specified by:
processElementin classorg.apache.flink.streaming.api.functions.ProcessFunction<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData> - Throws:
Exception
-
prepareCollector
public void prepareCollector(org.apache.flink.table.data.RowData in, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) -
preFilter
- Throws:
Exception
-
doFetch
- Throws:
Exception
-
padNullForLeftJoin
public void padNullForLeftJoin(org.apache.flink.table.data.RowData in, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) -
getFetcherCollector
public org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> getFetcherCollector() -
close
- Specified by:
closein interfaceorg.apache.flink.api.common.functions.RichFunction- Overrides:
closein classorg.apache.flink.api.common.functions.AbstractRichFunction- Throws:
Exception
-