Class ExpandingPreparingTable
- java.lang.Object
-
- org.apache.calcite.prepare.Prepare.AbstractPreparingTable
-
- org.apache.flink.table.planner.plan.schema.FlinkPreparingTableBase
-
- org.apache.flink.table.planner.plan.schema.ExpandingPreparingTable
-
- All Implemented Interfaces:
org.apache.calcite.plan.RelOptTable
,org.apache.calcite.prepare.Prepare.PreparingTable
,org.apache.calcite.schema.Wrapper
,org.apache.calcite.sql.validate.SqlValidatorTable
- Direct Known Subclasses:
QueryOperationCatalogViewTable
,SqlCatalogViewTable
public abstract class ExpandingPreparingTable extends FlinkPreparingTableBase
A common subclass for all tables that are expanded to sub-query (views). It handles recursive expanding of sub-views automatically.
-
-
Field Summary
-
Fields inherited from class org.apache.flink.table.planner.plan.schema.FlinkPreparingTableBase
names, relOptSchema, rowType, statistic
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ExpandingPreparingTable(org.apache.calcite.plan.RelOptSchema relOptSchema, org.apache.calcite.rel.type.RelDataType rowType, Iterable<String> names, org.apache.flink.table.planner.plan.stats.FlinkStatistic statistic)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract org.apache.calcite.rel.RelNode
convertToRel(org.apache.calcite.plan.RelOptTable.ToRelContext context)
Converts the table to aRelNode
.org.apache.calcite.rel.RelNode
toRel(org.apache.calcite.plan.RelOptTable.ToRelContext context)
-
Methods inherited from class org.apache.flink.table.planner.plan.schema.FlinkPreparingTableBase
columnHasDefaultValue, explainSourceAsString, extend, getAllowedAccess, getCollationList, getDistribution, getExpression, getKeys, getMonotonicity, getNames, getQualifiedName, getReferentialConstraints, getRelOptSchema, getRowCount, getRowType, getStatistic, isKey, isTemporal, supportsModality, uniqueKeysSet, unwrap
-
Methods inherited from class org.apache.calcite.prepare.Prepare.AbstractPreparingTable
extend, getColumnStrategies
-
-
-
-
Method Detail
-
convertToRel
protected abstract org.apache.calcite.rel.RelNode convertToRel(org.apache.calcite.plan.RelOptTable.ToRelContext context)
Converts the table to aRelNode
. Does not need to expand any nested scans of anExpandingPreparingTable
. Those will be expanded recursively.- Returns:
- a relational tree
-
toRel
public final org.apache.calcite.rel.RelNode toRel(org.apache.calcite.plan.RelOptTable.ToRelContext context)
- Specified by:
toRel
in interfaceorg.apache.calcite.plan.RelOptTable
- Overrides:
toRel
in classFlinkPreparingTableBase
-
-