aboutsummaryrefslogtreecommitdiff
path: root/src/file_handler/file_strategies
diff options
context:
space:
mode:
authorRuben Beltran del Rio <ruben@unlimited.pizza>2023-04-15 16:21:44 +0200
committerRuben Beltran del Rio <ruben@unlimited.pizza>2023-04-15 16:21:44 +0200
commit1e2d00b62ecce95f71d4bfd60a043c8e86631eee (patch)
tree96b78d90d01dd8d5765ac46cdad15eb783b3fdf0 /src/file_handler/file_strategies
parent8d4fac527ea33456de21933b4632a5bf4abbfc8d (diff)
Read the files
Diffstat (limited to 'src/file_handler/file_strategies')
-rw-r--r--src/file_handler/file_strategies/file.rs23
-rw-r--r--src/file_handler/file_strategies/gemini.rs0
-rw-r--r--src/file_handler/file_strategies/layout.rs0
-rw-r--r--src/file_handler/file_strategies/mod.rs1
4 files changed, 24 insertions, 0 deletions
diff --git a/src/file_handler/file_strategies/file.rs b/src/file_handler/file_strategies/file.rs
new file mode 100644
index 0000000..530bbd6
--- /dev/null
+++ b/src/file_handler/file_strategies/file.rs
@@ -0,0 +1,23 @@
+pub struct Strategy {}
+
+use std::path::PathBuf;
+
+use crate::file_handler::{FileType, FileHandlerStrategy};
+
+impl FileHandlerStrategy for Strategy {
+ fn is(&self, path: &PathBuf) -> bool {
+ !path.is_dir()
+ }
+
+ fn identify(&self) -> FileType {
+ FileType::File
+ }
+
+ fn can_handle(&self, path: &PathBuf) -> bool {
+ !path.is_dir()
+ }
+
+ fn handle(&self, path: &PathBuf) {
+ println!("Should copy {}", path.display())
+ }
+}
diff --git a/src/file_handler/file_strategies/gemini.rs b/src/file_handler/file_strategies/gemini.rs
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/file_handler/file_strategies/gemini.rs
diff --git a/src/file_handler/file_strategies/layout.rs b/src/file_handler/file_strategies/layout.rs
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/file_handler/file_strategies/layout.rs
diff --git a/src/file_handler/file_strategies/mod.rs b/src/file_handler/file_strategies/mod.rs
new file mode 100644
index 0000000..2e172cd
--- /dev/null
+++ b/src/file_handler/file_strategies/mod.rs
@@ -0,0 +1 @@
+pub mod file;