reactive_graph_plugin_service_api/plugin_context_factory.rs
1use std::sync::Arc;
2
3use async_trait::async_trait;
4use springtime_di::injectable;
5
6use reactive_graph_lifecycle::Lifecycle;
7use reactive_graph_plugin_api::PluginContext;
8
9#[injectable]
10#[async_trait]
11pub trait PluginContextFactory: Send + Sync + Lifecycle {
12 fn construct_plugin_context(&self);
13
14 fn get(&self) -> Option<Arc<dyn PluginContext + Send + Sync>>;
15}