use crate::event::manager::EventManager; use crate::session::manager::SessionManager; use std::cell::RefCell; use std::rc::Rc; pub struct ThreadContex { event_mgr: Rc>, session_mgr: Rc>, } impl ThreadContex { pub fn new(event_mgr: Rc>) -> Self { ThreadContex { event_mgr, session_mgr: Rc::new(RefCell::new(SessionManager::new(4096))), } } pub fn get_event_mgr(&self) -> Rc> { self.event_mgr.clone() } pub fn get_session_mgr(&self) -> Rc> { self.session_mgr.clone() } }