aboutsummaryrefslogtreecommitdiffstats
path: root/mumd/src/command.rs
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2021-06-06 23:26:24 +0200
committerGustav Sörnäs <gustav@sornas.net>2021-06-06 23:26:24 +0200
commitbe76c2aa51733a0cf495e92659fbcbe527f41149 (patch)
tree617fb1caa999c076a45233b4bedea6a78192db25 /mumd/src/command.rs
parent7fc5a1a36404ee4cbc09d20c955e6edd3d2ac523 (diff)
downloadmum-be76c2aa51733a0cf495e92659fbcbe527f41149.tar.gz
cargo fmt
Diffstat (limited to 'mumd/src/command.rs')
-rw-r--r--mumd/src/command.rs31
1 files changed, 18 insertions, 13 deletions
diff --git a/mumd/src/command.rs b/mumd/src/command.rs
index 5255afa..410751a 100644
--- a/mumd/src/command.rs
+++ b/mumd/src/command.rs
@@ -1,10 +1,13 @@
-use crate::network::{ConnectionInfo, tcp::TcpEventQueue, udp::PingRequest};
+use crate::network::{tcp::TcpEventQueue, udp::PingRequest, ConnectionInfo};
use crate::state::{ExecutionContext, State};
use log::*;
-use mumble_protocol::{Serverbound, control::ControlPacket};
+use mumble_protocol::{control::ControlPacket, Serverbound};
use mumlib::command::{Command, CommandResponse};
-use std::sync::{atomic::{AtomicU64, Ordering}, Arc, RwLock};
+use std::sync::{
+ atomic::{AtomicU64, Ordering},
+ Arc, RwLock,
+};
use tokio::sync::{mpsc, watch};
pub async fn handle(
@@ -22,11 +25,16 @@ pub async fn handle(
let ping_count = AtomicU64::new(0);
while let Some((command, mut response_sender)) = command_receiver.recv().await {
debug!("Received command {:?}", command);
- let event = crate::state::handle_command(Arc::clone(&state), command, &mut packet_sender, &mut connection_info_sender);
+ let event = crate::state::handle_command(
+ Arc::clone(&state),
+ command,
+ &mut packet_sender,
+ &mut connection_info_sender,
+ );
match event {
ExecutionContext::TcpEventCallback(event, generator) => {
tcp_event_queue.register_callback(
- event,
+ event,
Box::new(move |e| {
let response = generator(e);
for response in response {
@@ -35,17 +43,14 @@ pub async fn handle(
}),
);
}
- ExecutionContext::TcpEventSubscriber(event, mut handler) => {
- tcp_event_queue.register_subscriber(
+ ExecutionContext::TcpEventSubscriber(event, mut handler) => tcp_event_queue
+ .register_subscriber(
event,
- Box::new(move |event| {
- handler(event, &mut response_sender)
- }),
- )
- }
+ Box::new(move |event| handler(event, &mut response_sender)),
+ ),
ExecutionContext::Now(generator) => {
for response in generator() {
- response_sender.send(response).unwrap();
+ response_sender.send(response).unwrap();
}
drop(response_sender);
}