Trait catalog::CatalogManager

source ·
pub trait CatalogManager: Send + Sync {
    // Required methods
    fn as_any(&self) -> &dyn Any;
    fn catalog_names<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn schema_names<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        catalog: &'life1 str,
        query_ctx: Option<&'life2 QueryContext>,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait;
    fn table_names<'life0, 'life1, 'life2, 'life3, 'async_trait>(
        &'life0 self,
        catalog: &'life1 str,
        schema: &'life2 str,
        query_ctx: Option<&'life3 QueryContext>,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait;
    fn catalog_exists<'life0, 'life1, 'async_trait>(
        &'life0 self,
        catalog: &'life1 str,
    ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn schema_exists<'life0, 'life1, 'life2, 'life3, 'async_trait>(
        &'life0 self,
        catalog: &'life1 str,
        schema: &'life2 str,
        query_ctx: Option<&'life3 QueryContext>,
    ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait;
    fn table_exists<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
        &'life0 self,
        catalog: &'life1 str,
        schema: &'life2 str,
        table: &'life3 str,
        query_ctx: Option<&'life4 QueryContext>,
    ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait,
             'life4: 'async_trait;
    fn table<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
        &'life0 self,
        catalog: &'life1 str,
        schema: &'life2 str,
        table_name: &'life3 str,
        query_ctx: Option<&'life4 QueryContext>,
    ) -> Pin<Box<dyn Future<Output = Result<Option<TableRef>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait,
             'life4: 'async_trait;
    fn tables<'a>(
        &'a self,
        catalog: &'a str,
        schema: &'a str,
        query_ctx: Option<&'a QueryContext>,
    ) -> BoxStream<'a, Result<TableRef>>;

    // Provided method
    fn is_reserved_schema_name(&self, schema: &str) -> bool { ... }
}

Required Methods§

source

fn as_any(&self) -> &dyn Any

source

fn catalog_names<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn schema_names<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, catalog: &'life1 str, query_ctx: Option<&'life2 QueryContext>, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

source

fn table_names<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, catalog: &'life1 str, schema: &'life2 str, query_ctx: Option<&'life3 QueryContext>, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

source

fn catalog_exists<'life0, 'life1, 'async_trait>( &'life0 self, catalog: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn schema_exists<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, catalog: &'life1 str, schema: &'life2 str, query_ctx: Option<&'life3 QueryContext>, ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

source

fn table_exists<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>( &'life0 self, catalog: &'life1 str, schema: &'life2 str, table: &'life3 str, query_ctx: Option<&'life4 QueryContext>, ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait, 'life4: 'async_trait,

source

fn table<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>( &'life0 self, catalog: &'life1 str, schema: &'life2 str, table_name: &'life3 str, query_ctx: Option<&'life4 QueryContext>, ) -> Pin<Box<dyn Future<Output = Result<Option<TableRef>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait, 'life4: 'async_trait,

Returns the table by catalog, schema and table name.

source

fn tables<'a>( &'a self, catalog: &'a str, schema: &'a str, query_ctx: Option<&'a QueryContext>, ) -> BoxStream<'a, Result<TableRef>>

Returns all tables with a stream by catalog and schema.

Provided Methods§

source

fn is_reserved_schema_name(&self, schema: &str) -> bool

Check if schema is a reserved schema name

Implementors§