rocketmq_protocol/protocol/header/
get_consume_stats_in_broker_header.rs1use rocketmq_macros::RequestHeaderCodec;
16use serde::Deserialize;
17use serde::Serialize;
18
19#[derive(Clone, Debug, Default, Serialize, Deserialize, RequestHeaderCodec)]
20#[header(
21 type_id = "rocketmq_protocol::protocol::header::get_consume_stats_in_broker_header::GetConsumeStatsInBrokerHeader",
22 java_class = "org.apache.rocketmq.remoting.protocol.header.GetConsumeStatsInBrokerHeader"
23)]
24pub struct GetConsumeStatsInBrokerHeader {
25 #[serde(rename = "isOrder")]
26 #[header(required)]
27 pub is_order: bool,
28}
29
30#[cfg(test)]
31mod tests {
32 use super::GetConsumeStatsInBrokerHeader;
33
34 #[test]
35 fn get_consume_stats_in_broker_header_round_trips() {
36 let header = GetConsumeStatsInBrokerHeader { is_order: true };
37 let json = serde_json::to_string(&header).expect("serialize get consume stats in broker header");
38 assert_eq!(json, r#"{"isOrder":true}"#);
39
40 let decoded: GetConsumeStatsInBrokerHeader =
41 serde_json::from_str(&json).expect("deserialize get consume stats in broker header");
42 assert!(decoded.is_order);
43 }
44}