mqrs/src/posix/info.rs

25 lines
574 B
Rust
Raw Normal View History

2021-06-14 03:51:26 +02:00
use anyhow::Result;
use clap::Parser;
2021-06-14 03:51:26 +02:00
use posixmq::PosixMq;
/// Print information about an existing message queue
#[derive(Debug, Parser)]
2021-06-14 03:51:26 +02:00
pub struct Info {
/// Name of the queue
2021-06-20 02:00:08 +02:00
#[clap(value_name = "QUEUE")]
2021-07-08 14:13:59 +02:00
queue: String,
2021-06-14 03:51:26 +02:00
}
impl Info {
pub fn run(&self) -> Result<()> {
let attrs = PosixMq::open(&self.queue)?.attributes()?;
println!(
"Message queue: {}, msg_max: {}, msgsize_max: {}, current_messages: {}",
self.queue, attrs.capacity, attrs.max_msg_len, attrs.current_messages
2021-06-14 03:51:26 +02:00
);
Ok(())
}
}