Package org.apache.calcite.prepare
Interface Prepare.CatalogReader
- All Superinterfaces:
RelOptSchema,SqlOperatorTable,SqlValidatorCatalogReader,Wrapper
- All Known Implementing Classes:
CalciteCatalogReader,MockCatalogReader,MockCatalogReaderDynamic,MockCatalogReaderExtended,MockCatalogReaderSimple,MustFilterMockCatalogReader
- Enclosing class:
Prepare
public static interface Prepare.CatalogReader
extends RelOptSchema, SqlValidatorCatalogReader, SqlOperatorTable
Interface by which validator and planner can read table metadata.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescription@Nullable Prepare.PreparingTableFinds a table or schema with the given name, possibly qualified.@Nullable Prepare.PreparingTablegetTableForMember(List<String> names) Retrieves aRelOptTablebased upon a member access.withSchemaPath(List<String> schemaPath) Returns a catalog reader the same as this one but with a possibly different schema path.Methods inherited from interface org.apache.calcite.plan.RelOptSchema
getTypeFactory, registerRulesMethods inherited from interface org.apache.calcite.sql.SqlOperatorTable
getOperatorList, lookupOperatorOverloadsMethods inherited from interface org.apache.calcite.sql.validate.SqlValidatorCatalogReader
createTypeFromProjection, field, getAllSchemaObjectNames, getConfig, getNamedType, getRootSchema, getSchemaPaths, isCaseSensitive, matches, nameMatcherMethods inherited from interface org.apache.calcite.schema.Wrapper
maybeUnwrap, unwrap, unwrapOrThrow
-
Field Details
-
THREAD_LOCAL
-
-
Method Details
-
getTableForMember
Description copied from interface:RelOptSchemaRetrieves aRelOptTablebased upon a member access.For example, the Saffron expression
salesSchema.empswould be resolved using a call tosalesSchema.getTableForMember(new String[]{"emps" }).Note that name.length is only greater than 1 for queries originating from JDBC.
- Specified by:
getTableForMemberin interfaceRelOptSchema- Parameters:
names- Qualified name
-
withSchemaPath
Returns a catalog reader the same as this one but with a possibly different schema path. -
getTable
Description copied from interface:SqlValidatorCatalogReaderFinds a table or schema with the given name, possibly qualified.Uses the case-sensitivity policy of the catalog reader.
If not found, returns null. If you want a more descriptive error message or to override the case-sensitivity of the match, use
SqlValidatorScope.resolveTable(java.util.List<java.lang.String>, org.apache.calcite.sql.validate.SqlNameMatcher, org.apache.calcite.sql.validate.SqlValidatorScope.Path, org.apache.calcite.sql.validate.SqlValidatorScope.Resolved).- Specified by:
getTablein interfaceSqlValidatorCatalogReader- Parameters:
names- Name of table, may be qualified or fully-qualified- Returns:
- Table with the given name, or null
-