diff options
author | Lars Wirzenius <liw@liw.fi> | 2021-04-10 09:19:03 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2021-04-10 10:29:27 +0300 |
commit | c196a68471dd9dafbcc4030342aa4164d7a2d3e3 (patch) | |
tree | e1c3441158fa4843ad8f0bf1165417ad6e69aed9 /src/cmd | |
parent | 82eb02a0437ba8a7bf2025f5b61864b450ee68b2 (diff) | |
download | obnam2-c196a68471dd9dafbcc4030342aa4164d7a2d3e3.tar.gz |
refactor: struct List subcommand
Diffstat (limited to 'src/cmd')
-rw-r--r-- | src/cmd/list.rs | 20 | ||||
-rw-r--r-- | src/cmd/mod.rs | 4 |
2 files changed, 14 insertions, 10 deletions
diff --git a/src/cmd/list.rs b/src/cmd/list.rs index f48512b..66036b9 100644 --- a/src/cmd/list.rs +++ b/src/cmd/list.rs @@ -1,14 +1,20 @@ use crate::client::BackupClient; use crate::config::ClientConfig; use crate::error::ObnamError; +use structopt::StructOpt; -pub fn list(config: &ClientConfig) -> Result<(), ObnamError> { - let client = BackupClient::new(config)?; +#[derive(Debug, StructOpt)] +pub struct List {} - let generations = client.list_generations()?; - for finished in generations.iter() { - println!("{} {}", finished.id(), finished.ended()); - } +impl List { + pub fn run(&self, config: &ClientConfig) -> Result<(), ObnamError> { + let client = BackupClient::new(config)?; + + let generations = client.list_generations()?; + for finished in generations.iter() { + println!("{} {}", finished.id(), finished.ended()); + } - Ok(()) + Ok(()) + } } diff --git a/src/cmd/mod.rs b/src/cmd/mod.rs index fd5f8e9..1f6bd78 100644 --- a/src/cmd/mod.rs +++ b/src/cmd/mod.rs @@ -1,8 +1,6 @@ pub mod backup; pub mod init; - -mod list; -pub use list::list; +pub mod list; mod list_files; pub use list_files::list_files; |