Package org.apache.calcite.rel.type
Class RelDataTypeHolder
- java.lang.Object
-
- org.apache.calcite.rel.type.RelDataTypeHolder
-
class RelDataTypeHolder extends java.lang.Object
Holding the expandable list of fields for dynamic table.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<RelDataTypeField>
fields
private RelDataTypeFactory
typeFactory
-
Constructor Summary
Constructors Constructor Description RelDataTypeHolder(RelDataTypeFactory typeFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getFieldCount()
java.util.List<RelDataTypeField>
getFieldList()
java.util.List<java.lang.String>
getFieldNames()
(package private) Pair<RelDataTypeField,java.lang.Boolean>
getFieldOrInsert(java.lang.String fieldName, boolean caseSensitive)
Get field if exists, otherwise inserts a new field.
-
-
-
Field Detail
-
fields
private final java.util.List<RelDataTypeField> fields
-
typeFactory
private final RelDataTypeFactory typeFactory
-
-
Constructor Detail
-
RelDataTypeHolder
RelDataTypeHolder(RelDataTypeFactory typeFactory)
-
-
Method Detail
-
getFieldList
public java.util.List<RelDataTypeField> getFieldList()
-
getFieldCount
public int getFieldCount()
-
getFieldOrInsert
Pair<RelDataTypeField,java.lang.Boolean> getFieldOrInsert(java.lang.String fieldName, boolean caseSensitive)
Get field if exists, otherwise inserts a new field. The new field by default will have "any" type, except for the dynamic star field.- Parameters:
fieldName
- Request field namecaseSensitive
- Case Sensitive- Returns:
- A pair of RelDataTypeField and Boolean. Boolean indicates whether a new field is added to this holder.
-
getFieldNames
public java.util.List<java.lang.String> getFieldNames()
-
-