Browse Source

get_active_config++

active-analytic-unit-#66
Alexey Velikiy 2 years ago
parent
commit
5bf13b171b
  1. 17
      server/src/services/analytic_unit_service.rs

17
server/src/services/analytic_unit_service.rs

@ -101,16 +101,23 @@ impl AnalyticUnitService {
} }
pub fn get_active_config(&self) -> anyhow::Result<AnalyticUnitConfig> { pub fn get_active_config(&self) -> anyhow::Result<AnalyticUnitConfig> {
let conn = self.connection.lock().unwrap(); let exists = {
let mut stmt = conn.prepare( let conn = self.connection.lock().unwrap();
"SELECT config from analytic_unit WHERE active = TRUE" let mut stmt = conn.prepare(
)?; "SELECT config from analytic_unit WHERE active = TRUE"
)?;
stmt.exists([])?
};
if stmt.exists([])? == false { if exists == false {
let c = AnalyticUnitConfig::Pattern(Default::default()); let c = AnalyticUnitConfig::Pattern(Default::default());
self.resolve(&c)?; self.resolve(&c)?;
return Ok(c); return Ok(c);
} else { } else {
let conn = self.connection.lock().unwrap();
let mut stmt = conn.prepare(
"SELECT config from analytic_unit WHERE active = TRUE"
)?;
let acfg = stmt.query_row([], |row| { let acfg = stmt.query_row([], |row| {
let c: String = row.get(0)?; let c: String = row.get(0)?;
let cfg = serde_json::from_str(&c).unwrap(); let cfg = serde_json::from_str(&c).unwrap();

Loading…
Cancel
Save