2023-02-08 20:49:05 +01:00
|
|
|
use serde::Deserialize;
|
|
|
|
|
|
|
|
#[derive(Deserialize)]
|
|
|
|
pub struct Config {
|
|
|
|
pub scheme: String,
|
2023-02-08 20:58:24 +01:00
|
|
|
pub port: u16,
|
2023-02-08 20:49:05 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
pub fn get_config(file_path: &str) -> Config {
|
|
|
|
match std::fs::read_to_string(file_path) {
|
|
|
|
Ok(file) => match toml::from_str(&file) {
|
|
|
|
Ok(stored_config) => stored_config,
|
|
|
|
Err(file_error) => {
|
|
|
|
panic!("Error in config file: {file_error}");
|
|
|
|
}
|
|
|
|
},
|
|
|
|
Err(_) =>
|
|
|
|
// No config file
|
|
|
|
{
|
|
|
|
Config {
|
|
|
|
scheme: "http".to_string(),
|
2023-02-08 20:58:24 +01:00
|
|
|
port: 8080,
|
2023-02-08 20:49:05 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|