1#![allow(rustdoc::redundant_explicit_links)]
18#![allow(rustdoc::broken_intra_doc_links)]
19#![allow(rustdoc::invalid_html_tags)]
20#![allow(rustdoc::bare_urls)]
21#![no_implicit_prelude]
22extern crate async_trait;
23extern crate bytes;
24extern crate gax;
25extern crate gaxi;
26extern crate lazy_static;
27extern crate location;
28extern crate longrunning;
29extern crate lro;
30extern crate reqwest;
31extern crate serde;
32extern crate serde_json;
33extern crate serde_with;
34extern crate std;
35extern crate tracing;
36extern crate wkt;
37
38#[derive(Clone, Default, PartialEq)]
40#[non_exhaustive]
41pub struct Workflow {
42 pub name: std::string::String,
46
47 pub description: std::string::String,
51
52 pub state: crate::model::workflow::State,
54
55 pub revision_id: std::string::String,
70
71 pub create_time: std::option::Option<wkt::Timestamp>,
74
75 pub update_time: std::option::Option<wkt::Timestamp>,
78
79 pub revision_create_time: std::option::Option<wkt::Timestamp>,
82
83 pub labels: std::collections::HashMap<std::string::String, std::string::String>,
90
91 pub service_account: std::string::String,
104
105 pub crypto_key_name: std::string::String,
117
118 pub state_error: std::option::Option<crate::model::workflow::StateError>,
122
123 pub call_log_level: crate::model::workflow::CallLogLevel,
128
129 pub user_env_vars: std::collections::HashMap<std::string::String, std::string::String>,
134
135 pub execution_history_level: crate::model::ExecutionHistoryLevel,
137
138 pub all_kms_keys: std::vec::Vec<std::string::String>,
141
142 pub all_kms_keys_versions: std::vec::Vec<std::string::String>,
145
146 pub crypto_key_version: std::string::String,
152
153 pub tags: std::collections::HashMap<std::string::String, std::string::String>,
155
156 pub source_code: std::option::Option<crate::model::workflow::SourceCode>,
160
161 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
162}
163
164impl Workflow {
165 pub fn new() -> Self {
166 std::default::Default::default()
167 }
168
169 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
171 self.name = v.into();
172 self
173 }
174
175 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
177 self.description = v.into();
178 self
179 }
180
181 pub fn set_state<T: std::convert::Into<crate::model::workflow::State>>(mut self, v: T) -> Self {
183 self.state = v.into();
184 self
185 }
186
187 pub fn set_revision_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
189 self.revision_id = v.into();
190 self
191 }
192
193 pub fn set_create_time<T>(mut self, v: T) -> Self
195 where
196 T: std::convert::Into<wkt::Timestamp>,
197 {
198 self.create_time = std::option::Option::Some(v.into());
199 self
200 }
201
202 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
204 where
205 T: std::convert::Into<wkt::Timestamp>,
206 {
207 self.create_time = v.map(|x| x.into());
208 self
209 }
210
211 pub fn set_update_time<T>(mut self, v: T) -> Self
213 where
214 T: std::convert::Into<wkt::Timestamp>,
215 {
216 self.update_time = std::option::Option::Some(v.into());
217 self
218 }
219
220 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
222 where
223 T: std::convert::Into<wkt::Timestamp>,
224 {
225 self.update_time = v.map(|x| x.into());
226 self
227 }
228
229 pub fn set_revision_create_time<T>(mut self, v: T) -> Self
231 where
232 T: std::convert::Into<wkt::Timestamp>,
233 {
234 self.revision_create_time = std::option::Option::Some(v.into());
235 self
236 }
237
238 pub fn set_or_clear_revision_create_time<T>(mut self, v: std::option::Option<T>) -> Self
240 where
241 T: std::convert::Into<wkt::Timestamp>,
242 {
243 self.revision_create_time = v.map(|x| x.into());
244 self
245 }
246
247 pub fn set_labels<T, K, V>(mut self, v: T) -> Self
249 where
250 T: std::iter::IntoIterator<Item = (K, V)>,
251 K: std::convert::Into<std::string::String>,
252 V: std::convert::Into<std::string::String>,
253 {
254 use std::iter::Iterator;
255 self.labels = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
256 self
257 }
258
259 pub fn set_service_account<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
261 self.service_account = v.into();
262 self
263 }
264
265 pub fn set_crypto_key_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
267 self.crypto_key_name = v.into();
268 self
269 }
270
271 pub fn set_state_error<T>(mut self, v: T) -> Self
273 where
274 T: std::convert::Into<crate::model::workflow::StateError>,
275 {
276 self.state_error = std::option::Option::Some(v.into());
277 self
278 }
279
280 pub fn set_or_clear_state_error<T>(mut self, v: std::option::Option<T>) -> Self
282 where
283 T: std::convert::Into<crate::model::workflow::StateError>,
284 {
285 self.state_error = v.map(|x| x.into());
286 self
287 }
288
289 pub fn set_call_log_level<T: std::convert::Into<crate::model::workflow::CallLogLevel>>(
291 mut self,
292 v: T,
293 ) -> Self {
294 self.call_log_level = v.into();
295 self
296 }
297
298 pub fn set_user_env_vars<T, K, V>(mut self, v: T) -> Self
300 where
301 T: std::iter::IntoIterator<Item = (K, V)>,
302 K: std::convert::Into<std::string::String>,
303 V: std::convert::Into<std::string::String>,
304 {
305 use std::iter::Iterator;
306 self.user_env_vars = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
307 self
308 }
309
310 pub fn set_execution_history_level<
312 T: std::convert::Into<crate::model::ExecutionHistoryLevel>,
313 >(
314 mut self,
315 v: T,
316 ) -> Self {
317 self.execution_history_level = v.into();
318 self
319 }
320
321 pub fn set_all_kms_keys<T, V>(mut self, v: T) -> Self
323 where
324 T: std::iter::IntoIterator<Item = V>,
325 V: std::convert::Into<std::string::String>,
326 {
327 use std::iter::Iterator;
328 self.all_kms_keys = v.into_iter().map(|i| i.into()).collect();
329 self
330 }
331
332 pub fn set_all_kms_keys_versions<T, V>(mut self, v: T) -> Self
334 where
335 T: std::iter::IntoIterator<Item = V>,
336 V: std::convert::Into<std::string::String>,
337 {
338 use std::iter::Iterator;
339 self.all_kms_keys_versions = v.into_iter().map(|i| i.into()).collect();
340 self
341 }
342
343 pub fn set_crypto_key_version<T: std::convert::Into<std::string::String>>(
345 mut self,
346 v: T,
347 ) -> Self {
348 self.crypto_key_version = v.into();
349 self
350 }
351
352 pub fn set_tags<T, K, V>(mut self, v: T) -> Self
354 where
355 T: std::iter::IntoIterator<Item = (K, V)>,
356 K: std::convert::Into<std::string::String>,
357 V: std::convert::Into<std::string::String>,
358 {
359 use std::iter::Iterator;
360 self.tags = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
361 self
362 }
363
364 pub fn set_source_code<
369 T: std::convert::Into<std::option::Option<crate::model::workflow::SourceCode>>,
370 >(
371 mut self,
372 v: T,
373 ) -> Self {
374 self.source_code = v.into();
375 self
376 }
377
378 pub fn source_contents(&self) -> std::option::Option<&std::string::String> {
382 #[allow(unreachable_patterns)]
383 self.source_code.as_ref().and_then(|v| match v {
384 crate::model::workflow::SourceCode::SourceContents(v) => std::option::Option::Some(v),
385 _ => std::option::Option::None,
386 })
387 }
388
389 pub fn set_source_contents<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
395 self.source_code =
396 std::option::Option::Some(crate::model::workflow::SourceCode::SourceContents(v.into()));
397 self
398 }
399}
400
401impl wkt::message::Message for Workflow {
402 fn typename() -> &'static str {
403 "type.googleapis.com/google.cloud.workflows.v1.Workflow"
404 }
405}
406
407#[doc(hidden)]
408impl<'de> serde::de::Deserialize<'de> for Workflow {
409 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
410 where
411 D: serde::Deserializer<'de>,
412 {
413 #[allow(non_camel_case_types)]
414 #[doc(hidden)]
415 #[derive(PartialEq, Eq, Hash)]
416 enum __FieldTag {
417 __name,
418 __description,
419 __state,
420 __revision_id,
421 __create_time,
422 __update_time,
423 __revision_create_time,
424 __labels,
425 __service_account,
426 __source_contents,
427 __crypto_key_name,
428 __state_error,
429 __call_log_level,
430 __user_env_vars,
431 __execution_history_level,
432 __all_kms_keys,
433 __all_kms_keys_versions,
434 __crypto_key_version,
435 __tags,
436 Unknown(std::string::String),
437 }
438 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
439 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
440 where
441 D: serde::Deserializer<'de>,
442 {
443 struct Visitor;
444 impl<'de> serde::de::Visitor<'de> for Visitor {
445 type Value = __FieldTag;
446 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
447 formatter.write_str("a field name for Workflow")
448 }
449 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
450 where
451 E: serde::de::Error,
452 {
453 use std::result::Result::Ok;
454 use std::string::ToString;
455 match value {
456 "name" => Ok(__FieldTag::__name),
457 "description" => Ok(__FieldTag::__description),
458 "state" => Ok(__FieldTag::__state),
459 "revisionId" => Ok(__FieldTag::__revision_id),
460 "revision_id" => Ok(__FieldTag::__revision_id),
461 "createTime" => Ok(__FieldTag::__create_time),
462 "create_time" => Ok(__FieldTag::__create_time),
463 "updateTime" => Ok(__FieldTag::__update_time),
464 "update_time" => Ok(__FieldTag::__update_time),
465 "revisionCreateTime" => Ok(__FieldTag::__revision_create_time),
466 "revision_create_time" => Ok(__FieldTag::__revision_create_time),
467 "labels" => Ok(__FieldTag::__labels),
468 "serviceAccount" => Ok(__FieldTag::__service_account),
469 "service_account" => Ok(__FieldTag::__service_account),
470 "sourceContents" => Ok(__FieldTag::__source_contents),
471 "source_contents" => Ok(__FieldTag::__source_contents),
472 "cryptoKeyName" => Ok(__FieldTag::__crypto_key_name),
473 "crypto_key_name" => Ok(__FieldTag::__crypto_key_name),
474 "stateError" => Ok(__FieldTag::__state_error),
475 "state_error" => Ok(__FieldTag::__state_error),
476 "callLogLevel" => Ok(__FieldTag::__call_log_level),
477 "call_log_level" => Ok(__FieldTag::__call_log_level),
478 "userEnvVars" => Ok(__FieldTag::__user_env_vars),
479 "user_env_vars" => Ok(__FieldTag::__user_env_vars),
480 "executionHistoryLevel" => Ok(__FieldTag::__execution_history_level),
481 "execution_history_level" => Ok(__FieldTag::__execution_history_level),
482 "allKmsKeys" => Ok(__FieldTag::__all_kms_keys),
483 "all_kms_keys" => Ok(__FieldTag::__all_kms_keys),
484 "allKmsKeysVersions" => Ok(__FieldTag::__all_kms_keys_versions),
485 "all_kms_keys_versions" => Ok(__FieldTag::__all_kms_keys_versions),
486 "cryptoKeyVersion" => Ok(__FieldTag::__crypto_key_version),
487 "crypto_key_version" => Ok(__FieldTag::__crypto_key_version),
488 "tags" => Ok(__FieldTag::__tags),
489 _ => Ok(__FieldTag::Unknown(value.to_string())),
490 }
491 }
492 }
493 deserializer.deserialize_identifier(Visitor)
494 }
495 }
496 struct Visitor;
497 impl<'de> serde::de::Visitor<'de> for Visitor {
498 type Value = Workflow;
499 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
500 formatter.write_str("struct Workflow")
501 }
502 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
503 where
504 A: serde::de::MapAccess<'de>,
505 {
506 #[allow(unused_imports)]
507 use serde::de::Error;
508 use std::option::Option::Some;
509 let mut fields = std::collections::HashSet::new();
510 let mut result = Self::Value::new();
511 while let Some(tag) = map.next_key::<__FieldTag>()? {
512 #[allow(clippy::match_single_binding)]
513 match tag {
514 __FieldTag::__name => {
515 if !fields.insert(__FieldTag::__name) {
516 return std::result::Result::Err(A::Error::duplicate_field(
517 "multiple values for name",
518 ));
519 }
520 result.name = map
521 .next_value::<std::option::Option<std::string::String>>()?
522 .unwrap_or_default();
523 }
524 __FieldTag::__description => {
525 if !fields.insert(__FieldTag::__description) {
526 return std::result::Result::Err(A::Error::duplicate_field(
527 "multiple values for description",
528 ));
529 }
530 result.description = map
531 .next_value::<std::option::Option<std::string::String>>()?
532 .unwrap_or_default();
533 }
534 __FieldTag::__state => {
535 if !fields.insert(__FieldTag::__state) {
536 return std::result::Result::Err(A::Error::duplicate_field(
537 "multiple values for state",
538 ));
539 }
540 result.state = map
541 .next_value::<std::option::Option<crate::model::workflow::State>>()?
542 .unwrap_or_default();
543 }
544 __FieldTag::__revision_id => {
545 if !fields.insert(__FieldTag::__revision_id) {
546 return std::result::Result::Err(A::Error::duplicate_field(
547 "multiple values for revision_id",
548 ));
549 }
550 result.revision_id = map
551 .next_value::<std::option::Option<std::string::String>>()?
552 .unwrap_or_default();
553 }
554 __FieldTag::__create_time => {
555 if !fields.insert(__FieldTag::__create_time) {
556 return std::result::Result::Err(A::Error::duplicate_field(
557 "multiple values for create_time",
558 ));
559 }
560 result.create_time =
561 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
562 }
563 __FieldTag::__update_time => {
564 if !fields.insert(__FieldTag::__update_time) {
565 return std::result::Result::Err(A::Error::duplicate_field(
566 "multiple values for update_time",
567 ));
568 }
569 result.update_time =
570 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
571 }
572 __FieldTag::__revision_create_time => {
573 if !fields.insert(__FieldTag::__revision_create_time) {
574 return std::result::Result::Err(A::Error::duplicate_field(
575 "multiple values for revision_create_time",
576 ));
577 }
578 result.revision_create_time =
579 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
580 }
581 __FieldTag::__labels => {
582 if !fields.insert(__FieldTag::__labels) {
583 return std::result::Result::Err(A::Error::duplicate_field(
584 "multiple values for labels",
585 ));
586 }
587 result.labels = map
588 .next_value::<std::option::Option<
589 std::collections::HashMap<
590 std::string::String,
591 std::string::String,
592 >,
593 >>()?
594 .unwrap_or_default();
595 }
596 __FieldTag::__service_account => {
597 if !fields.insert(__FieldTag::__service_account) {
598 return std::result::Result::Err(A::Error::duplicate_field(
599 "multiple values for service_account",
600 ));
601 }
602 result.service_account = map
603 .next_value::<std::option::Option<std::string::String>>()?
604 .unwrap_or_default();
605 }
606 __FieldTag::__source_contents => {
607 if !fields.insert(__FieldTag::__source_contents) {
608 return std::result::Result::Err(A::Error::duplicate_field(
609 "multiple values for source_contents",
610 ));
611 }
612 if result.source_code.is_some() {
613 return std::result::Result::Err(A::Error::duplicate_field(
614 "multiple values for `source_code`, a oneof with full ID .google.cloud.workflows.v1.Workflow.source_contents, latest field was sourceContents",
615 ));
616 }
617 result.source_code = std::option::Option::Some(
618 crate::model::workflow::SourceCode::SourceContents(
619 map.next_value::<std::option::Option<std::string::String>>()?
620 .unwrap_or_default(),
621 ),
622 );
623 }
624 __FieldTag::__crypto_key_name => {
625 if !fields.insert(__FieldTag::__crypto_key_name) {
626 return std::result::Result::Err(A::Error::duplicate_field(
627 "multiple values for crypto_key_name",
628 ));
629 }
630 result.crypto_key_name = map
631 .next_value::<std::option::Option<std::string::String>>()?
632 .unwrap_or_default();
633 }
634 __FieldTag::__state_error => {
635 if !fields.insert(__FieldTag::__state_error) {
636 return std::result::Result::Err(A::Error::duplicate_field(
637 "multiple values for state_error",
638 ));
639 }
640 result.state_error = map.next_value::<std::option::Option<crate::model::workflow::StateError>>()?
641 ;
642 }
643 __FieldTag::__call_log_level => {
644 if !fields.insert(__FieldTag::__call_log_level) {
645 return std::result::Result::Err(A::Error::duplicate_field(
646 "multiple values for call_log_level",
647 ));
648 }
649 result.call_log_level = map.next_value::<std::option::Option<crate::model::workflow::CallLogLevel>>()?.unwrap_or_default();
650 }
651 __FieldTag::__user_env_vars => {
652 if !fields.insert(__FieldTag::__user_env_vars) {
653 return std::result::Result::Err(A::Error::duplicate_field(
654 "multiple values for user_env_vars",
655 ));
656 }
657 result.user_env_vars = map
658 .next_value::<std::option::Option<
659 std::collections::HashMap<
660 std::string::String,
661 std::string::String,
662 >,
663 >>()?
664 .unwrap_or_default();
665 }
666 __FieldTag::__execution_history_level => {
667 if !fields.insert(__FieldTag::__execution_history_level) {
668 return std::result::Result::Err(A::Error::duplicate_field(
669 "multiple values for execution_history_level",
670 ));
671 }
672 result.execution_history_level = map.next_value::<std::option::Option<crate::model::ExecutionHistoryLevel>>()?.unwrap_or_default();
673 }
674 __FieldTag::__all_kms_keys => {
675 if !fields.insert(__FieldTag::__all_kms_keys) {
676 return std::result::Result::Err(A::Error::duplicate_field(
677 "multiple values for all_kms_keys",
678 ));
679 }
680 result.all_kms_keys = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
681 }
682 __FieldTag::__all_kms_keys_versions => {
683 if !fields.insert(__FieldTag::__all_kms_keys_versions) {
684 return std::result::Result::Err(A::Error::duplicate_field(
685 "multiple values for all_kms_keys_versions",
686 ));
687 }
688 result.all_kms_keys_versions = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
689 }
690 __FieldTag::__crypto_key_version => {
691 if !fields.insert(__FieldTag::__crypto_key_version) {
692 return std::result::Result::Err(A::Error::duplicate_field(
693 "multiple values for crypto_key_version",
694 ));
695 }
696 result.crypto_key_version = map
697 .next_value::<std::option::Option<std::string::String>>()?
698 .unwrap_or_default();
699 }
700 __FieldTag::__tags => {
701 if !fields.insert(__FieldTag::__tags) {
702 return std::result::Result::Err(A::Error::duplicate_field(
703 "multiple values for tags",
704 ));
705 }
706 result.tags = map
707 .next_value::<std::option::Option<
708 std::collections::HashMap<
709 std::string::String,
710 std::string::String,
711 >,
712 >>()?
713 .unwrap_or_default();
714 }
715 __FieldTag::Unknown(key) => {
716 let value = map.next_value::<serde_json::Value>()?;
717 result._unknown_fields.insert(key, value);
718 }
719 }
720 }
721 std::result::Result::Ok(result)
722 }
723 }
724 deserializer.deserialize_any(Visitor)
725 }
726}
727
728#[doc(hidden)]
729impl serde::ser::Serialize for Workflow {
730 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
731 where
732 S: serde::ser::Serializer,
733 {
734 use serde::ser::SerializeMap;
735 #[allow(unused_imports)]
736 use std::option::Option::Some;
737 let mut state = serializer.serialize_map(std::option::Option::None)?;
738 if !self.name.is_empty() {
739 state.serialize_entry("name", &self.name)?;
740 }
741 if !self.description.is_empty() {
742 state.serialize_entry("description", &self.description)?;
743 }
744 if !wkt::internal::is_default(&self.state) {
745 state.serialize_entry("state", &self.state)?;
746 }
747 if !self.revision_id.is_empty() {
748 state.serialize_entry("revisionId", &self.revision_id)?;
749 }
750 if self.create_time.is_some() {
751 state.serialize_entry("createTime", &self.create_time)?;
752 }
753 if self.update_time.is_some() {
754 state.serialize_entry("updateTime", &self.update_time)?;
755 }
756 if self.revision_create_time.is_some() {
757 state.serialize_entry("revisionCreateTime", &self.revision_create_time)?;
758 }
759 if !self.labels.is_empty() {
760 state.serialize_entry("labels", &self.labels)?;
761 }
762 if !self.service_account.is_empty() {
763 state.serialize_entry("serviceAccount", &self.service_account)?;
764 }
765 if let Some(value) = self.source_contents() {
766 state.serialize_entry("sourceContents", value)?;
767 }
768 if !self.crypto_key_name.is_empty() {
769 state.serialize_entry("cryptoKeyName", &self.crypto_key_name)?;
770 }
771 if self.state_error.is_some() {
772 state.serialize_entry("stateError", &self.state_error)?;
773 }
774 if !wkt::internal::is_default(&self.call_log_level) {
775 state.serialize_entry("callLogLevel", &self.call_log_level)?;
776 }
777 if !self.user_env_vars.is_empty() {
778 state.serialize_entry("userEnvVars", &self.user_env_vars)?;
779 }
780 if !wkt::internal::is_default(&self.execution_history_level) {
781 state.serialize_entry("executionHistoryLevel", &self.execution_history_level)?;
782 }
783 if !self.all_kms_keys.is_empty() {
784 state.serialize_entry("allKmsKeys", &self.all_kms_keys)?;
785 }
786 if !self.all_kms_keys_versions.is_empty() {
787 state.serialize_entry("allKmsKeysVersions", &self.all_kms_keys_versions)?;
788 }
789 if !self.crypto_key_version.is_empty() {
790 state.serialize_entry("cryptoKeyVersion", &self.crypto_key_version)?;
791 }
792 if !self.tags.is_empty() {
793 state.serialize_entry("tags", &self.tags)?;
794 }
795 if !self._unknown_fields.is_empty() {
796 for (key, value) in self._unknown_fields.iter() {
797 state.serialize_entry(key, &value)?;
798 }
799 }
800 state.end()
801 }
802}
803
804impl std::fmt::Debug for Workflow {
805 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
806 let mut debug_struct = f.debug_struct("Workflow");
807 debug_struct.field("name", &self.name);
808 debug_struct.field("description", &self.description);
809 debug_struct.field("state", &self.state);
810 debug_struct.field("revision_id", &self.revision_id);
811 debug_struct.field("create_time", &self.create_time);
812 debug_struct.field("update_time", &self.update_time);
813 debug_struct.field("revision_create_time", &self.revision_create_time);
814 debug_struct.field("labels", &self.labels);
815 debug_struct.field("service_account", &self.service_account);
816 debug_struct.field("crypto_key_name", &self.crypto_key_name);
817 debug_struct.field("state_error", &self.state_error);
818 debug_struct.field("call_log_level", &self.call_log_level);
819 debug_struct.field("user_env_vars", &self.user_env_vars);
820 debug_struct.field("execution_history_level", &self.execution_history_level);
821 debug_struct.field("all_kms_keys", &self.all_kms_keys);
822 debug_struct.field("all_kms_keys_versions", &self.all_kms_keys_versions);
823 debug_struct.field("crypto_key_version", &self.crypto_key_version);
824 debug_struct.field("tags", &self.tags);
825 debug_struct.field("source_code", &self.source_code);
826 if !self._unknown_fields.is_empty() {
827 debug_struct.field("_unknown_fields", &self._unknown_fields);
828 }
829 debug_struct.finish()
830 }
831}
832
833pub mod workflow {
835 #[allow(unused_imports)]
836 use super::*;
837
838 #[derive(Clone, Default, PartialEq)]
840 #[non_exhaustive]
841 pub struct StateError {
842 pub details: std::string::String,
844
845 pub r#type: crate::model::workflow::state_error::Type,
847
848 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
849 }
850
851 impl StateError {
852 pub fn new() -> Self {
853 std::default::Default::default()
854 }
855
856 pub fn set_details<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
858 self.details = v.into();
859 self
860 }
861
862 pub fn set_type<T: std::convert::Into<crate::model::workflow::state_error::Type>>(
864 mut self,
865 v: T,
866 ) -> Self {
867 self.r#type = v.into();
868 self
869 }
870 }
871
872 impl wkt::message::Message for StateError {
873 fn typename() -> &'static str {
874 "type.googleapis.com/google.cloud.workflows.v1.Workflow.StateError"
875 }
876 }
877
878 #[doc(hidden)]
879 impl<'de> serde::de::Deserialize<'de> for StateError {
880 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
881 where
882 D: serde::Deserializer<'de>,
883 {
884 #[allow(non_camel_case_types)]
885 #[doc(hidden)]
886 #[derive(PartialEq, Eq, Hash)]
887 enum __FieldTag {
888 __details,
889 __type,
890 Unknown(std::string::String),
891 }
892 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
893 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
894 where
895 D: serde::Deserializer<'de>,
896 {
897 struct Visitor;
898 impl<'de> serde::de::Visitor<'de> for Visitor {
899 type Value = __FieldTag;
900 fn expecting(
901 &self,
902 formatter: &mut std::fmt::Formatter,
903 ) -> std::fmt::Result {
904 formatter.write_str("a field name for StateError")
905 }
906 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
907 where
908 E: serde::de::Error,
909 {
910 use std::result::Result::Ok;
911 use std::string::ToString;
912 match value {
913 "details" => Ok(__FieldTag::__details),
914 "type" => Ok(__FieldTag::__type),
915 _ => Ok(__FieldTag::Unknown(value.to_string())),
916 }
917 }
918 }
919 deserializer.deserialize_identifier(Visitor)
920 }
921 }
922 struct Visitor;
923 impl<'de> serde::de::Visitor<'de> for Visitor {
924 type Value = StateError;
925 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
926 formatter.write_str("struct StateError")
927 }
928 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
929 where
930 A: serde::de::MapAccess<'de>,
931 {
932 #[allow(unused_imports)]
933 use serde::de::Error;
934 use std::option::Option::Some;
935 let mut fields = std::collections::HashSet::new();
936 let mut result = Self::Value::new();
937 while let Some(tag) = map.next_key::<__FieldTag>()? {
938 #[allow(clippy::match_single_binding)]
939 match tag {
940 __FieldTag::__details => {
941 if !fields.insert(__FieldTag::__details) {
942 return std::result::Result::Err(A::Error::duplicate_field(
943 "multiple values for details",
944 ));
945 }
946 result.details = map
947 .next_value::<std::option::Option<std::string::String>>()?
948 .unwrap_or_default();
949 }
950 __FieldTag::__type => {
951 if !fields.insert(__FieldTag::__type) {
952 return std::result::Result::Err(A::Error::duplicate_field(
953 "multiple values for type",
954 ));
955 }
956 result.r#type =
957 map.next_value::<std::option::Option<
958 crate::model::workflow::state_error::Type,
959 >>()?
960 .unwrap_or_default();
961 }
962 __FieldTag::Unknown(key) => {
963 let value = map.next_value::<serde_json::Value>()?;
964 result._unknown_fields.insert(key, value);
965 }
966 }
967 }
968 std::result::Result::Ok(result)
969 }
970 }
971 deserializer.deserialize_any(Visitor)
972 }
973 }
974
975 #[doc(hidden)]
976 impl serde::ser::Serialize for StateError {
977 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
978 where
979 S: serde::ser::Serializer,
980 {
981 use serde::ser::SerializeMap;
982 #[allow(unused_imports)]
983 use std::option::Option::Some;
984 let mut state = serializer.serialize_map(std::option::Option::None)?;
985 if !self.details.is_empty() {
986 state.serialize_entry("details", &self.details)?;
987 }
988 if !wkt::internal::is_default(&self.r#type) {
989 state.serialize_entry("type", &self.r#type)?;
990 }
991 if !self._unknown_fields.is_empty() {
992 for (key, value) in self._unknown_fields.iter() {
993 state.serialize_entry(key, &value)?;
994 }
995 }
996 state.end()
997 }
998 }
999
1000 impl std::fmt::Debug for StateError {
1001 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1002 let mut debug_struct = f.debug_struct("StateError");
1003 debug_struct.field("details", &self.details);
1004 debug_struct.field("r#type", &self.r#type);
1005 if !self._unknown_fields.is_empty() {
1006 debug_struct.field("_unknown_fields", &self._unknown_fields);
1007 }
1008 debug_struct.finish()
1009 }
1010 }
1011
1012 pub mod state_error {
1014 #[allow(unused_imports)]
1015 use super::*;
1016
1017 #[derive(Clone, Debug, PartialEq)]
1033 #[non_exhaustive]
1034 pub enum Type {
1035 Unspecified,
1037 KmsError,
1039 UnknownValue(r#type::UnknownValue),
1044 }
1045
1046 #[doc(hidden)]
1047 pub mod r#type {
1048 #[allow(unused_imports)]
1049 use super::*;
1050 #[derive(Clone, Debug, PartialEq)]
1051 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
1052 }
1053
1054 impl Type {
1055 pub fn value(&self) -> std::option::Option<i32> {
1060 match self {
1061 Self::Unspecified => std::option::Option::Some(0),
1062 Self::KmsError => std::option::Option::Some(1),
1063 Self::UnknownValue(u) => u.0.value(),
1064 }
1065 }
1066
1067 pub fn name(&self) -> std::option::Option<&str> {
1072 match self {
1073 Self::Unspecified => std::option::Option::Some("TYPE_UNSPECIFIED"),
1074 Self::KmsError => std::option::Option::Some("KMS_ERROR"),
1075 Self::UnknownValue(u) => u.0.name(),
1076 }
1077 }
1078 }
1079
1080 impl std::default::Default for Type {
1081 fn default() -> Self {
1082 use std::convert::From;
1083 Self::from(0)
1084 }
1085 }
1086
1087 impl std::fmt::Display for Type {
1088 fn fmt(
1089 &self,
1090 f: &mut std::fmt::Formatter<'_>,
1091 ) -> std::result::Result<(), std::fmt::Error> {
1092 wkt::internal::display_enum(f, self.name(), self.value())
1093 }
1094 }
1095
1096 impl std::convert::From<i32> for Type {
1097 fn from(value: i32) -> Self {
1098 match value {
1099 0 => Self::Unspecified,
1100 1 => Self::KmsError,
1101 _ => Self::UnknownValue(r#type::UnknownValue(
1102 wkt::internal::UnknownEnumValue::Integer(value),
1103 )),
1104 }
1105 }
1106 }
1107
1108 impl std::convert::From<&str> for Type {
1109 fn from(value: &str) -> Self {
1110 use std::string::ToString;
1111 match value {
1112 "TYPE_UNSPECIFIED" => Self::Unspecified,
1113 "KMS_ERROR" => Self::KmsError,
1114 _ => Self::UnknownValue(r#type::UnknownValue(
1115 wkt::internal::UnknownEnumValue::String(value.to_string()),
1116 )),
1117 }
1118 }
1119 }
1120
1121 impl serde::ser::Serialize for Type {
1122 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1123 where
1124 S: serde::Serializer,
1125 {
1126 match self {
1127 Self::Unspecified => serializer.serialize_i32(0),
1128 Self::KmsError => serializer.serialize_i32(1),
1129 Self::UnknownValue(u) => u.0.serialize(serializer),
1130 }
1131 }
1132 }
1133
1134 impl<'de> serde::de::Deserialize<'de> for Type {
1135 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1136 where
1137 D: serde::Deserializer<'de>,
1138 {
1139 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Type>::new(
1140 ".google.cloud.workflows.v1.Workflow.StateError.Type",
1141 ))
1142 }
1143 }
1144 }
1145
1146 #[derive(Clone, Debug, PartialEq)]
1162 #[non_exhaustive]
1163 pub enum State {
1164 Unspecified,
1166 Active,
1168 Unavailable,
1170 UnknownValue(state::UnknownValue),
1175 }
1176
1177 #[doc(hidden)]
1178 pub mod state {
1179 #[allow(unused_imports)]
1180 use super::*;
1181 #[derive(Clone, Debug, PartialEq)]
1182 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
1183 }
1184
1185 impl State {
1186 pub fn value(&self) -> std::option::Option<i32> {
1191 match self {
1192 Self::Unspecified => std::option::Option::Some(0),
1193 Self::Active => std::option::Option::Some(1),
1194 Self::Unavailable => std::option::Option::Some(2),
1195 Self::UnknownValue(u) => u.0.value(),
1196 }
1197 }
1198
1199 pub fn name(&self) -> std::option::Option<&str> {
1204 match self {
1205 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
1206 Self::Active => std::option::Option::Some("ACTIVE"),
1207 Self::Unavailable => std::option::Option::Some("UNAVAILABLE"),
1208 Self::UnknownValue(u) => u.0.name(),
1209 }
1210 }
1211 }
1212
1213 impl std::default::Default for State {
1214 fn default() -> Self {
1215 use std::convert::From;
1216 Self::from(0)
1217 }
1218 }
1219
1220 impl std::fmt::Display for State {
1221 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
1222 wkt::internal::display_enum(f, self.name(), self.value())
1223 }
1224 }
1225
1226 impl std::convert::From<i32> for State {
1227 fn from(value: i32) -> Self {
1228 match value {
1229 0 => Self::Unspecified,
1230 1 => Self::Active,
1231 2 => Self::Unavailable,
1232 _ => Self::UnknownValue(state::UnknownValue(
1233 wkt::internal::UnknownEnumValue::Integer(value),
1234 )),
1235 }
1236 }
1237 }
1238
1239 impl std::convert::From<&str> for State {
1240 fn from(value: &str) -> Self {
1241 use std::string::ToString;
1242 match value {
1243 "STATE_UNSPECIFIED" => Self::Unspecified,
1244 "ACTIVE" => Self::Active,
1245 "UNAVAILABLE" => Self::Unavailable,
1246 _ => Self::UnknownValue(state::UnknownValue(
1247 wkt::internal::UnknownEnumValue::String(value.to_string()),
1248 )),
1249 }
1250 }
1251 }
1252
1253 impl serde::ser::Serialize for State {
1254 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1255 where
1256 S: serde::Serializer,
1257 {
1258 match self {
1259 Self::Unspecified => serializer.serialize_i32(0),
1260 Self::Active => serializer.serialize_i32(1),
1261 Self::Unavailable => serializer.serialize_i32(2),
1262 Self::UnknownValue(u) => u.0.serialize(serializer),
1263 }
1264 }
1265 }
1266
1267 impl<'de> serde::de::Deserialize<'de> for State {
1268 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1269 where
1270 D: serde::Deserializer<'de>,
1271 {
1272 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
1273 ".google.cloud.workflows.v1.Workflow.State",
1274 ))
1275 }
1276 }
1277
1278 #[derive(Clone, Debug, PartialEq)]
1295 #[non_exhaustive]
1296 pub enum CallLogLevel {
1297 Unspecified,
1299 LogAllCalls,
1302 LogErrorsOnly,
1304 LogNone,
1306 UnknownValue(call_log_level::UnknownValue),
1311 }
1312
1313 #[doc(hidden)]
1314 pub mod call_log_level {
1315 #[allow(unused_imports)]
1316 use super::*;
1317 #[derive(Clone, Debug, PartialEq)]
1318 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
1319 }
1320
1321 impl CallLogLevel {
1322 pub fn value(&self) -> std::option::Option<i32> {
1327 match self {
1328 Self::Unspecified => std::option::Option::Some(0),
1329 Self::LogAllCalls => std::option::Option::Some(1),
1330 Self::LogErrorsOnly => std::option::Option::Some(2),
1331 Self::LogNone => std::option::Option::Some(3),
1332 Self::UnknownValue(u) => u.0.value(),
1333 }
1334 }
1335
1336 pub fn name(&self) -> std::option::Option<&str> {
1341 match self {
1342 Self::Unspecified => std::option::Option::Some("CALL_LOG_LEVEL_UNSPECIFIED"),
1343 Self::LogAllCalls => std::option::Option::Some("LOG_ALL_CALLS"),
1344 Self::LogErrorsOnly => std::option::Option::Some("LOG_ERRORS_ONLY"),
1345 Self::LogNone => std::option::Option::Some("LOG_NONE"),
1346 Self::UnknownValue(u) => u.0.name(),
1347 }
1348 }
1349 }
1350
1351 impl std::default::Default for CallLogLevel {
1352 fn default() -> Self {
1353 use std::convert::From;
1354 Self::from(0)
1355 }
1356 }
1357
1358 impl std::fmt::Display for CallLogLevel {
1359 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
1360 wkt::internal::display_enum(f, self.name(), self.value())
1361 }
1362 }
1363
1364 impl std::convert::From<i32> for CallLogLevel {
1365 fn from(value: i32) -> Self {
1366 match value {
1367 0 => Self::Unspecified,
1368 1 => Self::LogAllCalls,
1369 2 => Self::LogErrorsOnly,
1370 3 => Self::LogNone,
1371 _ => Self::UnknownValue(call_log_level::UnknownValue(
1372 wkt::internal::UnknownEnumValue::Integer(value),
1373 )),
1374 }
1375 }
1376 }
1377
1378 impl std::convert::From<&str> for CallLogLevel {
1379 fn from(value: &str) -> Self {
1380 use std::string::ToString;
1381 match value {
1382 "CALL_LOG_LEVEL_UNSPECIFIED" => Self::Unspecified,
1383 "LOG_ALL_CALLS" => Self::LogAllCalls,
1384 "LOG_ERRORS_ONLY" => Self::LogErrorsOnly,
1385 "LOG_NONE" => Self::LogNone,
1386 _ => Self::UnknownValue(call_log_level::UnknownValue(
1387 wkt::internal::UnknownEnumValue::String(value.to_string()),
1388 )),
1389 }
1390 }
1391 }
1392
1393 impl serde::ser::Serialize for CallLogLevel {
1394 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1395 where
1396 S: serde::Serializer,
1397 {
1398 match self {
1399 Self::Unspecified => serializer.serialize_i32(0),
1400 Self::LogAllCalls => serializer.serialize_i32(1),
1401 Self::LogErrorsOnly => serializer.serialize_i32(2),
1402 Self::LogNone => serializer.serialize_i32(3),
1403 Self::UnknownValue(u) => u.0.serialize(serializer),
1404 }
1405 }
1406 }
1407
1408 impl<'de> serde::de::Deserialize<'de> for CallLogLevel {
1409 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1410 where
1411 D: serde::Deserializer<'de>,
1412 {
1413 deserializer.deserialize_any(wkt::internal::EnumVisitor::<CallLogLevel>::new(
1414 ".google.cloud.workflows.v1.Workflow.CallLogLevel",
1415 ))
1416 }
1417 }
1418
1419 #[derive(Clone, Debug, PartialEq)]
1423 #[non_exhaustive]
1424 pub enum SourceCode {
1425 SourceContents(std::string::String),
1427 }
1428}
1429
1430#[derive(Clone, Default, PartialEq)]
1436#[non_exhaustive]
1437pub struct ListWorkflowsRequest {
1438 pub parent: std::string::String,
1441
1442 pub page_size: i32,
1447
1448 pub page_token: std::string::String,
1454
1455 pub filter: std::string::String,
1467
1468 pub order_by: std::string::String,
1473
1474 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1475}
1476
1477impl ListWorkflowsRequest {
1478 pub fn new() -> Self {
1479 std::default::Default::default()
1480 }
1481
1482 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1484 self.parent = v.into();
1485 self
1486 }
1487
1488 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
1490 self.page_size = v.into();
1491 self
1492 }
1493
1494 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1496 self.page_token = v.into();
1497 self
1498 }
1499
1500 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1502 self.filter = v.into();
1503 self
1504 }
1505
1506 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1508 self.order_by = v.into();
1509 self
1510 }
1511}
1512
1513impl wkt::message::Message for ListWorkflowsRequest {
1514 fn typename() -> &'static str {
1515 "type.googleapis.com/google.cloud.workflows.v1.ListWorkflowsRequest"
1516 }
1517}
1518
1519#[doc(hidden)]
1520impl<'de> serde::de::Deserialize<'de> for ListWorkflowsRequest {
1521 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1522 where
1523 D: serde::Deserializer<'de>,
1524 {
1525 #[allow(non_camel_case_types)]
1526 #[doc(hidden)]
1527 #[derive(PartialEq, Eq, Hash)]
1528 enum __FieldTag {
1529 __parent,
1530 __page_size,
1531 __page_token,
1532 __filter,
1533 __order_by,
1534 Unknown(std::string::String),
1535 }
1536 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1537 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1538 where
1539 D: serde::Deserializer<'de>,
1540 {
1541 struct Visitor;
1542 impl<'de> serde::de::Visitor<'de> for Visitor {
1543 type Value = __FieldTag;
1544 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1545 formatter.write_str("a field name for ListWorkflowsRequest")
1546 }
1547 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1548 where
1549 E: serde::de::Error,
1550 {
1551 use std::result::Result::Ok;
1552 use std::string::ToString;
1553 match value {
1554 "parent" => Ok(__FieldTag::__parent),
1555 "pageSize" => Ok(__FieldTag::__page_size),
1556 "page_size" => Ok(__FieldTag::__page_size),
1557 "pageToken" => Ok(__FieldTag::__page_token),
1558 "page_token" => Ok(__FieldTag::__page_token),
1559 "filter" => Ok(__FieldTag::__filter),
1560 "orderBy" => Ok(__FieldTag::__order_by),
1561 "order_by" => Ok(__FieldTag::__order_by),
1562 _ => Ok(__FieldTag::Unknown(value.to_string())),
1563 }
1564 }
1565 }
1566 deserializer.deserialize_identifier(Visitor)
1567 }
1568 }
1569 struct Visitor;
1570 impl<'de> serde::de::Visitor<'de> for Visitor {
1571 type Value = ListWorkflowsRequest;
1572 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1573 formatter.write_str("struct ListWorkflowsRequest")
1574 }
1575 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1576 where
1577 A: serde::de::MapAccess<'de>,
1578 {
1579 #[allow(unused_imports)]
1580 use serde::de::Error;
1581 use std::option::Option::Some;
1582 let mut fields = std::collections::HashSet::new();
1583 let mut result = Self::Value::new();
1584 while let Some(tag) = map.next_key::<__FieldTag>()? {
1585 #[allow(clippy::match_single_binding)]
1586 match tag {
1587 __FieldTag::__parent => {
1588 if !fields.insert(__FieldTag::__parent) {
1589 return std::result::Result::Err(A::Error::duplicate_field(
1590 "multiple values for parent",
1591 ));
1592 }
1593 result.parent = map
1594 .next_value::<std::option::Option<std::string::String>>()?
1595 .unwrap_or_default();
1596 }
1597 __FieldTag::__page_size => {
1598 if !fields.insert(__FieldTag::__page_size) {
1599 return std::result::Result::Err(A::Error::duplicate_field(
1600 "multiple values for page_size",
1601 ));
1602 }
1603 struct __With(std::option::Option<i32>);
1604 impl<'de> serde::de::Deserialize<'de> for __With {
1605 fn deserialize<D>(
1606 deserializer: D,
1607 ) -> std::result::Result<Self, D::Error>
1608 where
1609 D: serde::de::Deserializer<'de>,
1610 {
1611 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
1612 }
1613 }
1614 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
1615 }
1616 __FieldTag::__page_token => {
1617 if !fields.insert(__FieldTag::__page_token) {
1618 return std::result::Result::Err(A::Error::duplicate_field(
1619 "multiple values for page_token",
1620 ));
1621 }
1622 result.page_token = map
1623 .next_value::<std::option::Option<std::string::String>>()?
1624 .unwrap_or_default();
1625 }
1626 __FieldTag::__filter => {
1627 if !fields.insert(__FieldTag::__filter) {
1628 return std::result::Result::Err(A::Error::duplicate_field(
1629 "multiple values for filter",
1630 ));
1631 }
1632 result.filter = map
1633 .next_value::<std::option::Option<std::string::String>>()?
1634 .unwrap_or_default();
1635 }
1636 __FieldTag::__order_by => {
1637 if !fields.insert(__FieldTag::__order_by) {
1638 return std::result::Result::Err(A::Error::duplicate_field(
1639 "multiple values for order_by",
1640 ));
1641 }
1642 result.order_by = map
1643 .next_value::<std::option::Option<std::string::String>>()?
1644 .unwrap_or_default();
1645 }
1646 __FieldTag::Unknown(key) => {
1647 let value = map.next_value::<serde_json::Value>()?;
1648 result._unknown_fields.insert(key, value);
1649 }
1650 }
1651 }
1652 std::result::Result::Ok(result)
1653 }
1654 }
1655 deserializer.deserialize_any(Visitor)
1656 }
1657}
1658
1659#[doc(hidden)]
1660impl serde::ser::Serialize for ListWorkflowsRequest {
1661 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1662 where
1663 S: serde::ser::Serializer,
1664 {
1665 use serde::ser::SerializeMap;
1666 #[allow(unused_imports)]
1667 use std::option::Option::Some;
1668 let mut state = serializer.serialize_map(std::option::Option::None)?;
1669 if !self.parent.is_empty() {
1670 state.serialize_entry("parent", &self.parent)?;
1671 }
1672 if !wkt::internal::is_default(&self.page_size) {
1673 struct __With<'a>(&'a i32);
1674 impl<'a> serde::ser::Serialize for __With<'a> {
1675 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1676 where
1677 S: serde::ser::Serializer,
1678 {
1679 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
1680 }
1681 }
1682 state.serialize_entry("pageSize", &__With(&self.page_size))?;
1683 }
1684 if !self.page_token.is_empty() {
1685 state.serialize_entry("pageToken", &self.page_token)?;
1686 }
1687 if !self.filter.is_empty() {
1688 state.serialize_entry("filter", &self.filter)?;
1689 }
1690 if !self.order_by.is_empty() {
1691 state.serialize_entry("orderBy", &self.order_by)?;
1692 }
1693 if !self._unknown_fields.is_empty() {
1694 for (key, value) in self._unknown_fields.iter() {
1695 state.serialize_entry(key, &value)?;
1696 }
1697 }
1698 state.end()
1699 }
1700}
1701
1702impl std::fmt::Debug for ListWorkflowsRequest {
1703 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1704 let mut debug_struct = f.debug_struct("ListWorkflowsRequest");
1705 debug_struct.field("parent", &self.parent);
1706 debug_struct.field("page_size", &self.page_size);
1707 debug_struct.field("page_token", &self.page_token);
1708 debug_struct.field("filter", &self.filter);
1709 debug_struct.field("order_by", &self.order_by);
1710 if !self._unknown_fields.is_empty() {
1711 debug_struct.field("_unknown_fields", &self._unknown_fields);
1712 }
1713 debug_struct.finish()
1714 }
1715}
1716
1717#[derive(Clone, Default, PartialEq)]
1723#[non_exhaustive]
1724pub struct ListWorkflowsResponse {
1725 pub workflows: std::vec::Vec<crate::model::Workflow>,
1727
1728 pub next_page_token: std::string::String,
1731
1732 pub unreachable: std::vec::Vec<std::string::String>,
1734
1735 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1736}
1737
1738impl ListWorkflowsResponse {
1739 pub fn new() -> Self {
1740 std::default::Default::default()
1741 }
1742
1743 pub fn set_workflows<T, V>(mut self, v: T) -> Self
1745 where
1746 T: std::iter::IntoIterator<Item = V>,
1747 V: std::convert::Into<crate::model::Workflow>,
1748 {
1749 use std::iter::Iterator;
1750 self.workflows = v.into_iter().map(|i| i.into()).collect();
1751 self
1752 }
1753
1754 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1756 self.next_page_token = v.into();
1757 self
1758 }
1759
1760 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
1762 where
1763 T: std::iter::IntoIterator<Item = V>,
1764 V: std::convert::Into<std::string::String>,
1765 {
1766 use std::iter::Iterator;
1767 self.unreachable = v.into_iter().map(|i| i.into()).collect();
1768 self
1769 }
1770}
1771
1772impl wkt::message::Message for ListWorkflowsResponse {
1773 fn typename() -> &'static str {
1774 "type.googleapis.com/google.cloud.workflows.v1.ListWorkflowsResponse"
1775 }
1776}
1777
1778#[doc(hidden)]
1779impl gax::paginator::internal::PageableResponse for ListWorkflowsResponse {
1780 type PageItem = crate::model::Workflow;
1781
1782 fn items(self) -> std::vec::Vec<Self::PageItem> {
1783 self.workflows
1784 }
1785
1786 fn next_page_token(&self) -> std::string::String {
1787 use std::clone::Clone;
1788 self.next_page_token.clone()
1789 }
1790}
1791
1792#[doc(hidden)]
1793impl<'de> serde::de::Deserialize<'de> for ListWorkflowsResponse {
1794 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1795 where
1796 D: serde::Deserializer<'de>,
1797 {
1798 #[allow(non_camel_case_types)]
1799 #[doc(hidden)]
1800 #[derive(PartialEq, Eq, Hash)]
1801 enum __FieldTag {
1802 __workflows,
1803 __next_page_token,
1804 __unreachable,
1805 Unknown(std::string::String),
1806 }
1807 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1808 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1809 where
1810 D: serde::Deserializer<'de>,
1811 {
1812 struct Visitor;
1813 impl<'de> serde::de::Visitor<'de> for Visitor {
1814 type Value = __FieldTag;
1815 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1816 formatter.write_str("a field name for ListWorkflowsResponse")
1817 }
1818 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1819 where
1820 E: serde::de::Error,
1821 {
1822 use std::result::Result::Ok;
1823 use std::string::ToString;
1824 match value {
1825 "workflows" => Ok(__FieldTag::__workflows),
1826 "nextPageToken" => Ok(__FieldTag::__next_page_token),
1827 "next_page_token" => Ok(__FieldTag::__next_page_token),
1828 "unreachable" => Ok(__FieldTag::__unreachable),
1829 _ => Ok(__FieldTag::Unknown(value.to_string())),
1830 }
1831 }
1832 }
1833 deserializer.deserialize_identifier(Visitor)
1834 }
1835 }
1836 struct Visitor;
1837 impl<'de> serde::de::Visitor<'de> for Visitor {
1838 type Value = ListWorkflowsResponse;
1839 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1840 formatter.write_str("struct ListWorkflowsResponse")
1841 }
1842 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1843 where
1844 A: serde::de::MapAccess<'de>,
1845 {
1846 #[allow(unused_imports)]
1847 use serde::de::Error;
1848 use std::option::Option::Some;
1849 let mut fields = std::collections::HashSet::new();
1850 let mut result = Self::Value::new();
1851 while let Some(tag) = map.next_key::<__FieldTag>()? {
1852 #[allow(clippy::match_single_binding)]
1853 match tag {
1854 __FieldTag::__workflows => {
1855 if !fields.insert(__FieldTag::__workflows) {
1856 return std::result::Result::Err(A::Error::duplicate_field(
1857 "multiple values for workflows",
1858 ));
1859 }
1860 result.workflows = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Workflow>>>()?.unwrap_or_default();
1861 }
1862 __FieldTag::__next_page_token => {
1863 if !fields.insert(__FieldTag::__next_page_token) {
1864 return std::result::Result::Err(A::Error::duplicate_field(
1865 "multiple values for next_page_token",
1866 ));
1867 }
1868 result.next_page_token = map
1869 .next_value::<std::option::Option<std::string::String>>()?
1870 .unwrap_or_default();
1871 }
1872 __FieldTag::__unreachable => {
1873 if !fields.insert(__FieldTag::__unreachable) {
1874 return std::result::Result::Err(A::Error::duplicate_field(
1875 "multiple values for unreachable",
1876 ));
1877 }
1878 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
1879 }
1880 __FieldTag::Unknown(key) => {
1881 let value = map.next_value::<serde_json::Value>()?;
1882 result._unknown_fields.insert(key, value);
1883 }
1884 }
1885 }
1886 std::result::Result::Ok(result)
1887 }
1888 }
1889 deserializer.deserialize_any(Visitor)
1890 }
1891}
1892
1893#[doc(hidden)]
1894impl serde::ser::Serialize for ListWorkflowsResponse {
1895 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1896 where
1897 S: serde::ser::Serializer,
1898 {
1899 use serde::ser::SerializeMap;
1900 #[allow(unused_imports)]
1901 use std::option::Option::Some;
1902 let mut state = serializer.serialize_map(std::option::Option::None)?;
1903 if !self.workflows.is_empty() {
1904 state.serialize_entry("workflows", &self.workflows)?;
1905 }
1906 if !self.next_page_token.is_empty() {
1907 state.serialize_entry("nextPageToken", &self.next_page_token)?;
1908 }
1909 if !self.unreachable.is_empty() {
1910 state.serialize_entry("unreachable", &self.unreachable)?;
1911 }
1912 if !self._unknown_fields.is_empty() {
1913 for (key, value) in self._unknown_fields.iter() {
1914 state.serialize_entry(key, &value)?;
1915 }
1916 }
1917 state.end()
1918 }
1919}
1920
1921impl std::fmt::Debug for ListWorkflowsResponse {
1922 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1923 let mut debug_struct = f.debug_struct("ListWorkflowsResponse");
1924 debug_struct.field("workflows", &self.workflows);
1925 debug_struct.field("next_page_token", &self.next_page_token);
1926 debug_struct.field("unreachable", &self.unreachable);
1927 if !self._unknown_fields.is_empty() {
1928 debug_struct.field("_unknown_fields", &self._unknown_fields);
1929 }
1930 debug_struct.finish()
1931 }
1932}
1933
1934#[derive(Clone, Default, PartialEq)]
1939#[non_exhaustive]
1940pub struct GetWorkflowRequest {
1941 pub name: std::string::String,
1944
1945 pub revision_id: std::string::String,
1951
1952 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1953}
1954
1955impl GetWorkflowRequest {
1956 pub fn new() -> Self {
1957 std::default::Default::default()
1958 }
1959
1960 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1962 self.name = v.into();
1963 self
1964 }
1965
1966 pub fn set_revision_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1968 self.revision_id = v.into();
1969 self
1970 }
1971}
1972
1973impl wkt::message::Message for GetWorkflowRequest {
1974 fn typename() -> &'static str {
1975 "type.googleapis.com/google.cloud.workflows.v1.GetWorkflowRequest"
1976 }
1977}
1978
1979#[doc(hidden)]
1980impl<'de> serde::de::Deserialize<'de> for GetWorkflowRequest {
1981 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1982 where
1983 D: serde::Deserializer<'de>,
1984 {
1985 #[allow(non_camel_case_types)]
1986 #[doc(hidden)]
1987 #[derive(PartialEq, Eq, Hash)]
1988 enum __FieldTag {
1989 __name,
1990 __revision_id,
1991 Unknown(std::string::String),
1992 }
1993 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1994 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1995 where
1996 D: serde::Deserializer<'de>,
1997 {
1998 struct Visitor;
1999 impl<'de> serde::de::Visitor<'de> for Visitor {
2000 type Value = __FieldTag;
2001 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2002 formatter.write_str("a field name for GetWorkflowRequest")
2003 }
2004 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2005 where
2006 E: serde::de::Error,
2007 {
2008 use std::result::Result::Ok;
2009 use std::string::ToString;
2010 match value {
2011 "name" => Ok(__FieldTag::__name),
2012 "revisionId" => Ok(__FieldTag::__revision_id),
2013 "revision_id" => Ok(__FieldTag::__revision_id),
2014 _ => Ok(__FieldTag::Unknown(value.to_string())),
2015 }
2016 }
2017 }
2018 deserializer.deserialize_identifier(Visitor)
2019 }
2020 }
2021 struct Visitor;
2022 impl<'de> serde::de::Visitor<'de> for Visitor {
2023 type Value = GetWorkflowRequest;
2024 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2025 formatter.write_str("struct GetWorkflowRequest")
2026 }
2027 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2028 where
2029 A: serde::de::MapAccess<'de>,
2030 {
2031 #[allow(unused_imports)]
2032 use serde::de::Error;
2033 use std::option::Option::Some;
2034 let mut fields = std::collections::HashSet::new();
2035 let mut result = Self::Value::new();
2036 while let Some(tag) = map.next_key::<__FieldTag>()? {
2037 #[allow(clippy::match_single_binding)]
2038 match tag {
2039 __FieldTag::__name => {
2040 if !fields.insert(__FieldTag::__name) {
2041 return std::result::Result::Err(A::Error::duplicate_field(
2042 "multiple values for name",
2043 ));
2044 }
2045 result.name = map
2046 .next_value::<std::option::Option<std::string::String>>()?
2047 .unwrap_or_default();
2048 }
2049 __FieldTag::__revision_id => {
2050 if !fields.insert(__FieldTag::__revision_id) {
2051 return std::result::Result::Err(A::Error::duplicate_field(
2052 "multiple values for revision_id",
2053 ));
2054 }
2055 result.revision_id = map
2056 .next_value::<std::option::Option<std::string::String>>()?
2057 .unwrap_or_default();
2058 }
2059 __FieldTag::Unknown(key) => {
2060 let value = map.next_value::<serde_json::Value>()?;
2061 result._unknown_fields.insert(key, value);
2062 }
2063 }
2064 }
2065 std::result::Result::Ok(result)
2066 }
2067 }
2068 deserializer.deserialize_any(Visitor)
2069 }
2070}
2071
2072#[doc(hidden)]
2073impl serde::ser::Serialize for GetWorkflowRequest {
2074 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2075 where
2076 S: serde::ser::Serializer,
2077 {
2078 use serde::ser::SerializeMap;
2079 #[allow(unused_imports)]
2080 use std::option::Option::Some;
2081 let mut state = serializer.serialize_map(std::option::Option::None)?;
2082 if !self.name.is_empty() {
2083 state.serialize_entry("name", &self.name)?;
2084 }
2085 if !self.revision_id.is_empty() {
2086 state.serialize_entry("revisionId", &self.revision_id)?;
2087 }
2088 if !self._unknown_fields.is_empty() {
2089 for (key, value) in self._unknown_fields.iter() {
2090 state.serialize_entry(key, &value)?;
2091 }
2092 }
2093 state.end()
2094 }
2095}
2096
2097impl std::fmt::Debug for GetWorkflowRequest {
2098 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2099 let mut debug_struct = f.debug_struct("GetWorkflowRequest");
2100 debug_struct.field("name", &self.name);
2101 debug_struct.field("revision_id", &self.revision_id);
2102 if !self._unknown_fields.is_empty() {
2103 debug_struct.field("_unknown_fields", &self._unknown_fields);
2104 }
2105 debug_struct.finish()
2106 }
2107}
2108
2109#[derive(Clone, Default, PartialEq)]
2115#[non_exhaustive]
2116pub struct CreateWorkflowRequest {
2117 pub parent: std::string::String,
2120
2121 pub workflow: std::option::Option<crate::model::Workflow>,
2123
2124 pub workflow_id: std::string::String,
2133
2134 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2135}
2136
2137impl CreateWorkflowRequest {
2138 pub fn new() -> Self {
2139 std::default::Default::default()
2140 }
2141
2142 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2144 self.parent = v.into();
2145 self
2146 }
2147
2148 pub fn set_workflow<T>(mut self, v: T) -> Self
2150 where
2151 T: std::convert::Into<crate::model::Workflow>,
2152 {
2153 self.workflow = std::option::Option::Some(v.into());
2154 self
2155 }
2156
2157 pub fn set_or_clear_workflow<T>(mut self, v: std::option::Option<T>) -> Self
2159 where
2160 T: std::convert::Into<crate::model::Workflow>,
2161 {
2162 self.workflow = v.map(|x| x.into());
2163 self
2164 }
2165
2166 pub fn set_workflow_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2168 self.workflow_id = v.into();
2169 self
2170 }
2171}
2172
2173impl wkt::message::Message for CreateWorkflowRequest {
2174 fn typename() -> &'static str {
2175 "type.googleapis.com/google.cloud.workflows.v1.CreateWorkflowRequest"
2176 }
2177}
2178
2179#[doc(hidden)]
2180impl<'de> serde::de::Deserialize<'de> for CreateWorkflowRequest {
2181 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2182 where
2183 D: serde::Deserializer<'de>,
2184 {
2185 #[allow(non_camel_case_types)]
2186 #[doc(hidden)]
2187 #[derive(PartialEq, Eq, Hash)]
2188 enum __FieldTag {
2189 __parent,
2190 __workflow,
2191 __workflow_id,
2192 Unknown(std::string::String),
2193 }
2194 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2195 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2196 where
2197 D: serde::Deserializer<'de>,
2198 {
2199 struct Visitor;
2200 impl<'de> serde::de::Visitor<'de> for Visitor {
2201 type Value = __FieldTag;
2202 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2203 formatter.write_str("a field name for CreateWorkflowRequest")
2204 }
2205 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2206 where
2207 E: serde::de::Error,
2208 {
2209 use std::result::Result::Ok;
2210 use std::string::ToString;
2211 match value {
2212 "parent" => Ok(__FieldTag::__parent),
2213 "workflow" => Ok(__FieldTag::__workflow),
2214 "workflowId" => Ok(__FieldTag::__workflow_id),
2215 "workflow_id" => Ok(__FieldTag::__workflow_id),
2216 _ => Ok(__FieldTag::Unknown(value.to_string())),
2217 }
2218 }
2219 }
2220 deserializer.deserialize_identifier(Visitor)
2221 }
2222 }
2223 struct Visitor;
2224 impl<'de> serde::de::Visitor<'de> for Visitor {
2225 type Value = CreateWorkflowRequest;
2226 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2227 formatter.write_str("struct CreateWorkflowRequest")
2228 }
2229 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2230 where
2231 A: serde::de::MapAccess<'de>,
2232 {
2233 #[allow(unused_imports)]
2234 use serde::de::Error;
2235 use std::option::Option::Some;
2236 let mut fields = std::collections::HashSet::new();
2237 let mut result = Self::Value::new();
2238 while let Some(tag) = map.next_key::<__FieldTag>()? {
2239 #[allow(clippy::match_single_binding)]
2240 match tag {
2241 __FieldTag::__parent => {
2242 if !fields.insert(__FieldTag::__parent) {
2243 return std::result::Result::Err(A::Error::duplicate_field(
2244 "multiple values for parent",
2245 ));
2246 }
2247 result.parent = map
2248 .next_value::<std::option::Option<std::string::String>>()?
2249 .unwrap_or_default();
2250 }
2251 __FieldTag::__workflow => {
2252 if !fields.insert(__FieldTag::__workflow) {
2253 return std::result::Result::Err(A::Error::duplicate_field(
2254 "multiple values for workflow",
2255 ));
2256 }
2257 result.workflow =
2258 map.next_value::<std::option::Option<crate::model::Workflow>>()?;
2259 }
2260 __FieldTag::__workflow_id => {
2261 if !fields.insert(__FieldTag::__workflow_id) {
2262 return std::result::Result::Err(A::Error::duplicate_field(
2263 "multiple values for workflow_id",
2264 ));
2265 }
2266 result.workflow_id = map
2267 .next_value::<std::option::Option<std::string::String>>()?
2268 .unwrap_or_default();
2269 }
2270 __FieldTag::Unknown(key) => {
2271 let value = map.next_value::<serde_json::Value>()?;
2272 result._unknown_fields.insert(key, value);
2273 }
2274 }
2275 }
2276 std::result::Result::Ok(result)
2277 }
2278 }
2279 deserializer.deserialize_any(Visitor)
2280 }
2281}
2282
2283#[doc(hidden)]
2284impl serde::ser::Serialize for CreateWorkflowRequest {
2285 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2286 where
2287 S: serde::ser::Serializer,
2288 {
2289 use serde::ser::SerializeMap;
2290 #[allow(unused_imports)]
2291 use std::option::Option::Some;
2292 let mut state = serializer.serialize_map(std::option::Option::None)?;
2293 if !self.parent.is_empty() {
2294 state.serialize_entry("parent", &self.parent)?;
2295 }
2296 if self.workflow.is_some() {
2297 state.serialize_entry("workflow", &self.workflow)?;
2298 }
2299 if !self.workflow_id.is_empty() {
2300 state.serialize_entry("workflowId", &self.workflow_id)?;
2301 }
2302 if !self._unknown_fields.is_empty() {
2303 for (key, value) in self._unknown_fields.iter() {
2304 state.serialize_entry(key, &value)?;
2305 }
2306 }
2307 state.end()
2308 }
2309}
2310
2311impl std::fmt::Debug for CreateWorkflowRequest {
2312 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2313 let mut debug_struct = f.debug_struct("CreateWorkflowRequest");
2314 debug_struct.field("parent", &self.parent);
2315 debug_struct.field("workflow", &self.workflow);
2316 debug_struct.field("workflow_id", &self.workflow_id);
2317 if !self._unknown_fields.is_empty() {
2318 debug_struct.field("_unknown_fields", &self._unknown_fields);
2319 }
2320 debug_struct.finish()
2321 }
2322}
2323
2324#[derive(Clone, Default, PartialEq)]
2330#[non_exhaustive]
2331pub struct DeleteWorkflowRequest {
2332 pub name: std::string::String,
2335
2336 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2337}
2338
2339impl DeleteWorkflowRequest {
2340 pub fn new() -> Self {
2341 std::default::Default::default()
2342 }
2343
2344 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2346 self.name = v.into();
2347 self
2348 }
2349}
2350
2351impl wkt::message::Message for DeleteWorkflowRequest {
2352 fn typename() -> &'static str {
2353 "type.googleapis.com/google.cloud.workflows.v1.DeleteWorkflowRequest"
2354 }
2355}
2356
2357#[doc(hidden)]
2358impl<'de> serde::de::Deserialize<'de> for DeleteWorkflowRequest {
2359 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2360 where
2361 D: serde::Deserializer<'de>,
2362 {
2363 #[allow(non_camel_case_types)]
2364 #[doc(hidden)]
2365 #[derive(PartialEq, Eq, Hash)]
2366 enum __FieldTag {
2367 __name,
2368 Unknown(std::string::String),
2369 }
2370 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2371 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2372 where
2373 D: serde::Deserializer<'de>,
2374 {
2375 struct Visitor;
2376 impl<'de> serde::de::Visitor<'de> for Visitor {
2377 type Value = __FieldTag;
2378 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2379 formatter.write_str("a field name for DeleteWorkflowRequest")
2380 }
2381 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2382 where
2383 E: serde::de::Error,
2384 {
2385 use std::result::Result::Ok;
2386 use std::string::ToString;
2387 match value {
2388 "name" => Ok(__FieldTag::__name),
2389 _ => Ok(__FieldTag::Unknown(value.to_string())),
2390 }
2391 }
2392 }
2393 deserializer.deserialize_identifier(Visitor)
2394 }
2395 }
2396 struct Visitor;
2397 impl<'de> serde::de::Visitor<'de> for Visitor {
2398 type Value = DeleteWorkflowRequest;
2399 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2400 formatter.write_str("struct DeleteWorkflowRequest")
2401 }
2402 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2403 where
2404 A: serde::de::MapAccess<'de>,
2405 {
2406 #[allow(unused_imports)]
2407 use serde::de::Error;
2408 use std::option::Option::Some;
2409 let mut fields = std::collections::HashSet::new();
2410 let mut result = Self::Value::new();
2411 while let Some(tag) = map.next_key::<__FieldTag>()? {
2412 #[allow(clippy::match_single_binding)]
2413 match tag {
2414 __FieldTag::__name => {
2415 if !fields.insert(__FieldTag::__name) {
2416 return std::result::Result::Err(A::Error::duplicate_field(
2417 "multiple values for name",
2418 ));
2419 }
2420 result.name = map
2421 .next_value::<std::option::Option<std::string::String>>()?
2422 .unwrap_or_default();
2423 }
2424 __FieldTag::Unknown(key) => {
2425 let value = map.next_value::<serde_json::Value>()?;
2426 result._unknown_fields.insert(key, value);
2427 }
2428 }
2429 }
2430 std::result::Result::Ok(result)
2431 }
2432 }
2433 deserializer.deserialize_any(Visitor)
2434 }
2435}
2436
2437#[doc(hidden)]
2438impl serde::ser::Serialize for DeleteWorkflowRequest {
2439 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2440 where
2441 S: serde::ser::Serializer,
2442 {
2443 use serde::ser::SerializeMap;
2444 #[allow(unused_imports)]
2445 use std::option::Option::Some;
2446 let mut state = serializer.serialize_map(std::option::Option::None)?;
2447 if !self.name.is_empty() {
2448 state.serialize_entry("name", &self.name)?;
2449 }
2450 if !self._unknown_fields.is_empty() {
2451 for (key, value) in self._unknown_fields.iter() {
2452 state.serialize_entry(key, &value)?;
2453 }
2454 }
2455 state.end()
2456 }
2457}
2458
2459impl std::fmt::Debug for DeleteWorkflowRequest {
2460 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2461 let mut debug_struct = f.debug_struct("DeleteWorkflowRequest");
2462 debug_struct.field("name", &self.name);
2463 if !self._unknown_fields.is_empty() {
2464 debug_struct.field("_unknown_fields", &self._unknown_fields);
2465 }
2466 debug_struct.finish()
2467 }
2468}
2469
2470#[derive(Clone, Default, PartialEq)]
2476#[non_exhaustive]
2477pub struct UpdateWorkflowRequest {
2478 pub workflow: std::option::Option<crate::model::Workflow>,
2480
2481 pub update_mask: std::option::Option<wkt::FieldMask>,
2484
2485 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2486}
2487
2488impl UpdateWorkflowRequest {
2489 pub fn new() -> Self {
2490 std::default::Default::default()
2491 }
2492
2493 pub fn set_workflow<T>(mut self, v: T) -> Self
2495 where
2496 T: std::convert::Into<crate::model::Workflow>,
2497 {
2498 self.workflow = std::option::Option::Some(v.into());
2499 self
2500 }
2501
2502 pub fn set_or_clear_workflow<T>(mut self, v: std::option::Option<T>) -> Self
2504 where
2505 T: std::convert::Into<crate::model::Workflow>,
2506 {
2507 self.workflow = v.map(|x| x.into());
2508 self
2509 }
2510
2511 pub fn set_update_mask<T>(mut self, v: T) -> Self
2513 where
2514 T: std::convert::Into<wkt::FieldMask>,
2515 {
2516 self.update_mask = std::option::Option::Some(v.into());
2517 self
2518 }
2519
2520 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
2522 where
2523 T: std::convert::Into<wkt::FieldMask>,
2524 {
2525 self.update_mask = v.map(|x| x.into());
2526 self
2527 }
2528}
2529
2530impl wkt::message::Message for UpdateWorkflowRequest {
2531 fn typename() -> &'static str {
2532 "type.googleapis.com/google.cloud.workflows.v1.UpdateWorkflowRequest"
2533 }
2534}
2535
2536#[doc(hidden)]
2537impl<'de> serde::de::Deserialize<'de> for UpdateWorkflowRequest {
2538 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2539 where
2540 D: serde::Deserializer<'de>,
2541 {
2542 #[allow(non_camel_case_types)]
2543 #[doc(hidden)]
2544 #[derive(PartialEq, Eq, Hash)]
2545 enum __FieldTag {
2546 __workflow,
2547 __update_mask,
2548 Unknown(std::string::String),
2549 }
2550 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2551 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2552 where
2553 D: serde::Deserializer<'de>,
2554 {
2555 struct Visitor;
2556 impl<'de> serde::de::Visitor<'de> for Visitor {
2557 type Value = __FieldTag;
2558 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2559 formatter.write_str("a field name for UpdateWorkflowRequest")
2560 }
2561 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2562 where
2563 E: serde::de::Error,
2564 {
2565 use std::result::Result::Ok;
2566 use std::string::ToString;
2567 match value {
2568 "workflow" => Ok(__FieldTag::__workflow),
2569 "updateMask" => Ok(__FieldTag::__update_mask),
2570 "update_mask" => Ok(__FieldTag::__update_mask),
2571 _ => Ok(__FieldTag::Unknown(value.to_string())),
2572 }
2573 }
2574 }
2575 deserializer.deserialize_identifier(Visitor)
2576 }
2577 }
2578 struct Visitor;
2579 impl<'de> serde::de::Visitor<'de> for Visitor {
2580 type Value = UpdateWorkflowRequest;
2581 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2582 formatter.write_str("struct UpdateWorkflowRequest")
2583 }
2584 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2585 where
2586 A: serde::de::MapAccess<'de>,
2587 {
2588 #[allow(unused_imports)]
2589 use serde::de::Error;
2590 use std::option::Option::Some;
2591 let mut fields = std::collections::HashSet::new();
2592 let mut result = Self::Value::new();
2593 while let Some(tag) = map.next_key::<__FieldTag>()? {
2594 #[allow(clippy::match_single_binding)]
2595 match tag {
2596 __FieldTag::__workflow => {
2597 if !fields.insert(__FieldTag::__workflow) {
2598 return std::result::Result::Err(A::Error::duplicate_field(
2599 "multiple values for workflow",
2600 ));
2601 }
2602 result.workflow =
2603 map.next_value::<std::option::Option<crate::model::Workflow>>()?;
2604 }
2605 __FieldTag::__update_mask => {
2606 if !fields.insert(__FieldTag::__update_mask) {
2607 return std::result::Result::Err(A::Error::duplicate_field(
2608 "multiple values for update_mask",
2609 ));
2610 }
2611 result.update_mask =
2612 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
2613 }
2614 __FieldTag::Unknown(key) => {
2615 let value = map.next_value::<serde_json::Value>()?;
2616 result._unknown_fields.insert(key, value);
2617 }
2618 }
2619 }
2620 std::result::Result::Ok(result)
2621 }
2622 }
2623 deserializer.deserialize_any(Visitor)
2624 }
2625}
2626
2627#[doc(hidden)]
2628impl serde::ser::Serialize for UpdateWorkflowRequest {
2629 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2630 where
2631 S: serde::ser::Serializer,
2632 {
2633 use serde::ser::SerializeMap;
2634 #[allow(unused_imports)]
2635 use std::option::Option::Some;
2636 let mut state = serializer.serialize_map(std::option::Option::None)?;
2637 if self.workflow.is_some() {
2638 state.serialize_entry("workflow", &self.workflow)?;
2639 }
2640 if self.update_mask.is_some() {
2641 state.serialize_entry("updateMask", &self.update_mask)?;
2642 }
2643 if !self._unknown_fields.is_empty() {
2644 for (key, value) in self._unknown_fields.iter() {
2645 state.serialize_entry(key, &value)?;
2646 }
2647 }
2648 state.end()
2649 }
2650}
2651
2652impl std::fmt::Debug for UpdateWorkflowRequest {
2653 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2654 let mut debug_struct = f.debug_struct("UpdateWorkflowRequest");
2655 debug_struct.field("workflow", &self.workflow);
2656 debug_struct.field("update_mask", &self.update_mask);
2657 if !self._unknown_fields.is_empty() {
2658 debug_struct.field("_unknown_fields", &self._unknown_fields);
2659 }
2660 debug_struct.finish()
2661 }
2662}
2663
2664#[derive(Clone, Default, PartialEq)]
2666#[non_exhaustive]
2667pub struct OperationMetadata {
2668 pub create_time: std::option::Option<wkt::Timestamp>,
2670
2671 pub end_time: std::option::Option<wkt::Timestamp>,
2673
2674 pub target: std::string::String,
2676
2677 pub verb: std::string::String,
2679
2680 pub api_version: std::string::String,
2682
2683 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2684}
2685
2686impl OperationMetadata {
2687 pub fn new() -> Self {
2688 std::default::Default::default()
2689 }
2690
2691 pub fn set_create_time<T>(mut self, v: T) -> Self
2693 where
2694 T: std::convert::Into<wkt::Timestamp>,
2695 {
2696 self.create_time = std::option::Option::Some(v.into());
2697 self
2698 }
2699
2700 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
2702 where
2703 T: std::convert::Into<wkt::Timestamp>,
2704 {
2705 self.create_time = v.map(|x| x.into());
2706 self
2707 }
2708
2709 pub fn set_end_time<T>(mut self, v: T) -> Self
2711 where
2712 T: std::convert::Into<wkt::Timestamp>,
2713 {
2714 self.end_time = std::option::Option::Some(v.into());
2715 self
2716 }
2717
2718 pub fn set_or_clear_end_time<T>(mut self, v: std::option::Option<T>) -> Self
2720 where
2721 T: std::convert::Into<wkt::Timestamp>,
2722 {
2723 self.end_time = v.map(|x| x.into());
2724 self
2725 }
2726
2727 pub fn set_target<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2729 self.target = v.into();
2730 self
2731 }
2732
2733 pub fn set_verb<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2735 self.verb = v.into();
2736 self
2737 }
2738
2739 pub fn set_api_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2741 self.api_version = v.into();
2742 self
2743 }
2744}
2745
2746impl wkt::message::Message for OperationMetadata {
2747 fn typename() -> &'static str {
2748 "type.googleapis.com/google.cloud.workflows.v1.OperationMetadata"
2749 }
2750}
2751
2752#[doc(hidden)]
2753impl<'de> serde::de::Deserialize<'de> for OperationMetadata {
2754 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2755 where
2756 D: serde::Deserializer<'de>,
2757 {
2758 #[allow(non_camel_case_types)]
2759 #[doc(hidden)]
2760 #[derive(PartialEq, Eq, Hash)]
2761 enum __FieldTag {
2762 __create_time,
2763 __end_time,
2764 __target,
2765 __verb,
2766 __api_version,
2767 Unknown(std::string::String),
2768 }
2769 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2770 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2771 where
2772 D: serde::Deserializer<'de>,
2773 {
2774 struct Visitor;
2775 impl<'de> serde::de::Visitor<'de> for Visitor {
2776 type Value = __FieldTag;
2777 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2778 formatter.write_str("a field name for OperationMetadata")
2779 }
2780 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2781 where
2782 E: serde::de::Error,
2783 {
2784 use std::result::Result::Ok;
2785 use std::string::ToString;
2786 match value {
2787 "createTime" => Ok(__FieldTag::__create_time),
2788 "create_time" => Ok(__FieldTag::__create_time),
2789 "endTime" => Ok(__FieldTag::__end_time),
2790 "end_time" => Ok(__FieldTag::__end_time),
2791 "target" => Ok(__FieldTag::__target),
2792 "verb" => Ok(__FieldTag::__verb),
2793 "apiVersion" => Ok(__FieldTag::__api_version),
2794 "api_version" => Ok(__FieldTag::__api_version),
2795 _ => Ok(__FieldTag::Unknown(value.to_string())),
2796 }
2797 }
2798 }
2799 deserializer.deserialize_identifier(Visitor)
2800 }
2801 }
2802 struct Visitor;
2803 impl<'de> serde::de::Visitor<'de> for Visitor {
2804 type Value = OperationMetadata;
2805 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2806 formatter.write_str("struct OperationMetadata")
2807 }
2808 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2809 where
2810 A: serde::de::MapAccess<'de>,
2811 {
2812 #[allow(unused_imports)]
2813 use serde::de::Error;
2814 use std::option::Option::Some;
2815 let mut fields = std::collections::HashSet::new();
2816 let mut result = Self::Value::new();
2817 while let Some(tag) = map.next_key::<__FieldTag>()? {
2818 #[allow(clippy::match_single_binding)]
2819 match tag {
2820 __FieldTag::__create_time => {
2821 if !fields.insert(__FieldTag::__create_time) {
2822 return std::result::Result::Err(A::Error::duplicate_field(
2823 "multiple values for create_time",
2824 ));
2825 }
2826 result.create_time =
2827 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
2828 }
2829 __FieldTag::__end_time => {
2830 if !fields.insert(__FieldTag::__end_time) {
2831 return std::result::Result::Err(A::Error::duplicate_field(
2832 "multiple values for end_time",
2833 ));
2834 }
2835 result.end_time =
2836 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
2837 }
2838 __FieldTag::__target => {
2839 if !fields.insert(__FieldTag::__target) {
2840 return std::result::Result::Err(A::Error::duplicate_field(
2841 "multiple values for target",
2842 ));
2843 }
2844 result.target = map
2845 .next_value::<std::option::Option<std::string::String>>()?
2846 .unwrap_or_default();
2847 }
2848 __FieldTag::__verb => {
2849 if !fields.insert(__FieldTag::__verb) {
2850 return std::result::Result::Err(A::Error::duplicate_field(
2851 "multiple values for verb",
2852 ));
2853 }
2854 result.verb = map
2855 .next_value::<std::option::Option<std::string::String>>()?
2856 .unwrap_or_default();
2857 }
2858 __FieldTag::__api_version => {
2859 if !fields.insert(__FieldTag::__api_version) {
2860 return std::result::Result::Err(A::Error::duplicate_field(
2861 "multiple values for api_version",
2862 ));
2863 }
2864 result.api_version = map
2865 .next_value::<std::option::Option<std::string::String>>()?
2866 .unwrap_or_default();
2867 }
2868 __FieldTag::Unknown(key) => {
2869 let value = map.next_value::<serde_json::Value>()?;
2870 result._unknown_fields.insert(key, value);
2871 }
2872 }
2873 }
2874 std::result::Result::Ok(result)
2875 }
2876 }
2877 deserializer.deserialize_any(Visitor)
2878 }
2879}
2880
2881#[doc(hidden)]
2882impl serde::ser::Serialize for OperationMetadata {
2883 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2884 where
2885 S: serde::ser::Serializer,
2886 {
2887 use serde::ser::SerializeMap;
2888 #[allow(unused_imports)]
2889 use std::option::Option::Some;
2890 let mut state = serializer.serialize_map(std::option::Option::None)?;
2891 if self.create_time.is_some() {
2892 state.serialize_entry("createTime", &self.create_time)?;
2893 }
2894 if self.end_time.is_some() {
2895 state.serialize_entry("endTime", &self.end_time)?;
2896 }
2897 if !self.target.is_empty() {
2898 state.serialize_entry("target", &self.target)?;
2899 }
2900 if !self.verb.is_empty() {
2901 state.serialize_entry("verb", &self.verb)?;
2902 }
2903 if !self.api_version.is_empty() {
2904 state.serialize_entry("apiVersion", &self.api_version)?;
2905 }
2906 if !self._unknown_fields.is_empty() {
2907 for (key, value) in self._unknown_fields.iter() {
2908 state.serialize_entry(key, &value)?;
2909 }
2910 }
2911 state.end()
2912 }
2913}
2914
2915impl std::fmt::Debug for OperationMetadata {
2916 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2917 let mut debug_struct = f.debug_struct("OperationMetadata");
2918 debug_struct.field("create_time", &self.create_time);
2919 debug_struct.field("end_time", &self.end_time);
2920 debug_struct.field("target", &self.target);
2921 debug_struct.field("verb", &self.verb);
2922 debug_struct.field("api_version", &self.api_version);
2923 if !self._unknown_fields.is_empty() {
2924 debug_struct.field("_unknown_fields", &self._unknown_fields);
2925 }
2926 debug_struct.finish()
2927 }
2928}
2929
2930#[derive(Clone, Default, PartialEq)]
2936#[non_exhaustive]
2937pub struct ListWorkflowRevisionsRequest {
2938 pub name: std::string::String,
2941
2942 pub page_size: i32,
2946
2947 pub page_token: std::string::String,
2950
2951 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2952}
2953
2954impl ListWorkflowRevisionsRequest {
2955 pub fn new() -> Self {
2956 std::default::Default::default()
2957 }
2958
2959 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2961 self.name = v.into();
2962 self
2963 }
2964
2965 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
2967 self.page_size = v.into();
2968 self
2969 }
2970
2971 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2973 self.page_token = v.into();
2974 self
2975 }
2976}
2977
2978impl wkt::message::Message for ListWorkflowRevisionsRequest {
2979 fn typename() -> &'static str {
2980 "type.googleapis.com/google.cloud.workflows.v1.ListWorkflowRevisionsRequest"
2981 }
2982}
2983
2984#[doc(hidden)]
2985impl<'de> serde::de::Deserialize<'de> for ListWorkflowRevisionsRequest {
2986 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2987 where
2988 D: serde::Deserializer<'de>,
2989 {
2990 #[allow(non_camel_case_types)]
2991 #[doc(hidden)]
2992 #[derive(PartialEq, Eq, Hash)]
2993 enum __FieldTag {
2994 __name,
2995 __page_size,
2996 __page_token,
2997 Unknown(std::string::String),
2998 }
2999 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3000 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3001 where
3002 D: serde::Deserializer<'de>,
3003 {
3004 struct Visitor;
3005 impl<'de> serde::de::Visitor<'de> for Visitor {
3006 type Value = __FieldTag;
3007 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3008 formatter.write_str("a field name for ListWorkflowRevisionsRequest")
3009 }
3010 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3011 where
3012 E: serde::de::Error,
3013 {
3014 use std::result::Result::Ok;
3015 use std::string::ToString;
3016 match value {
3017 "name" => Ok(__FieldTag::__name),
3018 "pageSize" => Ok(__FieldTag::__page_size),
3019 "page_size" => Ok(__FieldTag::__page_size),
3020 "pageToken" => Ok(__FieldTag::__page_token),
3021 "page_token" => Ok(__FieldTag::__page_token),
3022 _ => Ok(__FieldTag::Unknown(value.to_string())),
3023 }
3024 }
3025 }
3026 deserializer.deserialize_identifier(Visitor)
3027 }
3028 }
3029 struct Visitor;
3030 impl<'de> serde::de::Visitor<'de> for Visitor {
3031 type Value = ListWorkflowRevisionsRequest;
3032 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3033 formatter.write_str("struct ListWorkflowRevisionsRequest")
3034 }
3035 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3036 where
3037 A: serde::de::MapAccess<'de>,
3038 {
3039 #[allow(unused_imports)]
3040 use serde::de::Error;
3041 use std::option::Option::Some;
3042 let mut fields = std::collections::HashSet::new();
3043 let mut result = Self::Value::new();
3044 while let Some(tag) = map.next_key::<__FieldTag>()? {
3045 #[allow(clippy::match_single_binding)]
3046 match tag {
3047 __FieldTag::__name => {
3048 if !fields.insert(__FieldTag::__name) {
3049 return std::result::Result::Err(A::Error::duplicate_field(
3050 "multiple values for name",
3051 ));
3052 }
3053 result.name = map
3054 .next_value::<std::option::Option<std::string::String>>()?
3055 .unwrap_or_default();
3056 }
3057 __FieldTag::__page_size => {
3058 if !fields.insert(__FieldTag::__page_size) {
3059 return std::result::Result::Err(A::Error::duplicate_field(
3060 "multiple values for page_size",
3061 ));
3062 }
3063 struct __With(std::option::Option<i32>);
3064 impl<'de> serde::de::Deserialize<'de> for __With {
3065 fn deserialize<D>(
3066 deserializer: D,
3067 ) -> std::result::Result<Self, D::Error>
3068 where
3069 D: serde::de::Deserializer<'de>,
3070 {
3071 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
3072 }
3073 }
3074 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
3075 }
3076 __FieldTag::__page_token => {
3077 if !fields.insert(__FieldTag::__page_token) {
3078 return std::result::Result::Err(A::Error::duplicate_field(
3079 "multiple values for page_token",
3080 ));
3081 }
3082 result.page_token = map
3083 .next_value::<std::option::Option<std::string::String>>()?
3084 .unwrap_or_default();
3085 }
3086 __FieldTag::Unknown(key) => {
3087 let value = map.next_value::<serde_json::Value>()?;
3088 result._unknown_fields.insert(key, value);
3089 }
3090 }
3091 }
3092 std::result::Result::Ok(result)
3093 }
3094 }
3095 deserializer.deserialize_any(Visitor)
3096 }
3097}
3098
3099#[doc(hidden)]
3100impl serde::ser::Serialize for ListWorkflowRevisionsRequest {
3101 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3102 where
3103 S: serde::ser::Serializer,
3104 {
3105 use serde::ser::SerializeMap;
3106 #[allow(unused_imports)]
3107 use std::option::Option::Some;
3108 let mut state = serializer.serialize_map(std::option::Option::None)?;
3109 if !self.name.is_empty() {
3110 state.serialize_entry("name", &self.name)?;
3111 }
3112 if !wkt::internal::is_default(&self.page_size) {
3113 struct __With<'a>(&'a i32);
3114 impl<'a> serde::ser::Serialize for __With<'a> {
3115 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3116 where
3117 S: serde::ser::Serializer,
3118 {
3119 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
3120 }
3121 }
3122 state.serialize_entry("pageSize", &__With(&self.page_size))?;
3123 }
3124 if !self.page_token.is_empty() {
3125 state.serialize_entry("pageToken", &self.page_token)?;
3126 }
3127 if !self._unknown_fields.is_empty() {
3128 for (key, value) in self._unknown_fields.iter() {
3129 state.serialize_entry(key, &value)?;
3130 }
3131 }
3132 state.end()
3133 }
3134}
3135
3136impl std::fmt::Debug for ListWorkflowRevisionsRequest {
3137 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3138 let mut debug_struct = f.debug_struct("ListWorkflowRevisionsRequest");
3139 debug_struct.field("name", &self.name);
3140 debug_struct.field("page_size", &self.page_size);
3141 debug_struct.field("page_token", &self.page_token);
3142 if !self._unknown_fields.is_empty() {
3143 debug_struct.field("_unknown_fields", &self._unknown_fields);
3144 }
3145 debug_struct.finish()
3146 }
3147}
3148
3149#[derive(Clone, Default, PartialEq)]
3155#[non_exhaustive]
3156pub struct ListWorkflowRevisionsResponse {
3157 pub workflows: std::vec::Vec<crate::model::Workflow>,
3159
3160 pub next_page_token: std::string::String,
3163
3164 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
3165}
3166
3167impl ListWorkflowRevisionsResponse {
3168 pub fn new() -> Self {
3169 std::default::Default::default()
3170 }
3171
3172 pub fn set_workflows<T, V>(mut self, v: T) -> Self
3174 where
3175 T: std::iter::IntoIterator<Item = V>,
3176 V: std::convert::Into<crate::model::Workflow>,
3177 {
3178 use std::iter::Iterator;
3179 self.workflows = v.into_iter().map(|i| i.into()).collect();
3180 self
3181 }
3182
3183 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3185 self.next_page_token = v.into();
3186 self
3187 }
3188}
3189
3190impl wkt::message::Message for ListWorkflowRevisionsResponse {
3191 fn typename() -> &'static str {
3192 "type.googleapis.com/google.cloud.workflows.v1.ListWorkflowRevisionsResponse"
3193 }
3194}
3195
3196#[doc(hidden)]
3197impl gax::paginator::internal::PageableResponse for ListWorkflowRevisionsResponse {
3198 type PageItem = crate::model::Workflow;
3199
3200 fn items(self) -> std::vec::Vec<Self::PageItem> {
3201 self.workflows
3202 }
3203
3204 fn next_page_token(&self) -> std::string::String {
3205 use std::clone::Clone;
3206 self.next_page_token.clone()
3207 }
3208}
3209
3210#[doc(hidden)]
3211impl<'de> serde::de::Deserialize<'de> for ListWorkflowRevisionsResponse {
3212 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3213 where
3214 D: serde::Deserializer<'de>,
3215 {
3216 #[allow(non_camel_case_types)]
3217 #[doc(hidden)]
3218 #[derive(PartialEq, Eq, Hash)]
3219 enum __FieldTag {
3220 __workflows,
3221 __next_page_token,
3222 Unknown(std::string::String),
3223 }
3224 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3225 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3226 where
3227 D: serde::Deserializer<'de>,
3228 {
3229 struct Visitor;
3230 impl<'de> serde::de::Visitor<'de> for Visitor {
3231 type Value = __FieldTag;
3232 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3233 formatter.write_str("a field name for ListWorkflowRevisionsResponse")
3234 }
3235 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3236 where
3237 E: serde::de::Error,
3238 {
3239 use std::result::Result::Ok;
3240 use std::string::ToString;
3241 match value {
3242 "workflows" => Ok(__FieldTag::__workflows),
3243 "nextPageToken" => Ok(__FieldTag::__next_page_token),
3244 "next_page_token" => Ok(__FieldTag::__next_page_token),
3245 _ => Ok(__FieldTag::Unknown(value.to_string())),
3246 }
3247 }
3248 }
3249 deserializer.deserialize_identifier(Visitor)
3250 }
3251 }
3252 struct Visitor;
3253 impl<'de> serde::de::Visitor<'de> for Visitor {
3254 type Value = ListWorkflowRevisionsResponse;
3255 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3256 formatter.write_str("struct ListWorkflowRevisionsResponse")
3257 }
3258 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3259 where
3260 A: serde::de::MapAccess<'de>,
3261 {
3262 #[allow(unused_imports)]
3263 use serde::de::Error;
3264 use std::option::Option::Some;
3265 let mut fields = std::collections::HashSet::new();
3266 let mut result = Self::Value::new();
3267 while let Some(tag) = map.next_key::<__FieldTag>()? {
3268 #[allow(clippy::match_single_binding)]
3269 match tag {
3270 __FieldTag::__workflows => {
3271 if !fields.insert(__FieldTag::__workflows) {
3272 return std::result::Result::Err(A::Error::duplicate_field(
3273 "multiple values for workflows",
3274 ));
3275 }
3276 result.workflows = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Workflow>>>()?.unwrap_or_default();
3277 }
3278 __FieldTag::__next_page_token => {
3279 if !fields.insert(__FieldTag::__next_page_token) {
3280 return std::result::Result::Err(A::Error::duplicate_field(
3281 "multiple values for next_page_token",
3282 ));
3283 }
3284 result.next_page_token = map
3285 .next_value::<std::option::Option<std::string::String>>()?
3286 .unwrap_or_default();
3287 }
3288 __FieldTag::Unknown(key) => {
3289 let value = map.next_value::<serde_json::Value>()?;
3290 result._unknown_fields.insert(key, value);
3291 }
3292 }
3293 }
3294 std::result::Result::Ok(result)
3295 }
3296 }
3297 deserializer.deserialize_any(Visitor)
3298 }
3299}
3300
3301#[doc(hidden)]
3302impl serde::ser::Serialize for ListWorkflowRevisionsResponse {
3303 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3304 where
3305 S: serde::ser::Serializer,
3306 {
3307 use serde::ser::SerializeMap;
3308 #[allow(unused_imports)]
3309 use std::option::Option::Some;
3310 let mut state = serializer.serialize_map(std::option::Option::None)?;
3311 if !self.workflows.is_empty() {
3312 state.serialize_entry("workflows", &self.workflows)?;
3313 }
3314 if !self.next_page_token.is_empty() {
3315 state.serialize_entry("nextPageToken", &self.next_page_token)?;
3316 }
3317 if !self._unknown_fields.is_empty() {
3318 for (key, value) in self._unknown_fields.iter() {
3319 state.serialize_entry(key, &value)?;
3320 }
3321 }
3322 state.end()
3323 }
3324}
3325
3326impl std::fmt::Debug for ListWorkflowRevisionsResponse {
3327 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3328 let mut debug_struct = f.debug_struct("ListWorkflowRevisionsResponse");
3329 debug_struct.field("workflows", &self.workflows);
3330 debug_struct.field("next_page_token", &self.next_page_token);
3331 if !self._unknown_fields.is_empty() {
3332 debug_struct.field("_unknown_fields", &self._unknown_fields);
3333 }
3334 debug_struct.finish()
3335 }
3336}
3337
3338#[derive(Clone, Debug, PartialEq)]
3354#[non_exhaustive]
3355pub enum ExecutionHistoryLevel {
3356 Unspecified,
3358 ExecutionHistoryBasic,
3360 ExecutionHistoryDetailed,
3362 UnknownValue(execution_history_level::UnknownValue),
3367}
3368
3369#[doc(hidden)]
3370pub mod execution_history_level {
3371 #[allow(unused_imports)]
3372 use super::*;
3373 #[derive(Clone, Debug, PartialEq)]
3374 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
3375}
3376
3377impl ExecutionHistoryLevel {
3378 pub fn value(&self) -> std::option::Option<i32> {
3383 match self {
3384 Self::Unspecified => std::option::Option::Some(0),
3385 Self::ExecutionHistoryBasic => std::option::Option::Some(1),
3386 Self::ExecutionHistoryDetailed => std::option::Option::Some(2),
3387 Self::UnknownValue(u) => u.0.value(),
3388 }
3389 }
3390
3391 pub fn name(&self) -> std::option::Option<&str> {
3396 match self {
3397 Self::Unspecified => std::option::Option::Some("EXECUTION_HISTORY_LEVEL_UNSPECIFIED"),
3398 Self::ExecutionHistoryBasic => std::option::Option::Some("EXECUTION_HISTORY_BASIC"),
3399 Self::ExecutionHistoryDetailed => {
3400 std::option::Option::Some("EXECUTION_HISTORY_DETAILED")
3401 }
3402 Self::UnknownValue(u) => u.0.name(),
3403 }
3404 }
3405}
3406
3407impl std::default::Default for ExecutionHistoryLevel {
3408 fn default() -> Self {
3409 use std::convert::From;
3410 Self::from(0)
3411 }
3412}
3413
3414impl std::fmt::Display for ExecutionHistoryLevel {
3415 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
3416 wkt::internal::display_enum(f, self.name(), self.value())
3417 }
3418}
3419
3420impl std::convert::From<i32> for ExecutionHistoryLevel {
3421 fn from(value: i32) -> Self {
3422 match value {
3423 0 => Self::Unspecified,
3424 1 => Self::ExecutionHistoryBasic,
3425 2 => Self::ExecutionHistoryDetailed,
3426 _ => Self::UnknownValue(execution_history_level::UnknownValue(
3427 wkt::internal::UnknownEnumValue::Integer(value),
3428 )),
3429 }
3430 }
3431}
3432
3433impl std::convert::From<&str> for ExecutionHistoryLevel {
3434 fn from(value: &str) -> Self {
3435 use std::string::ToString;
3436 match value {
3437 "EXECUTION_HISTORY_LEVEL_UNSPECIFIED" => Self::Unspecified,
3438 "EXECUTION_HISTORY_BASIC" => Self::ExecutionHistoryBasic,
3439 "EXECUTION_HISTORY_DETAILED" => Self::ExecutionHistoryDetailed,
3440 _ => Self::UnknownValue(execution_history_level::UnknownValue(
3441 wkt::internal::UnknownEnumValue::String(value.to_string()),
3442 )),
3443 }
3444 }
3445}
3446
3447impl serde::ser::Serialize for ExecutionHistoryLevel {
3448 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3449 where
3450 S: serde::Serializer,
3451 {
3452 match self {
3453 Self::Unspecified => serializer.serialize_i32(0),
3454 Self::ExecutionHistoryBasic => serializer.serialize_i32(1),
3455 Self::ExecutionHistoryDetailed => serializer.serialize_i32(2),
3456 Self::UnknownValue(u) => u.0.serialize(serializer),
3457 }
3458 }
3459}
3460
3461impl<'de> serde::de::Deserialize<'de> for ExecutionHistoryLevel {
3462 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3463 where
3464 D: serde::Deserializer<'de>,
3465 {
3466 deserializer.deserialize_any(wkt::internal::EnumVisitor::<ExecutionHistoryLevel>::new(
3467 ".google.cloud.workflows.v1.ExecutionHistoryLevel",
3468 ))
3469 }
3470}