From 942f4f69a8756d8aca30ee3355eda95b2a70535a Mon Sep 17 00:00:00 2001 From: jamesk Date: Mon, 18 Mar 2024 18:04:24 -0400 Subject: [PATCH] init --- src/createmode.rs | 13 +++++++++---- src/syscompare.rs | 10 +++++++--- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/createmode.rs b/src/createmode.rs index 0761f1c..00b9149 100644 --- a/src/createmode.rs +++ b/src/createmode.rs @@ -1,19 +1,24 @@ +use Fasching::create_snapshot; +use Fasching::hasher::HashType::BLAKE3; use Fasching::snapshot::Snapshot; use crate::syscompare::Comparer; pub struct CreateMode { - path: String, + in_path: String, + out_path: String, + args: Vec, snapshot: Snapshot } impl CreateMode { - pub fn new(path: &String) -> CreateMode { - CreateMode { path: "".to_string(), snapshot: Default::default() } + pub fn new(args: Vec, in_path: String, out_path: String) -> CreateMode { + CreateMode { in_path, out_path, args, snapshot: Default::default() } } } impl Comparer for CreateMode { fn run(&self) { - + let snapshot = create_snapshot(self.in_path.as_str(), BLAKE3); + println!("{}", snapshot.file_hashes.lock().unwrap().len()) } } diff --git a/src/syscompare.rs b/src/syscompare.rs index 36504d0..31a1c4a 100644 --- a/src/syscompare.rs +++ b/src/syscompare.rs @@ -24,11 +24,15 @@ impl SysCompareApp { println!("running"); match self.mode { CompareMode::Create => { - let path = match self.args.get(2) { - None => {panic!("Missing creation path as second argument")} + let in_path = match self.args.get(2) { + None => {panic!("Missing hash dir path as second argument")} Some(r) => {r} }; - let create = CreateMode::new(path); + let out_path = match self.args.get(3) { + None => {panic!("Missing output path as third argument")} + Some(r) => {r} + }; + let create = CreateMode::new(self.args.clone(), in_path.clone(), out_path.clone()); create.run() } CompareMode::Compare => {}