1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
use std::error::Error; use config::fs::load_json; use models::project::Project; use serde::{Deserialize, Serialize}; pub static APPNAME: &str = "dbui"; #[derive(Clone, Debug, Deserialize, Serialize)] pub struct AppConfig { pub name: String, pub port: i32 } pub struct RequestConfig { pub debug: bool, pub theme: String, pub app: AppConfig } pub fn load_app_cfg(cfg_dir: &str) -> Result<AppConfig, Box<dyn Error>> { let json = load_json(cfg_dir, "config.json")?; let deser: AppConfig = serde_json::from_str(&json)?; Ok(deser) } pub fn load_project(cfg_dir: &str, key: &str) -> Project { println!("Project [{}] loaded from [{}]", key, cfg_dir); Project { name: String::from(key) } }