added disconnect command
This commit is contained in:
parent
9a09df6b25
commit
612c25c392
|
|
@ -46,21 +46,24 @@ impl Commands{
|
|||
}
|
||||
Commands::Connect => {
|
||||
let message = String::from("!success:");
|
||||
Commands::transmit_data(stream, &message);
|
||||
Commands::transmit_data(&stream, &message);
|
||||
|
||||
connect::add_new_client(clients_ref, &data[1], &data[2], address);
|
||||
connect::add_client(clients_ref, &data[1], &data[2], address);
|
||||
}
|
||||
Commands::Disconnect => {
|
||||
let message = String::from("!success:");
|
||||
Commands::transmit_data(&stream, &message);
|
||||
|
||||
disconnect::remove_client(clients_ref, &data[1]);
|
||||
}
|
||||
Commands::ClientUpdate => {
|
||||
}
|
||||
Commands::ClientInfo => {
|
||||
let message = String::from("!success:");
|
||||
Commands::transmit_data(stream, &message);
|
||||
Commands::transmit_data(&stream, &message);
|
||||
|
||||
let requested_address = client_info::get_client_address(clients_ref, &data[1]);
|
||||
Commands::transmit_data(stream, &requested_address);
|
||||
Commands::transmit_data(&stream, &requested_address);
|
||||
}
|
||||
Commands::Client => {
|
||||
}
|
||||
|
|
@ -74,7 +77,7 @@ impl Commands{
|
|||
}
|
||||
}
|
||||
|
||||
fn transmit_data(mut stream: TcpStream, data: &str){
|
||||
fn transmit_data(mut stream: &TcpStream, data: &str){
|
||||
println!("Transmitting...");
|
||||
println!("data: {}",data);
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ use std::sync::Mutex;
|
|||
use std::sync::Arc;
|
||||
use std::collections::HashMap;
|
||||
|
||||
pub fn add_new_client(clients_ref: &Arc<Mutex<HashMap<String,Client>>>, username: &String, uuid: &String, address: &String){
|
||||
pub fn add_client(clients_ref: &Arc<Mutex<HashMap<String,Client>>>, username: &String, uuid: &String, address: &String){
|
||||
let client = create_client_profile(username,uuid,address);
|
||||
let mut clients_hashmap = clients_ref.lock().unwrap();
|
||||
//let cloned_client = client.clone();
|
||||
|
|
|
|||
|
|
@ -0,0 +1,10 @@
|
|||
use crate::client_management::client_profile::Client;
|
||||
|
||||
use std::sync::Mutex;
|
||||
use std::sync::Arc;
|
||||
use std::collections::HashMap;
|
||||
|
||||
pub fn remove_client(clients_ref: &Arc<Mutex<HashMap<String,Client>>>, uuid: &String){
|
||||
let mut clients_hashmap = clients_ref.lock().unwrap();
|
||||
clients_hashmap.remove(uuid);
|
||||
}
|
||||
Loading…
Reference in New Issue