From 284cac8f4034f15e7edeba5c8232a770fc082e20 Mon Sep 17 00:00:00 2001 From: tom barrett Date: Wed, 13 Feb 2019 13:25:00 -0600 Subject: added engine fuel and simplified/unified txrx from server --- src/server/navigation.rs | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) (limited to 'src/server/navigation.rs') diff --git a/src/server/navigation.rs b/src/server/navigation.rs index 8fc7731..e14c340 100644 --- a/src/server/navigation.rs +++ b/src/server/navigation.rs @@ -1,11 +1,10 @@ extern crate serde_json; use std::collections::HashMap; -use std::io::BufRead; use std::io::Write; use crate::mass::{Mass, MassType}; -use crate::server::connection::ServerConnection; +use crate::server::connection::{receive, ServerConnection}; impl ServerConnection { pub fn server_navigation(&mut self, masses: &mut HashMap) { @@ -28,19 +27,13 @@ impl ServerConnection { if self.open { let send = serde_json::to_string(&within_range).unwrap() + "\n"; + self.open = self.stream.write(send.as_bytes()).is_ok(); - if let Err(_err) = self.stream.write(send.as_bytes()) { - self.open = false; - }; - - let mut recv = String::new(); - if let Ok(result) = self.buff_r.read_line(&mut recv) { - if result == 0 { - self.open = false; - } - if !recv.is_empty() { - navigation.give_target(recv.replace("\n", "")); + match receive(&mut self.buff_r) { + Some(recv) => { + navigation.give_target(recv); } + None => self.open = false, } } } -- cgit v1.2.3