From c360d1d773bbfa9c9cfec97a202cc2b29b141010 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sat, 15 Apr 2023 02:00:45 +0000 Subject: refactor(hooks): implement call for hooks --- src/router.rs | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'src/router.rs') diff --git a/src/router.rs b/src/router.rs index 2f92088..1bb295c 100644 --- a/src/router.rs +++ b/src/router.rs @@ -83,8 +83,8 @@ pub struct Router { ssl_acceptor: Arc, #[cfg(feature = "logger")] default_logger: bool, - pre_route_callback: Arc>>>, - post_route_callback: Arc>>>, + pre_route_callback: Arc>>, + post_route_callback: Arc>>, character_set: String, languages: Vec, port: i32, @@ -368,7 +368,10 @@ impl Router { module.on_pre_route(hook_context.clone()); } - (*self.pre_route_callback).lock().unwrap()(hook_context.clone()); + (*self.pre_route_callback) + .lock() + .unwrap() + .call(hook_context.clone()); let mut content = if let Ok(ref route) = route { let footers_length = (*self.footers.lock().unwrap()).len(); @@ -425,10 +428,10 @@ impl Router { module.on_post_route(hook_context.clone()); } - (*self.post_route_callback).lock().unwrap()( - hook_context.clone(), - &mut content, - ); + (*self.post_route_callback) + .lock() + .unwrap() + .call(hook_context.clone(), &mut content); stream .write_all( @@ -886,7 +889,9 @@ impl Default for Router { #[cfg(feature = "logger")] default_logger: false, pre_route_callback: Arc::new(Mutex::new(Box::new(|_| {}))), - post_route_callback: Arc::new(Mutex::new(Box::new(|_, _| {}))), + post_route_callback: Arc::new(Mutex::new(Box::new( + |_, _: &'_ mut Response| {}, + ))), character_set: "utf-8".to_string(), languages: vec!["en".to_string()], port: 1965, -- cgit v1.2.3