Package org.apache.calcite.schema.impl
Class ModifiableViewTable.ModifiableViewTableInitializerExpressionFactory
- java.lang.Object
-
- org.apache.calcite.sql2rel.NullInitializerExpressionFactory
-
- org.apache.calcite.schema.impl.ModifiableViewTable.ModifiableViewTableInitializerExpressionFactory
-
- All Implemented Interfaces:
InitializerExpressionFactory
- Enclosing class:
- ModifiableViewTable
private class ModifiableViewTable.ModifiableViewTableInitializerExpressionFactory extends NullInitializerExpressionFactory
Initializes columns based on the view constraint.
-
-
Field Summary
Fields Modifier and Type Field Description private com.google.common.collect.ImmutableMap<java.lang.Integer,RexNode>
projectMap
-
Fields inherited from class org.apache.calcite.sql2rel.NullInitializerExpressionFactory
INSTANCE
-
-
Constructor Summary
Constructors Modifier Constructor Description private
ModifiableViewTableInitializerExpressionFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ColumnStrategy
generationStrategy(RelOptTable table, int iColumn)
Returns how a column is populated.RexNode
newAttributeInitializer(RelDataType type, SqlFunction constructor, int iAttribute, java.util.List<RexNode> constructorArgs, InitializerContext context)
Creates an expression which evaluates to the initializer expression for a particular attribute of a structured type.RexNode
newColumnDefaultValue(RelOptTable table, int iColumn, InitializerContext context)
Creates an expression which evaluates to the default value for a particular column.-
Methods inherited from class org.apache.calcite.sql2rel.NullInitializerExpressionFactory
isGeneratedAlways
-
-
-
-
Field Detail
-
projectMap
private final com.google.common.collect.ImmutableMap<java.lang.Integer,RexNode> projectMap
-
-
Method Detail
-
generationStrategy
public ColumnStrategy generationStrategy(RelOptTable table, int iColumn)
Description copied from interface:InitializerExpressionFactory
Returns how a column is populated.- Specified by:
generationStrategy
in interfaceInitializerExpressionFactory
- Overrides:
generationStrategy
in classNullInitializerExpressionFactory
- Parameters:
table
- the table containing the columniColumn
- the 0-based offset of the column in the table- Returns:
- generation strategy, never null
- See Also:
RelOptTable.getColumnStrategies()
-
newColumnDefaultValue
public RexNode newColumnDefaultValue(RelOptTable table, int iColumn, InitializerContext context)
Description copied from interface:InitializerExpressionFactory
Creates an expression which evaluates to the default value for a particular column.- Specified by:
newColumnDefaultValue
in interfaceInitializerExpressionFactory
- Overrides:
newColumnDefaultValue
in classNullInitializerExpressionFactory
- Parameters:
table
- the table containing the columniColumn
- the 0-based offset of the column in the tablecontext
- Context for creating the expression- Returns:
- default value expression
-
newAttributeInitializer
public RexNode newAttributeInitializer(RelDataType type, SqlFunction constructor, int iAttribute, java.util.List<RexNode> constructorArgs, InitializerContext context)
Description copied from interface:InitializerExpressionFactory
Creates an expression which evaluates to the initializer expression for a particular attribute of a structured type.- Specified by:
newAttributeInitializer
in interfaceInitializerExpressionFactory
- Overrides:
newAttributeInitializer
in classNullInitializerExpressionFactory
- Parameters:
type
- the structured typeconstructor
- the constructor invoked to initialize the typeiAttribute
- the 0-based offset of the attribute in the typeconstructorArgs
- arguments passed to the constructor invocationcontext
- Context for creating the expression- Returns:
- default value expression
-
-