diff_priv/
config.rs

1use hocon::HoconLoader;
2
3#[derive(Deserialize)]
4pub struct Config {
5    pub topic_in: String,
6    pub topic_out: String,
7    pub kafka_bootstrap: String,
8    pub k: Vec<usize>,
9    pub l: Vec<usize>,
10    pub c: Vec<i32>,
11    pub eps: Vec<f64>,
12    pub diff_thres: Vec<f64>,
13    pub delta: Vec<u64>,
14    pub noise_thr: Vec<f64>,
15    pub publish_remaining_tuples: bool,
16}
17
18impl Config {
19    pub fn new(conf_file: &String) -> Self {
20        let config: Config = HoconLoader::new()
21            .load_file(conf_file)
22            .expect("No application.conf found")
23            .resolve()
24            .expect("couldn't convert to Config");
25
26        config
27    }
28}