From e33f9a59f875edf1240ca80c1014235296ff3cbf Mon Sep 17 00:00:00 2001 From: yuzu Date: Sat, 12 Jul 2025 22:17:26 +0000 Subject: add additional endpoints; change out mutexes for rwlocks git-svn-id: svn+ssh://diminuette.aengel.lesbianunix.dev/salaryman/trunk@15 b9215c17-b818-4693-b096-d1e41a411fef --- src/server/context.rs | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/server/context.rs (limited to 'src/server/context.rs') diff --git a/src/server/context.rs b/src/server/context.rs new file mode 100644 index 0000000..132e2dc --- /dev/null +++ b/src/server/context.rs @@ -0,0 +1,47 @@ +use super::Config; +use salaryman::service::{Service, ServiceConf}; +use std::path::PathBuf; +use std::sync::Arc; +use tokio::sync::RwLock; + +pub struct SalarymanService { + pub config: ServiceConf, + pub service: Arc>, +} +impl SalarymanService { + pub fn new() -> Self { + Self { + config: ServiceConf::new(), + service: Arc::new(RwLock::new(Service::new())), + } + } + pub fn from_parts(config: ServiceConf, service: Arc>) -> Self { + Self { config, service } + } +} + +pub struct SalarymanDContext { + pub services: RwLock>>, + pub save_file: PathBuf, + pub config: Arc>, +} +impl SalarymanDContext { + pub fn new() -> Self { + Self { + services: RwLock::new(Vec::new()), + save_file: PathBuf::from(""), + config: Arc::new(RwLock::new(Config::new())), + } + } + pub fn from_parts( + services: RwLock>>, + save_file: PathBuf, + config: Arc>, + ) -> Self { + Self { + services, + save_file, + config, + } + } +} -- cgit 1.4.1-2-gfad0