use std::sync::Arc;
use uuid::Uuid;
use crate::runtime::{GrpcInstallerStore, ModuleManager};
pub struct SystemContext {
instance_id: Uuid,
pub module_manager: Arc<ModuleManager>,
pub grpc_installers: Arc<GrpcInstallerStore>,
}
impl SystemContext {
pub fn new(
instance_id: Uuid,
module_manager: Arc<ModuleManager>,
grpc_installers: Arc<GrpcInstallerStore>,
) -> Self {
Self {
instance_id,
module_manager,
grpc_installers,
}
}
#[inline]
#[must_use]
pub fn instance_id(&self) -> Uuid {
self.instance_id
}
}