1use crate::models;
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct NonPersistentTopicStatsImpl {
15 #[serde(rename = "abortedTxnCount", skip_serializing_if = "Option::is_none")]
16 pub aborted_txn_count: Option<i64>,
17 #[serde(rename = "averageMsgSize", skip_serializing_if = "Option::is_none")]
18 pub average_msg_size: Option<f64>,
19 #[serde(rename = "backlogQuotaLimitSize", skip_serializing_if = "Option::is_none")]
20 pub backlog_quota_limit_size: Option<i64>,
21 #[serde(rename = "backlogQuotaLimitTime", skip_serializing_if = "Option::is_none")]
22 pub backlog_quota_limit_time: Option<i64>,
23 #[serde(rename = "backlogSize", skip_serializing_if = "Option::is_none")]
24 pub backlog_size: Option<i64>,
25 #[serde(rename = "bytesInCounter", skip_serializing_if = "Option::is_none")]
26 pub bytes_in_counter: Option<i64>,
27 #[serde(rename = "bytesOutCounter", skip_serializing_if = "Option::is_none")]
28 pub bytes_out_counter: Option<i64>,
29 #[serde(rename = "committedTxnCount", skip_serializing_if = "Option::is_none")]
30 pub committed_txn_count: Option<i64>,
31 #[serde(rename = "compaction", skip_serializing_if = "Option::is_none")]
32 pub compaction: Option<Box<models::CompactionStatsImpl>>,
33 #[serde(rename = "deduplicationStatus", skip_serializing_if = "Option::is_none")]
34 pub deduplication_status: Option<String>,
35 #[serde(rename = "delayedMessageIndexSizeInBytes", skip_serializing_if = "Option::is_none")]
36 pub delayed_message_index_size_in_bytes: Option<i64>,
37 #[serde(rename = "earliestMsgPublishTimeInBacklogs", skip_serializing_if = "Option::is_none")]
38 pub earliest_msg_publish_time_in_backlogs: Option<i64>,
39 #[serde(rename = "lastOffloadFailureTimeStamp", skip_serializing_if = "Option::is_none")]
40 pub last_offload_failure_time_stamp: Option<i64>,
41 #[serde(rename = "lastOffloadLedgerId", skip_serializing_if = "Option::is_none")]
42 pub last_offload_ledger_id: Option<i64>,
43 #[serde(rename = "lastOffloadSuccessTimeStamp", skip_serializing_if = "Option::is_none")]
44 pub last_offload_success_time_stamp: Option<i64>,
45 #[serde(rename = "msgChunkPublished", skip_serializing_if = "Option::is_none")]
46 pub msg_chunk_published: Option<bool>,
47 #[serde(rename = "msgDropRate", skip_serializing_if = "Option::is_none")]
48 pub msg_drop_rate: Option<f64>,
49 #[serde(rename = "msgInCounter", skip_serializing_if = "Option::is_none")]
50 pub msg_in_counter: Option<i64>,
51 #[serde(rename = "msgOutCounter", skip_serializing_if = "Option::is_none")]
52 pub msg_out_counter: Option<i64>,
53 #[serde(rename = "msgRateIn", skip_serializing_if = "Option::is_none")]
54 pub msg_rate_in: Option<f64>,
55 #[serde(rename = "msgRateOut", skip_serializing_if = "Option::is_none")]
56 pub msg_rate_out: Option<f64>,
57 #[serde(rename = "msgThroughputIn", skip_serializing_if = "Option::is_none")]
58 pub msg_throughput_in: Option<f64>,
59 #[serde(rename = "msgThroughputOut", skip_serializing_if = "Option::is_none")]
60 pub msg_throughput_out: Option<f64>,
61 #[serde(rename = "nonContiguousDeletedMessagesRanges", skip_serializing_if = "Option::is_none")]
62 pub non_contiguous_deleted_messages_ranges: Option<i32>,
63 #[serde(rename = "nonContiguousDeletedMessagesRangesSerializedSize", skip_serializing_if = "Option::is_none")]
64 pub non_contiguous_deleted_messages_ranges_serialized_size: Option<i32>,
65 #[serde(rename = "offloadedStorageSize", skip_serializing_if = "Option::is_none")]
66 pub offloaded_storage_size: Option<i64>,
67 #[serde(rename = "oldestBacklogMessageAgeSeconds", skip_serializing_if = "Option::is_none")]
68 pub oldest_backlog_message_age_seconds: Option<i64>,
69 #[serde(rename = "oldestBacklogMessageSubscriptionName", skip_serializing_if = "Option::is_none")]
70 pub oldest_backlog_message_subscription_name: Option<String>,
71 #[serde(rename = "ongoingTxnCount", skip_serializing_if = "Option::is_none")]
72 pub ongoing_txn_count: Option<i64>,
73 #[serde(rename = "ownerBroker", skip_serializing_if = "Option::is_none")]
74 pub owner_broker: Option<String>,
75 #[serde(rename = "publishRateLimitedTimes", skip_serializing_if = "Option::is_none")]
76 pub publish_rate_limited_times: Option<i64>,
77 #[serde(rename = "publishers", skip_serializing_if = "Option::is_none")]
78 pub publishers: Option<Vec<models::NonPersistentPublisherStats>>,
79 #[serde(rename = "replication", skip_serializing_if = "Option::is_none")]
80 pub replication: Option<std::collections::HashMap<String, models::NonPersistentReplicatorStats>>,
81 #[serde(rename = "storageSize", skip_serializing_if = "Option::is_none")]
82 pub storage_size: Option<i64>,
83 #[serde(rename = "subscriptions", skip_serializing_if = "Option::is_none")]
84 pub subscriptions: Option<std::collections::HashMap<String, models::NonPersistentSubscriptionStats>>,
85 #[serde(rename = "topicEpoch", skip_serializing_if = "Option::is_none")]
86 pub topic_epoch: Option<i64>,
87 #[serde(rename = "waitingPublishers", skip_serializing_if = "Option::is_none")]
88 pub waiting_publishers: Option<i32>,
89}
90
91impl NonPersistentTopicStatsImpl {
92 pub fn new() -> NonPersistentTopicStatsImpl {
93 NonPersistentTopicStatsImpl {
94 aborted_txn_count: None,
95 average_msg_size: None,
96 backlog_quota_limit_size: None,
97 backlog_quota_limit_time: None,
98 backlog_size: None,
99 bytes_in_counter: None,
100 bytes_out_counter: None,
101 committed_txn_count: None,
102 compaction: None,
103 deduplication_status: None,
104 delayed_message_index_size_in_bytes: None,
105 earliest_msg_publish_time_in_backlogs: None,
106 last_offload_failure_time_stamp: None,
107 last_offload_ledger_id: None,
108 last_offload_success_time_stamp: None,
109 msg_chunk_published: None,
110 msg_drop_rate: None,
111 msg_in_counter: None,
112 msg_out_counter: None,
113 msg_rate_in: None,
114 msg_rate_out: None,
115 msg_throughput_in: None,
116 msg_throughput_out: None,
117 non_contiguous_deleted_messages_ranges: None,
118 non_contiguous_deleted_messages_ranges_serialized_size: None,
119 offloaded_storage_size: None,
120 oldest_backlog_message_age_seconds: None,
121 oldest_backlog_message_subscription_name: None,
122 ongoing_txn_count: None,
123 owner_broker: None,
124 publish_rate_limited_times: None,
125 publishers: None,
126 replication: None,
127 storage_size: None,
128 subscriptions: None,
129 topic_epoch: None,
130 waiting_publishers: None,
131 }
132 }
133}
134