lapin_async/
message.rs

1use crate::{
2  BasicProperties,
3  types::{LongLongUInt, LongUInt, ShortString, ShortUInt},
4};
5
6#[derive(Clone, Debug, PartialEq)]
7#[deprecated(note = "use lapin instead")]
8pub struct Delivery {
9  #[deprecated(note = "use lapin instead")]
10  pub delivery_tag: LongLongUInt,
11  #[deprecated(note = "use lapin instead")]
12  pub exchange:     ShortString,
13  #[deprecated(note = "use lapin instead")]
14  pub routing_key:  ShortString,
15  #[deprecated(note = "use lapin instead")]
16  pub redelivered:  bool,
17  #[deprecated(note = "use lapin instead")]
18  pub properties:   BasicProperties,
19  #[deprecated(note = "use lapin instead")]
20  pub data:         Vec<u8>,
21}
22
23impl Delivery {
24  pub(crate) fn new(delivery_tag: LongLongUInt, exchange: ShortString, routing_key: ShortString, redelivered: bool) -> Self {
25    Self {
26      delivery_tag,
27      exchange,
28      routing_key,
29      redelivered,
30      properties: BasicProperties::default(),
31      data:       Vec::new(),
32    }
33  }
34
35  pub(crate) fn receive_content(&mut self, data: Vec<u8>) {
36    self.data.extend(data);
37  }
38}
39
40#[derive(Clone, Debug, PartialEq)]
41#[deprecated(note = "use lapin instead")]
42pub struct BasicGetMessage {
43  #[deprecated(note = "use lapin instead")]
44  pub delivery:      Delivery,
45  #[deprecated(note = "use lapin instead")]
46  pub message_count: LongUInt,
47}
48
49impl BasicGetMessage {
50  pub(crate) fn new(delivery_tag: LongLongUInt, exchange: ShortString, routing_key: ShortString, redelivered: bool, message_count: LongUInt) -> Self {
51    Self {
52      delivery: Delivery::new(delivery_tag, exchange, routing_key, redelivered),
53      message_count,
54    }
55  }
56}
57
58#[derive(Clone, Debug, PartialEq)]
59#[deprecated(note = "use lapin instead")]
60pub struct BasicReturnMessage {
61  #[deprecated(note = "use lapin instead")]
62  pub delivery:   Delivery,
63  #[deprecated(note = "use lapin instead")]
64  pub reply_code: ShortUInt,
65  #[deprecated(note = "use lapin instead")]
66  pub reply_text: ShortString,
67}
68
69impl BasicReturnMessage {
70  pub(crate) fn new(exchange: ShortString, routing_key: ShortString, reply_code: ShortUInt, reply_text: ShortString) -> Self {
71    Self {
72      delivery: Delivery::new(0, exchange, routing_key, false),
73      reply_code,
74      reply_text,
75    }
76  }
77}