summaryrefslogtreecommitdiff
path: root/src/connection.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/connection.rs')
-rw-r--r--src/connection.rs42
1 files changed, 21 insertions, 21 deletions
diff --git a/src/connection.rs b/src/connection.rs
index 6ec2d16..91da04a 100644
--- a/src/connection.rs
+++ b/src/connection.rs
@@ -1,20 +1,20 @@
-use std::io::prelude::*;
+extern crate serde_json;
+
use std::io::BufReader;
+use std::io::prelude::*;
use std::net::TcpStream;
use std::collections::HashMap;
-extern crate serde_json;
-
use ship::Ship;
use mass::Mass;
-use module::Module;
+use module::ModuleType;
pub struct Connection {
- pub name : String,
- pub module : Module,
- pub stream : TcpStream,
- pub buff_r : BufReader<TcpStream>,
- pub open : bool,
+ pub name : String,
+ pub module_type : ModuleType,
+ pub stream : TcpStream,
+ pub buff_r : BufReader<TcpStream>,
+ pub open : bool,
}
impl Connection {
@@ -25,7 +25,7 @@ impl Connection {
buff_r.read_line(&mut recv).unwrap();
let name = &recv[..recv.find(":").unwrap()];
- let mass = masses.entry(name.to_string()).or_insert(Box::new(Ship::new(name, (0.0, 0.0, 0.0))));
+ let mass = masses.entry(name.to_string()).or_insert(Box::new(Ship::new((0.0, 0.0, 0.0))));
let ship = mass.downcast_ref::<Ship>().unwrap();
let modules = ship.recv_modules();
@@ -33,25 +33,25 @@ impl Connection {
let mut recv = String::new();
buff_r.read_line(&mut recv).unwrap();
- let module : Module = serde_json::from_str(&recv.replace("\n","")).unwrap();
+ let module_type : ModuleType = serde_json::from_str(&recv.replace("\n","")).unwrap();
stream.set_nonblocking(true).unwrap();
Connection {
- name : String::from(name),
- module : module,
- stream : stream,
- buff_r : buff_r,
- open : true,
+ name : String::from(name),
+ module_type : module_type,
+ stream : stream,
+ buff_r : buff_r,
+ open : true,
}
}
pub fn process(&mut self, mut masses : &mut HashMap<String, Box<Mass>>) {
- self.open = match self.module {
- Module::Engines => self.server_engines(&mut masses),
- Module::Dashboard => self.server_dashboard(&mut masses),
- Module::Navigation => self.server_navigation(&mut masses),
- Module::Mining => self.server_mining(&mut masses),
+ self.open = match self.module_type {
+ ModuleType::Engines => self.server_engines(&mut masses),
+ ModuleType::Dashboard => self.server_dashboard(&mut masses),
+ ModuleType::Navigation => self.server_navigation(&mut masses),
+ ModuleType::Mining => self.server_mining(&mut masses),
};
}
}