rush_sync_server/server/
manager.rs

1use crate::core::prelude::*;
2use crate::server::types::{ServerContext, ServerInfo};
3
4#[derive(Debug, Default)]
5pub struct ServerManager {
6    ctx: ServerContext,
7}
8
9impl ServerManager {
10    pub fn new() -> Self {
11        Self::default()
12    }
13
14    pub fn get_server_info(&self, identifier: &str) -> Result<ServerInfo> {
15        let servers = self.ctx.servers.read().unwrap();
16        let server = crate::server::utils::validation::find_server(&servers, identifier)?;
17        Ok(server.clone())
18    }
19
20    pub fn get_context(&self) -> &ServerContext {
21        &self.ctx
22    }
23}