reactive_graph_remotes_api/
remotes_system.rs1use std::sync::Arc;
2
3use async_trait::async_trait;
4use springtime_di::injectable;
5
6use reactive_graph_config_api::ConfigSystem;
7use reactive_graph_lifecycle::Lifecycle;
8
9use crate::InstanceService;
10use crate::RemotesManager;
11
12#[injectable]
13#[async_trait]
14pub trait RemotesSystem: Lifecycle {
15 fn get_instance_service(&self) -> Arc<dyn InstanceService + Send + Sync>;
16 fn get_remotes_manager(&self) -> Arc<dyn RemotesManager + Send + Sync>;
17
18 fn config_system(&self) -> Arc<dyn ConfigSystem + Send + Sync>;
19}