|
|
|
@ -26,18 +26,40 @@ use control::Controller; |
|
|
|
use handler::ConnectionHandler;
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
env_logger::init().unwrap();
|
|
|
|
match env_logger::init() {
|
|
|
|
Ok(()) => (),
|
|
|
|
Err(err) => {
|
|
|
|
error!("Failed to initialize logger: {}", err);
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
let mut event_loop = EventLoop::new().unwrap();
|
|
|
|
let mut event_loop = match EventLoop::new() {
|
|
|
|
Ok(event_loop) => event_loop,
|
|
|
|
Err(err) => {
|
|
|
|
error!("Failed to create EventLoop: {}", err);
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
let (handler_to_client_tx, handler_to_client_rx) = channel();
|
|
|
|
let (control_to_client_tx, control_to_client_rx) = channel();
|
|
|
|
let (client_to_control_tx, client_to_control_rx) = channel();
|
|
|
|
let client_to_handler_tx = event_loop.channel();
|
|
|
|
|
|
|
|
let mut handler = ConnectionHandler::new(
|
|
|
|
config::SERVER_HOST, config::SERVER_PORT,
|
|
|
|
handler_to_client_tx, &mut event_loop).unwrap();
|
|
|
|
let mut handler = {
|
|
|
|
let handler_result = ConnectionHandler::new(
|
|
|
|
config::SERVER_HOST, config::SERVER_PORT,
|
|
|
|
handler_to_client_tx, &mut event_loop);
|
|
|
|
|
|
|
|
match handler_result {
|
|
|
|
Ok(handler) => handler,
|
|
|
|
Err(err) => {
|
|
|
|
error!("Failed to create ConnectionHandler: {}", err);
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
let mut client = Client::new(
|
|
|
|
client_to_handler_tx, handler_to_client_rx,
|
|
|
|
|