diff options
Diffstat (limited to 'src/command/status/mod.rs')
| -rw-r--r-- | src/command/status/mod.rs | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/command/status/mod.rs b/src/command/status/mod.rs new file mode 100644 index 0000000..ba73184 --- /dev/null +++ b/src/command/status/mod.rs @@ -0,0 +1,43 @@ +mod configuration_status; + +use std::io::Result; + +pub struct Status; + +impl Status { + pub fn new() -> Self { + Status + } +} + +impl super::Command for Status { + fn before_dependencies(&self) -> Vec<Box<dyn super::Command>> { + vec![] + } + + fn execute(&self, _: Option<&String>) -> Result<()> { + let status_providers = available_status_providers(); + for status_provider in status_providers { + println!("{}", status_provider()); + } + return Ok(()) + } + + fn after_dependencies(&self) -> Vec<Box<dyn super::Command>> { + vec![] + } + + fn command(&self) -> &'static str { + "status" + } + + fn help(&self) -> &'static str { + "\t\t\t\tPrints the status of your blog" + } +} + +fn available_status_providers() -> Vec<fn() -> String> { + vec![ + configuration_status::status, + ] +} |