1#[derive(serde::Serialize, serde::Deserialize)]
4#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
5pub struct SupportedCodecs {
6 #[prost(int32, repeated, packed = "false", tag = "1")]
9 pub codecs: ::prost::alloc::vec::Vec<i32>,
10}
11#[derive(serde::Serialize, serde::Deserialize)]
14#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
15pub struct OffsetsRange {
16 #[prost(int64, tag = "1")]
17 pub start: i64,
18 #[prost(int64, tag = "2")]
19 pub end: i64,
20}
21#[derive(serde::Serialize, serde::Deserialize)]
24#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
25pub struct UpdateTokenRequest {
26 #[prost(string, tag = "1")]
27 pub token: ::prost::alloc::string::String,
28}
29#[derive(serde::Serialize, serde::Deserialize)]
30#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
31pub struct UpdateTokenResponse {}
32#[derive(serde::Serialize, serde::Deserialize)]
33#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
34pub struct PartitionWithGeneration {
35 #[prost(int64, tag = "1")]
37 pub partition_id: i64,
38 #[prost(int64, tag = "2")]
40 pub generation: i64,
41}
42#[derive(serde::Serialize, serde::Deserialize)]
43#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
44pub struct MetadataItem {
45 #[prost(string, tag = "1")]
46 pub key: ::prost::alloc::string::String,
47 #[prost(bytes = "vec", tag = "2")]
48 pub value: ::prost::alloc::vec::Vec<u8>,
49}
50#[derive(serde::Serialize, serde::Deserialize)]
52#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
53pub struct StreamWriteMessage {}
54pub mod stream_write_message {
56 #[derive(serde::Serialize, serde::Deserialize)]
61 #[derive(Clone, PartialEq, ::prost::Message)]
62 pub struct FromClient {
63 #[prost(oneof = "from_client::ClientMessage", tags = "1, 2, 3")]
64 pub client_message: ::core::option::Option<from_client::ClientMessage>,
65 }
66 pub mod from_client {
68 #[derive(serde::Serialize, serde::Deserialize)]
69 #[derive(Clone, PartialEq, ::prost::Oneof)]
70 pub enum ClientMessage {
71 #[prost(message, tag = "1")]
72 InitRequest(super::InitRequest),
73 #[prost(message, tag = "2")]
74 WriteRequest(super::WriteRequest),
75 #[prost(message, tag = "3")]
76 UpdateTokenRequest(super::super::UpdateTokenRequest),
77 }
78 }
79 #[derive(serde::Serialize, serde::Deserialize)]
84 #[derive(Clone, PartialEq, ::prost::Message)]
85 pub struct FromServer {
86 #[prost(enumeration = "super::super::status_ids::StatusCode", tag = "1")]
88 pub status: i32,
89 #[prost(message, repeated, tag = "2")]
91 pub issues: ::prost::alloc::vec::Vec<super::super::issue::IssueMessage>,
92 #[prost(oneof = "from_server::ServerMessage", tags = "3, 4, 5")]
93 pub server_message: ::core::option::Option<from_server::ServerMessage>,
94 }
95 pub mod from_server {
97 #[derive(serde::Serialize, serde::Deserialize)]
98 #[derive(Clone, PartialEq, ::prost::Oneof)]
99 pub enum ServerMessage {
100 #[prost(message, tag = "3")]
101 InitResponse(super::InitResponse),
102 #[prost(message, tag = "4")]
103 WriteResponse(super::WriteResponse),
104 #[prost(message, tag = "5")]
105 UpdateTokenResponse(super::super::UpdateTokenResponse),
106 }
107 }
108 #[derive(serde::Serialize, serde::Deserialize)]
110 #[derive(Clone, PartialEq, ::prost::Message)]
111 pub struct InitRequest {
112 #[prost(string, tag = "1")]
114 pub path: ::prost::alloc::string::String,
115 #[prost(string, tag = "2")]
118 pub producer_id: ::prost::alloc::string::String,
119 #[prost(map = "string, string", tag = "3")]
122 pub write_session_meta: ::std::collections::HashMap<
123 ::prost::alloc::string::String,
124 ::prost::alloc::string::String,
125 >,
126 #[prost(bool, tag = "6")]
129 pub get_last_seq_no: bool,
130 #[prost(oneof = "init_request::Partitioning", tags = "4, 5, 7")]
133 pub partitioning: ::core::option::Option<init_request::Partitioning>,
134 }
135 pub mod init_request {
137 #[derive(serde::Serialize, serde::Deserialize)]
140 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
141 pub enum Partitioning {
142 #[prost(string, tag = "4")]
144 MessageGroupId(::prost::alloc::string::String),
145 #[prost(int64, tag = "5")]
147 PartitionId(i64),
148 #[prost(message, tag = "7")]
150 PartitionWithGeneration(super::super::PartitionWithGeneration),
151 }
152 }
153 #[derive(serde::Serialize, serde::Deserialize)]
155 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
156 pub struct InitResponse {
157 #[prost(int64, tag = "1")]
160 pub last_seq_no: i64,
161 #[prost(string, tag = "2")]
163 pub session_id: ::prost::alloc::string::String,
164 #[prost(int64, tag = "3")]
166 pub partition_id: i64,
167 #[prost(message, optional, tag = "4")]
170 pub supported_codecs: ::core::option::Option<super::SupportedCodecs>,
171 }
172 #[derive(serde::Serialize, serde::Deserialize)]
174 #[derive(Clone, PartialEq, ::prost::Message)]
175 pub struct WriteRequest {
176 #[prost(message, repeated, tag = "1")]
177 pub messages: ::prost::alloc::vec::Vec<write_request::MessageData>,
178 #[prost(int32, tag = "2")]
181 pub codec: i32,
182 #[prost(message, optional, tag = "3")]
183 pub tx: ::core::option::Option<super::TransactionIdentity>,
184 }
185 pub mod write_request {
187 #[derive(serde::Serialize, serde::Deserialize)]
188 #[derive(Clone, PartialEq, ::prost::Message)]
189 pub struct MessageData {
190 #[prost(int64, tag = "1")]
193 pub seq_no: i64,
194 #[prost(message, optional, tag = "2")]
196 pub created_at: ::core::option::Option<
197 super::super::super::super::google::protobuf::Timestamp,
198 >,
199 #[prost(bytes = "vec", tag = "3")]
201 pub data: ::prost::alloc::vec::Vec<u8>,
202 #[prost(int64, tag = "4")]
204 pub uncompressed_size: i64,
205 #[prost(message, repeated, tag = "7")]
207 pub metadata_items: ::prost::alloc::vec::Vec<super::super::MetadataItem>,
208 #[prost(oneof = "message_data::Partitioning", tags = "5, 6, 8")]
210 pub partitioning: ::core::option::Option<message_data::Partitioning>,
211 }
212 pub mod message_data {
214 #[derive(serde::Serialize, serde::Deserialize)]
216 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Oneof)]
217 pub enum Partitioning {
218 #[prost(string, tag = "5")]
220 MessageGroupId(::prost::alloc::string::String),
221 #[prost(int64, tag = "6")]
223 PartitionId(i64),
224 #[prost(message, tag = "8")]
226 PartitionWithGeneration(super::super::super::PartitionWithGeneration),
227 }
228 }
229 }
230 #[derive(serde::Serialize, serde::Deserialize)]
233 #[derive(Clone, PartialEq, ::prost::Message)]
234 pub struct WriteResponse {
235 #[prost(message, repeated, tag = "1")]
237 pub acks: ::prost::alloc::vec::Vec<write_response::WriteAck>,
238 #[prost(int64, tag = "2")]
242 pub partition_id: i64,
243 #[prost(message, optional, tag = "3")]
245 pub write_statistics: ::core::option::Option<write_response::WriteStatistics>,
246 }
247 pub mod write_response {
249 #[derive(serde::Serialize, serde::Deserialize)]
251 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
252 pub struct WriteAck {
253 #[prost(int64, tag = "1")]
255 pub seq_no: i64,
256 #[prost(oneof = "write_ack::MessageWriteStatus", tags = "2, 3, 4")]
258 pub message_write_status: ::core::option::Option<
259 write_ack::MessageWriteStatus,
260 >,
261 }
262 pub mod write_ack {
264 #[derive(serde::Serialize, serde::Deserialize)]
265 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
266 pub struct Written {
267 #[prost(int64, tag = "1")]
269 pub offset: i64,
270 }
271 #[derive(serde::Serialize, serde::Deserialize)]
272 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
273 pub struct Skipped {
274 #[prost(enumeration = "skipped::Reason", tag = "1")]
275 pub reason: i32,
276 }
277 pub mod skipped {
279 #[derive(serde::Serialize, serde::Deserialize)]
280 #[derive(
281 Clone,
282 Copy,
283 Debug,
284 PartialEq,
285 Eq,
286 Hash,
287 PartialOrd,
288 Ord,
289 ::prost::Enumeration
290 )]
291 #[repr(i32)]
292 pub enum Reason {
293 Unspecified = 0,
294 AlreadyWritten = 1,
295 }
296 impl Reason {
297 pub fn as_str_name(&self) -> &'static str {
301 match self {
302 Self::Unspecified => "REASON_UNSPECIFIED",
303 Self::AlreadyWritten => "REASON_ALREADY_WRITTEN",
304 }
305 }
306 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
308 match value {
309 "REASON_UNSPECIFIED" => Some(Self::Unspecified),
310 "REASON_ALREADY_WRITTEN" => Some(Self::AlreadyWritten),
311 _ => None,
312 }
313 }
314 }
315 }
316 #[derive(serde::Serialize, serde::Deserialize)]
317 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
318 pub struct WrittenInTx {}
319 #[derive(serde::Serialize, serde::Deserialize)]
321 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
322 pub enum MessageWriteStatus {
323 #[prost(message, tag = "2")]
324 Written(Written),
325 #[prost(message, tag = "3")]
326 Skipped(Skipped),
327 #[prost(message, tag = "4")]
328 WrittenInTx(WrittenInTx),
329 }
330 }
331 #[derive(serde::Serialize, serde::Deserialize)]
333 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
334 pub struct WriteStatistics {
335 #[prost(message, optional, tag = "1")]
337 pub persisting_time: ::core::option::Option<
338 super::super::super::super::google::protobuf::Duration,
339 >,
340 #[prost(message, optional, tag = "2")]
342 pub min_queue_wait_time: ::core::option::Option<
343 super::super::super::super::google::protobuf::Duration,
344 >,
345 #[prost(message, optional, tag = "3")]
347 pub max_queue_wait_time: ::core::option::Option<
348 super::super::super::super::google::protobuf::Duration,
349 >,
350 #[prost(message, optional, tag = "4")]
352 pub partition_quota_wait_time: ::core::option::Option<
353 super::super::super::super::google::protobuf::Duration,
354 >,
355 #[prost(message, optional, tag = "5")]
357 pub topic_quota_wait_time: ::core::option::Option<
358 super::super::super::super::google::protobuf::Duration,
359 >,
360 }
361 }
362}
363#[derive(serde::Serialize, serde::Deserialize)]
365#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
366pub struct StreamReadMessage {}
367pub mod stream_read_message {
369 #[derive(serde::Serialize, serde::Deserialize)]
372 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
373 pub struct PartitionSession {
374 #[prost(int64, tag = "1")]
376 pub partition_session_id: i64,
377 #[prost(string, tag = "2")]
379 pub path: ::prost::alloc::string::String,
380 #[prost(int64, tag = "3")]
382 pub partition_id: i64,
383 }
384 #[derive(serde::Serialize, serde::Deserialize)]
398 #[derive(Clone, PartialEq, ::prost::Message)]
399 pub struct FromClient {
400 #[prost(oneof = "from_client::ClientMessage", tags = "1, 2, 3, 4, 5, 8, 6, 7")]
401 pub client_message: ::core::option::Option<from_client::ClientMessage>,
402 }
403 pub mod from_client {
405 #[derive(serde::Serialize, serde::Deserialize)]
406 #[derive(Clone, PartialEq, ::prost::Oneof)]
407 pub enum ClientMessage {
408 #[prost(message, tag = "1")]
410 InitRequest(super::InitRequest),
411 #[prost(message, tag = "2")]
412 ReadRequest(super::ReadRequest),
413 #[prost(message, tag = "3")]
414 CommitOffsetRequest(super::CommitOffsetRequest),
415 #[prost(message, tag = "4")]
416 PartitionSessionStatusRequest(super::PartitionSessionStatusRequest),
417 #[prost(message, tag = "5")]
418 UpdateTokenRequest(super::super::UpdateTokenRequest),
419 #[prost(message, tag = "8")]
420 DirectReadAck(super::DirectReadAck),
421 #[prost(message, tag = "6")]
423 StartPartitionSessionResponse(super::StartPartitionSessionResponse),
424 #[prost(message, tag = "7")]
425 StopPartitionSessionResponse(super::StopPartitionSessionResponse),
426 }
427 }
428 #[derive(serde::Serialize, serde::Deserialize)]
440 #[derive(Clone, PartialEq, ::prost::Message)]
441 pub struct FromServer {
442 #[prost(enumeration = "super::super::status_ids::StatusCode", tag = "1")]
444 pub status: i32,
445 #[prost(message, repeated, tag = "2")]
447 pub issues: ::prost::alloc::vec::Vec<super::super::issue::IssueMessage>,
448 #[prost(
449 oneof = "from_server::ServerMessage",
450 tags = "3, 4, 5, 6, 7, 8, 9, 10, 11"
451 )]
452 pub server_message: ::core::option::Option<from_server::ServerMessage>,
453 }
454 pub mod from_server {
456 #[derive(serde::Serialize, serde::Deserialize)]
457 #[derive(Clone, PartialEq, ::prost::Oneof)]
458 pub enum ServerMessage {
459 #[prost(message, tag = "3")]
461 InitResponse(super::InitResponse),
462 #[prost(message, tag = "4")]
463 ReadResponse(super::ReadResponse),
464 #[prost(message, tag = "5")]
465 CommitOffsetResponse(super::CommitOffsetResponse),
466 #[prost(message, tag = "6")]
467 PartitionSessionStatusResponse(super::PartitionSessionStatusResponse),
468 #[prost(message, tag = "7")]
469 UpdateTokenResponse(super::super::UpdateTokenResponse),
470 #[prost(message, tag = "8")]
472 StartPartitionSessionRequest(super::StartPartitionSessionRequest),
473 #[prost(message, tag = "9")]
474 StopPartitionSessionRequest(super::StopPartitionSessionRequest),
475 #[prost(message, tag = "10")]
476 UpdatePartitionSession(super::UpdatePartitionSession),
477 #[prost(message, tag = "11")]
478 EndPartitionSession(super::EndPartitionSession),
479 }
480 }
481 #[derive(serde::Serialize, serde::Deserialize)]
483 #[derive(Clone, PartialEq, ::prost::Message)]
484 pub struct InitRequest {
485 #[prost(message, repeated, tag = "1")]
488 pub topics_read_settings: ::prost::alloc::vec::Vec<
489 init_request::TopicReadSettings,
490 >,
491 #[prost(string, tag = "2")]
493 pub consumer: ::prost::alloc::string::String,
494 #[prost(string, tag = "3")]
496 pub reader_name: ::prost::alloc::string::String,
497 #[prost(bool, tag = "4")]
499 pub direct_read: bool,
500 #[prost(bool, tag = "5")]
502 pub auto_partitioning_support: bool,
503 }
504 pub mod init_request {
506 #[derive(serde::Serialize, serde::Deserialize)]
507 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
508 pub struct TopicReadSettings {
509 #[prost(string, tag = "1")]
511 pub path: ::prost::alloc::string::String,
512 #[prost(int64, repeated, tag = "2")]
515 pub partition_ids: ::prost::alloc::vec::Vec<i64>,
516 #[prost(message, optional, tag = "3")]
519 pub max_lag: ::core::option::Option<
520 super::super::super::super::google::protobuf::Duration,
521 >,
522 #[prost(message, optional, tag = "4")]
525 pub read_from: ::core::option::Option<
526 super::super::super::super::google::protobuf::Timestamp,
527 >,
528 }
529 }
530 #[derive(serde::Serialize, serde::Deserialize)]
532 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
533 pub struct InitResponse {
534 #[prost(string, tag = "1")]
536 pub session_id: ::prost::alloc::string::String,
537 }
538 #[derive(serde::Serialize, serde::Deserialize)]
540 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
541 pub struct ReadRequest {
542 #[prost(int64, tag = "1")]
561 pub bytes_size: i64,
562 }
563 #[derive(serde::Serialize, serde::Deserialize)]
565 #[derive(Clone, PartialEq, ::prost::Message)]
566 pub struct ReadResponse {
567 #[prost(message, repeated, tag = "1")]
569 pub partition_data: ::prost::alloc::vec::Vec<read_response::PartitionData>,
570 #[prost(int64, tag = "2")]
573 pub bytes_size: i64,
574 }
575 pub mod read_response {
577 #[derive(serde::Serialize, serde::Deserialize)]
579 #[derive(Clone, PartialEq, ::prost::Message)]
580 pub struct MessageData {
581 #[prost(int64, tag = "1")]
584 pub offset: i64,
585 #[prost(int64, tag = "2")]
587 pub seq_no: i64,
588 #[prost(message, optional, tag = "3")]
590 pub created_at: ::core::option::Option<
591 super::super::super::super::google::protobuf::Timestamp,
592 >,
593 #[prost(bytes = "vec", tag = "5")]
595 pub data: ::prost::alloc::vec::Vec<u8>,
596 #[prost(int64, tag = "6")]
600 pub uncompressed_size: i64,
601 #[prost(string, tag = "7")]
603 pub message_group_id: ::prost::alloc::string::String,
604 #[prost(message, repeated, tag = "8")]
605 pub metadata_items: ::prost::alloc::vec::Vec<super::super::MetadataItem>,
606 }
607 #[derive(serde::Serialize, serde::Deserialize)]
609 #[derive(Clone, PartialEq, ::prost::Message)]
610 pub struct Batch {
611 #[prost(message, repeated, tag = "1")]
613 pub message_data: ::prost::alloc::vec::Vec<MessageData>,
614 #[prost(string, tag = "2")]
616 pub producer_id: ::prost::alloc::string::String,
617 #[prost(map = "string, string", tag = "3")]
619 pub write_session_meta: ::std::collections::HashMap<
620 ::prost::alloc::string::String,
621 ::prost::alloc::string::String,
622 >,
623 #[prost(int32, tag = "4")]
626 pub codec: i32,
627 #[prost(message, optional, tag = "5")]
629 pub written_at: ::core::option::Option<
630 super::super::super::super::google::protobuf::Timestamp,
631 >,
632 }
633 #[derive(serde::Serialize, serde::Deserialize)]
635 #[derive(Clone, PartialEq, ::prost::Message)]
636 pub struct PartitionData {
637 #[prost(int64, tag = "1")]
638 pub partition_session_id: i64,
639 #[prost(message, repeated, tag = "2")]
641 pub batches: ::prost::alloc::vec::Vec<Batch>,
642 }
643 }
644 #[derive(serde::Serialize, serde::Deserialize)]
646 #[derive(Clone, PartialEq, ::prost::Message)]
647 pub struct CommitOffsetRequest {
648 #[prost(message, repeated, tag = "1")]
650 pub commit_offsets: ::prost::alloc::vec::Vec<
651 commit_offset_request::PartitionCommitOffset,
652 >,
653 }
654 pub mod commit_offset_request {
656 #[derive(serde::Serialize, serde::Deserialize)]
658 #[derive(Clone, PartialEq, ::prost::Message)]
659 pub struct PartitionCommitOffset {
660 #[prost(int64, tag = "1")]
662 pub partition_session_id: i64,
663 #[prost(message, repeated, tag = "2")]
665 pub offsets: ::prost::alloc::vec::Vec<super::super::OffsetsRange>,
666 }
667 }
668 #[derive(serde::Serialize, serde::Deserialize)]
670 #[derive(Clone, PartialEq, ::prost::Message)]
671 pub struct CommitOffsetResponse {
672 #[prost(message, repeated, tag = "1")]
674 pub partitions_committed_offsets: ::prost::alloc::vec::Vec<
675 commit_offset_response::PartitionCommittedOffset,
676 >,
677 }
678 pub mod commit_offset_response {
680 #[derive(serde::Serialize, serde::Deserialize)]
682 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
683 pub struct PartitionCommittedOffset {
684 #[prost(int64, tag = "1")]
686 pub partition_session_id: i64,
687 #[prost(int64, tag = "2")]
689 pub committed_offset: i64,
690 }
691 }
692 #[derive(serde::Serialize, serde::Deserialize)]
693 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
694 pub struct PartitionSessionStatusRequest {
695 #[prost(int64, tag = "1")]
696 pub partition_session_id: i64,
697 }
698 #[derive(serde::Serialize, serde::Deserialize)]
700 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
701 pub struct PartitionSessionStatusResponse {
702 #[prost(int64, tag = "1")]
704 pub partition_session_id: i64,
705 #[prost(message, optional, tag = "2")]
707 pub partition_offsets: ::core::option::Option<super::OffsetsRange>,
708 #[prost(int64, tag = "3")]
710 pub committed_offset: i64,
711 #[prost(message, optional, tag = "4")]
713 pub write_time_high_watermark: ::core::option::Option<
714 super::super::super::google::protobuf::Timestamp,
715 >,
716 }
717 #[derive(serde::Serialize, serde::Deserialize)]
720 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
721 pub struct StartPartitionSessionRequest {
722 #[prost(message, optional, tag = "1")]
724 pub partition_session: ::core::option::Option<PartitionSession>,
725 #[prost(int64, tag = "2")]
727 pub committed_offset: i64,
728 #[prost(message, optional, tag = "3")]
730 pub partition_offsets: ::core::option::Option<super::OffsetsRange>,
731 #[prost(message, optional, tag = "4")]
733 pub partition_location: ::core::option::Option<super::PartitionLocation>,
734 }
735 #[derive(serde::Serialize, serde::Deserialize)]
737 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
738 pub struct StartPartitionSessionResponse {
739 #[prost(int64, tag = "1")]
741 pub partition_session_id: i64,
742 #[prost(int64, optional, tag = "2")]
750 pub read_offset: ::core::option::Option<i64>,
751 #[prost(int64, optional, tag = "3")]
754 pub commit_offset: ::core::option::Option<i64>,
755 }
756 #[derive(serde::Serialize, serde::Deserialize)]
758 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
759 pub struct StopPartitionSessionRequest {
760 #[prost(int64, tag = "1")]
762 pub partition_session_id: i64,
763 #[prost(bool, tag = "2")]
770 pub graceful: bool,
771 #[prost(int64, tag = "3")]
773 pub committed_offset: i64,
774 #[prost(int64, tag = "4")]
776 pub last_direct_read_id: i64,
777 }
778 #[derive(serde::Serialize, serde::Deserialize)]
782 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
783 pub struct StopPartitionSessionResponse {
784 #[prost(int64, tag = "1")]
786 pub partition_session_id: i64,
787 #[prost(bool, tag = "2")]
791 pub graceful: bool,
792 }
793 #[derive(serde::Serialize, serde::Deserialize)]
796 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
797 pub struct UpdatePartitionSession {
798 #[prost(int64, tag = "1")]
800 pub partition_session_id: i64,
801 #[prost(message, optional, tag = "2")]
803 pub partition_location: ::core::option::Option<super::PartitionLocation>,
804 }
805 #[derive(serde::Serialize, serde::Deserialize)]
808 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
809 pub struct DirectReadAck {
810 #[prost(int64, tag = "1")]
812 pub partition_session_id: i64,
813 #[prost(int64, tag = "2")]
815 pub direct_read_id: i64,
816 }
817 #[derive(serde::Serialize, serde::Deserialize)]
823 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
824 pub struct EndPartitionSession {
825 #[prost(int64, tag = "1")]
827 pub partition_session_id: i64,
828 #[prost(int64, repeated, tag = "2")]
830 pub adjacent_partition_ids: ::prost::alloc::vec::Vec<i64>,
831 #[prost(int64, repeated, tag = "3")]
833 pub child_partition_ids: ::prost::alloc::vec::Vec<i64>,
834 }
835}
836#[derive(serde::Serialize, serde::Deserialize)]
838#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
839pub struct StreamDirectReadMessage {}
840pub mod stream_direct_read_message {
842 #[derive(serde::Serialize, serde::Deserialize)]
848 #[derive(Clone, PartialEq, ::prost::Message)]
849 pub struct FromClient {
850 #[prost(oneof = "from_client::ClientMessage", tags = "1, 2, 3")]
851 pub client_message: ::core::option::Option<from_client::ClientMessage>,
852 }
853 pub mod from_client {
855 #[derive(serde::Serialize, serde::Deserialize)]
856 #[derive(Clone, PartialEq, ::prost::Oneof)]
857 pub enum ClientMessage {
858 #[prost(message, tag = "1")]
859 InitRequest(super::InitRequest),
860 #[prost(message, tag = "2")]
861 StartDirectReadPartitionSessionRequest(
862 super::StartDirectReadPartitionSessionRequest,
863 ),
864 #[prost(message, tag = "3")]
865 UpdateTokenRequest(super::super::UpdateTokenRequest),
866 }
867 }
868 #[derive(serde::Serialize, serde::Deserialize)]
875 #[derive(Clone, PartialEq, ::prost::Message)]
876 pub struct FromServer {
877 #[prost(enumeration = "super::super::status_ids::StatusCode", tag = "1")]
879 pub status: i32,
880 #[prost(message, repeated, tag = "2")]
882 pub issues: ::prost::alloc::vec::Vec<super::super::issue::IssueMessage>,
883 #[prost(oneof = "from_server::ServerMessage", tags = "6, 7, 3, 4, 5")]
884 pub server_message: ::core::option::Option<from_server::ServerMessage>,
885 }
886 pub mod from_server {
888 #[derive(serde::Serialize, serde::Deserialize)]
889 #[derive(Clone, PartialEq, ::prost::Oneof)]
890 pub enum ServerMessage {
891 #[prost(message, tag = "6")]
892 InitResponse(super::InitResponse),
893 #[prost(message, tag = "7")]
894 StartDirectReadPartitionSessionResponse(
895 super::StartDirectReadPartitionSessionResponse,
896 ),
897 #[prost(message, tag = "3")]
898 StopDirectReadPartitionSession(super::StopDirectReadPartitionSession),
899 #[prost(message, tag = "4")]
900 DirectReadResponse(super::DirectReadResponse),
901 #[prost(message, tag = "5")]
902 UpdateTokenResponse(super::super::UpdateTokenResponse),
903 }
904 }
905 #[derive(serde::Serialize, serde::Deserialize)]
908 #[derive(Clone, PartialEq, ::prost::Message)]
909 pub struct InitRequest {
910 #[prost(string, tag = "1")]
912 pub session_id: ::prost::alloc::string::String,
913 #[prost(message, repeated, tag = "2")]
915 pub topics_read_settings: ::prost::alloc::vec::Vec<
916 init_request::TopicReadSettings,
917 >,
918 #[prost(string, tag = "3")]
920 pub consumer: ::prost::alloc::string::String,
921 }
922 pub mod init_request {
924 #[derive(serde::Serialize, serde::Deserialize)]
925 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
926 pub struct TopicReadSettings {
927 #[prost(string, tag = "1")]
929 pub path: ::prost::alloc::string::String,
930 }
931 }
932 #[derive(serde::Serialize, serde::Deserialize)]
934 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
935 pub struct InitResponse {}
936 #[derive(serde::Serialize, serde::Deserialize)]
938 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
939 pub struct StartDirectReadPartitionSessionRequest {
940 #[prost(int64, tag = "1")]
942 pub partition_session_id: i64,
943 #[prost(int64, tag = "2")]
945 pub last_direct_read_id: i64,
946 #[prost(int64, tag = "3")]
948 pub generation: i64,
949 }
950 #[derive(serde::Serialize, serde::Deserialize)]
952 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
953 pub struct StartDirectReadPartitionSessionResponse {
954 #[prost(int64, tag = "1")]
956 pub partition_session_id: i64,
957 #[prost(int64, tag = "2")]
959 pub generation: i64,
960 }
961 #[derive(serde::Serialize, serde::Deserialize)]
964 #[derive(Clone, PartialEq, ::prost::Message)]
965 pub struct StopDirectReadPartitionSession {
966 #[prost(enumeration = "super::super::status_ids::StatusCode", tag = "1")]
968 pub status: i32,
969 #[prost(message, repeated, tag = "2")]
971 pub issues: ::prost::alloc::vec::Vec<super::super::issue::IssueMessage>,
972 #[prost(int64, tag = "3")]
974 pub partition_session_id: i64,
975 #[prost(int64, tag = "4")]
977 pub generation: i64,
978 }
979 #[derive(serde::Serialize, serde::Deserialize)]
982 #[derive(Clone, PartialEq, ::prost::Message)]
983 pub struct DirectReadResponse {
984 #[prost(int64, tag = "1")]
986 pub partition_session_id: i64,
987 #[prost(int64, tag = "2")]
989 pub direct_read_id: i64,
990 #[prost(message, optional, tag = "3")]
992 pub partition_data: ::core::option::Option<
993 super::stream_read_message::read_response::PartitionData,
994 >,
995 #[prost(int64, tag = "4")]
998 pub bytes_size: i64,
999 }
1000}
1001#[derive(serde::Serialize, serde::Deserialize)]
1002#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1003pub struct TransactionIdentity {
1004 #[prost(string, tag = "1")]
1006 pub id: ::prost::alloc::string::String,
1007 #[prost(string, tag = "2")]
1009 pub session: ::prost::alloc::string::String,
1010}
1011#[derive(serde::Serialize, serde::Deserialize)]
1013#[derive(Clone, PartialEq, ::prost::Message)]
1014pub struct UpdateOffsetsInTransactionRequest {
1015 #[prost(message, optional, tag = "1")]
1016 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1017 #[prost(message, optional, tag = "2")]
1018 pub tx: ::core::option::Option<TransactionIdentity>,
1019 #[prost(message, repeated, tag = "3")]
1021 pub topics: ::prost::alloc::vec::Vec<
1022 update_offsets_in_transaction_request::TopicOffsets,
1023 >,
1024 #[prost(string, tag = "4")]
1025 pub consumer: ::prost::alloc::string::String,
1026}
1027pub mod update_offsets_in_transaction_request {
1029 #[derive(serde::Serialize, serde::Deserialize)]
1030 #[derive(Clone, PartialEq, ::prost::Message)]
1031 pub struct TopicOffsets {
1032 #[prost(string, tag = "1")]
1034 pub path: ::prost::alloc::string::String,
1035 #[prost(message, repeated, tag = "2")]
1037 pub partitions: ::prost::alloc::vec::Vec<topic_offsets::PartitionOffsets>,
1038 }
1039 pub mod topic_offsets {
1041 #[derive(serde::Serialize, serde::Deserialize)]
1042 #[derive(Clone, PartialEq, ::prost::Message)]
1043 pub struct PartitionOffsets {
1044 #[prost(int64, tag = "1")]
1046 pub partition_id: i64,
1047 #[prost(message, repeated, tag = "2")]
1049 pub partition_offsets: ::prost::alloc::vec::Vec<super::super::OffsetsRange>,
1050 }
1051 }
1052}
1053#[derive(serde::Serialize, serde::Deserialize)]
1055#[derive(Clone, PartialEq, ::prost::Message)]
1056pub struct UpdateOffsetsInTransactionResponse {
1057 #[prost(message, optional, tag = "1")]
1059 pub operation: ::core::option::Option<super::operations::Operation>,
1060}
1061#[derive(serde::Serialize, serde::Deserialize)]
1063#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1064pub struct UpdateOffsetsInTransactionResult {}
1065#[derive(serde::Serialize, serde::Deserialize)]
1067#[derive(Clone, PartialEq, ::prost::Message)]
1068pub struct CommitOffsetRequest {
1069 #[prost(message, optional, tag = "1")]
1070 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1071 #[prost(string, tag = "2")]
1073 pub path: ::prost::alloc::string::String,
1074 #[prost(int64, tag = "3")]
1076 pub partition_id: i64,
1077 #[prost(string, tag = "4")]
1079 pub consumer: ::prost::alloc::string::String,
1080 #[prost(int64, tag = "5")]
1082 pub offset: i64,
1083 #[prost(string, tag = "6")]
1085 pub read_session_id: ::prost::alloc::string::String,
1086}
1087#[derive(serde::Serialize, serde::Deserialize)]
1089#[derive(Clone, PartialEq, ::prost::Message)]
1090pub struct CommitOffsetResponse {
1091 #[prost(message, optional, tag = "1")]
1093 pub operation: ::core::option::Option<super::operations::Operation>,
1094}
1095#[derive(serde::Serialize, serde::Deserialize)]
1097#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1098pub struct CommitOffsetResult {}
1099#[derive(serde::Serialize, serde::Deserialize)]
1101#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1102pub struct MultipleWindowsStat {
1103 #[prost(int64, tag = "1")]
1104 pub per_minute: i64,
1105 #[prost(int64, tag = "2")]
1106 pub per_hour: i64,
1107 #[prost(int64, tag = "3")]
1108 pub per_day: i64,
1109}
1110#[derive(serde::Serialize, serde::Deserialize)]
1112#[derive(Clone, PartialEq, ::prost::Message)]
1113pub struct Consumer {
1114 #[prost(string, tag = "1")]
1116 pub name: ::prost::alloc::string::String,
1117 #[prost(bool, tag = "2")]
1121 pub important: bool,
1122 #[prost(message, optional, tag = "3")]
1124 pub read_from: ::core::option::Option<super::super::google::protobuf::Timestamp>,
1125 #[prost(message, optional, tag = "5")]
1129 pub supported_codecs: ::core::option::Option<SupportedCodecs>,
1130 #[prost(map = "string, string", tag = "6")]
1132 pub attributes: ::std::collections::HashMap<
1133 ::prost::alloc::string::String,
1134 ::prost::alloc::string::String,
1135 >,
1136 #[prost(message, optional, tag = "7")]
1138 pub consumer_stats: ::core::option::Option<consumer::ConsumerStats>,
1139}
1140pub mod consumer {
1142 #[derive(serde::Serialize, serde::Deserialize)]
1143 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1144 pub struct ConsumerStats {
1145 #[prost(message, optional, tag = "1")]
1147 pub min_partitions_last_read_time: ::core::option::Option<
1148 super::super::super::google::protobuf::Timestamp,
1149 >,
1150 #[prost(message, optional, tag = "2")]
1152 pub max_read_time_lag: ::core::option::Option<
1153 super::super::super::google::protobuf::Duration,
1154 >,
1155 #[prost(message, optional, tag = "3")]
1157 pub max_write_time_lag: ::core::option::Option<
1158 super::super::super::google::protobuf::Duration,
1159 >,
1160 #[prost(message, optional, tag = "5")]
1162 pub max_committed_time_lag: ::core::option::Option<
1163 super::super::super::google::protobuf::Duration,
1164 >,
1165 #[prost(message, optional, tag = "4")]
1167 pub bytes_read: ::core::option::Option<super::MultipleWindowsStat>,
1168 }
1169}
1170#[derive(serde::Serialize, serde::Deserialize)]
1172#[derive(Clone, PartialEq, ::prost::Message)]
1173pub struct AlterConsumer {
1174 #[prost(string, tag = "1")]
1176 pub name: ::prost::alloc::string::String,
1177 #[prost(bool, optional, tag = "2")]
1181 pub set_important: ::core::option::Option<bool>,
1182 #[prost(message, optional, tag = "3")]
1184 pub set_read_from: ::core::option::Option<super::super::google::protobuf::Timestamp>,
1185 #[prost(message, optional, tag = "5")]
1189 pub set_supported_codecs: ::core::option::Option<SupportedCodecs>,
1190 #[prost(map = "string, string", tag = "6")]
1193 pub alter_attributes: ::std::collections::HashMap<
1194 ::prost::alloc::string::String,
1195 ::prost::alloc::string::String,
1196 >,
1197}
1198#[derive(serde::Serialize, serde::Deserialize)]
1200#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1201pub struct PartitioningSettings {
1202 #[prost(int64, tag = "1")]
1205 pub min_active_partitions: i64,
1206 #[prost(int64, tag = "3")]
1209 pub max_active_partitions: i64,
1210 #[deprecated]
1214 #[prost(int64, tag = "2")]
1215 pub partition_count_limit: i64,
1216 #[prost(message, optional, tag = "4")]
1218 pub auto_partitioning_settings: ::core::option::Option<AutoPartitioningSettings>,
1219}
1220#[derive(serde::Serialize, serde::Deserialize)]
1221#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1222pub struct AutoPartitioningSettings {
1223 #[prost(enumeration = "AutoPartitioningStrategy", tag = "1")]
1225 pub strategy: i32,
1226 #[prost(message, optional, tag = "2")]
1228 pub partition_write_speed: ::core::option::Option<
1229 AutoPartitioningWriteSpeedStrategy,
1230 >,
1231}
1232#[derive(serde::Serialize, serde::Deserialize)]
1235#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1236pub struct AutoPartitioningWriteSpeedStrategy {
1237 #[prost(message, optional, tag = "1")]
1239 pub stabilization_window: ::core::option::Option<
1240 super::super::google::protobuf::Duration,
1241 >,
1242 #[prost(int32, tag = "2")]
1244 pub up_utilization_percent: i32,
1245 #[prost(int32, tag = "3")]
1247 pub down_utilization_percent: i32,
1248}
1249#[derive(serde::Serialize, serde::Deserialize)]
1251#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1252pub struct AlterPartitioningSettings {
1253 #[prost(int64, optional, tag = "1")]
1256 pub set_min_active_partitions: ::core::option::Option<i64>,
1257 #[prost(int64, optional, tag = "3")]
1260 pub set_max_active_partitions: ::core::option::Option<i64>,
1261 #[deprecated]
1265 #[prost(int64, optional, tag = "2")]
1266 pub set_partition_count_limit: ::core::option::Option<i64>,
1267 #[prost(message, optional, tag = "4")]
1269 pub alter_auto_partitioning_settings: ::core::option::Option<
1270 AlterAutoPartitioningSettings,
1271 >,
1272}
1273#[derive(serde::Serialize, serde::Deserialize)]
1274#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1275pub struct AlterAutoPartitioningSettings {
1276 #[prost(enumeration = "AutoPartitioningStrategy", optional, tag = "1")]
1278 pub set_strategy: ::core::option::Option<i32>,
1279 #[prost(message, optional, tag = "2")]
1281 pub set_partition_write_speed: ::core::option::Option<
1282 AlterAutoPartitioningWriteSpeedStrategy,
1283 >,
1284}
1285#[derive(serde::Serialize, serde::Deserialize)]
1286#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1287pub struct AlterAutoPartitioningWriteSpeedStrategy {
1288 #[prost(message, optional, tag = "1")]
1292 pub set_stabilization_window: ::core::option::Option<
1293 super::super::google::protobuf::Duration,
1294 >,
1295 #[prost(int32, optional, tag = "2")]
1299 pub set_up_utilization_percent: ::core::option::Option<i32>,
1300 #[prost(int32, optional, tag = "3")]
1304 pub set_down_utilization_percent: ::core::option::Option<i32>,
1305}
1306#[derive(serde::Serialize, serde::Deserialize)]
1308#[derive(Clone, PartialEq, ::prost::Message)]
1309pub struct CreateTopicRequest {
1310 #[prost(message, optional, tag = "1")]
1311 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1312 #[prost(string, tag = "2")]
1314 pub path: ::prost::alloc::string::String,
1315 #[prost(message, optional, tag = "3")]
1317 pub partitioning_settings: ::core::option::Option<PartitioningSettings>,
1318 #[prost(message, optional, tag = "4")]
1323 pub retention_period: ::core::option::Option<
1324 super::super::google::protobuf::Duration,
1325 >,
1326 #[prost(int64, tag = "5")]
1329 pub retention_storage_mb: i64,
1330 #[prost(message, optional, tag = "7")]
1334 pub supported_codecs: ::core::option::Option<SupportedCodecs>,
1335 #[prost(int64, tag = "8")]
1338 pub partition_write_speed_bytes_per_second: i64,
1339 #[prost(int64, tag = "9")]
1342 pub partition_write_burst_bytes: i64,
1343 #[prost(map = "string, string", tag = "10")]
1345 pub attributes: ::std::collections::HashMap<
1346 ::prost::alloc::string::String,
1347 ::prost::alloc::string::String,
1348 >,
1349 #[prost(message, repeated, tag = "11")]
1351 pub consumers: ::prost::alloc::vec::Vec<Consumer>,
1352 #[prost(enumeration = "MeteringMode", tag = "12")]
1354 pub metering_mode: i32,
1355}
1356#[derive(serde::Serialize, serde::Deserialize)]
1359#[derive(Clone, PartialEq, ::prost::Message)]
1360pub struct CreateTopicResponse {
1361 #[prost(message, optional, tag = "1")]
1363 pub operation: ::core::option::Option<super::operations::Operation>,
1364}
1365#[derive(serde::Serialize, serde::Deserialize)]
1367#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1368pub struct CreateTopicResult {}
1369#[derive(serde::Serialize, serde::Deserialize)]
1371#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1372pub struct PartitionLocation {
1373 #[prost(int32, tag = "1")]
1375 pub node_id: i32,
1376 #[prost(int64, tag = "2")]
1378 pub generation: i64,
1379}
1380#[derive(serde::Serialize, serde::Deserialize)]
1382#[derive(Clone, PartialEq, ::prost::Message)]
1383pub struct DescribeTopicRequest {
1384 #[prost(message, optional, tag = "1")]
1385 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1386 #[prost(string, tag = "2")]
1388 pub path: ::prost::alloc::string::String,
1389 #[prost(bool, tag = "3")]
1391 pub include_stats: bool,
1392 #[prost(bool, tag = "4")]
1394 pub include_location: bool,
1395}
1396#[derive(serde::Serialize, serde::Deserialize)]
1399#[derive(Clone, PartialEq, ::prost::Message)]
1400pub struct DescribeTopicResponse {
1401 #[prost(message, optional, tag = "1")]
1403 pub operation: ::core::option::Option<super::operations::Operation>,
1404}
1405#[derive(serde::Serialize, serde::Deserialize)]
1406#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1407pub struct PartitionKeyRange {
1408 #[prost(bytes = "vec", optional, tag = "1")]
1410 pub from_bound: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
1411 #[prost(bytes = "vec", optional, tag = "2")]
1413 pub to_bound: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
1414}
1415#[derive(serde::Serialize, serde::Deserialize)]
1417#[derive(Clone, PartialEq, ::prost::Message)]
1418pub struct DescribeTopicResult {
1419 #[prost(message, optional, tag = "1")]
1421 pub self_: ::core::option::Option<super::scheme::Entry>,
1422 #[prost(message, optional, tag = "2")]
1424 pub partitioning_settings: ::core::option::Option<PartitioningSettings>,
1425 #[prost(message, repeated, tag = "3")]
1427 pub partitions: ::prost::alloc::vec::Vec<describe_topic_result::PartitionInfo>,
1428 #[prost(message, optional, tag = "4")]
1432 pub retention_period: ::core::option::Option<
1433 super::super::google::protobuf::Duration,
1434 >,
1435 #[prost(int64, tag = "5")]
1438 pub retention_storage_mb: i64,
1439 #[prost(message, optional, tag = "7")]
1443 pub supported_codecs: ::core::option::Option<SupportedCodecs>,
1444 #[prost(int64, tag = "8")]
1447 pub partition_write_speed_bytes_per_second: i64,
1448 #[prost(int64, tag = "14")]
1449 pub partition_total_read_speed_bytes_per_second: i64,
1450 #[prost(int64, tag = "15")]
1451 pub partition_consumer_read_speed_bytes_per_second: i64,
1452 #[prost(int64, tag = "9")]
1455 pub partition_write_burst_bytes: i64,
1456 #[prost(map = "string, string", tag = "10")]
1458 pub attributes: ::std::collections::HashMap<
1459 ::prost::alloc::string::String,
1460 ::prost::alloc::string::String,
1461 >,
1462 #[prost(message, repeated, tag = "11")]
1464 pub consumers: ::prost::alloc::vec::Vec<Consumer>,
1465 #[prost(enumeration = "MeteringMode", tag = "12")]
1467 pub metering_mode: i32,
1468 #[prost(message, optional, tag = "13")]
1470 pub topic_stats: ::core::option::Option<describe_topic_result::TopicStats>,
1471}
1472pub mod describe_topic_result {
1474 #[derive(serde::Serialize, serde::Deserialize)]
1475 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1476 pub struct PartitionInfo {
1477 #[prost(int64, tag = "1")]
1479 pub partition_id: i64,
1480 #[prost(bool, tag = "2")]
1482 pub active: bool,
1483 #[prost(int64, repeated, tag = "3")]
1485 pub child_partition_ids: ::prost::alloc::vec::Vec<i64>,
1486 #[prost(int64, repeated, tag = "4")]
1488 pub parent_partition_ids: ::prost::alloc::vec::Vec<i64>,
1489 #[prost(message, optional, tag = "5")]
1491 pub partition_stats: ::core::option::Option<super::PartitionStats>,
1492 #[prost(message, optional, tag = "6")]
1494 pub partition_location: ::core::option::Option<super::PartitionLocation>,
1495 #[prost(message, optional, tag = "7")]
1496 pub key_range: ::core::option::Option<super::PartitionKeyRange>,
1497 }
1498 #[derive(serde::Serialize, serde::Deserialize)]
1499 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1500 pub struct TopicStats {
1501 #[prost(int64, tag = "1")]
1503 pub store_size_bytes: i64,
1504 #[prost(message, optional, tag = "2")]
1506 pub min_last_write_time: ::core::option::Option<
1507 super::super::super::google::protobuf::Timestamp,
1508 >,
1509 #[prost(message, optional, tag = "3")]
1511 pub max_write_time_lag: ::core::option::Option<
1512 super::super::super::google::protobuf::Duration,
1513 >,
1514 #[prost(message, optional, tag = "4")]
1516 pub bytes_written: ::core::option::Option<super::MultipleWindowsStat>,
1517 }
1518}
1519#[derive(serde::Serialize, serde::Deserialize)]
1521#[derive(Clone, PartialEq, ::prost::Message)]
1522pub struct DescribePartitionRequest {
1523 #[prost(message, optional, tag = "1")]
1524 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1525 #[prost(string, tag = "2")]
1527 pub path: ::prost::alloc::string::String,
1528 #[prost(int64, tag = "3")]
1530 pub partition_id: i64,
1531 #[prost(bool, tag = "4")]
1533 pub include_stats: bool,
1534 #[prost(bool, tag = "5")]
1536 pub include_location: bool,
1537}
1538#[derive(serde::Serialize, serde::Deserialize)]
1541#[derive(Clone, PartialEq, ::prost::Message)]
1542pub struct DescribePartitionResponse {
1543 #[prost(message, optional, tag = "1")]
1545 pub operation: ::core::option::Option<super::operations::Operation>,
1546}
1547#[derive(serde::Serialize, serde::Deserialize)]
1549#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1550pub struct DescribePartitionResult {
1551 #[prost(message, optional, tag = "1")]
1553 pub partition: ::core::option::Option<describe_topic_result::PartitionInfo>,
1554}
1555#[derive(serde::Serialize, serde::Deserialize)]
1557#[derive(Clone, PartialEq, ::prost::Message)]
1558pub struct DescribeConsumerRequest {
1559 #[prost(message, optional, tag = "1")]
1560 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1561 #[prost(string, tag = "2")]
1563 pub path: ::prost::alloc::string::String,
1564 #[prost(string, tag = "3")]
1566 pub consumer: ::prost::alloc::string::String,
1567 #[prost(bool, tag = "4")]
1569 pub include_stats: bool,
1570 #[prost(bool, tag = "5")]
1572 pub include_location: bool,
1573}
1574#[derive(serde::Serialize, serde::Deserialize)]
1577#[derive(Clone, PartialEq, ::prost::Message)]
1578pub struct DescribeConsumerResponse {
1579 #[prost(message, optional, tag = "1")]
1581 pub operation: ::core::option::Option<super::operations::Operation>,
1582}
1583#[derive(serde::Serialize, serde::Deserialize)]
1585#[derive(Clone, PartialEq, ::prost::Message)]
1586pub struct DescribeConsumerResult {
1587 #[prost(message, optional, tag = "1")]
1589 pub self_: ::core::option::Option<super::scheme::Entry>,
1590 #[prost(message, optional, tag = "2")]
1591 pub consumer: ::core::option::Option<Consumer>,
1592 #[prost(message, repeated, tag = "3")]
1593 pub partitions: ::prost::alloc::vec::Vec<describe_consumer_result::PartitionInfo>,
1594}
1595pub mod describe_consumer_result {
1597 #[derive(serde::Serialize, serde::Deserialize)]
1598 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1599 pub struct PartitionInfo {
1600 #[prost(int64, tag = "1")]
1602 pub partition_id: i64,
1603 #[prost(bool, tag = "2")]
1605 pub active: bool,
1606 #[prost(int64, repeated, tag = "3")]
1608 pub child_partition_ids: ::prost::alloc::vec::Vec<i64>,
1609 #[prost(int64, repeated, tag = "4")]
1611 pub parent_partition_ids: ::prost::alloc::vec::Vec<i64>,
1612 #[prost(message, optional, tag = "5")]
1614 pub partition_stats: ::core::option::Option<super::PartitionStats>,
1615 #[prost(message, optional, tag = "6")]
1617 pub partition_consumer_stats: ::core::option::Option<PartitionConsumerStats>,
1618 #[prost(message, optional, tag = "7")]
1620 pub partition_location: ::core::option::Option<super::PartitionLocation>,
1621 }
1622 #[derive(serde::Serialize, serde::Deserialize)]
1623 #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
1624 pub struct PartitionConsumerStats {
1625 #[prost(int64, tag = "1")]
1627 pub last_read_offset: i64,
1628 #[prost(int64, tag = "2")]
1630 pub committed_offset: i64,
1631 #[prost(string, tag = "3")]
1633 pub read_session_id: ::prost::alloc::string::String,
1634 #[prost(message, optional, tag = "4")]
1636 pub partition_read_session_create_time: ::core::option::Option<
1637 super::super::super::google::protobuf::Timestamp,
1638 >,
1639 #[prost(message, optional, tag = "5")]
1641 pub last_read_time: ::core::option::Option<
1642 super::super::super::google::protobuf::Timestamp,
1643 >,
1644 #[prost(message, optional, tag = "6")]
1646 pub max_read_time_lag: ::core::option::Option<
1647 super::super::super::google::protobuf::Duration,
1648 >,
1649 #[prost(message, optional, tag = "7")]
1651 pub max_write_time_lag: ::core::option::Option<
1652 super::super::super::google::protobuf::Duration,
1653 >,
1654 #[prost(message, optional, tag = "13")]
1656 pub max_committed_time_lag: ::core::option::Option<
1657 super::super::super::google::protobuf::Duration,
1658 >,
1659 #[prost(message, optional, tag = "8")]
1661 pub bytes_read: ::core::option::Option<super::MultipleWindowsStat>,
1662 #[prost(string, tag = "11")]
1664 pub reader_name: ::prost::alloc::string::String,
1665 #[prost(int32, tag = "12")]
1667 pub connection_node_id: i32,
1668 }
1669}
1670#[derive(serde::Serialize, serde::Deserialize)]
1671#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1672pub struct PartitionStats {
1673 #[prost(message, optional, tag = "1")]
1675 pub partition_offsets: ::core::option::Option<OffsetsRange>,
1676 #[prost(int64, tag = "2")]
1678 pub store_size_bytes: i64,
1679 #[prost(message, optional, tag = "3")]
1681 pub last_write_time: ::core::option::Option<
1682 super::super::google::protobuf::Timestamp,
1683 >,
1684 #[prost(message, optional, tag = "4")]
1686 pub max_write_time_lag: ::core::option::Option<
1687 super::super::google::protobuf::Duration,
1688 >,
1689 #[prost(message, optional, tag = "5")]
1691 pub bytes_written: ::core::option::Option<MultipleWindowsStat>,
1692 #[deprecated]
1695 #[prost(int32, tag = "8")]
1696 pub partition_node_id: i32,
1697}
1698#[derive(serde::Serialize, serde::Deserialize)]
1700#[derive(Clone, PartialEq, ::prost::Message)]
1701pub struct AlterTopicRequest {
1702 #[prost(message, optional, tag = "1")]
1703 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1704 #[prost(string, tag = "2")]
1706 pub path: ::prost::alloc::string::String,
1707 #[prost(message, optional, tag = "3")]
1709 pub alter_partitioning_settings: ::core::option::Option<AlterPartitioningSettings>,
1710 #[prost(message, optional, tag = "4")]
1715 pub set_retention_period: ::core::option::Option<
1716 super::super::google::protobuf::Duration,
1717 >,
1718 #[prost(int64, optional, tag = "5")]
1720 pub set_retention_storage_mb: ::core::option::Option<i64>,
1721 #[prost(message, optional, tag = "7")]
1725 pub set_supported_codecs: ::core::option::Option<SupportedCodecs>,
1726 #[prost(int64, optional, tag = "8")]
1728 pub set_partition_write_speed_bytes_per_second: ::core::option::Option<i64>,
1729 #[prost(int64, optional, tag = "9")]
1731 pub set_partition_write_burst_bytes: ::core::option::Option<i64>,
1732 #[prost(map = "string, string", tag = "10")]
1735 pub alter_attributes: ::std::collections::HashMap<
1736 ::prost::alloc::string::String,
1737 ::prost::alloc::string::String,
1738 >,
1739 #[prost(message, repeated, tag = "11")]
1741 pub add_consumers: ::prost::alloc::vec::Vec<Consumer>,
1742 #[prost(string, repeated, tag = "12")]
1744 pub drop_consumers: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1745 #[prost(message, repeated, tag = "13")]
1747 pub alter_consumers: ::prost::alloc::vec::Vec<AlterConsumer>,
1748 #[prost(enumeration = "MeteringMode", tag = "14")]
1750 pub set_metering_mode: i32,
1751}
1752#[derive(serde::Serialize, serde::Deserialize)]
1754#[derive(Clone, PartialEq, ::prost::Message)]
1755pub struct AlterTopicResponse {
1756 #[prost(message, optional, tag = "1")]
1758 pub operation: ::core::option::Option<super::operations::Operation>,
1759}
1760#[derive(serde::Serialize, serde::Deserialize)]
1762#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1763pub struct AlterTopicResult {}
1764#[derive(serde::Serialize, serde::Deserialize)]
1766#[derive(Clone, PartialEq, ::prost::Message)]
1767pub struct DropTopicRequest {
1768 #[prost(message, optional, tag = "1")]
1769 pub operation_params: ::core::option::Option<super::operations::OperationParams>,
1770 #[prost(string, tag = "2")]
1772 pub path: ::prost::alloc::string::String,
1773}
1774#[derive(serde::Serialize, serde::Deserialize)]
1777#[derive(Clone, PartialEq, ::prost::Message)]
1778pub struct DropTopicResponse {
1779 #[prost(message, optional, tag = "1")]
1781 pub operation: ::core::option::Option<super::operations::Operation>,
1782}
1783#[derive(serde::Serialize, serde::Deserialize)]
1785#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
1786pub struct DropTopicResult {}
1787#[derive(serde::Serialize, serde::Deserialize)]
1788#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1789#[repr(i32)]
1790pub enum Codec {
1791 Unspecified = 0,
1792 Raw = 1,
1793 Gzip = 2,
1794 Lzop = 3,
1795 Zstd = 4,
1796 Custom = 10000,
1798}
1799impl Codec {
1800 pub fn as_str_name(&self) -> &'static str {
1804 match self {
1805 Self::Unspecified => "CODEC_UNSPECIFIED",
1806 Self::Raw => "CODEC_RAW",
1807 Self::Gzip => "CODEC_GZIP",
1808 Self::Lzop => "CODEC_LZOP",
1809 Self::Zstd => "CODEC_ZSTD",
1810 Self::Custom => "CODEC_CUSTOM",
1811 }
1812 }
1813 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1815 match value {
1816 "CODEC_UNSPECIFIED" => Some(Self::Unspecified),
1817 "CODEC_RAW" => Some(Self::Raw),
1818 "CODEC_GZIP" => Some(Self::Gzip),
1819 "CODEC_LZOP" => Some(Self::Lzop),
1820 "CODEC_ZSTD" => Some(Self::Zstd),
1821 "CODEC_CUSTOM" => Some(Self::Custom),
1822 _ => None,
1823 }
1824 }
1825}
1826#[derive(serde::Serialize, serde::Deserialize)]
1827#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1828#[repr(i32)]
1829pub enum AutoPartitioningStrategy {
1830 Unspecified = 0,
1832 Disabled = 1,
1834 ScaleUp = 2,
1837 ScaleUpAndDown = 3,
1839 Paused = 4,
1841}
1842impl AutoPartitioningStrategy {
1843 pub fn as_str_name(&self) -> &'static str {
1847 match self {
1848 Self::Unspecified => "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED",
1849 Self::Disabled => "AUTO_PARTITIONING_STRATEGY_DISABLED",
1850 Self::ScaleUp => "AUTO_PARTITIONING_STRATEGY_SCALE_UP",
1851 Self::ScaleUpAndDown => "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN",
1852 Self::Paused => "AUTO_PARTITIONING_STRATEGY_PAUSED",
1853 }
1854 }
1855 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1857 match value {
1858 "AUTO_PARTITIONING_STRATEGY_UNSPECIFIED" => Some(Self::Unspecified),
1859 "AUTO_PARTITIONING_STRATEGY_DISABLED" => Some(Self::Disabled),
1860 "AUTO_PARTITIONING_STRATEGY_SCALE_UP" => Some(Self::ScaleUp),
1861 "AUTO_PARTITIONING_STRATEGY_SCALE_UP_AND_DOWN" => Some(Self::ScaleUpAndDown),
1862 "AUTO_PARTITIONING_STRATEGY_PAUSED" => Some(Self::Paused),
1863 _ => None,
1864 }
1865 }
1866}
1867#[derive(serde::Serialize, serde::Deserialize)]
1870#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1871#[repr(i32)]
1872pub enum MeteringMode {
1873 Unspecified = 0,
1875 ReservedCapacity = 1,
1877 RequestUnits = 2,
1879}
1880impl MeteringMode {
1881 pub fn as_str_name(&self) -> &'static str {
1885 match self {
1886 Self::Unspecified => "METERING_MODE_UNSPECIFIED",
1887 Self::ReservedCapacity => "METERING_MODE_RESERVED_CAPACITY",
1888 Self::RequestUnits => "METERING_MODE_REQUEST_UNITS",
1889 }
1890 }
1891 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1893 match value {
1894 "METERING_MODE_UNSPECIFIED" => Some(Self::Unspecified),
1895 "METERING_MODE_RESERVED_CAPACITY" => Some(Self::ReservedCapacity),
1896 "METERING_MODE_REQUEST_UNITS" => Some(Self::RequestUnits),
1897 _ => None,
1898 }
1899 }
1900}