Trait mz_storage_types::sources::SourceConnection

source ·
pub trait SourceConnection: Debug + Clone + PartialEq + AlterCompatible {
    // Required methods
    fn name(&self) -> &'static str;
    fn upstream_name(&self) -> Option<&str>;
    fn key_desc(&self) -> RelationDesc;
    fn value_desc(&self) -> RelationDesc;
    fn timestamp_desc(&self) -> RelationDesc;
    fn connection_id(&self) -> Option<GlobalId>;
    fn metadata_columns(&self) -> Vec<(&str, ColumnType)>;
    fn get_subsource_resolver(&self) -> SubsourceResolver;
}
Expand description

A connection to an external system

Required Methods§

source

fn name(&self) -> &'static str

The name of the external system (e.g kafka, postgres, etc).

source

fn upstream_name(&self) -> Option<&str>

The name of the resource in the external system (e.g kafka topic) if any

source

fn key_desc(&self) -> RelationDesc

The schema of this connection’s key rows.

source

fn value_desc(&self) -> RelationDesc

The schema of this connection’s value rows.

source

fn timestamp_desc(&self) -> RelationDesc

The schema of this connection’s timestamp type. This will also be the schema of the progress relation.

source

fn connection_id(&self) -> Option<GlobalId>

The id of the connection object (i.e the one obtained from running CREATE CONNECTION) in the catalog, if any.

source

fn metadata_columns(&self) -> Vec<(&str, ColumnType)>

Returns metadata columns that this connection instance will produce once rendered. The columns are returned in the order specified by the user.

source

fn get_subsource_resolver(&self) -> SubsourceResolver

Returns a SubsourceResolver for this source connection’s subsources.

Object Safety§

This trait is not object safe.

Implementors§