diff --git a/src/client_api/mod.rs b/src/client_api/mod.rs index 1af8627..3181ac2 100644 --- a/src/client_api/mod.rs +++ b/src/client_api/mod.rs @@ -1,11 +1,13 @@ -use std::{net::TcpStream, io::{Write, Read}, io}; -use crate::{ - server::client::client_profile::Client, - commands::Commands, -}; +use std::{io::{Read, Write}, io, net::TcpStream}; use std::time::Duration; + use zeroize::Zeroize; +use crate::{ + commands::Commands, + server::client::client_profile::Client, +}; + pub struct ClientApi { socket: TcpStream, addr: String, diff --git a/src/commands/mod.rs b/src/commands/mod.rs index d404de2..c71fbc9 100644 --- a/src/commands/mod.rs +++ b/src/commands/mod.rs @@ -1,11 +1,11 @@ -use std::string::ToString; -use std::collections::HashMap; -use std::str::FromStr; - use std::borrow::Borrow; -use regex::Regex; +use std::collections::HashMap; use std::ops::Index; +use std::str::FromStr; +use std::string::ToString; + use log::info; +use regex::Regex; use zeroize::Zeroize; diff --git a/src/lib.rs b/src/lib.rs index 4e15e7d..95cbc5a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,7 +1,8 @@ -use std::thread; -use crossbeam::{unbounded , Sender, Receiver}; use std::sync::Arc; use std::sync::Mutex; +use std::thread; + +use crossbeam::{Receiver, Sender, unbounded}; enum Message { NewJob(Job), diff --git a/src/main.rs b/src/main.rs index 841f6d1..0269b99 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,32 +5,13 @@ mod commands; mod server; mod lib; -use cursive::{ - Cursive, - menu::*, - event::Key, - CursiveExt, - align::Align, - view::SizeConstraint, - event::Event, - XY, -}; +use std::time::Duration; -use std::{ - time::Duration, - sync::{ - Arc, - Mutex - } -}; -use crossterm::ErrorKind; -use log::info; use clap::{App, Arg}; +use crossterm::ErrorKind; - -use crate::server::ServerV3::Server; -use cursive::views::{Dialog, TextView, Menubar, LinearLayout, ResizedView, ListView, Panel}; -use crate::server::ui::server_view_controller::ServerControlView; +use crate::server::server_v3::Server; +use crate::server::ui::server_view_controller::ServerViewController; fn main() -> Result<(), ErrorKind> { let args = App::new("--rust chat server--") diff --git a/src/server/client/client_profile.rs b/src/server/client/client_profile.rs index 7cbd5c5..cce53c0 100644 --- a/src/server/client/client_profile.rs +++ b/src/server/client/client_profile.rs @@ -1,31 +1,30 @@ extern crate regex; use std::{ - sync::Arc, - sync::Mutex, - net::{Shutdown, TcpStream}, - io::prelude::*, - io::Error, - //collections::HashMap, - time::{Instant, Duration}, io, + io::Error, + io::prelude::*, + net::{Shutdown, TcpStream}, + sync::Arc, + //collections::HashMap, + sync::Mutex, + time::{Duration, Instant}, }; use crossbeam_channel::{ - Sender, Receiver, + Sender, TryRecvError, unbounded }; - use log::info; use crate::{ + commands::Commands, server::{ //server_profile::Server, server_profile::ServerMessages, - }, - commands::Commands + } }; diff --git a/src/server/client/clientV3.rs b/src/server/client/client_v3.rs similarity index 98% rename from src/server/client/clientV3.rs rename to src/server/client/client_v3.rs index df257c3..d0688dd 100644 --- a/src/server/client/clientV3.rs +++ b/src/server/client/client_v3.rs @@ -1,28 +1,27 @@ extern crate regex; use std::{ - sync::Arc, - sync::Mutex, - net::{Shutdown, TcpStream}, - io::prelude::*, - io::Error, - //collections::HashMap, - time::{Instant, Duration}, io, + io::Error, + io::prelude::*, + net::{Shutdown, TcpStream}, + sync::Arc, + //collections::HashMap, + sync::Mutex, + time::{Duration, Instant}, }; use crossbeam_channel::{ - Sender, Receiver, + Sender, TryRecvError, unbounded }; - use log::info; use crate::{ - server::ServerV3::ServerMessages, commands::Commands, + server::server_v3::ServerMessages, }; diff --git a/src/server/server_profile.rs b/src/server/server_profile.rs index 7369fe9..7a68729 100644 --- a/src/server/server_profile.rs +++ b/src/server/server_profile.rs @@ -1,28 +1,26 @@ +use std::{ + collections::HashMap, + io, + io::Error, + io::prelude::*, + net::{TcpListener, TcpStream}, + sync::{Arc, Mutex}, + thread, + time::Duration +}; + +use crossbeam_channel::{Receiver, Sender, unbounded}; +use log::info; + use crate::{ + commands::Commands, server::{ client::client_profile::Client, - }, - commands::Commands + } }; - -use std::{ - sync::{Arc, Mutex}, - net::{TcpStream, TcpListener}, - collections::HashMap, - io::prelude::*, - time::Duration, - io::Error, - thread, - io -}; - -use log::info; - -use crossbeam_channel::{Sender, Receiver, unbounded}; use crate::lib::ThreadPool; - #[derive(Debug)] pub enum ServerMessages { RequestUpdate(Arc>), diff --git a/src/server/ServerV3.rs b/src/server/server_v3.rs similarity index 98% rename from src/server/ServerV3.rs rename to src/server/server_v3.rs index c3ec3b5..bd47828 100644 --- a/src/server/ServerV3.rs +++ b/src/server/server_v3.rs @@ -1,4 +1,4 @@ -use std::{sync::{Mutex, Arc}, net::{TcpStream, TcpListener}, collections::HashMap, io, io::{Write, Read}, thread}; +use std::{collections::HashMap, io, io::{Read, Write}, net::{TcpListener, TcpStream}, sync::{Arc, Mutex}}; use crate::{ commands::Commands }; diff --git a/src/server/ui/about_panel.rs b/src/server/ui/about_panel.rs index 5d1136f..16e29ef 100644 --- a/src/server/ui/about_panel.rs +++ b/src/server/ui/about_panel.rs @@ -1,6 +1,5 @@ use cursive::views::{Dialog, TextView}; -use cursive::view::ViewWrapper; -use cursive::{Printer, View}; +use cursive::View; pub fn about() -> Box { Box::new( diff --git a/src/server/ui/control_panel.rs b/src/server/ui/control_panel.rs index 1ea860c..2e4a246 100644 --- a/src/server/ui/control_panel.rs +++ b/src/server/ui/control_panel.rs @@ -1,9 +1,8 @@ -use cursive::{View, Printer, Cursive}; -use cursive::event::{EventResult, Event}; -use cursive::views::{Panel, ResizedView, StackView, LinearLayout, TextView}; +use cursive::{Cursive, View}; use cursive::view::SizeConstraint; -use crate::server::ServerV3::Server; +use cursive::views::{LinearLayout, ListView, Panel, ResizedView, TextView}; +use crate::server::server_v3::Server; pub fn control_panel(s: &mut Cursive) -> Box { Box::new( ResizedView::new( diff --git a/src/server/ui/server_view_controller.rs b/src/server/ui/server_view_controller.rs index ad64fc6..31e88da 100644 --- a/src/server/ui/server_view_controller.rs +++ b/src/server/ui/server_view_controller.rs @@ -1,12 +1,9 @@ -use cursive::{Cursive, CursiveExt, CbSink, Printer, View}; -use cursive::event::{EventResult, Event}; -use cursive::views::{ResizedView, Dialog, TextView}; -use cursive::menu::MenuTree; -use cursive::view::ViewWrapper; -use std::sync::Arc; -use crate::server::ServerV3::Server; -pub struct ServerControlView { - display: Cursive, +use cursive::{CbSink, Cursive, CursiveExt}; + +use crate::server::server_v3::Server; +use crate::server::ui::about_panel::about; +use crate::server::ui::main_menu::main_menu; +use cursive::event::Event; // MARK: - ViewModel stuff pub struct ServerViewController {