1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//-
use actix::prelude::*;

use git_next_core::server::ServerConfig;
use git_next_file_watcher_actor::FileUpdated;

use crate::{messages::ReceiveServerConfig, ServerActor};

impl Handler<FileUpdated> for ServerActor {
    type Result = ();

    fn handle(&mut self, _msg: FileUpdated, ctx: &mut Self::Context) -> Self::Result {
        let server_config = match ServerConfig::load(&self.fs) {
            Ok(server_config) => server_config,
            Err(err) => {
                tracing::error!("Failed to load config file. Error: {}", err);
                return;
            }
        };
        self.do_send(ReceiveServerConfig::new(server_config), ctx);
    }
}