use std::sync::{Arc, Mutex}; use rusqlite::{Connection}; pub struct DataService { pub analytic_units_connection: Arc>, pub segments_connection: Arc> } impl DataService { pub fn new() -> anyhow::Result { std::fs::create_dir_all("./data").unwrap(); let analytic_units_connection = Connection::open("./data/analytic_units.db")?; let segments_connection = Connection::open("./data/segments.db")?; Ok(DataService { analytic_units_connection: Arc::new(Mutex::new(analytic_units_connection)), segments_connection: Arc::new(Mutex::new(segments_connection)) }) } }