1#[derive(prost_helpers::AnyPB)]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct ColIndexMapping {
6 #[prost(uint64, tag = "1")]
8 pub target_size: u64,
9 #[prost(int64, repeated, tag = "2")]
12 pub map: ::prost::alloc::vec::Vec<i64>,
13}
14#[derive(prost_helpers::AnyPB)]
15#[derive(Eq, Hash)]
16#[derive(Clone, PartialEq, ::prost::Message)]
17pub struct WatermarkDesc {
18 #[prost(uint32, tag = "1")]
20 pub watermark_idx: u32,
21 #[prost(message, optional, tag = "2")]
23 pub expr: ::core::option::Option<super::expr::ExprNode>,
24}
25#[derive(prost_helpers::AnyPB)]
26#[derive(Eq, Hash)]
27#[derive(Clone, PartialEq, ::prost::Message)]
28pub struct StreamSourceInfo {
29 #[prost(enumeration = "super::plan_common::RowFormatType", tag = "1")]
31 pub row_format: i32,
32 #[prost(string, tag = "2")]
33 pub row_schema_location: ::prost::alloc::string::String,
34 #[prost(bool, tag = "3")]
40 pub use_schema_registry: bool,
41 #[prost(string, tag = "4")]
42 pub proto_message_name: ::prost::alloc::string::String,
43 #[prost(int32, tag = "5")]
44 pub csv_delimiter: i32,
45 #[prost(bool, tag = "6")]
46 pub csv_has_header: bool,
47 #[prost(enumeration = "super::plan_common::FormatType", tag = "8")]
48 pub format: i32,
49 #[prost(enumeration = "super::plan_common::EncodeType", tag = "9")]
50 pub row_encode: i32,
51 #[prost(enumeration = "SchemaRegistryNameStrategy", tag = "10")]
52 pub name_strategy: i32,
53 #[prost(string, optional, tag = "11")]
54 pub key_message_name: ::core::option::Option<::prost::alloc::string::String>,
55 #[prost(message, optional, tag = "12")]
56 pub external_table: ::core::option::Option<super::plan_common::ExternalTableDesc>,
57 #[prost(bool, tag = "13")]
69 pub cdc_source_job: bool,
70 #[prost(bool, tag = "15")]
76 pub is_distributed: bool,
77 #[prost(btree_map = "string, string", tag = "14")]
79 pub format_encode_options: ::prost::alloc::collections::BTreeMap<
80 ::prost::alloc::string::String,
81 ::prost::alloc::string::String,
82 >,
83 #[prost(btree_map = "string, message", tag = "16")]
86 pub format_encode_secret_refs: ::prost::alloc::collections::BTreeMap<
87 ::prost::alloc::string::String,
88 super::secret::SecretRef,
89 >,
90 #[prost(uint32, optional, tag = "17", wrapper = "crate::id::ConnectionId")]
92 pub connection_id: ::core::option::Option<crate::id::ConnectionId>,
93}
94#[derive(prost_helpers::AnyPB)]
95#[derive(Eq, Hash)]
96#[derive(Clone, PartialEq, ::prost::Message)]
97pub struct WebhookSourceInfo {
98 #[prost(message, optional, tag = "1")]
99 pub secret_ref: ::core::option::Option<super::secret::SecretRef>,
100 #[prost(message, optional, tag = "2")]
101 pub signature_expr: ::core::option::Option<super::expr::ExprNode>,
102 #[prost(bool, tag = "3")]
104 pub wait_for_persistence: bool,
105 #[prost(bool, tag = "4")]
107 pub is_batched: bool,
108}
109#[derive(prost_helpers::AnyPB)]
110#[derive(Clone, PartialEq, ::prost::Message)]
111pub struct Source {
112 #[prost(uint32, tag = "1", wrapper = "crate::id::SourceId")]
115 pub id: crate::id::SourceId,
116 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
117 pub schema_id: crate::id::SchemaId,
118 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
119 pub database_id: crate::id::DatabaseId,
120 #[prost(string, tag = "4")]
121 pub name: ::prost::alloc::string::String,
122 #[prost(uint32, optional, tag = "5")]
125 pub row_id_index: ::core::option::Option<u32>,
126 #[prost(message, repeated, tag = "6")]
128 pub columns: ::prost::alloc::vec::Vec<super::plan_common::ColumnCatalog>,
129 #[prost(int32, repeated, tag = "7")]
132 pub pk_column_ids: ::prost::alloc::vec::Vec<i32>,
133 #[prost(btree_map = "string, string", tag = "8")]
135 pub with_properties: ::prost::alloc::collections::BTreeMap<
136 ::prost::alloc::string::String,
137 ::prost::alloc::string::String,
138 >,
139 #[prost(uint32, tag = "9")]
140 pub owner: u32,
141 #[prost(message, optional, tag = "10")]
142 pub info: ::core::option::Option<StreamSourceInfo>,
143 #[prost(message, repeated, tag = "11")]
146 pub watermark_descs: ::prost::alloc::vec::Vec<WatermarkDesc>,
147 #[prost(string, tag = "13")]
148 pub definition: ::prost::alloc::string::String,
149 #[prost(uint32, optional, tag = "14", wrapper = "crate::id::ConnectionId")]
151 pub connection_id: ::core::option::Option<crate::id::ConnectionId>,
152 #[prost(uint64, optional, tag = "15")]
153 pub initialized_at_epoch: ::core::option::Option<u64>,
154 #[prost(uint64, optional, tag = "16")]
155 pub created_at_epoch: ::core::option::Option<u64>,
156 #[prost(string, optional, tag = "17")]
158 pub initialized_at_cluster_version: ::core::option::Option<
159 ::prost::alloc::string::String,
160 >,
161 #[prost(string, optional, tag = "18")]
162 pub created_at_cluster_version: ::core::option::Option<
163 ::prost::alloc::string::String,
164 >,
165 #[prost(btree_map = "string, message", tag = "19")]
168 pub secret_refs: ::prost::alloc::collections::BTreeMap<
169 ::prost::alloc::string::String,
170 super::secret::SecretRef,
171 >,
172 #[prost(message, optional, tag = "20")]
174 pub refresh_mode: ::core::option::Option<super::plan_common::SourceRefreshMode>,
175 #[prost(uint64, tag = "100")]
177 pub version: u64,
178 #[prost(uint32, optional, tag = "101")]
179 pub rate_limit: ::core::option::Option<u32>,
180 #[prost(oneof = "source::OptionalAssociatedTableId", tags = "12")]
182 pub optional_associated_table_id: ::core::option::Option<
183 source::OptionalAssociatedTableId,
184 >,
185}
186pub mod source {
188 #[derive(prost_helpers::AnyPB)]
190 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
191 pub enum OptionalAssociatedTableId {
192 #[prost(uint32, tag = "12")]
193 AssociatedTableId(u32),
194 }
195}
196#[derive(prost_helpers::AnyPB)]
198#[derive(Clone, PartialEq, ::prost::Message)]
199pub struct SinkFormatDesc {
200 #[prost(enumeration = "super::plan_common::FormatType", tag = "1")]
201 pub format: i32,
202 #[prost(enumeration = "super::plan_common::EncodeType", tag = "2")]
203 pub encode: i32,
204 #[prost(btree_map = "string, string", tag = "3")]
205 pub options: ::prost::alloc::collections::BTreeMap<
206 ::prost::alloc::string::String,
207 ::prost::alloc::string::String,
208 >,
209 #[prost(enumeration = "super::plan_common::EncodeType", optional, tag = "4")]
210 pub key_encode: ::core::option::Option<i32>,
211 #[prost(btree_map = "string, message", tag = "5")]
213 pub secret_refs: ::prost::alloc::collections::BTreeMap<
214 ::prost::alloc::string::String,
215 super::secret::SecretRef,
216 >,
217 #[prost(uint32, optional, tag = "6", wrapper = "crate::id::ConnectionId")]
219 pub connection_id: ::core::option::Option<crate::id::ConnectionId>,
220}
221#[derive(prost_helpers::AnyPB)]
226#[derive(Clone, PartialEq, ::prost::Message)]
227pub struct Sink {
228 #[prost(uint32, tag = "1", wrapper = "crate::id::SinkId")]
229 pub id: crate::id::SinkId,
230 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
231 pub schema_id: crate::id::SchemaId,
232 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
233 pub database_id: crate::id::DatabaseId,
234 #[prost(string, tag = "4")]
235 pub name: ::prost::alloc::string::String,
236 #[prost(message, repeated, tag = "5")]
237 pub columns: ::prost::alloc::vec::Vec<super::plan_common::ColumnCatalog>,
238 #[prost(message, repeated, tag = "6")]
240 pub plan_pk: ::prost::alloc::vec::Vec<super::common::ColumnOrder>,
241 #[prost(int32, repeated, tag = "8")]
242 pub distribution_key: ::prost::alloc::vec::Vec<i32>,
243 #[prost(int32, repeated, tag = "9")]
245 pub downstream_pk: ::prost::alloc::vec::Vec<i32>,
246 #[prost(enumeration = "SinkType", tag = "10")]
248 pub sink_type: i32,
249 #[prost(uint32, tag = "11")]
250 pub owner: u32,
251 #[prost(btree_map = "string, string", tag = "12")]
252 pub properties: ::prost::alloc::collections::BTreeMap<
253 ::prost::alloc::string::String,
254 ::prost::alloc::string::String,
255 >,
256 #[prost(string, tag = "13")]
257 pub definition: ::prost::alloc::string::String,
258 #[prost(uint32, optional, tag = "14", wrapper = "crate::id::ConnectionId")]
260 pub connection_id: ::core::option::Option<crate::id::ConnectionId>,
261 #[prost(uint64, optional, tag = "15")]
262 pub initialized_at_epoch: ::core::option::Option<u64>,
263 #[prost(uint64, optional, tag = "16")]
264 pub created_at_epoch: ::core::option::Option<u64>,
265 #[prost(string, tag = "17")]
266 pub db_name: ::prost::alloc::string::String,
267 #[prost(string, tag = "18")]
268 pub sink_from_name: ::prost::alloc::string::String,
269 #[prost(enumeration = "StreamJobStatus", tag = "19")]
270 pub stream_job_status: i32,
271 #[prost(message, optional, tag = "20")]
272 pub format_desc: ::core::option::Option<SinkFormatDesc>,
273 #[prost(uint32, optional, tag = "21", wrapper = "crate::id::TableId")]
275 pub target_table: ::core::option::Option<crate::id::TableId>,
276 #[prost(string, optional, tag = "22")]
278 pub initialized_at_cluster_version: ::core::option::Option<
279 ::prost::alloc::string::String,
280 >,
281 #[prost(string, optional, tag = "23")]
282 pub created_at_cluster_version: ::core::option::Option<
283 ::prost::alloc::string::String,
284 >,
285 #[prost(enumeration = "CreateType", tag = "24")]
287 pub create_type: i32,
288 #[prost(btree_map = "string, message", tag = "25")]
291 pub secret_refs: ::prost::alloc::collections::BTreeMap<
292 ::prost::alloc::string::String,
293 super::secret::SecretRef,
294 >,
295 #[prost(message, repeated, tag = "26")]
297 pub original_target_columns: ::prost::alloc::vec::Vec<
298 super::plan_common::ColumnCatalog,
299 >,
300 #[prost(uint32, optional, tag = "27", wrapper = "crate::id::TableId")]
301 pub auto_refresh_schema_from_table: ::core::option::Option<crate::id::TableId>,
302}
303#[derive(prost_helpers::AnyPB)]
304#[derive(Clone, PartialEq, ::prost::Message)]
305pub struct Subscription {
306 #[prost(uint32, tag = "1", wrapper = "crate::id::SubscriptionId")]
307 pub id: crate::id::SubscriptionId,
308 #[prost(string, tag = "2")]
309 pub name: ::prost::alloc::string::String,
310 #[prost(string, tag = "3")]
311 pub definition: ::prost::alloc::string::String,
312 #[prost(uint64, tag = "6")]
313 pub retention_seconds: u64,
314 #[prost(uint32, tag = "8", wrapper = "crate::id::DatabaseId")]
315 pub database_id: crate::id::DatabaseId,
316 #[prost(uint32, tag = "9", wrapper = "crate::id::SchemaId")]
317 pub schema_id: crate::id::SchemaId,
318 #[prost(uint32, tag = "10", wrapper = "crate::id::TableId")]
319 pub dependent_table_id: crate::id::TableId,
320 #[prost(uint64, optional, tag = "11")]
321 pub initialized_at_epoch: ::core::option::Option<u64>,
322 #[prost(uint64, optional, tag = "12")]
323 pub created_at_epoch: ::core::option::Option<u64>,
324 #[prost(uint32, tag = "13")]
325 pub owner: u32,
326 #[prost(string, optional, tag = "15")]
327 pub initialized_at_cluster_version: ::core::option::Option<
328 ::prost::alloc::string::String,
329 >,
330 #[prost(string, optional, tag = "16")]
331 pub created_at_cluster_version: ::core::option::Option<
332 ::prost::alloc::string::String,
333 >,
334 #[prost(enumeration = "subscription::SubscriptionState", tag = "19")]
335 pub subscription_state: i32,
336}
337pub mod subscription {
339 #[derive(prost_helpers::AnyPB)]
340 #[derive(
341 Clone,
342 Copy,
343 Debug,
344 PartialEq,
345 Eq,
346 Hash,
347 PartialOrd,
348 Ord,
349 ::prost::Enumeration
350 )]
351 #[repr(i32)]
352 pub enum SubscriptionState {
353 Unspecified = 0,
354 Init = 1,
355 Created = 2,
356 }
357 impl SubscriptionState {
358 pub fn as_str_name(&self) -> &'static str {
363 match self {
364 Self::Unspecified => "UNSPECIFIED",
365 Self::Init => "INIT",
366 Self::Created => "CREATED",
367 }
368 }
369 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
371 match value {
372 "UNSPECIFIED" => Some(Self::Unspecified),
373 "INIT" => Some(Self::Init),
374 "CREATED" => Some(Self::Created),
375 _ => None,
376 }
377 }
378 }
379}
380#[derive(prost_helpers::AnyPB)]
381#[derive(Clone, PartialEq, ::prost::Message)]
382pub struct ConnectionParams {
383 #[prost(enumeration = "connection_params::ConnectionType", tag = "1")]
384 pub connection_type: i32,
385 #[prost(map = "string, string", tag = "2")]
386 pub properties: ::std::collections::HashMap<
387 ::prost::alloc::string::String,
388 ::prost::alloc::string::String,
389 >,
390 #[prost(map = "string, message", tag = "3")]
391 pub secret_refs: ::std::collections::HashMap<
392 ::prost::alloc::string::String,
393 super::secret::SecretRef,
394 >,
395}
396pub mod connection_params {
398 #[derive(prost_helpers::AnyPB)]
399 #[derive(
400 Clone,
401 Copy,
402 Debug,
403 PartialEq,
404 Eq,
405 Hash,
406 PartialOrd,
407 Ord,
408 ::prost::Enumeration
409 )]
410 #[repr(i32)]
411 pub enum ConnectionType {
412 Unspecified = 0,
413 Kafka = 1,
414 Iceberg = 2,
415 SchemaRegistry = 3,
416 Elasticsearch = 4,
417 }
418 impl ConnectionType {
419 pub fn as_str_name(&self) -> &'static str {
424 match self {
425 Self::Unspecified => "CONNECTION_TYPE_UNSPECIFIED",
426 Self::Kafka => "CONNECTION_TYPE_KAFKA",
427 Self::Iceberg => "CONNECTION_TYPE_ICEBERG",
428 Self::SchemaRegistry => "CONNECTION_TYPE_SCHEMA_REGISTRY",
429 Self::Elasticsearch => "CONNECTION_TYPE_ELASTICSEARCH",
430 }
431 }
432 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
434 match value {
435 "CONNECTION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
436 "CONNECTION_TYPE_KAFKA" => Some(Self::Kafka),
437 "CONNECTION_TYPE_ICEBERG" => Some(Self::Iceberg),
438 "CONNECTION_TYPE_SCHEMA_REGISTRY" => Some(Self::SchemaRegistry),
439 "CONNECTION_TYPE_ELASTICSEARCH" => Some(Self::Elasticsearch),
440 _ => None,
441 }
442 }
443 }
444}
445#[derive(prost_helpers::AnyPB)]
446#[derive(Clone, PartialEq, ::prost::Message)]
447pub struct Connection {
448 #[prost(uint32, tag = "1", wrapper = "crate::id::ConnectionId")]
449 pub id: crate::id::ConnectionId,
450 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
451 pub schema_id: crate::id::SchemaId,
452 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
453 pub database_id: crate::id::DatabaseId,
454 #[prost(string, tag = "4")]
455 pub name: ::prost::alloc::string::String,
456 #[prost(uint32, tag = "6")]
457 pub owner: u32,
458 #[prost(oneof = "connection::Info", tags = "5, 7")]
459 pub info: ::core::option::Option<connection::Info>,
460}
461pub mod connection {
463 #[derive(prost_helpers::AnyPB)]
464 #[derive(Clone, PartialEq, ::prost::Message)]
465 pub struct PrivateLinkService {
466 #[prost(enumeration = "private_link_service::PrivateLinkProvider", tag = "1")]
467 pub provider: i32,
468 #[prost(string, tag = "2")]
469 pub service_name: ::prost::alloc::string::String,
470 #[prost(string, tag = "3")]
471 pub endpoint_id: ::prost::alloc::string::String,
472 #[prost(map = "string, string", tag = "4")]
473 pub dns_entries: ::std::collections::HashMap<
474 ::prost::alloc::string::String,
475 ::prost::alloc::string::String,
476 >,
477 #[prost(string, tag = "5")]
478 pub endpoint_dns_name: ::prost::alloc::string::String,
479 }
480 pub mod private_link_service {
482 #[derive(prost_helpers::AnyPB)]
483 #[derive(
484 Clone,
485 Copy,
486 Debug,
487 PartialEq,
488 Eq,
489 Hash,
490 PartialOrd,
491 Ord,
492 ::prost::Enumeration
493 )]
494 #[repr(i32)]
495 pub enum PrivateLinkProvider {
496 Unspecified = 0,
497 Mock = 1,
498 Aws = 2,
499 }
500 impl PrivateLinkProvider {
501 pub fn as_str_name(&self) -> &'static str {
506 match self {
507 Self::Unspecified => "UNSPECIFIED",
508 Self::Mock => "MOCK",
509 Self::Aws => "AWS",
510 }
511 }
512 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
514 match value {
515 "UNSPECIFIED" => Some(Self::Unspecified),
516 "MOCK" => Some(Self::Mock),
517 "AWS" => Some(Self::Aws),
518 _ => None,
519 }
520 }
521 }
522 }
523 #[derive(prost_helpers::AnyPB)]
524 #[derive(Clone, PartialEq, ::prost::Oneof)]
525 pub enum Info {
526 #[prost(message, tag = "5")]
527 PrivateLinkService(PrivateLinkService),
528 #[prost(message, tag = "7")]
529 ConnectionParams(super::ConnectionParams),
530 }
531}
532#[derive(prost_helpers::AnyPB)]
533#[derive(Clone, PartialEq, ::prost::Message)]
534pub struct Index {
535 #[prost(uint32, tag = "1", wrapper = "crate::id::IndexId")]
536 pub id: crate::id::IndexId,
537 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
538 pub schema_id: crate::id::SchemaId,
539 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
540 pub database_id: crate::id::DatabaseId,
541 #[prost(string, tag = "4")]
542 pub name: ::prost::alloc::string::String,
543 #[prost(uint32, tag = "5")]
544 pub owner: u32,
545 #[prost(uint32, tag = "6", wrapper = "crate::id::TableId")]
546 pub index_table_id: crate::id::TableId,
547 #[prost(uint32, tag = "7", wrapper = "crate::id::TableId")]
548 pub primary_table_id: crate::id::TableId,
549 #[prost(message, repeated, tag = "8")]
552 pub index_item: ::prost::alloc::vec::Vec<super::expr::ExprNode>,
553 #[prost(message, repeated, tag = "16")]
554 pub index_column_properties: ::prost::alloc::vec::Vec<IndexColumnProperties>,
555 #[prost(uint64, optional, tag = "10")]
556 pub initialized_at_epoch: ::core::option::Option<u64>,
557 #[prost(uint64, optional, tag = "11")]
558 pub created_at_epoch: ::core::option::Option<u64>,
559 #[prost(enumeration = "StreamJobStatus", tag = "12")]
560 pub stream_job_status: i32,
561 #[prost(uint32, tag = "13")]
564 pub index_columns_len: u32,
565 #[prost(string, optional, tag = "14")]
567 pub initialized_at_cluster_version: ::core::option::Option<
568 ::prost::alloc::string::String,
569 >,
570 #[prost(string, optional, tag = "15")]
571 pub created_at_cluster_version: ::core::option::Option<
572 ::prost::alloc::string::String,
573 >,
574 #[prost(enumeration = "CreateType", tag = "17")]
576 pub create_type: i32,
577}
578#[derive(prost_helpers::AnyPB)]
580#[derive(Eq, Hash)]
581#[derive(Clone, Copy, PartialEq, ::prost::Message)]
582pub struct IndexColumnProperties {
583 #[prost(bool, tag = "1")]
585 pub is_desc: bool,
586 #[prost(bool, tag = "2")]
588 pub nulls_first: bool,
589}
590#[derive(prost_helpers::AnyPB)]
591#[derive(Clone, PartialEq, ::prost::Message)]
592pub struct Function {
593 #[prost(uint32, tag = "1", wrapper = "crate::id::FunctionId")]
594 pub id: crate::id::FunctionId,
595 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
596 pub schema_id: crate::id::SchemaId,
597 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
598 pub database_id: crate::id::DatabaseId,
599 #[prost(string, tag = "4")]
600 pub name: ::prost::alloc::string::String,
601 #[prost(uint32, tag = "9")]
602 pub owner: u32,
603 #[prost(string, repeated, tag = "15")]
604 pub arg_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
605 #[prost(message, repeated, tag = "5")]
606 pub arg_types: ::prost::alloc::vec::Vec<super::data::DataType>,
607 #[prost(message, optional, tag = "6")]
608 pub return_type: ::core::option::Option<super::data::DataType>,
609 #[prost(string, tag = "7")]
610 pub language: ::prost::alloc::string::String,
611 #[prost(string, optional, tag = "8")]
612 pub link: ::core::option::Option<::prost::alloc::string::String>,
613 #[prost(string, optional, tag = "10")]
615 pub name_in_runtime: ::core::option::Option<::prost::alloc::string::String>,
616 #[prost(string, optional, tag = "14")]
618 pub body: ::core::option::Option<::prost::alloc::string::String>,
619 #[prost(bytes = "vec", optional, tag = "17")]
621 pub compressed_binary: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
622 #[prost(bool, tag = "16")]
623 pub always_retry_on_network_error: bool,
624 #[prost(string, optional, tag = "18")]
626 pub runtime: ::core::option::Option<::prost::alloc::string::String>,
627 #[prost(bool, optional, tag = "20")]
629 pub is_async: ::core::option::Option<bool>,
630 #[prost(bool, optional, tag = "21")]
631 pub is_batched: ::core::option::Option<bool>,
632 #[prost(uint64, optional, tag = "22")]
633 pub created_at_epoch: ::core::option::Option<u64>,
634 #[prost(string, optional, tag = "23")]
636 pub created_at_cluster_version: ::core::option::Option<
637 ::prost::alloc::string::String,
638 >,
639 #[prost(oneof = "function::Kind", tags = "11, 12, 13")]
640 pub kind: ::core::option::Option<function::Kind>,
641}
642pub mod function {
644 #[derive(prost_helpers::AnyPB)]
645 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
646 pub struct ScalarFunction {}
647 #[derive(prost_helpers::AnyPB)]
648 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
649 pub struct TableFunction {}
650 #[derive(prost_helpers::AnyPB)]
651 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
652 pub struct AggregateFunction {}
653 #[derive(prost_helpers::AnyPB)]
654 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
655 pub enum Kind {
656 #[prost(message, tag = "11")]
657 Scalar(ScalarFunction),
658 #[prost(message, tag = "12")]
659 Table(TableFunction),
660 #[prost(message, tag = "13")]
661 Aggregate(AggregateFunction),
662 }
663}
664#[derive(prost_helpers::AnyPB)]
665#[derive(Eq, Hash)]
666#[derive(Clone, Copy, PartialEq, ::prost::Message)]
667pub struct FlatIndexConfig {}
668#[derive(prost_helpers::AnyPB)]
669#[derive(Eq, Hash)]
670#[derive(Clone, Copy, PartialEq, ::prost::Message)]
671pub struct HnswFlatIndexConfig {
672 #[prost(uint32, tag = "1")]
673 pub m: u32,
674 #[prost(uint32, tag = "2")]
675 pub ef_construction: u32,
676 #[prost(uint32, tag = "3")]
677 pub max_level: u32,
678}
679#[derive(prost_helpers::AnyPB)]
680#[derive(Eq, Hash)]
681#[derive(Clone, Copy, PartialEq, ::prost::Message)]
682pub struct VectorIndexInfo {
683 #[prost(uint32, tag = "1")]
684 pub dimension: u32,
685 #[prost(enumeration = "super::common::DistanceType", tag = "2")]
686 pub distance_type: i32,
687 #[prost(oneof = "vector_index_info::Config", tags = "65, 66")]
688 pub config: ::core::option::Option<vector_index_info::Config>,
689}
690pub mod vector_index_info {
692 #[derive(prost_helpers::AnyPB)]
693 #[derive(Eq, Hash)]
694 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
695 pub enum Config {
696 #[prost(message, tag = "65")]
698 Flat(super::FlatIndexConfig),
699 #[prost(message, tag = "66")]
700 HnswFlat(super::HnswFlatIndexConfig),
701 }
702}
703#[derive(prost_helpers::AnyPB)]
710#[derive(Clone, PartialEq, ::prost::Message)]
711pub struct Table {
712 #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
713 pub id: crate::id::TableId,
714 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
715 pub schema_id: crate::id::SchemaId,
716 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
717 pub database_id: crate::id::DatabaseId,
718 #[prost(string, tag = "4")]
719 pub name: ::prost::alloc::string::String,
720 #[prost(message, repeated, tag = "5")]
721 pub columns: ::prost::alloc::vec::Vec<super::plan_common::ColumnCatalog>,
722 #[prost(message, repeated, tag = "6")]
724 pub pk: ::prost::alloc::vec::Vec<super::common::ColumnOrder>,
725 #[prost(enumeration = "table::TableType", tag = "10")]
726 pub table_type: i32,
727 #[prost(int32, repeated, tag = "12")]
728 pub distribution_key: ::prost::alloc::vec::Vec<i32>,
729 #[prost(int32, repeated, tag = "13")]
731 pub stream_key: ::prost::alloc::vec::Vec<i32>,
732 #[prost(bool, tag = "14")]
733 pub append_only: bool,
734 #[prost(uint32, tag = "15")]
735 pub owner: u32,
736 #[prost(uint32, tag = "17", wrapper = "crate::id::FragmentId")]
737 pub fragment_id: crate::id::FragmentId,
738 #[prost(uint32, optional, tag = "18")]
741 pub vnode_col_index: ::core::option::Option<u32>,
742 #[prost(uint32, optional, tag = "19")]
745 pub row_id_index: ::core::option::Option<u32>,
746 #[prost(int32, repeated, tag = "20")]
750 pub value_indices: ::prost::alloc::vec::Vec<i32>,
751 #[prost(string, tag = "21")]
752 pub definition: ::prost::alloc::string::String,
753 #[prost(enumeration = "HandleConflictBehavior", tag = "22")]
755 pub handle_pk_conflict_behavior: i32,
756 #[prost(uint32, tag = "23")]
760 pub read_prefix_len_hint: u32,
761 #[prost(int32, repeated, tag = "24")]
762 pub watermark_indices: ::prost::alloc::vec::Vec<i32>,
763 #[prost(int32, repeated, tag = "25")]
764 pub dist_key_in_pk: ::prost::alloc::vec::Vec<i32>,
765 #[prost(uint32, optional, tag = "26", wrapper = "crate::id::FragmentId")]
768 pub dml_fragment_id: ::core::option::Option<crate::id::FragmentId>,
769 #[prost(message, optional, tag = "27")]
773 pub cardinality: ::core::option::Option<super::plan_common::Cardinality>,
774 #[prost(uint64, optional, tag = "28")]
775 pub initialized_at_epoch: ::core::option::Option<u64>,
776 #[prost(uint64, optional, tag = "29")]
777 pub created_at_epoch: ::core::option::Option<u64>,
778 #[prost(bool, tag = "30")]
782 pub cleaned_by_watermark: bool,
783 #[prost(enumeration = "StreamJobStatus", tag = "31")]
785 pub stream_job_status: i32,
786 #[prost(enumeration = "CreateType", tag = "32")]
787 pub create_type: i32,
788 #[prost(string, optional, tag = "33")]
790 pub description: ::core::option::Option<::prost::alloc::string::String>,
791 #[deprecated]
793 #[prost(uint32, repeated, packed = "false", tag = "34")]
794 pub incoming_sinks: ::prost::alloc::vec::Vec<u32>,
795 #[prost(string, optional, tag = "35")]
797 pub initialized_at_cluster_version: ::core::option::Option<
798 ::prost::alloc::string::String,
799 >,
800 #[prost(string, optional, tag = "36")]
801 pub created_at_cluster_version: ::core::option::Option<
802 ::prost::alloc::string::String,
803 >,
804 #[prost(uint32, optional, tag = "37")]
807 pub retention_seconds: ::core::option::Option<u32>,
808 #[prost(uint32, repeated, packed = "false", tag = "38")]
812 pub version_column_indices: ::prost::alloc::vec::Vec<u32>,
813 #[prost(string, optional, tag = "39")]
817 pub cdc_table_id: ::core::option::Option<::prost::alloc::string::String>,
818 #[prost(uint32, optional, tag = "40")]
831 pub maybe_vnode_count: ::core::option::Option<u32>,
832 #[prost(message, optional, tag = "41")]
834 pub webhook_info: ::core::option::Option<WebhookSourceInfo>,
835 #[prost(uint32, optional, tag = "42", wrapper = "crate::id::JobId")]
837 pub job_id: ::core::option::Option<crate::id::JobId>,
838 #[prost(enumeration = "table::Engine", optional, tag = "43")]
840 pub engine: ::core::option::Option<i32>,
841 #[prost(int32, optional, tag = "44")]
844 pub clean_watermark_index_in_pk: ::core::option::Option<i32>,
845 #[prost(bool, tag = "45")]
848 pub refreshable: bool,
849 #[prost(message, optional, tag = "46")]
851 pub vector_index_info: ::core::option::Option<VectorIndexInfo>,
852 #[prost(enumeration = "table::CdcTableType", optional, tag = "47")]
853 pub cdc_table_type: ::core::option::Option<i32>,
854 #[prost(message, optional, tag = "100")]
858 pub version: ::core::option::Option<table::TableVersion>,
859 #[prost(oneof = "table::OptionalAssociatedSourceId", tags = "9")]
860 pub optional_associated_source_id: ::core::option::Option<
861 table::OptionalAssociatedSourceId,
862 >,
863}
864pub mod table {
866 #[derive(prost_helpers::AnyPB)]
867 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
868 pub struct TableVersion {
869 #[prost(uint64, tag = "1")]
872 pub version: u64,
873 #[prost(int32, tag = "2")]
876 pub next_column_id: i32,
877 }
878 #[derive(prost_helpers::AnyPB)]
879 #[derive(
880 Clone,
881 Copy,
882 Debug,
883 PartialEq,
884 Eq,
885 Hash,
886 PartialOrd,
887 Ord,
888 ::prost::Enumeration
889 )]
890 #[repr(i32)]
891 pub enum TableType {
892 Unspecified = 0,
893 Table = 1,
894 MaterializedView = 2,
895 Index = 3,
896 Internal = 4,
897 VectorIndex = 5,
898 }
899 impl TableType {
900 pub fn as_str_name(&self) -> &'static str {
905 match self {
906 Self::Unspecified => "UNSPECIFIED",
907 Self::Table => "TABLE",
908 Self::MaterializedView => "MATERIALIZED_VIEW",
909 Self::Index => "INDEX",
910 Self::Internal => "INTERNAL",
911 Self::VectorIndex => "VECTOR_INDEX",
912 }
913 }
914 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
916 match value {
917 "UNSPECIFIED" => Some(Self::Unspecified),
918 "TABLE" => Some(Self::Table),
919 "MATERIALIZED_VIEW" => Some(Self::MaterializedView),
920 "INDEX" => Some(Self::Index),
921 "INTERNAL" => Some(Self::Internal),
922 "VECTOR_INDEX" => Some(Self::VectorIndex),
923 _ => None,
924 }
925 }
926 }
927 #[derive(prost_helpers::AnyPB)]
928 #[derive(
929 Clone,
930 Copy,
931 Debug,
932 PartialEq,
933 Eq,
934 Hash,
935 PartialOrd,
936 Ord,
937 ::prost::Enumeration
938 )]
939 #[repr(i32)]
940 pub enum Engine {
941 Unspecified = 0,
942 Hummock = 1,
943 Iceberg = 2,
944 }
945 impl Engine {
946 pub fn as_str_name(&self) -> &'static str {
951 match self {
952 Self::Unspecified => "ENGINE_UNSPECIFIED",
953 Self::Hummock => "HUMMOCK",
954 Self::Iceberg => "ICEBERG",
955 }
956 }
957 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
959 match value {
960 "ENGINE_UNSPECIFIED" => Some(Self::Unspecified),
961 "HUMMOCK" => Some(Self::Hummock),
962 "ICEBERG" => Some(Self::Iceberg),
963 _ => None,
964 }
965 }
966 }
967 #[derive(prost_helpers::AnyPB)]
968 #[derive(
969 Clone,
970 Copy,
971 Debug,
972 PartialEq,
973 Eq,
974 Hash,
975 PartialOrd,
976 Ord,
977 ::prost::Enumeration
978 )]
979 #[repr(i32)]
980 pub enum CdcTableType {
981 Unspecified = 0,
982 Postgres = 1,
983 Mysql = 2,
984 Sqlserver = 3,
985 Mongo = 4,
986 Citus = 5,
987 }
988 impl CdcTableType {
989 pub fn as_str_name(&self) -> &'static str {
994 match self {
995 Self::Unspecified => "CDC_TABLE_TYPE_UNSPECIFIED",
996 Self::Postgres => "CDC_TABLE_TYPE_POSTGRES",
997 Self::Mysql => "CDC_TABLE_TYPE_MYSQL",
998 Self::Sqlserver => "CDC_TABLE_TYPE_SQLSERVER",
999 Self::Mongo => "CDC_TABLE_TYPE_MONGO",
1000 Self::Citus => "CDC_TABLE_TYPE_CITUS",
1001 }
1002 }
1003 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1005 match value {
1006 "CDC_TABLE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
1007 "CDC_TABLE_TYPE_POSTGRES" => Some(Self::Postgres),
1008 "CDC_TABLE_TYPE_MYSQL" => Some(Self::Mysql),
1009 "CDC_TABLE_TYPE_SQLSERVER" => Some(Self::Sqlserver),
1010 "CDC_TABLE_TYPE_MONGO" => Some(Self::Mongo),
1011 "CDC_TABLE_TYPE_CITUS" => Some(Self::Citus),
1012 _ => None,
1013 }
1014 }
1015 }
1016 #[derive(prost_helpers::AnyPB)]
1017 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
1018 pub enum OptionalAssociatedSourceId {
1019 #[prost(uint32, tag = "9")]
1020 AssociatedSourceId(u32),
1021 }
1022}
1023#[derive(prost_helpers::AnyPB)]
1024#[derive(Clone, PartialEq, ::prost::Message)]
1025pub struct View {
1026 #[prost(uint32, tag = "1", wrapper = "crate::id::ViewId")]
1027 pub id: crate::id::ViewId,
1028 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
1029 pub schema_id: crate::id::SchemaId,
1030 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
1031 pub database_id: crate::id::DatabaseId,
1032 #[prost(string, tag = "4")]
1033 pub name: ::prost::alloc::string::String,
1034 #[prost(uint32, tag = "5")]
1035 pub owner: u32,
1036 #[prost(btree_map = "string, string", tag = "6")]
1037 pub properties: ::prost::alloc::collections::BTreeMap<
1038 ::prost::alloc::string::String,
1039 ::prost::alloc::string::String,
1040 >,
1041 #[prost(string, tag = "7")]
1042 pub sql: ::prost::alloc::string::String,
1043 #[prost(message, repeated, tag = "9")]
1045 pub columns: ::prost::alloc::vec::Vec<super::plan_common::Field>,
1046 #[prost(uint64, optional, tag = "10")]
1047 pub created_at_epoch: ::core::option::Option<u64>,
1048 #[prost(string, optional, tag = "11")]
1049 pub created_at_cluster_version: ::core::option::Option<
1050 ::prost::alloc::string::String,
1051 >,
1052}
1053#[derive(prost_helpers::AnyPB)]
1054#[derive(Clone, PartialEq, ::prost::Message)]
1055pub struct Schema {
1056 #[prost(uint32, tag = "1", wrapper = "crate::id::SchemaId")]
1057 pub id: crate::id::SchemaId,
1058 #[prost(uint32, tag = "2", wrapper = "crate::id::DatabaseId")]
1059 pub database_id: crate::id::DatabaseId,
1060 #[prost(string, tag = "3")]
1061 pub name: ::prost::alloc::string::String,
1062 #[prost(uint32, tag = "4")]
1063 pub owner: u32,
1064}
1065#[derive(prost_helpers::AnyPB)]
1066#[derive(Clone, PartialEq, ::prost::Message)]
1067pub struct Database {
1068 #[prost(uint32, tag = "1", wrapper = "crate::id::DatabaseId")]
1069 pub id: crate::id::DatabaseId,
1070 #[prost(string, tag = "2")]
1071 pub name: ::prost::alloc::string::String,
1072 #[prost(uint32, tag = "3")]
1073 pub owner: u32,
1074 #[prost(string, tag = "4")]
1075 pub resource_group: ::prost::alloc::string::String,
1076 #[prost(uint32, optional, tag = "5")]
1077 pub barrier_interval_ms: ::core::option::Option<u32>,
1078 #[prost(uint64, optional, tag = "6")]
1079 pub checkpoint_frequency: ::core::option::Option<u64>,
1080}
1081#[derive(prost_helpers::AnyPB)]
1082#[derive(Clone, PartialEq, ::prost::Message)]
1083pub struct Comment {
1084 #[prost(uint32, tag = "1", wrapper = "crate::id::TableId")]
1085 pub table_id: crate::id::TableId,
1086 #[prost(uint32, tag = "2", wrapper = "crate::id::SchemaId")]
1087 pub schema_id: crate::id::SchemaId,
1088 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
1089 pub database_id: crate::id::DatabaseId,
1090 #[prost(uint32, optional, tag = "4")]
1091 pub column_index: ::core::option::Option<u32>,
1092 #[prost(string, optional, tag = "5")]
1093 pub description: ::core::option::Option<::prost::alloc::string::String>,
1094}
1095#[derive(prost_helpers::AnyPB)]
1096#[derive(Clone, PartialEq, ::prost::Message)]
1097pub struct Secret {
1098 #[prost(uint32, tag = "1", wrapper = "crate::id::SecretId")]
1099 pub id: crate::id::SecretId,
1100 #[prost(string, tag = "2")]
1101 pub name: ::prost::alloc::string::String,
1102 #[prost(uint32, tag = "3", wrapper = "crate::id::DatabaseId")]
1103 pub database_id: crate::id::DatabaseId,
1104 #[prost(bytes = "vec", tag = "4")]
1106 pub value: ::prost::alloc::vec::Vec<u8>,
1107 #[prost(uint32, tag = "5")]
1108 pub owner: u32,
1109 #[prost(uint32, tag = "6", wrapper = "crate::id::SchemaId")]
1110 pub schema_id: crate::id::SchemaId,
1111}
1112#[derive(prost_helpers::AnyPB)]
1113#[derive(Clone, PartialEq, ::prost::Message)]
1114pub struct OptionsWithSecret {
1115 #[prost(map = "string, string", tag = "1")]
1116 pub options: ::std::collections::HashMap<
1117 ::prost::alloc::string::String,
1118 ::prost::alloc::string::String,
1119 >,
1120 #[prost(map = "string, message", tag = "2")]
1121 pub secret_refs: ::std::collections::HashMap<
1122 ::prost::alloc::string::String,
1123 super::secret::SecretRef,
1124 >,
1125}
1126#[derive(prost_helpers::AnyPB)]
1127#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1128#[repr(i32)]
1129pub enum SchemaRegistryNameStrategy {
1130 Unspecified = 0,
1131 RecordNameStrategy = 1,
1132 TopicRecordNameStrategy = 2,
1133}
1134impl SchemaRegistryNameStrategy {
1135 pub fn as_str_name(&self) -> &'static str {
1140 match self {
1141 Self::Unspecified => "SCHEMA_REGISTRY_NAME_STRATEGY_UNSPECIFIED",
1142 Self::RecordNameStrategy => {
1143 "SCHEMA_REGISTRY_NAME_STRATEGY_RECORD_NAME_STRATEGY"
1144 }
1145 Self::TopicRecordNameStrategy => {
1146 "SCHEMA_REGISTRY_NAME_STRATEGY_TOPIC_RECORD_NAME_STRATEGY"
1147 }
1148 }
1149 }
1150 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1152 match value {
1153 "SCHEMA_REGISTRY_NAME_STRATEGY_UNSPECIFIED" => Some(Self::Unspecified),
1154 "SCHEMA_REGISTRY_NAME_STRATEGY_RECORD_NAME_STRATEGY" => {
1155 Some(Self::RecordNameStrategy)
1156 }
1157 "SCHEMA_REGISTRY_NAME_STRATEGY_TOPIC_RECORD_NAME_STRATEGY" => {
1158 Some(Self::TopicRecordNameStrategy)
1159 }
1160 _ => None,
1161 }
1162 }
1163}
1164#[derive(prost_helpers::AnyPB)]
1165#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1166#[repr(i32)]
1167pub enum StreamJobStatus {
1168 Unspecified = 0,
1170 Creating = 1,
1171 Created = 2,
1172}
1173impl StreamJobStatus {
1174 pub fn as_str_name(&self) -> &'static str {
1179 match self {
1180 Self::Unspecified => "STREAM_JOB_STATUS_UNSPECIFIED",
1181 Self::Creating => "STREAM_JOB_STATUS_CREATING",
1182 Self::Created => "STREAM_JOB_STATUS_CREATED",
1183 }
1184 }
1185 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1187 match value {
1188 "STREAM_JOB_STATUS_UNSPECIFIED" => Some(Self::Unspecified),
1189 "STREAM_JOB_STATUS_CREATING" => Some(Self::Creating),
1190 "STREAM_JOB_STATUS_CREATED" => Some(Self::Created),
1191 _ => None,
1192 }
1193 }
1194}
1195#[derive(prost_helpers::AnyPB)]
1198#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1199#[repr(i32)]
1200pub enum CreateType {
1201 Unspecified = 0,
1202 Background = 1,
1203 Foreground = 2,
1204}
1205impl CreateType {
1206 pub fn as_str_name(&self) -> &'static str {
1211 match self {
1212 Self::Unspecified => "CREATE_TYPE_UNSPECIFIED",
1213 Self::Background => "CREATE_TYPE_BACKGROUND",
1214 Self::Foreground => "CREATE_TYPE_FOREGROUND",
1215 }
1216 }
1217 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1219 match value {
1220 "CREATE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
1221 "CREATE_TYPE_BACKGROUND" => Some(Self::Background),
1222 "CREATE_TYPE_FOREGROUND" => Some(Self::Foreground),
1223 _ => None,
1224 }
1225 }
1226}
1227#[derive(prost_helpers::AnyPB)]
1228#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1229#[repr(i32)]
1230pub enum SinkType {
1231 Unspecified = 0,
1232 AppendOnly = 1,
1233 ForceAppendOnly = 2,
1234 Upsert = 3,
1235 Retract = 4,
1236}
1237impl SinkType {
1238 pub fn as_str_name(&self) -> &'static str {
1243 match self {
1244 Self::Unspecified => "SINK_TYPE_UNSPECIFIED",
1245 Self::AppendOnly => "SINK_TYPE_APPEND_ONLY",
1246 Self::ForceAppendOnly => "SINK_TYPE_FORCE_APPEND_ONLY",
1247 Self::Upsert => "SINK_TYPE_UPSERT",
1248 Self::Retract => "SINK_TYPE_RETRACT",
1249 }
1250 }
1251 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1253 match value {
1254 "SINK_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
1255 "SINK_TYPE_APPEND_ONLY" => Some(Self::AppendOnly),
1256 "SINK_TYPE_FORCE_APPEND_ONLY" => Some(Self::ForceAppendOnly),
1257 "SINK_TYPE_UPSERT" => Some(Self::Upsert),
1258 "SINK_TYPE_RETRACT" => Some(Self::Retract),
1259 _ => None,
1260 }
1261 }
1262}
1263#[derive(prost_helpers::AnyPB)]
1264#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1265#[repr(i32)]
1266pub enum HandleConflictBehavior {
1267 Unspecified = 0,
1268 Overwrite = 1,
1269 Ignore = 2,
1270 NoCheck = 3,
1271 DoUpdateIfNotNull = 4,
1272}
1273impl HandleConflictBehavior {
1274 pub fn as_str_name(&self) -> &'static str {
1279 match self {
1280 Self::Unspecified => "HANDLE_CONFLICT_BEHAVIOR_UNSPECIFIED",
1281 Self::Overwrite => "HANDLE_CONFLICT_BEHAVIOR_OVERWRITE",
1282 Self::Ignore => "HANDLE_CONFLICT_BEHAVIOR_IGNORE",
1283 Self::NoCheck => "HANDLE_CONFLICT_BEHAVIOR_NO_CHECK",
1284 Self::DoUpdateIfNotNull => "HANDLE_CONFLICT_BEHAVIOR_DO_UPDATE_IF_NOT_NULL",
1285 }
1286 }
1287 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1289 match value {
1290 "HANDLE_CONFLICT_BEHAVIOR_UNSPECIFIED" => Some(Self::Unspecified),
1291 "HANDLE_CONFLICT_BEHAVIOR_OVERWRITE" => Some(Self::Overwrite),
1292 "HANDLE_CONFLICT_BEHAVIOR_IGNORE" => Some(Self::Ignore),
1293 "HANDLE_CONFLICT_BEHAVIOR_NO_CHECK" => Some(Self::NoCheck),
1294 "HANDLE_CONFLICT_BEHAVIOR_DO_UPDATE_IF_NOT_NULL" => {
1295 Some(Self::DoUpdateIfNotNull)
1296 }
1297 _ => None,
1298 }
1299 }
1300}
1301#[derive(prost_helpers::AnyPB)]
1303#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
1304#[repr(i32)]
1305pub enum RefreshState {
1306 Unspecified = 0,
1307 Idle = 1,
1308 Refreshing = 2,
1309 Finishing = 3,
1310}
1311impl RefreshState {
1312 pub fn as_str_name(&self) -> &'static str {
1317 match self {
1318 Self::Unspecified => "REFRESH_STATE_UNSPECIFIED",
1319 Self::Idle => "REFRESH_STATE_IDLE",
1320 Self::Refreshing => "REFRESH_STATE_REFRESHING",
1321 Self::Finishing => "REFRESH_STATE_FINISHING",
1322 }
1323 }
1324 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1326 match value {
1327 "REFRESH_STATE_UNSPECIFIED" => Some(Self::Unspecified),
1328 "REFRESH_STATE_IDLE" => Some(Self::Idle),
1329 "REFRESH_STATE_REFRESHING" => Some(Self::Refreshing),
1330 "REFRESH_STATE_FINISHING" => Some(Self::Finishing),
1331 _ => None,
1332 }
1333 }
1334}