From 1918c8d4f8ace8327dd2446711a9e318777fcaf9 Mon Sep 17 00:00:00 2001 From: Nikolay Kim Date: Sun, 29 Dec 2019 10:07:46 +0600 Subject: [PATCH] rename .run to .start() --- actix-server/CHANGES.md | 6 +++++ actix-server/Cargo.toml | 8 +++--- actix-server/src/builder.rs | 53 +++++++++++++++---------------------- 3 files changed, 31 insertions(+), 36 deletions(-) diff --git a/actix-server/CHANGES.md b/actix-server/CHANGES.md index e58eb313..7dfd9999 100644 --- a/actix-server/CHANGES.md +++ b/actix-server/CHANGES.md @@ -1,5 +1,11 @@ # Changes +## [1.0.1] - 2019-12-29 + +### Changed + +* Rename `.start()` method to `.run()` + ## [1.0.0] - 2019-12-11 ### Changed diff --git a/actix-server/Cargo.toml b/actix-server/Cargo.toml index 81b0e993..e18fa615 100644 --- a/actix-server/Cargo.toml +++ b/actix-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "actix-server" -version = "1.0.0" +version = "1.0.1" authors = ["Nikolay Kim "] description = "Actix server - General purpose tcp server" keywords = ["network", "framework", "async", "futures"] @@ -21,10 +21,10 @@ path = "src/lib.rs" default = [] [dependencies] -actix-service = "1.0.0" +actix-service = "1.0.1" actix-rt = "1.0.0" actix-codec = "0.2.0" -actix-utils = "1.0.0" +actix-utils = "1.0.4" log = "0.4" num_cpus = "1.11" @@ -38,5 +38,5 @@ mio-uds = { version = "0.6.7" } [dev-dependencies] bytes = "0.5" -env_logger = "0.6" +env_logger = "0.7" actix-testing = "1.0.0" \ No newline at end of file diff --git a/actix-server/src/builder.rs b/actix-server/src/builder.rs index c0ead76b..df733759 100644 --- a/actix-server/src/builder.rs +++ b/actix-server/src/builder.rs @@ -31,7 +31,7 @@ pub struct ServerBuilder { backlog: i32, workers: Vec<(usize, WorkerClient)>, services: Vec>, - sockets: Vec<(Token, StdListener)>, + sockets: Vec<(Token, String, StdListener)>, accept: AcceptLoop, exit: bool, shutdown_timeout: Duration, @@ -146,8 +146,8 @@ impl ServerBuilder { let mut srv = ConfiguredService::new(apply); for (name, lst) in cfg.services { let token = self.token.next(); - srv.stream(token, name, lst.local_addr()?); - self.sockets.push((token, StdListener::Tcp(lst))); + srv.stream(token, name.clone(), lst.local_addr()?); + self.sockets.push((token, name, StdListener::Tcp(lst))); } self.services.push(Box::new(srv)); } @@ -172,7 +172,8 @@ impl ServerBuilder { factory.clone(), lst.local_addr()?, )); - self.sockets.push((token, StdListener::Tcp(lst))); + self.sockets + .push((token, name.as_ref().to_string(), StdListener::Tcp(lst))); } Ok(self) } @@ -222,7 +223,8 @@ impl ServerBuilder { factory.clone(), addr, )); - self.sockets.push((token, StdListener::Uds(lst))); + self.sockets + .push((token, name.as_ref().to_string(), StdListener::Uds(lst))); Ok(self) } @@ -243,36 +245,18 @@ impl ServerBuilder { factory, lst.local_addr()?, )); - self.sockets.push((token, StdListener::Tcp(lst))); + self.sockets + .push((token, name.as_ref().to_string(), StdListener::Tcp(lst))); Ok(self) } - /// Spawn new thread and start listening for incoming connections. - /// - /// This method spawns new thread and starts new actix system. Other than - /// that it is similar to `start()` method. This method blocks. - /// - /// This methods panics if no socket addresses get bound. - /// - /// ```rust,ignore - /// use actix_web::*; - /// - /// fn main() -> std::io::Result<()> { - /// Server::new(). - /// .service( - /// HttpServer::new(|| App::new().service(web::service("/").to(|| HttpResponse::Ok()))) - /// .bind("127.0.0.1:0") - /// .run() - /// } - /// ``` - pub fn run(self) -> io::Result<()> { - let sys = System::new("http-server"); - self.start(); - sys.run() + #[doc(hidden)] + pub fn start(self) -> Server { + self.run() } /// Starts processing incoming connections and return server controller. - pub fn start(mut self) -> Server { + pub fn run(mut self) -> Server { if self.sockets.is_empty() { panic!("Server should have at least one bound socket"); } else { @@ -288,10 +272,15 @@ impl ServerBuilder { // start accept thread for sock in &self.sockets { - info!("Starting server on {}", sock.1); + info!("Starting \"{}\" service on {}", sock.1, sock.2); } - self.accept - .start(mem::replace(&mut self.sockets, Vec::new()), workers); + self.accept.start( + mem::replace(&mut self.sockets, Vec::new()) + .into_iter() + .map(|t| (t.0, t.2)) + .collect(), + workers, + ); // handle signals if !self.no_signals {