diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2019-02-19 23:38:33 +0100 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2019-02-20 14:43:29 +0100 |
commit | 34d9f3429f26cc43ccb50d3c494879009a8f9952 (patch) | |
tree | e9c18c774db29d01e35314b8c27ecdb9bc1598ae /lib/core | |
parent | 0a625481731dd3e4446d61b1c12230dcc50e50d1 (diff) |
Add debug output
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'lib/core')
-rw-r--r-- | lib/core/libimagstore/src/file_abstraction/fs.rs | 3 | ||||
-rw-r--r-- | lib/core/libimagstore/src/file_abstraction/inmemory.rs | 1 | ||||
-rw-r--r-- | lib/core/libimagstore/src/file_abstraction/iter.rs | 7 | ||||
-rw-r--r-- | lib/core/libimagstore/src/storeid.rs | 3 |
4 files changed, 12 insertions, 2 deletions
diff --git a/lib/core/libimagstore/src/file_abstraction/fs.rs b/lib/core/libimagstore/src/file_abstraction/fs.rs index f6264337..9877474d 100644 --- a/lib/core/libimagstore/src/file_abstraction/fs.rs +++ b/lib/core/libimagstore/src/file_abstraction/fs.rs @@ -164,17 +164,20 @@ impl FileAbstraction for FSFileAbstraction { } } +#[derive(Debug)] pub struct WalkDirPathIterBuilder { basepath: PathBuf } impl PathIterBuilder for WalkDirPathIterBuilder { fn build_iter(&self) -> Box<Iterator<Item = Result<PathBuf>>> { + trace!("Building iterator for {}", self.basepath.display()); Box::new(WalkDir::new(self.basepath.clone()) .min_depth(1) .max_open(100) .into_iter() .map(|r| { + trace!("Working in PathIterator with {:?}", r); r.map(|e| PathBuf::from(e.path())) .context(format_err!("Error in Walkdir")) .map_err(Error::from) diff --git a/lib/core/libimagstore/src/file_abstraction/inmemory.rs b/lib/core/libimagstore/src/file_abstraction/inmemory.rs index 43dddb0c..603f4dbd 100644 --- a/lib/core/libimagstore/src/file_abstraction/inmemory.rs +++ b/lib/core/libimagstore/src/file_abstraction/inmemory.rs @@ -203,6 +203,7 @@ impl FileAbstraction for InMemoryFileAbstraction { } } +#[derive(Debug)] pub struct InMemPathIterBuilder(Vec<PathBuf>); impl PathIterBuilder for InMemPathIterBuilder { diff --git a/lib/core/libimagstore/src/file_abstraction/iter.rs b/lib/core/libimagstore/src/file_abstraction/iter.rs index 2eda4c27..6bd476a1 100644 --- a/lib/core/libimagstore/src/file_abstraction/iter.rs +++ b/lib/core/libimagstore/src/file_abstraction/iter.rs @@ -19,6 +19,7 @@ use std::path::PathBuf; use std::sync::Arc; +use std::fmt::Debug; use failure::Fallible as Result; @@ -26,7 +27,7 @@ use storeid::StoreIdWithBase; use file_abstraction::FileAbstraction; /// See documentation for PathIterator -pub(crate) trait PathIterBuilder { +pub(crate) trait PathIterBuilder : Debug { fn build_iter(&self) -> Box<Iterator<Item = Result<PathBuf>>>; fn in_collection(&mut self, c: &str); } @@ -59,7 +60,7 @@ impl<'a> PathIterator<'a> { backend: Arc<FileAbstraction>) -> PathIterator<'a> { - trace!("Generating iterator object with PathIterBuilder"); + trace!("Generating iterator object with PathIterBuilder: {:?}", iter_builder); let iter = iter_builder.build_iter(); PathIterator { iter_builder, iter, storepath, backend } } @@ -68,6 +69,7 @@ impl<'a> PathIterator<'a> { trace!("Generating iterator object for collection: {}", c); self.iter_builder.in_collection(c); self.iter = self.iter_builder.build_iter(); + trace!("Set new iterator"); self } @@ -90,6 +92,7 @@ impl<'a> Iterator for PathIterator<'a> { fn next(&mut self) -> Option<Self::Item> { while let Some(next) = self.iter.next() { + trace!("Iterating over item = {:?}", next); match next { Err(e) => return Some(Err(e)), Ok(next) => match self.backend.is_file(&next) { diff --git a/lib/core/libimagstore/src/storeid.rs b/lib/core/libimagstore/src/storeid.rs index d0a7d396..f269c39b 100644 --- a/lib/core/libimagstore/src/storeid.rs +++ b/lib/core/libimagstore/src/storeid.rs @@ -179,6 +179,9 @@ impl<'a> StoreIdWithBase<'a> { pub(crate) fn from_full_path<D>(store_part: &'a PathBuf, full_path: D) -> Result<StoreIdWithBase<'a>> where D: Deref<Target = Path> { + trace!("Creating StoreIdWithBase object from full path = {} with store_part = {}", + full_path.display(), + store_part.display()); let p = full_path .strip_prefix(store_part) .map_err(Error::from) |