]> git.r.bdr.sh - rbdr/blog/blobdiff - src/command/sync_down.rs
Deal with all lints
[rbdr/blog] / src / command / sync_down.rs
index dc4114e8d31f0836a047b5fbc76c1bb6127e422c..f9122d4d8fc0eff6d48964b983777c0b9e4a4c17 100644 (file)
@@ -1,6 +1,6 @@
-use std::fs::create_dir_all;
-use std::io::{Result, Error};
 use crate::configuration::Configuration;
 use crate::configuration::Configuration;
+use crate::remote::sync_down;
+use std::io::Result;
 
 pub struct SyncDown;
 
 
 pub struct SyncDown;
 
@@ -15,17 +15,21 @@ impl super::Command for SyncDown {
         vec![]
     }
 
         vec![]
     }
 
-    fn execute(&self, _: Option<&String>, configuration: &Configuration, command: &String) -> Result<()> {
-        match create_dir_all(&configuration.data_directory) {
-            Ok(_) => {
-                // We only care to show these warnings if this is the primary command.
+    fn execute(
+        &self,
+        _: Option<&String>,
+        configuration: &Configuration,
+        command: &str,
+    ) -> Result<()> {
+        match sync_down(&configuration.data_directory, &configuration.remote_config) {
+            Ok(()) => {}
+            Err(e) => {
                 if command == self.command() {
                 if command == self.command() {
-                    println!("WARNING: Sync Down Not yet implemented");
+                    return Err(e);
                 }
                 }
-                return Ok(())
-            },
-            Err(e) => Err(Error::new(e.kind(), format!("Could not create data directory")))
+            }
         }
         }
+        Ok(())
     }
 
     fn after_dependencies(&self) -> Vec<Box<dyn super::Command>> {
     }
 
     fn after_dependencies(&self) -> Vec<Box<dyn super::Command>> {
@@ -40,4 +44,3 @@ impl super::Command for SyncDown {
         "\t\t\t\tPulls from the git remote if configured"
     }
 }
         "\t\t\t\tPulls from the git remote if configured"
     }
 }
-