Add poll command to k2v-cli
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing

This commit is contained in:
Alex 2022-07-04 12:10:30 +02:00
parent b74b533b7b
commit 31334b6525
Signed by: lx
GPG key ID: 0E496D15096376BE

View file

@ -55,6 +55,19 @@ enum Command {
#[clap(flatten)]
output_kind: ReadOutputKind,
},
/// Watch changes on a single value
Poll {
/// Partition key to delete from
partition_key: String,
/// Sort key to delete from
sort_key: String,
/// Causality information
#[clap(short, long)]
causality: String,
/// Output formating
#[clap(flatten)]
output_kind: ReadOutputKind,
},
/// Delete a single value
Delete {
/// Partition key to delete from
@ -324,6 +337,19 @@ async fn main() -> Result<(), Error> {
let res = client.read_item(&partition_key, &sort_key).await?;
output_kind.display_output(res);
}
Command::Poll {
partition_key,
sort_key,
causality,
output_kind,
} => {
let res_opt = client.poll_item(&partition_key, &sort_key, causality.into(), None).await?;
if let Some(res) = res_opt {
output_kind.display_output(res);
} else {
println!("Delay expired and value didn't change.");
}
}
Command::ReadIndex {
output_kind,
filter,