2024-03-18 21:42:04 +00:00
|
|
|
use std::collections::HashMap;
|
|
|
|
use std::sync::{Arc, Mutex};
|
2024-03-18 20:38:10 +00:00
|
|
|
use Fasching::snapshot::Snapshot;
|
|
|
|
|
|
|
|
pub enum CompareMode {
|
|
|
|
Local2Local
|
|
|
|
}
|
|
|
|
|
2024-03-18 21:36:14 +00:00
|
|
|
pub struct SysCompareApp {
|
2024-03-18 20:38:10 +00:00
|
|
|
mode: CompareMode,
|
2024-03-18 21:42:04 +00:00
|
|
|
args: Vec<String>,
|
|
|
|
comparatives: Arc<Mutex<HashMap<String, Snapshot>>>
|
2024-03-18 20:38:10 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
2024-03-18 21:36:14 +00:00
|
|
|
impl SysCompareApp {
|
|
|
|
pub fn new(mode: CompareMode, args: Vec<String>) -> SysCompareApp {
|
2024-03-18 21:42:04 +00:00
|
|
|
SysCompareApp { mode, args, comparatives: Arc::new(Mutex::new(HashMap::new())) }
|
2024-03-18 21:36:14 +00:00
|
|
|
}
|
|
|
|
pub fn run(&self) {
|
|
|
|
println!("running");
|
2024-03-18 20:38:10 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-03-18 21:36:14 +00:00
|
|
|
impl Default for SysCompareApp {
|
2024-03-18 20:38:10 +00:00
|
|
|
fn default() -> Self {
|
2024-03-18 21:42:04 +00:00
|
|
|
SysCompareApp { mode: CompareMode::Local2Local, args: vec![], comparatives: Arc::new(Mutex::new(HashMap::new())) }
|
2024-03-18 20:38:10 +00:00
|
|
|
}
|
|
|
|
}
|
2024-03-18 21:36:14 +00:00
|
|
|
|
|
|
|
pub trait Comparer {
|
|
|
|
fn run(&self);
|
|
|
|
}
|