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
A common subclass for all tables that are expanded to sub-query (views). It handles recursive
expanding of sub-views automatically.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.plan.RelOptTable
org.apache.calcite.plan.RelOptTable.ToRelContext, org.apache.calcite.plan.RelOptTable.ViewExpander -
Field Summary
Fields inherited from class org.apache.flink.table.planner.plan.schema.FlinkPreparingTableBase
names, relOptSchema, rowType, statistic -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedExpandingPreparingTable(org.apache.calcite.plan.RelOptSchema relOptSchema, org.apache.calcite.rel.type.RelDataType rowType, Iterable<String> names, FlinkStatistic statistic) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.apache.calcite.rel.RelNodeconvertToRel(org.apache.calcite.plan.RelOptTable.ToRelContext context) Converts the table to aRelNode.final org.apache.calcite.rel.RelNodetoRel(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, unwrapMethods inherited from class org.apache.calcite.prepare.Prepare.AbstractPreparingTable
extend, getColumnStrategiesMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.calcite.sql.validate.SqlValidatorTable
tableMethods inherited from interface org.apache.calcite.schema.Wrapper
maybeUnwrap, unwrapOrThrow
-
Constructor Details
-
ExpandingPreparingTable
-
-
Method Details
-
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:
toRelin interfaceorg.apache.calcite.plan.RelOptTable- Overrides:
toRelin classFlinkPreparingTableBase
-