Interface CatalogManager
- All Known Implementing Classes:
EmptyCatalogManager
,InMemoryCatalogManager
Top-level authority that manages
Catalog
s. Used inside the root BeamCalciteSchema
.
Implementations should have a way of determining which catalog is currently active, and
produce it when currentCatalog()
is invoked.
When registerTableProvider(String, TableProvider)
is called, the provider should
become available for all catalogs.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Creates and stores a catalog of a particular type.Produces the currently active catalog.void
dropCatalog
(String name) Drops the catalog with this name.getCatalog
(String name) Attempts to fetch the catalog with this name.void
registerTableProvider
(String name, TableProvider tableProvider) Registers aTableProvider
and propagates it to all theCatalog
instances available to this manager.default void
void
useCatalog
(String name) Switches the active catalog.
-
Method Details
-
createCatalog
Creates and stores a catalog of a particular type. -
useCatalog
Switches the active catalog. -
currentCatalog
Catalog currentCatalog()Produces the currently active catalog. -
getCatalog
Attempts to fetch the catalog with this name. May produce null if it does not exist. -
dropCatalog
Drops the catalog with this name. No-op if the catalog already does not exist. -
registerTableProvider
Registers aTableProvider
and propagates it to all theCatalog
instances available to this manager. -
registerTableProvider
-