From 7d5a491c986464aee5504c2d8b283949b896bea8 Mon Sep 17 00:00:00 2001 From: _ <_@_> Date: Thu, 5 Nov 2020 21:44:32 -0600 Subject: [PATCH] :recycle: Remove Option<> --- src/bin/ptth_relay.rs | 2 +- src/bin/ptth_server.rs | 2 +- src/lib.rs | 4 ++-- src/relay/mod.rs | 29 ++++++++++++----------------- src/server/mod.rs | 2 +- 5 files changed, 17 insertions(+), 22 deletions(-) diff --git a/src/bin/ptth_relay.rs b/src/bin/ptth_relay.rs index 4f5ad9a..45683c7 100644 --- a/src/bin/ptth_relay.rs +++ b/src/bin/ptth_relay.rs @@ -50,6 +50,6 @@ async fn main () -> Result <(), Box > { relay::run_relay ( Arc::new (RelayState::from (&config_file)), - Some (rx) + rx ).await } diff --git a/src/bin/ptth_server.rs b/src/bin/ptth_server.rs index 1ec88a0..63370de 100644 --- a/src/bin/ptth_server.rs +++ b/src/bin/ptth_server.rs @@ -27,5 +27,5 @@ async fn main () -> Result <(), Box > { toml::from_str (&config_s).unwrap_or_else (|_| panic! ("Can't parse {:?} as TOML", config_file_path)) }; - ptth::server::main (config_file, None).await + ptth::server::run_server (config_file, None).await } diff --git a/src/lib.rs b/src/lib.rs index a4ceb98..4350775 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -113,7 +113,7 @@ mod tests { let relay_state_2 = relay_state.clone (); let (stop_relay_tx, stop_relay_rx) = oneshot::channel (); let task_relay = spawn (async move { - relay::run_relay (relay_state_2, Some (stop_relay_rx)).await.unwrap (); + relay::run_relay (relay_state_2, stop_relay_rx).await.unwrap (); }); assert! (relay_state.list_servers ().await.is_empty ()); @@ -130,7 +130,7 @@ mod tests { let task_server = { let stop_server_atomic = stop_server_atomic.clone (); spawn (async move { - server::main (config_file, Some (stop_server_atomic)).await.unwrap (); + server::run_server (config_file, Some (stop_server_atomic)).await.unwrap (); }) }; diff --git a/src/relay/mod.rs b/src/relay/mod.rs index 18a7127..ef95378 100644 --- a/src/relay/mod.rs +++ b/src/relay/mod.rs @@ -397,7 +397,7 @@ use tracing::info; pub async fn run_relay ( state: Arc , - shutdown_oneshot: Option > + shutdown_oneshot: oneshot::Receiver <()> ) -> Result <(), Box > { @@ -433,22 +433,17 @@ pub async fn run_relay ( let server = Server::bind (&addr) .serve (make_svc); - match shutdown_oneshot { - Some (rx) => { - info! ("Configured for graceful shutdown"); - server.with_graceful_shutdown (async { - rx.await.ok (); - - state.response_rendezvous.clear (); - - let mut request_rendezvoux = state.request_rendezvous.lock ().await; - request_rendezvoux.clear (); - - info! ("Received graceful shutdown"); - }).await? - }, - None => server.await?, - }; + info! ("Configured for graceful shutdown"); + server.with_graceful_shutdown (async { + shutdown_oneshot.await.ok (); + + state.response_rendezvous.clear (); + + let mut request_rendezvoux = state.request_rendezvous.lock ().await; + request_rendezvoux.clear (); + + info! ("Received graceful shutdown"); + }).await?; info! ("Exiting"); Ok (()) diff --git a/src/server/mod.rs b/src/server/mod.rs index 6de6158..6cce392 100644 --- a/src/server/mod.rs +++ b/src/server/mod.rs @@ -124,7 +124,7 @@ use std::sync::atomic::{ use tracing::info; -pub async fn main ( +pub async fn run_server ( config_file: ConfigFile, shutdown_atomic: Option > )