Package org.apache.nifi.sql.internal
Class CalciteTable
java.lang.Object
org.apache.calcite.schema.impl.AbstractTable
org.apache.nifi.sql.internal.CalciteTable
- All Implemented Interfaces:
org.apache.calcite.schema.QueryableTable,org.apache.calcite.schema.Table,org.apache.calcite.schema.TranslatableTable,org.apache.calcite.schema.Wrapper
public class CalciteTable
extends org.apache.calcite.schema.impl.AbstractTable
implements org.apache.calcite.schema.QueryableTable, org.apache.calcite.schema.TranslatableTable
An internal representation of a NiFiTable that is necessary for Apache Calcite. This class never be referenced outside of the module in which it is defined.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Function<org.apache.calcite.rel.type.RelDataTypeFactory, org.apache.calcite.rel.type.RelDataType> -
Constructor Summary
ConstructorsConstructorDescriptionCalciteTable(Function<org.apache.calcite.rel.type.RelDataTypeFactory, org.apache.calcite.rel.type.RelDataType> tableDefinitionFactory, Function<int[], org.apache.calcite.linq4j.Enumerable<Object>> projectionFactory) -
Method Summary
Modifier and TypeMethodDescription<T> org.apache.calcite.linq4j.Queryable<T> asQueryable(org.apache.calcite.linq4j.QueryProvider queryProvider, org.apache.calcite.schema.SchemaPlus schema, String tableName) org.apache.calcite.linq4j.tree.ExpressiongetExpression(org.apache.calcite.schema.SchemaPlus schema, String tableName, Class clazz) org.apache.calcite.rel.type.RelDataTypegetRowType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory) org.apache.calcite.linq4j.Enumerable<Object> project(org.apache.calcite.DataContext dataContext, int[] fields) org.apache.calcite.rel.RelNodetoRel(org.apache.calcite.plan.RelOptTable.ToRelContext context, org.apache.calcite.plan.RelOptTable relOptTable) Methods inherited from class org.apache.calcite.schema.impl.AbstractTable
getJdbcTableType, getStatistic, isRolledUp, rolledUpColumnValidInsideAgg, unwrapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.calcite.schema.Table
getJdbcTableType, getStatistic, isRolledUp, rolledUpColumnValidInsideAggMethods inherited from interface org.apache.calcite.schema.Wrapper
maybeUnwrap, unwrapOrThrow
-
Field Details
-
tableDefinitionFactory
private final Function<org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType> tableDefinitionFactory -
projectionFactory
-
-
Constructor Details
-
CalciteTable
-
-
Method Details
-
project
public org.apache.calcite.linq4j.Enumerable<Object> project(org.apache.calcite.DataContext dataContext, int[] fields) -
getExpression
public org.apache.calcite.linq4j.tree.Expression getExpression(org.apache.calcite.schema.SchemaPlus schema, String tableName, Class clazz) - Specified by:
getExpressionin interfaceorg.apache.calcite.schema.QueryableTable
-
getElementType
- Specified by:
getElementTypein interfaceorg.apache.calcite.schema.QueryableTable
-
asQueryable
public <T> org.apache.calcite.linq4j.Queryable<T> asQueryable(org.apache.calcite.linq4j.QueryProvider queryProvider, org.apache.calcite.schema.SchemaPlus schema, String tableName) - Specified by:
asQueryablein interfaceorg.apache.calcite.schema.QueryableTable
-
toRel
public org.apache.calcite.rel.RelNode toRel(org.apache.calcite.plan.RelOptTable.ToRelContext context, org.apache.calcite.plan.RelOptTable relOptTable) - Specified by:
toRelin interfaceorg.apache.calcite.schema.TranslatableTable
-
getRowType
public org.apache.calcite.rel.type.RelDataType getRowType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory) - Specified by:
getRowTypein interfaceorg.apache.calcite.schema.Table
-