Package org.apache.calcite.adapter.java
Interface JavaTypeFactory
- All Superinterfaces:
RelDataTypeFactory
- All Known Implementing Classes:
JavaTypeFactoryExtImpl
,JavaTypeFactoryImpl
Type factory that can register Java classes as record types.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.rel.type.RelDataTypeFactory
RelDataTypeFactory.Builder, RelDataTypeFactory.FieldInfo, RelDataTypeFactory.FieldInfoBuilder
-
Method Summary
Modifier and TypeMethodDescriptioncreateStructType
(Class clazz) Creates a record type based upon the public fields of a Java class.createSyntheticType
(List<Type> types) Creates a synthetic Java class whose fields have the given Java types.createType
(Type type) Creates a type, deducing whether a record, scalar or primitive type is needed.getJavaClass
(RelDataType type) toSql
(RelDataType type) Converts a type in Java format to a SQL-oriented type.Methods inherited from interface org.apache.calcite.rel.type.RelDataTypeFactory
builder, copyType, createArrayType, createDecimalProduct, createDecimalQuotient, createJavaType, createJoinType, createMapType, createMeasureType, createMultisetType, createSqlIntervalType, createSqlType, createSqlType, createSqlType, createStructType, createStructType, createStructType, createStructType, createTypeWithCharsetAndCollation, createTypeWithNullability, createUnknownType, decimalOf, getDefaultCharset, getTypeSystem, leastRestrictive, useDoubleMultiplication
-
Method Details
-
createStructType
Creates a record type based upon the public fields of a Java class.- Parameters:
clazz
- Java class- Returns:
- Record type that remembers its Java class
-
createType
Creates a type, deducing whether a record, scalar or primitive type is needed.- Parameters:
type
- Java type, such as aClass
- Returns:
- Record or scalar type
-
getJavaClass
-
createSyntheticType
Creates a synthetic Java class whose fields have the given Java types. -
toSql
Converts a type in Java format to a SQL-oriented type.
-