Skip to main content

GraphConfigSource

Trait GraphConfigSource 

Source
pub trait GraphConfigSource: Send + Sync {
    // Required method
    fn graph_config<'a>(
        &'a self,
        tenant: &'a TenantContext,
        graph_id: &'a str,
    ) -> Pin<Box<dyn Future<Output = Result<GraphConfig, ConfigError>> + Send + 'a>>;
}
Expand description

Resolves a GraphConfig for a (tenant, graph_id) pair.

Object-safe (returns BoxFut) so it can be held as Arc<dyn GraphConfigSource>. The pack loader (Task 8) fills the concrete implementation; tests use InMemoryGraphProvider.

Required Methods§

Source

fn graph_config<'a>( &'a self, tenant: &'a TenantContext, graph_id: &'a str, ) -> Pin<Box<dyn Future<Output = Result<GraphConfig, ConfigError>> + Send + 'a>>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl GraphConfigSource for CachingGraphProvider<HttpGraphProvider>

Adapts CachingGraphProvider<HttpGraphProvider> into the GraphConfigSource trait so it can be stored as an Arc<dyn GraphConfigSource> alongside InMemoryGraphProvider.

This is a 5-line adapter that bridges the inherent-method API of CachingGraphProvider (defined in greentic-aw-runtime) into the trait object used by runner-host.

Source§

fn graph_config<'a>( &'a self, tenant: &'a TenantContext, graph_id: &'a str, ) -> Pin<Box<dyn Future<Output = Result<GraphConfig, ConfigError>> + Send + 'a>>

Implementors§