summaryrefslogtreecommitdiff
path: root/src/cmd/list.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/list.rs')
-rw-r--r--src/cmd/list.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/cmd/list.rs b/src/cmd/list.rs
index 66036b9..691f2bf 100644
--- a/src/cmd/list.rs
+++ b/src/cmd/list.rs
@@ -1,16 +1,22 @@
-use crate::client::BackupClient;
+use crate::client::AsyncBackupClient;
use crate::config::ClientConfig;
use crate::error::ObnamError;
use structopt::StructOpt;
+use tokio::runtime::Runtime;
#[derive(Debug, StructOpt)]
pub struct List {}
impl List {
pub fn run(&self, config: &ClientConfig) -> Result<(), ObnamError> {
- let client = BackupClient::new(config)?;
+ let rt = Runtime::new()?;
+ rt.block_on(self.run_async(config))
+ }
+
+ async fn run_async(&self, config: &ClientConfig) -> Result<(), ObnamError> {
+ let client = AsyncBackupClient::new(config)?;
- let generations = client.list_generations()?;
+ let generations = client.list_generations().await?;
for finished in generations.iter() {
println!("{} {}", finished.id(), finished.ended());
}