Interface ICatalogProvider
- All Known Implementing Classes:
CatalogStoreProvider,LegacyCatalogProvider
public interface ICatalogProvider
Catalog 提供者接口(解耦 TSQLEnv 与具体实现)
此接口将 Catalog 存储与检索抽象化,支持多种实现:
- LegacyCatalogProvider: 兼容旧实现(catalogList)
- CatalogStoreProvider: 新实现(CatalogStore)
- DatabaseCatalogProvider: 外部数据库持久化
- CachedCatalogProvider: Redis/Memcached 缓存
- Since:
- 3.2.0 (Phase 0)
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddObject(TSQLSchemaObject object) 添加 schema 对象voidclear()清空所有对象createCatalog(String catalogName) 创建 catalog(已存在则返回现有)findObject(String catalog, String schema, String objectName, ESQLDataObjectType type) 查找 schema 对象(全限定名查找)获取所有 cataloggetCatalog(String catalogName) 获取 catalog(不存在返回 null)获取默认 catalog 名称booleanremoveObject(TSQLSchemaObject object) 移除 schema 对象voidsetDefaultCatalogName(String name) 设置默认 catalog 名称intsize()获取对象总数
-
Method Details
-
getCatalog
获取 catalog(不存在返回 null)- Parameters:
catalogName- catalog 名称- Returns:
- catalog 实例,未找到返回 null
-
createCatalog
创建 catalog(已存在则返回现有)- Parameters:
catalogName- catalog 名称- Returns:
- catalog 实例
-
getAllCatalogs
获取所有 catalog- Returns:
- catalog 列表
-
getDefaultCatalogName
获取默认 catalog 名称- Returns:
- 默认 catalog 名称
-
setDefaultCatalogName
设置默认 catalog 名称- Parameters:
name- 默认 catalog 名称
-
findObject
TSQLSchemaObject findObject(String catalog, String schema, String objectName, ESQLDataObjectType type) 查找 schema 对象(全限定名查找)- Parameters:
catalog- catalog 名称schema- schema 名称objectName- 对象名称type- 对象类型- Returns:
- schema 对象,未找到返回 null
-
addObject
添加 schema 对象- Parameters:
object- schema 对象
-
removeObject
移除 schema 对象- Parameters:
object- schema 对象- Returns:
- true 如果移除成功
-
clear
void clear()清空所有对象 -
size
int size()获取对象总数- Returns:
- 对象总数
-