core/emgauwa-core/src/settings.rs

32 lines
732 B
Rust

use emgauwa_common::errors::EmgauwaError;
use emgauwa_common::settings;
use serde_derive::Deserialize;
#[derive(Clone, Debug, Deserialize)]
#[serde(default)]
#[allow(unused)]
pub struct Settings {
pub server: settings::Server,
pub database: String,
pub permissions: settings::Permissions,
pub logging: settings::Logging,
pub origins: Vec<String>,
}
impl Default for Settings {
fn default() -> Self {
Settings {
server: settings::Server::default(),
database: String::from("sqlite://emgauwa-core.sqlite"),
permissions: settings::Permissions::default(),
logging: settings::Logging::default(),
origins: Vec::new(),
}
}
}
pub fn init() -> Result<Settings, EmgauwaError> {
settings::load("core", "CORE")
}