cp_microservice/impl/api/shared/
amqp_queue_consumer.rs

1use lapin::options::{BasicAckOptions, BasicRejectOptions};
2use serde::{Deserialize, Serialize};
3
4use crate::r#impl::api::shared::amqp_consume::AmqpConsume;
5use crate::r#impl::api::shared::amqp_qos::AmqpQos;
6use crate::r#impl::api::shared::amqp_queue::AmqpQueue;
7
8#[derive(Deserialize, Serialize, Clone)]
9pub struct AmqpQueueConsumer {
10    queue: AmqpQueue,
11    qos: AmqpQos,
12    consume: AmqpConsume,
13    acknowledge: BasicAckOptions,
14    reject: BasicRejectOptions,
15}
16
17impl AmqpQueueConsumer {
18    pub fn queue(&self) -> &AmqpQueue {
19        &self.queue
20    }
21
22    pub fn qos(&self) -> &AmqpQos {
23        &self.qos
24    }
25
26    pub fn consume(&self) -> &AmqpConsume {
27        &self.consume
28    }
29
30    pub fn acknowledge(&self) -> &BasicAckOptions {
31        &self.acknowledge
32    }
33
34    pub fn reject(&self) -> &BasicRejectOptions {
35        &self.reject
36    }
37}