1#![allow(rustdoc::redundant_explicit_links)]
18#![allow(rustdoc::broken_intra_doc_links)]
19#![no_implicit_prelude]
20extern crate async_trait;
21extern crate bytes;
22extern crate gax;
23extern crate gaxi;
24extern crate iam_v1;
25extern crate lazy_static;
26extern crate location;
27extern crate longrunning;
28extern crate lro;
29extern crate reqwest;
30extern crate serde;
31extern crate serde_json;
32extern crate serde_with;
33extern crate std;
34extern crate tracing;
35extern crate wkt;
36
37#[derive(Clone, Debug, Default, PartialEq)]
42#[non_exhaustive]
43pub struct ListPrivateCloudsRequest {
44 pub parent: std::string::String,
50
51 pub page_size: i32,
56
57 pub page_token: std::string::String,
63
64 pub filter: std::string::String,
94
95 pub order_by: std::string::String,
100
101 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
102}
103
104impl ListPrivateCloudsRequest {
105 pub fn new() -> Self {
106 std::default::Default::default()
107 }
108
109 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
111 self.parent = v.into();
112 self
113 }
114
115 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
117 self.page_size = v.into();
118 self
119 }
120
121 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
123 self.page_token = v.into();
124 self
125 }
126
127 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
129 self.filter = v.into();
130 self
131 }
132
133 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
135 self.order_by = v.into();
136 self
137 }
138}
139
140impl wkt::message::Message for ListPrivateCloudsRequest {
141 fn typename() -> &'static str {
142 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPrivateCloudsRequest"
143 }
144}
145
146#[doc(hidden)]
147impl<'de> serde::de::Deserialize<'de> for ListPrivateCloudsRequest {
148 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
149 where
150 D: serde::Deserializer<'de>,
151 {
152 #[allow(non_camel_case_types)]
153 #[doc(hidden)]
154 #[derive(PartialEq, Eq, Hash)]
155 enum __FieldTag {
156 __parent,
157 __page_size,
158 __page_token,
159 __filter,
160 __order_by,
161 Unknown(std::string::String),
162 }
163 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
164 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
165 where
166 D: serde::Deserializer<'de>,
167 {
168 struct Visitor;
169 impl<'de> serde::de::Visitor<'de> for Visitor {
170 type Value = __FieldTag;
171 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
172 formatter.write_str("a field name for ListPrivateCloudsRequest")
173 }
174 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
175 where
176 E: serde::de::Error,
177 {
178 use std::result::Result::Ok;
179 use std::string::ToString;
180 match value {
181 "parent" => Ok(__FieldTag::__parent),
182 "pageSize" => Ok(__FieldTag::__page_size),
183 "page_size" => Ok(__FieldTag::__page_size),
184 "pageToken" => Ok(__FieldTag::__page_token),
185 "page_token" => Ok(__FieldTag::__page_token),
186 "filter" => Ok(__FieldTag::__filter),
187 "orderBy" => Ok(__FieldTag::__order_by),
188 "order_by" => Ok(__FieldTag::__order_by),
189 _ => Ok(__FieldTag::Unknown(value.to_string())),
190 }
191 }
192 }
193 deserializer.deserialize_identifier(Visitor)
194 }
195 }
196 struct Visitor;
197 impl<'de> serde::de::Visitor<'de> for Visitor {
198 type Value = ListPrivateCloudsRequest;
199 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
200 formatter.write_str("struct ListPrivateCloudsRequest")
201 }
202 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
203 where
204 A: serde::de::MapAccess<'de>,
205 {
206 #[allow(unused_imports)]
207 use serde::de::Error;
208 use std::option::Option::Some;
209 let mut fields = std::collections::HashSet::new();
210 let mut result = Self::Value::new();
211 while let Some(tag) = map.next_key::<__FieldTag>()? {
212 #[allow(clippy::match_single_binding)]
213 match tag {
214 __FieldTag::__parent => {
215 if !fields.insert(__FieldTag::__parent) {
216 return std::result::Result::Err(A::Error::duplicate_field(
217 "multiple values for parent",
218 ));
219 }
220 result.parent = map
221 .next_value::<std::option::Option<std::string::String>>()?
222 .unwrap_or_default();
223 }
224 __FieldTag::__page_size => {
225 if !fields.insert(__FieldTag::__page_size) {
226 return std::result::Result::Err(A::Error::duplicate_field(
227 "multiple values for page_size",
228 ));
229 }
230 struct __With(std::option::Option<i32>);
231 impl<'de> serde::de::Deserialize<'de> for __With {
232 fn deserialize<D>(
233 deserializer: D,
234 ) -> std::result::Result<Self, D::Error>
235 where
236 D: serde::de::Deserializer<'de>,
237 {
238 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
239 }
240 }
241 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
242 }
243 __FieldTag::__page_token => {
244 if !fields.insert(__FieldTag::__page_token) {
245 return std::result::Result::Err(A::Error::duplicate_field(
246 "multiple values for page_token",
247 ));
248 }
249 result.page_token = map
250 .next_value::<std::option::Option<std::string::String>>()?
251 .unwrap_or_default();
252 }
253 __FieldTag::__filter => {
254 if !fields.insert(__FieldTag::__filter) {
255 return std::result::Result::Err(A::Error::duplicate_field(
256 "multiple values for filter",
257 ));
258 }
259 result.filter = map
260 .next_value::<std::option::Option<std::string::String>>()?
261 .unwrap_or_default();
262 }
263 __FieldTag::__order_by => {
264 if !fields.insert(__FieldTag::__order_by) {
265 return std::result::Result::Err(A::Error::duplicate_field(
266 "multiple values for order_by",
267 ));
268 }
269 result.order_by = map
270 .next_value::<std::option::Option<std::string::String>>()?
271 .unwrap_or_default();
272 }
273 __FieldTag::Unknown(key) => {
274 let value = map.next_value::<serde_json::Value>()?;
275 result._unknown_fields.insert(key, value);
276 }
277 }
278 }
279 std::result::Result::Ok(result)
280 }
281 }
282 deserializer.deserialize_any(Visitor)
283 }
284}
285
286#[doc(hidden)]
287impl serde::ser::Serialize for ListPrivateCloudsRequest {
288 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
289 where
290 S: serde::ser::Serializer,
291 {
292 use serde::ser::SerializeMap;
293 #[allow(unused_imports)]
294 use std::option::Option::Some;
295 let mut state = serializer.serialize_map(std::option::Option::None)?;
296 if !self.parent.is_empty() {
297 state.serialize_entry("parent", &self.parent)?;
298 }
299 if !wkt::internal::is_default(&self.page_size) {
300 struct __With<'a>(&'a i32);
301 impl<'a> serde::ser::Serialize for __With<'a> {
302 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
303 where
304 S: serde::ser::Serializer,
305 {
306 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
307 }
308 }
309 state.serialize_entry("pageSize", &__With(&self.page_size))?;
310 }
311 if !self.page_token.is_empty() {
312 state.serialize_entry("pageToken", &self.page_token)?;
313 }
314 if !self.filter.is_empty() {
315 state.serialize_entry("filter", &self.filter)?;
316 }
317 if !self.order_by.is_empty() {
318 state.serialize_entry("orderBy", &self.order_by)?;
319 }
320 if !self._unknown_fields.is_empty() {
321 for (key, value) in self._unknown_fields.iter() {
322 state.serialize_entry(key, &value)?;
323 }
324 }
325 state.end()
326 }
327}
328
329#[derive(Clone, Debug, Default, PartialEq)]
334#[non_exhaustive]
335pub struct ListPrivateCloudsResponse {
336 pub private_clouds: std::vec::Vec<crate::model::PrivateCloud>,
338
339 pub next_page_token: std::string::String,
342
343 pub unreachable: std::vec::Vec<std::string::String>,
346
347 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
348}
349
350impl ListPrivateCloudsResponse {
351 pub fn new() -> Self {
352 std::default::Default::default()
353 }
354
355 pub fn set_private_clouds<T, V>(mut self, v: T) -> Self
357 where
358 T: std::iter::IntoIterator<Item = V>,
359 V: std::convert::Into<crate::model::PrivateCloud>,
360 {
361 use std::iter::Iterator;
362 self.private_clouds = v.into_iter().map(|i| i.into()).collect();
363 self
364 }
365
366 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
368 self.next_page_token = v.into();
369 self
370 }
371
372 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
374 where
375 T: std::iter::IntoIterator<Item = V>,
376 V: std::convert::Into<std::string::String>,
377 {
378 use std::iter::Iterator;
379 self.unreachable = v.into_iter().map(|i| i.into()).collect();
380 self
381 }
382}
383
384impl wkt::message::Message for ListPrivateCloudsResponse {
385 fn typename() -> &'static str {
386 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPrivateCloudsResponse"
387 }
388}
389
390#[doc(hidden)]
391impl gax::paginator::internal::PageableResponse for ListPrivateCloudsResponse {
392 type PageItem = crate::model::PrivateCloud;
393
394 fn items(self) -> std::vec::Vec<Self::PageItem> {
395 self.private_clouds
396 }
397
398 fn next_page_token(&self) -> std::string::String {
399 use std::clone::Clone;
400 self.next_page_token.clone()
401 }
402}
403
404#[doc(hidden)]
405impl<'de> serde::de::Deserialize<'de> for ListPrivateCloudsResponse {
406 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
407 where
408 D: serde::Deserializer<'de>,
409 {
410 #[allow(non_camel_case_types)]
411 #[doc(hidden)]
412 #[derive(PartialEq, Eq, Hash)]
413 enum __FieldTag {
414 __private_clouds,
415 __next_page_token,
416 __unreachable,
417 Unknown(std::string::String),
418 }
419 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
420 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
421 where
422 D: serde::Deserializer<'de>,
423 {
424 struct Visitor;
425 impl<'de> serde::de::Visitor<'de> for Visitor {
426 type Value = __FieldTag;
427 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
428 formatter.write_str("a field name for ListPrivateCloudsResponse")
429 }
430 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
431 where
432 E: serde::de::Error,
433 {
434 use std::result::Result::Ok;
435 use std::string::ToString;
436 match value {
437 "privateClouds" => Ok(__FieldTag::__private_clouds),
438 "private_clouds" => Ok(__FieldTag::__private_clouds),
439 "nextPageToken" => Ok(__FieldTag::__next_page_token),
440 "next_page_token" => Ok(__FieldTag::__next_page_token),
441 "unreachable" => Ok(__FieldTag::__unreachable),
442 _ => Ok(__FieldTag::Unknown(value.to_string())),
443 }
444 }
445 }
446 deserializer.deserialize_identifier(Visitor)
447 }
448 }
449 struct Visitor;
450 impl<'de> serde::de::Visitor<'de> for Visitor {
451 type Value = ListPrivateCloudsResponse;
452 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
453 formatter.write_str("struct ListPrivateCloudsResponse")
454 }
455 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
456 where
457 A: serde::de::MapAccess<'de>,
458 {
459 #[allow(unused_imports)]
460 use serde::de::Error;
461 use std::option::Option::Some;
462 let mut fields = std::collections::HashSet::new();
463 let mut result = Self::Value::new();
464 while let Some(tag) = map.next_key::<__FieldTag>()? {
465 #[allow(clippy::match_single_binding)]
466 match tag {
467 __FieldTag::__private_clouds => {
468 if !fields.insert(__FieldTag::__private_clouds) {
469 return std::result::Result::Err(A::Error::duplicate_field(
470 "multiple values for private_clouds",
471 ));
472 }
473 result.private_clouds = map.next_value::<std::option::Option<std::vec::Vec<crate::model::PrivateCloud>>>()?.unwrap_or_default();
474 }
475 __FieldTag::__next_page_token => {
476 if !fields.insert(__FieldTag::__next_page_token) {
477 return std::result::Result::Err(A::Error::duplicate_field(
478 "multiple values for next_page_token",
479 ));
480 }
481 result.next_page_token = map
482 .next_value::<std::option::Option<std::string::String>>()?
483 .unwrap_or_default();
484 }
485 __FieldTag::__unreachable => {
486 if !fields.insert(__FieldTag::__unreachable) {
487 return std::result::Result::Err(A::Error::duplicate_field(
488 "multiple values for unreachable",
489 ));
490 }
491 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
492 }
493 __FieldTag::Unknown(key) => {
494 let value = map.next_value::<serde_json::Value>()?;
495 result._unknown_fields.insert(key, value);
496 }
497 }
498 }
499 std::result::Result::Ok(result)
500 }
501 }
502 deserializer.deserialize_any(Visitor)
503 }
504}
505
506#[doc(hidden)]
507impl serde::ser::Serialize for ListPrivateCloudsResponse {
508 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
509 where
510 S: serde::ser::Serializer,
511 {
512 use serde::ser::SerializeMap;
513 #[allow(unused_imports)]
514 use std::option::Option::Some;
515 let mut state = serializer.serialize_map(std::option::Option::None)?;
516 if !self.private_clouds.is_empty() {
517 state.serialize_entry("privateClouds", &self.private_clouds)?;
518 }
519 if !self.next_page_token.is_empty() {
520 state.serialize_entry("nextPageToken", &self.next_page_token)?;
521 }
522 if !self.unreachable.is_empty() {
523 state.serialize_entry("unreachable", &self.unreachable)?;
524 }
525 if !self._unknown_fields.is_empty() {
526 for (key, value) in self._unknown_fields.iter() {
527 state.serialize_entry(key, &value)?;
528 }
529 }
530 state.end()
531 }
532}
533
534#[derive(Clone, Debug, Default, PartialEq)]
539#[non_exhaustive]
540pub struct GetPrivateCloudRequest {
541 pub name: std::string::String,
547
548 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
549}
550
551impl GetPrivateCloudRequest {
552 pub fn new() -> Self {
553 std::default::Default::default()
554 }
555
556 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
558 self.name = v.into();
559 self
560 }
561}
562
563impl wkt::message::Message for GetPrivateCloudRequest {
564 fn typename() -> &'static str {
565 "type.googleapis.com/google.cloud.vmwareengine.v1.GetPrivateCloudRequest"
566 }
567}
568
569#[doc(hidden)]
570impl<'de> serde::de::Deserialize<'de> for GetPrivateCloudRequest {
571 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
572 where
573 D: serde::Deserializer<'de>,
574 {
575 #[allow(non_camel_case_types)]
576 #[doc(hidden)]
577 #[derive(PartialEq, Eq, Hash)]
578 enum __FieldTag {
579 __name,
580 Unknown(std::string::String),
581 }
582 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
583 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
584 where
585 D: serde::Deserializer<'de>,
586 {
587 struct Visitor;
588 impl<'de> serde::de::Visitor<'de> for Visitor {
589 type Value = __FieldTag;
590 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
591 formatter.write_str("a field name for GetPrivateCloudRequest")
592 }
593 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
594 where
595 E: serde::de::Error,
596 {
597 use std::result::Result::Ok;
598 use std::string::ToString;
599 match value {
600 "name" => Ok(__FieldTag::__name),
601 _ => Ok(__FieldTag::Unknown(value.to_string())),
602 }
603 }
604 }
605 deserializer.deserialize_identifier(Visitor)
606 }
607 }
608 struct Visitor;
609 impl<'de> serde::de::Visitor<'de> for Visitor {
610 type Value = GetPrivateCloudRequest;
611 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
612 formatter.write_str("struct GetPrivateCloudRequest")
613 }
614 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
615 where
616 A: serde::de::MapAccess<'de>,
617 {
618 #[allow(unused_imports)]
619 use serde::de::Error;
620 use std::option::Option::Some;
621 let mut fields = std::collections::HashSet::new();
622 let mut result = Self::Value::new();
623 while let Some(tag) = map.next_key::<__FieldTag>()? {
624 #[allow(clippy::match_single_binding)]
625 match tag {
626 __FieldTag::__name => {
627 if !fields.insert(__FieldTag::__name) {
628 return std::result::Result::Err(A::Error::duplicate_field(
629 "multiple values for name",
630 ));
631 }
632 result.name = map
633 .next_value::<std::option::Option<std::string::String>>()?
634 .unwrap_or_default();
635 }
636 __FieldTag::Unknown(key) => {
637 let value = map.next_value::<serde_json::Value>()?;
638 result._unknown_fields.insert(key, value);
639 }
640 }
641 }
642 std::result::Result::Ok(result)
643 }
644 }
645 deserializer.deserialize_any(Visitor)
646 }
647}
648
649#[doc(hidden)]
650impl serde::ser::Serialize for GetPrivateCloudRequest {
651 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
652 where
653 S: serde::ser::Serializer,
654 {
655 use serde::ser::SerializeMap;
656 #[allow(unused_imports)]
657 use std::option::Option::Some;
658 let mut state = serializer.serialize_map(std::option::Option::None)?;
659 if !self.name.is_empty() {
660 state.serialize_entry("name", &self.name)?;
661 }
662 if !self._unknown_fields.is_empty() {
663 for (key, value) in self._unknown_fields.iter() {
664 state.serialize_entry(key, &value)?;
665 }
666 }
667 state.end()
668 }
669}
670
671#[derive(Clone, Debug, Default, PartialEq)]
676#[non_exhaustive]
677pub struct CreatePrivateCloudRequest {
678 pub parent: std::string::String,
684
685 pub private_cloud_id: std::string::String,
697
698 pub private_cloud: std::option::Option<crate::model::PrivateCloud>,
700
701 pub request_id: std::string::String,
704
705 pub validate_only: bool,
708
709 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
710}
711
712impl CreatePrivateCloudRequest {
713 pub fn new() -> Self {
714 std::default::Default::default()
715 }
716
717 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
719 self.parent = v.into();
720 self
721 }
722
723 pub fn set_private_cloud_id<T: std::convert::Into<std::string::String>>(
725 mut self,
726 v: T,
727 ) -> Self {
728 self.private_cloud_id = v.into();
729 self
730 }
731
732 pub fn set_private_cloud<T>(mut self, v: T) -> Self
734 where
735 T: std::convert::Into<crate::model::PrivateCloud>,
736 {
737 self.private_cloud = std::option::Option::Some(v.into());
738 self
739 }
740
741 pub fn set_or_clear_private_cloud<T>(mut self, v: std::option::Option<T>) -> Self
743 where
744 T: std::convert::Into<crate::model::PrivateCloud>,
745 {
746 self.private_cloud = v.map(|x| x.into());
747 self
748 }
749
750 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
752 self.request_id = v.into();
753 self
754 }
755
756 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
758 self.validate_only = v.into();
759 self
760 }
761}
762
763impl wkt::message::Message for CreatePrivateCloudRequest {
764 fn typename() -> &'static str {
765 "type.googleapis.com/google.cloud.vmwareengine.v1.CreatePrivateCloudRequest"
766 }
767}
768
769#[doc(hidden)]
770impl<'de> serde::de::Deserialize<'de> for CreatePrivateCloudRequest {
771 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
772 where
773 D: serde::Deserializer<'de>,
774 {
775 #[allow(non_camel_case_types)]
776 #[doc(hidden)]
777 #[derive(PartialEq, Eq, Hash)]
778 enum __FieldTag {
779 __parent,
780 __private_cloud_id,
781 __private_cloud,
782 __request_id,
783 __validate_only,
784 Unknown(std::string::String),
785 }
786 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
787 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
788 where
789 D: serde::Deserializer<'de>,
790 {
791 struct Visitor;
792 impl<'de> serde::de::Visitor<'de> for Visitor {
793 type Value = __FieldTag;
794 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
795 formatter.write_str("a field name for CreatePrivateCloudRequest")
796 }
797 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
798 where
799 E: serde::de::Error,
800 {
801 use std::result::Result::Ok;
802 use std::string::ToString;
803 match value {
804 "parent" => Ok(__FieldTag::__parent),
805 "privateCloudId" => Ok(__FieldTag::__private_cloud_id),
806 "private_cloud_id" => Ok(__FieldTag::__private_cloud_id),
807 "privateCloud" => Ok(__FieldTag::__private_cloud),
808 "private_cloud" => Ok(__FieldTag::__private_cloud),
809 "requestId" => Ok(__FieldTag::__request_id),
810 "request_id" => Ok(__FieldTag::__request_id),
811 "validateOnly" => Ok(__FieldTag::__validate_only),
812 "validate_only" => Ok(__FieldTag::__validate_only),
813 _ => Ok(__FieldTag::Unknown(value.to_string())),
814 }
815 }
816 }
817 deserializer.deserialize_identifier(Visitor)
818 }
819 }
820 struct Visitor;
821 impl<'de> serde::de::Visitor<'de> for Visitor {
822 type Value = CreatePrivateCloudRequest;
823 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
824 formatter.write_str("struct CreatePrivateCloudRequest")
825 }
826 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
827 where
828 A: serde::de::MapAccess<'de>,
829 {
830 #[allow(unused_imports)]
831 use serde::de::Error;
832 use std::option::Option::Some;
833 let mut fields = std::collections::HashSet::new();
834 let mut result = Self::Value::new();
835 while let Some(tag) = map.next_key::<__FieldTag>()? {
836 #[allow(clippy::match_single_binding)]
837 match tag {
838 __FieldTag::__parent => {
839 if !fields.insert(__FieldTag::__parent) {
840 return std::result::Result::Err(A::Error::duplicate_field(
841 "multiple values for parent",
842 ));
843 }
844 result.parent = map
845 .next_value::<std::option::Option<std::string::String>>()?
846 .unwrap_or_default();
847 }
848 __FieldTag::__private_cloud_id => {
849 if !fields.insert(__FieldTag::__private_cloud_id) {
850 return std::result::Result::Err(A::Error::duplicate_field(
851 "multiple values for private_cloud_id",
852 ));
853 }
854 result.private_cloud_id = map
855 .next_value::<std::option::Option<std::string::String>>()?
856 .unwrap_or_default();
857 }
858 __FieldTag::__private_cloud => {
859 if !fields.insert(__FieldTag::__private_cloud) {
860 return std::result::Result::Err(A::Error::duplicate_field(
861 "multiple values for private_cloud",
862 ));
863 }
864 result.private_cloud = map
865 .next_value::<std::option::Option<crate::model::PrivateCloud>>()?;
866 }
867 __FieldTag::__request_id => {
868 if !fields.insert(__FieldTag::__request_id) {
869 return std::result::Result::Err(A::Error::duplicate_field(
870 "multiple values for request_id",
871 ));
872 }
873 result.request_id = map
874 .next_value::<std::option::Option<std::string::String>>()?
875 .unwrap_or_default();
876 }
877 __FieldTag::__validate_only => {
878 if !fields.insert(__FieldTag::__validate_only) {
879 return std::result::Result::Err(A::Error::duplicate_field(
880 "multiple values for validate_only",
881 ));
882 }
883 result.validate_only = map
884 .next_value::<std::option::Option<bool>>()?
885 .unwrap_or_default();
886 }
887 __FieldTag::Unknown(key) => {
888 let value = map.next_value::<serde_json::Value>()?;
889 result._unknown_fields.insert(key, value);
890 }
891 }
892 }
893 std::result::Result::Ok(result)
894 }
895 }
896 deserializer.deserialize_any(Visitor)
897 }
898}
899
900#[doc(hidden)]
901impl serde::ser::Serialize for CreatePrivateCloudRequest {
902 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
903 where
904 S: serde::ser::Serializer,
905 {
906 use serde::ser::SerializeMap;
907 #[allow(unused_imports)]
908 use std::option::Option::Some;
909 let mut state = serializer.serialize_map(std::option::Option::None)?;
910 if !self.parent.is_empty() {
911 state.serialize_entry("parent", &self.parent)?;
912 }
913 if !self.private_cloud_id.is_empty() {
914 state.serialize_entry("privateCloudId", &self.private_cloud_id)?;
915 }
916 if self.private_cloud.is_some() {
917 state.serialize_entry("privateCloud", &self.private_cloud)?;
918 }
919 if !self.request_id.is_empty() {
920 state.serialize_entry("requestId", &self.request_id)?;
921 }
922 if !wkt::internal::is_default(&self.validate_only) {
923 state.serialize_entry("validateOnly", &self.validate_only)?;
924 }
925 if !self._unknown_fields.is_empty() {
926 for (key, value) in self._unknown_fields.iter() {
927 state.serialize_entry(key, &value)?;
928 }
929 }
930 state.end()
931 }
932}
933
934#[derive(Clone, Debug, Default, PartialEq)]
939#[non_exhaustive]
940pub struct UpdatePrivateCloudRequest {
941 pub private_cloud: std::option::Option<crate::model::PrivateCloud>,
943
944 pub update_mask: std::option::Option<wkt::FieldMask>,
950
951 pub request_id: std::string::String,
954
955 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
956}
957
958impl UpdatePrivateCloudRequest {
959 pub fn new() -> Self {
960 std::default::Default::default()
961 }
962
963 pub fn set_private_cloud<T>(mut self, v: T) -> Self
965 where
966 T: std::convert::Into<crate::model::PrivateCloud>,
967 {
968 self.private_cloud = std::option::Option::Some(v.into());
969 self
970 }
971
972 pub fn set_or_clear_private_cloud<T>(mut self, v: std::option::Option<T>) -> Self
974 where
975 T: std::convert::Into<crate::model::PrivateCloud>,
976 {
977 self.private_cloud = v.map(|x| x.into());
978 self
979 }
980
981 pub fn set_update_mask<T>(mut self, v: T) -> Self
983 where
984 T: std::convert::Into<wkt::FieldMask>,
985 {
986 self.update_mask = std::option::Option::Some(v.into());
987 self
988 }
989
990 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
992 where
993 T: std::convert::Into<wkt::FieldMask>,
994 {
995 self.update_mask = v.map(|x| x.into());
996 self
997 }
998
999 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1001 self.request_id = v.into();
1002 self
1003 }
1004}
1005
1006impl wkt::message::Message for UpdatePrivateCloudRequest {
1007 fn typename() -> &'static str {
1008 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdatePrivateCloudRequest"
1009 }
1010}
1011
1012#[doc(hidden)]
1013impl<'de> serde::de::Deserialize<'de> for UpdatePrivateCloudRequest {
1014 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1015 where
1016 D: serde::Deserializer<'de>,
1017 {
1018 #[allow(non_camel_case_types)]
1019 #[doc(hidden)]
1020 #[derive(PartialEq, Eq, Hash)]
1021 enum __FieldTag {
1022 __private_cloud,
1023 __update_mask,
1024 __request_id,
1025 Unknown(std::string::String),
1026 }
1027 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1028 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1029 where
1030 D: serde::Deserializer<'de>,
1031 {
1032 struct Visitor;
1033 impl<'de> serde::de::Visitor<'de> for Visitor {
1034 type Value = __FieldTag;
1035 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1036 formatter.write_str("a field name for UpdatePrivateCloudRequest")
1037 }
1038 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1039 where
1040 E: serde::de::Error,
1041 {
1042 use std::result::Result::Ok;
1043 use std::string::ToString;
1044 match value {
1045 "privateCloud" => Ok(__FieldTag::__private_cloud),
1046 "private_cloud" => Ok(__FieldTag::__private_cloud),
1047 "updateMask" => Ok(__FieldTag::__update_mask),
1048 "update_mask" => Ok(__FieldTag::__update_mask),
1049 "requestId" => Ok(__FieldTag::__request_id),
1050 "request_id" => Ok(__FieldTag::__request_id),
1051 _ => Ok(__FieldTag::Unknown(value.to_string())),
1052 }
1053 }
1054 }
1055 deserializer.deserialize_identifier(Visitor)
1056 }
1057 }
1058 struct Visitor;
1059 impl<'de> serde::de::Visitor<'de> for Visitor {
1060 type Value = UpdatePrivateCloudRequest;
1061 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1062 formatter.write_str("struct UpdatePrivateCloudRequest")
1063 }
1064 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1065 where
1066 A: serde::de::MapAccess<'de>,
1067 {
1068 #[allow(unused_imports)]
1069 use serde::de::Error;
1070 use std::option::Option::Some;
1071 let mut fields = std::collections::HashSet::new();
1072 let mut result = Self::Value::new();
1073 while let Some(tag) = map.next_key::<__FieldTag>()? {
1074 #[allow(clippy::match_single_binding)]
1075 match tag {
1076 __FieldTag::__private_cloud => {
1077 if !fields.insert(__FieldTag::__private_cloud) {
1078 return std::result::Result::Err(A::Error::duplicate_field(
1079 "multiple values for private_cloud",
1080 ));
1081 }
1082 result.private_cloud = map
1083 .next_value::<std::option::Option<crate::model::PrivateCloud>>()?;
1084 }
1085 __FieldTag::__update_mask => {
1086 if !fields.insert(__FieldTag::__update_mask) {
1087 return std::result::Result::Err(A::Error::duplicate_field(
1088 "multiple values for update_mask",
1089 ));
1090 }
1091 result.update_mask =
1092 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
1093 }
1094 __FieldTag::__request_id => {
1095 if !fields.insert(__FieldTag::__request_id) {
1096 return std::result::Result::Err(A::Error::duplicate_field(
1097 "multiple values for request_id",
1098 ));
1099 }
1100 result.request_id = map
1101 .next_value::<std::option::Option<std::string::String>>()?
1102 .unwrap_or_default();
1103 }
1104 __FieldTag::Unknown(key) => {
1105 let value = map.next_value::<serde_json::Value>()?;
1106 result._unknown_fields.insert(key, value);
1107 }
1108 }
1109 }
1110 std::result::Result::Ok(result)
1111 }
1112 }
1113 deserializer.deserialize_any(Visitor)
1114 }
1115}
1116
1117#[doc(hidden)]
1118impl serde::ser::Serialize for UpdatePrivateCloudRequest {
1119 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1120 where
1121 S: serde::ser::Serializer,
1122 {
1123 use serde::ser::SerializeMap;
1124 #[allow(unused_imports)]
1125 use std::option::Option::Some;
1126 let mut state = serializer.serialize_map(std::option::Option::None)?;
1127 if self.private_cloud.is_some() {
1128 state.serialize_entry("privateCloud", &self.private_cloud)?;
1129 }
1130 if self.update_mask.is_some() {
1131 state.serialize_entry("updateMask", &self.update_mask)?;
1132 }
1133 if !self.request_id.is_empty() {
1134 state.serialize_entry("requestId", &self.request_id)?;
1135 }
1136 if !self._unknown_fields.is_empty() {
1137 for (key, value) in self._unknown_fields.iter() {
1138 state.serialize_entry(key, &value)?;
1139 }
1140 }
1141 state.end()
1142 }
1143}
1144
1145#[derive(Clone, Debug, Default, PartialEq)]
1150#[non_exhaustive]
1151pub struct DeletePrivateCloudRequest {
1152 pub name: std::string::String,
1158
1159 pub request_id: std::string::String,
1162
1163 pub force: bool,
1169
1170 pub delay_hours: std::option::Option<i32>,
1181
1182 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1183}
1184
1185impl DeletePrivateCloudRequest {
1186 pub fn new() -> Self {
1187 std::default::Default::default()
1188 }
1189
1190 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1192 self.name = v.into();
1193 self
1194 }
1195
1196 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1198 self.request_id = v.into();
1199 self
1200 }
1201
1202 pub fn set_force<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1204 self.force = v.into();
1205 self
1206 }
1207
1208 pub fn set_delay_hours<T>(mut self, v: T) -> Self
1210 where
1211 T: std::convert::Into<i32>,
1212 {
1213 self.delay_hours = std::option::Option::Some(v.into());
1214 self
1215 }
1216
1217 pub fn set_or_clear_delay_hours<T>(mut self, v: std::option::Option<T>) -> Self
1219 where
1220 T: std::convert::Into<i32>,
1221 {
1222 self.delay_hours = v.map(|x| x.into());
1223 self
1224 }
1225}
1226
1227impl wkt::message::Message for DeletePrivateCloudRequest {
1228 fn typename() -> &'static str {
1229 "type.googleapis.com/google.cloud.vmwareengine.v1.DeletePrivateCloudRequest"
1230 }
1231}
1232
1233#[doc(hidden)]
1234impl<'de> serde::de::Deserialize<'de> for DeletePrivateCloudRequest {
1235 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1236 where
1237 D: serde::Deserializer<'de>,
1238 {
1239 #[allow(non_camel_case_types)]
1240 #[doc(hidden)]
1241 #[derive(PartialEq, Eq, Hash)]
1242 enum __FieldTag {
1243 __name,
1244 __request_id,
1245 __force,
1246 __delay_hours,
1247 Unknown(std::string::String),
1248 }
1249 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1250 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1251 where
1252 D: serde::Deserializer<'de>,
1253 {
1254 struct Visitor;
1255 impl<'de> serde::de::Visitor<'de> for Visitor {
1256 type Value = __FieldTag;
1257 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1258 formatter.write_str("a field name for DeletePrivateCloudRequest")
1259 }
1260 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1261 where
1262 E: serde::de::Error,
1263 {
1264 use std::result::Result::Ok;
1265 use std::string::ToString;
1266 match value {
1267 "name" => Ok(__FieldTag::__name),
1268 "requestId" => Ok(__FieldTag::__request_id),
1269 "request_id" => Ok(__FieldTag::__request_id),
1270 "force" => Ok(__FieldTag::__force),
1271 "delayHours" => Ok(__FieldTag::__delay_hours),
1272 "delay_hours" => Ok(__FieldTag::__delay_hours),
1273 _ => Ok(__FieldTag::Unknown(value.to_string())),
1274 }
1275 }
1276 }
1277 deserializer.deserialize_identifier(Visitor)
1278 }
1279 }
1280 struct Visitor;
1281 impl<'de> serde::de::Visitor<'de> for Visitor {
1282 type Value = DeletePrivateCloudRequest;
1283 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1284 formatter.write_str("struct DeletePrivateCloudRequest")
1285 }
1286 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1287 where
1288 A: serde::de::MapAccess<'de>,
1289 {
1290 #[allow(unused_imports)]
1291 use serde::de::Error;
1292 use std::option::Option::Some;
1293 let mut fields = std::collections::HashSet::new();
1294 let mut result = Self::Value::new();
1295 while let Some(tag) = map.next_key::<__FieldTag>()? {
1296 #[allow(clippy::match_single_binding)]
1297 match tag {
1298 __FieldTag::__name => {
1299 if !fields.insert(__FieldTag::__name) {
1300 return std::result::Result::Err(A::Error::duplicate_field(
1301 "multiple values for name",
1302 ));
1303 }
1304 result.name = map
1305 .next_value::<std::option::Option<std::string::String>>()?
1306 .unwrap_or_default();
1307 }
1308 __FieldTag::__request_id => {
1309 if !fields.insert(__FieldTag::__request_id) {
1310 return std::result::Result::Err(A::Error::duplicate_field(
1311 "multiple values for request_id",
1312 ));
1313 }
1314 result.request_id = map
1315 .next_value::<std::option::Option<std::string::String>>()?
1316 .unwrap_or_default();
1317 }
1318 __FieldTag::__force => {
1319 if !fields.insert(__FieldTag::__force) {
1320 return std::result::Result::Err(A::Error::duplicate_field(
1321 "multiple values for force",
1322 ));
1323 }
1324 result.force = map
1325 .next_value::<std::option::Option<bool>>()?
1326 .unwrap_or_default();
1327 }
1328 __FieldTag::__delay_hours => {
1329 if !fields.insert(__FieldTag::__delay_hours) {
1330 return std::result::Result::Err(A::Error::duplicate_field(
1331 "multiple values for delay_hours",
1332 ));
1333 }
1334 struct __With(std::option::Option<i32>);
1335 impl<'de> serde::de::Deserialize<'de> for __With {
1336 fn deserialize<D>(
1337 deserializer: D,
1338 ) -> std::result::Result<Self, D::Error>
1339 where
1340 D: serde::de::Deserializer<'de>,
1341 {
1342 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
1343 }
1344 }
1345 result.delay_hours = map.next_value::<__With>()?.0;
1346 }
1347 __FieldTag::Unknown(key) => {
1348 let value = map.next_value::<serde_json::Value>()?;
1349 result._unknown_fields.insert(key, value);
1350 }
1351 }
1352 }
1353 std::result::Result::Ok(result)
1354 }
1355 }
1356 deserializer.deserialize_any(Visitor)
1357 }
1358}
1359
1360#[doc(hidden)]
1361impl serde::ser::Serialize for DeletePrivateCloudRequest {
1362 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1363 where
1364 S: serde::ser::Serializer,
1365 {
1366 use serde::ser::SerializeMap;
1367 #[allow(unused_imports)]
1368 use std::option::Option::Some;
1369 let mut state = serializer.serialize_map(std::option::Option::None)?;
1370 if !self.name.is_empty() {
1371 state.serialize_entry("name", &self.name)?;
1372 }
1373 if !self.request_id.is_empty() {
1374 state.serialize_entry("requestId", &self.request_id)?;
1375 }
1376 if !wkt::internal::is_default(&self.force) {
1377 state.serialize_entry("force", &self.force)?;
1378 }
1379 if self.delay_hours.is_some() {
1380 struct __With<'a>(&'a std::option::Option<i32>);
1381 impl<'a> serde::ser::Serialize for __With<'a> {
1382 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1383 where
1384 S: serde::ser::Serializer,
1385 {
1386 serde_with::As::<std::option::Option<wkt::internal::I32>>::serialize(
1387 self.0, serializer,
1388 )
1389 }
1390 }
1391 state.serialize_entry("delayHours", &__With(&self.delay_hours))?;
1392 }
1393 if !self._unknown_fields.is_empty() {
1394 for (key, value) in self._unknown_fields.iter() {
1395 state.serialize_entry(key, &value)?;
1396 }
1397 }
1398 state.end()
1399 }
1400}
1401
1402#[derive(Clone, Debug, Default, PartialEq)]
1407#[non_exhaustive]
1408pub struct UndeletePrivateCloudRequest {
1409 pub name: std::string::String,
1415
1416 pub request_id: std::string::String,
1419
1420 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1421}
1422
1423impl UndeletePrivateCloudRequest {
1424 pub fn new() -> Self {
1425 std::default::Default::default()
1426 }
1427
1428 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1430 self.name = v.into();
1431 self
1432 }
1433
1434 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1436 self.request_id = v.into();
1437 self
1438 }
1439}
1440
1441impl wkt::message::Message for UndeletePrivateCloudRequest {
1442 fn typename() -> &'static str {
1443 "type.googleapis.com/google.cloud.vmwareengine.v1.UndeletePrivateCloudRequest"
1444 }
1445}
1446
1447#[doc(hidden)]
1448impl<'de> serde::de::Deserialize<'de> for UndeletePrivateCloudRequest {
1449 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1450 where
1451 D: serde::Deserializer<'de>,
1452 {
1453 #[allow(non_camel_case_types)]
1454 #[doc(hidden)]
1455 #[derive(PartialEq, Eq, Hash)]
1456 enum __FieldTag {
1457 __name,
1458 __request_id,
1459 Unknown(std::string::String),
1460 }
1461 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1462 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1463 where
1464 D: serde::Deserializer<'de>,
1465 {
1466 struct Visitor;
1467 impl<'de> serde::de::Visitor<'de> for Visitor {
1468 type Value = __FieldTag;
1469 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1470 formatter.write_str("a field name for UndeletePrivateCloudRequest")
1471 }
1472 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1473 where
1474 E: serde::de::Error,
1475 {
1476 use std::result::Result::Ok;
1477 use std::string::ToString;
1478 match value {
1479 "name" => Ok(__FieldTag::__name),
1480 "requestId" => Ok(__FieldTag::__request_id),
1481 "request_id" => Ok(__FieldTag::__request_id),
1482 _ => Ok(__FieldTag::Unknown(value.to_string())),
1483 }
1484 }
1485 }
1486 deserializer.deserialize_identifier(Visitor)
1487 }
1488 }
1489 struct Visitor;
1490 impl<'de> serde::de::Visitor<'de> for Visitor {
1491 type Value = UndeletePrivateCloudRequest;
1492 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1493 formatter.write_str("struct UndeletePrivateCloudRequest")
1494 }
1495 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1496 where
1497 A: serde::de::MapAccess<'de>,
1498 {
1499 #[allow(unused_imports)]
1500 use serde::de::Error;
1501 use std::option::Option::Some;
1502 let mut fields = std::collections::HashSet::new();
1503 let mut result = Self::Value::new();
1504 while let Some(tag) = map.next_key::<__FieldTag>()? {
1505 #[allow(clippy::match_single_binding)]
1506 match tag {
1507 __FieldTag::__name => {
1508 if !fields.insert(__FieldTag::__name) {
1509 return std::result::Result::Err(A::Error::duplicate_field(
1510 "multiple values for name",
1511 ));
1512 }
1513 result.name = map
1514 .next_value::<std::option::Option<std::string::String>>()?
1515 .unwrap_or_default();
1516 }
1517 __FieldTag::__request_id => {
1518 if !fields.insert(__FieldTag::__request_id) {
1519 return std::result::Result::Err(A::Error::duplicate_field(
1520 "multiple values for request_id",
1521 ));
1522 }
1523 result.request_id = map
1524 .next_value::<std::option::Option<std::string::String>>()?
1525 .unwrap_or_default();
1526 }
1527 __FieldTag::Unknown(key) => {
1528 let value = map.next_value::<serde_json::Value>()?;
1529 result._unknown_fields.insert(key, value);
1530 }
1531 }
1532 }
1533 std::result::Result::Ok(result)
1534 }
1535 }
1536 deserializer.deserialize_any(Visitor)
1537 }
1538}
1539
1540#[doc(hidden)]
1541impl serde::ser::Serialize for UndeletePrivateCloudRequest {
1542 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1543 where
1544 S: serde::ser::Serializer,
1545 {
1546 use serde::ser::SerializeMap;
1547 #[allow(unused_imports)]
1548 use std::option::Option::Some;
1549 let mut state = serializer.serialize_map(std::option::Option::None)?;
1550 if !self.name.is_empty() {
1551 state.serialize_entry("name", &self.name)?;
1552 }
1553 if !self.request_id.is_empty() {
1554 state.serialize_entry("requestId", &self.request_id)?;
1555 }
1556 if !self._unknown_fields.is_empty() {
1557 for (key, value) in self._unknown_fields.iter() {
1558 state.serialize_entry(key, &value)?;
1559 }
1560 }
1561 state.end()
1562 }
1563}
1564
1565#[derive(Clone, Debug, Default, PartialEq)]
1570#[non_exhaustive]
1571pub struct ListClustersRequest {
1572 pub parent: std::string::String,
1578
1579 pub page_size: i32,
1584
1585 pub page_token: std::string::String,
1591
1592 pub filter: std::string::String,
1609
1610 pub order_by: std::string::String,
1615
1616 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1617}
1618
1619impl ListClustersRequest {
1620 pub fn new() -> Self {
1621 std::default::Default::default()
1622 }
1623
1624 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1626 self.parent = v.into();
1627 self
1628 }
1629
1630 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
1632 self.page_size = v.into();
1633 self
1634 }
1635
1636 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1638 self.page_token = v.into();
1639 self
1640 }
1641
1642 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1644 self.filter = v.into();
1645 self
1646 }
1647
1648 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1650 self.order_by = v.into();
1651 self
1652 }
1653}
1654
1655impl wkt::message::Message for ListClustersRequest {
1656 fn typename() -> &'static str {
1657 "type.googleapis.com/google.cloud.vmwareengine.v1.ListClustersRequest"
1658 }
1659}
1660
1661#[doc(hidden)]
1662impl<'de> serde::de::Deserialize<'de> for ListClustersRequest {
1663 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1664 where
1665 D: serde::Deserializer<'de>,
1666 {
1667 #[allow(non_camel_case_types)]
1668 #[doc(hidden)]
1669 #[derive(PartialEq, Eq, Hash)]
1670 enum __FieldTag {
1671 __parent,
1672 __page_size,
1673 __page_token,
1674 __filter,
1675 __order_by,
1676 Unknown(std::string::String),
1677 }
1678 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1679 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1680 where
1681 D: serde::Deserializer<'de>,
1682 {
1683 struct Visitor;
1684 impl<'de> serde::de::Visitor<'de> for Visitor {
1685 type Value = __FieldTag;
1686 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1687 formatter.write_str("a field name for ListClustersRequest")
1688 }
1689 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1690 where
1691 E: serde::de::Error,
1692 {
1693 use std::result::Result::Ok;
1694 use std::string::ToString;
1695 match value {
1696 "parent" => Ok(__FieldTag::__parent),
1697 "pageSize" => Ok(__FieldTag::__page_size),
1698 "page_size" => Ok(__FieldTag::__page_size),
1699 "pageToken" => Ok(__FieldTag::__page_token),
1700 "page_token" => Ok(__FieldTag::__page_token),
1701 "filter" => Ok(__FieldTag::__filter),
1702 "orderBy" => Ok(__FieldTag::__order_by),
1703 "order_by" => Ok(__FieldTag::__order_by),
1704 _ => Ok(__FieldTag::Unknown(value.to_string())),
1705 }
1706 }
1707 }
1708 deserializer.deserialize_identifier(Visitor)
1709 }
1710 }
1711 struct Visitor;
1712 impl<'de> serde::de::Visitor<'de> for Visitor {
1713 type Value = ListClustersRequest;
1714 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1715 formatter.write_str("struct ListClustersRequest")
1716 }
1717 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1718 where
1719 A: serde::de::MapAccess<'de>,
1720 {
1721 #[allow(unused_imports)]
1722 use serde::de::Error;
1723 use std::option::Option::Some;
1724 let mut fields = std::collections::HashSet::new();
1725 let mut result = Self::Value::new();
1726 while let Some(tag) = map.next_key::<__FieldTag>()? {
1727 #[allow(clippy::match_single_binding)]
1728 match tag {
1729 __FieldTag::__parent => {
1730 if !fields.insert(__FieldTag::__parent) {
1731 return std::result::Result::Err(A::Error::duplicate_field(
1732 "multiple values for parent",
1733 ));
1734 }
1735 result.parent = map
1736 .next_value::<std::option::Option<std::string::String>>()?
1737 .unwrap_or_default();
1738 }
1739 __FieldTag::__page_size => {
1740 if !fields.insert(__FieldTag::__page_size) {
1741 return std::result::Result::Err(A::Error::duplicate_field(
1742 "multiple values for page_size",
1743 ));
1744 }
1745 struct __With(std::option::Option<i32>);
1746 impl<'de> serde::de::Deserialize<'de> for __With {
1747 fn deserialize<D>(
1748 deserializer: D,
1749 ) -> std::result::Result<Self, D::Error>
1750 where
1751 D: serde::de::Deserializer<'de>,
1752 {
1753 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
1754 }
1755 }
1756 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
1757 }
1758 __FieldTag::__page_token => {
1759 if !fields.insert(__FieldTag::__page_token) {
1760 return std::result::Result::Err(A::Error::duplicate_field(
1761 "multiple values for page_token",
1762 ));
1763 }
1764 result.page_token = map
1765 .next_value::<std::option::Option<std::string::String>>()?
1766 .unwrap_or_default();
1767 }
1768 __FieldTag::__filter => {
1769 if !fields.insert(__FieldTag::__filter) {
1770 return std::result::Result::Err(A::Error::duplicate_field(
1771 "multiple values for filter",
1772 ));
1773 }
1774 result.filter = map
1775 .next_value::<std::option::Option<std::string::String>>()?
1776 .unwrap_or_default();
1777 }
1778 __FieldTag::__order_by => {
1779 if !fields.insert(__FieldTag::__order_by) {
1780 return std::result::Result::Err(A::Error::duplicate_field(
1781 "multiple values for order_by",
1782 ));
1783 }
1784 result.order_by = map
1785 .next_value::<std::option::Option<std::string::String>>()?
1786 .unwrap_or_default();
1787 }
1788 __FieldTag::Unknown(key) => {
1789 let value = map.next_value::<serde_json::Value>()?;
1790 result._unknown_fields.insert(key, value);
1791 }
1792 }
1793 }
1794 std::result::Result::Ok(result)
1795 }
1796 }
1797 deserializer.deserialize_any(Visitor)
1798 }
1799}
1800
1801#[doc(hidden)]
1802impl serde::ser::Serialize for ListClustersRequest {
1803 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1804 where
1805 S: serde::ser::Serializer,
1806 {
1807 use serde::ser::SerializeMap;
1808 #[allow(unused_imports)]
1809 use std::option::Option::Some;
1810 let mut state = serializer.serialize_map(std::option::Option::None)?;
1811 if !self.parent.is_empty() {
1812 state.serialize_entry("parent", &self.parent)?;
1813 }
1814 if !wkt::internal::is_default(&self.page_size) {
1815 struct __With<'a>(&'a i32);
1816 impl<'a> serde::ser::Serialize for __With<'a> {
1817 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1818 where
1819 S: serde::ser::Serializer,
1820 {
1821 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
1822 }
1823 }
1824 state.serialize_entry("pageSize", &__With(&self.page_size))?;
1825 }
1826 if !self.page_token.is_empty() {
1827 state.serialize_entry("pageToken", &self.page_token)?;
1828 }
1829 if !self.filter.is_empty() {
1830 state.serialize_entry("filter", &self.filter)?;
1831 }
1832 if !self.order_by.is_empty() {
1833 state.serialize_entry("orderBy", &self.order_by)?;
1834 }
1835 if !self._unknown_fields.is_empty() {
1836 for (key, value) in self._unknown_fields.iter() {
1837 state.serialize_entry(key, &value)?;
1838 }
1839 }
1840 state.end()
1841 }
1842}
1843
1844#[derive(Clone, Debug, Default, PartialEq)]
1849#[non_exhaustive]
1850pub struct ListClustersResponse {
1851 pub clusters: std::vec::Vec<crate::model::Cluster>,
1853
1854 pub next_page_token: std::string::String,
1857
1858 pub unreachable: std::vec::Vec<std::string::String>,
1861
1862 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1863}
1864
1865impl ListClustersResponse {
1866 pub fn new() -> Self {
1867 std::default::Default::default()
1868 }
1869
1870 pub fn set_clusters<T, V>(mut self, v: T) -> Self
1872 where
1873 T: std::iter::IntoIterator<Item = V>,
1874 V: std::convert::Into<crate::model::Cluster>,
1875 {
1876 use std::iter::Iterator;
1877 self.clusters = v.into_iter().map(|i| i.into()).collect();
1878 self
1879 }
1880
1881 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1883 self.next_page_token = v.into();
1884 self
1885 }
1886
1887 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
1889 where
1890 T: std::iter::IntoIterator<Item = V>,
1891 V: std::convert::Into<std::string::String>,
1892 {
1893 use std::iter::Iterator;
1894 self.unreachable = v.into_iter().map(|i| i.into()).collect();
1895 self
1896 }
1897}
1898
1899impl wkt::message::Message for ListClustersResponse {
1900 fn typename() -> &'static str {
1901 "type.googleapis.com/google.cloud.vmwareengine.v1.ListClustersResponse"
1902 }
1903}
1904
1905#[doc(hidden)]
1906impl gax::paginator::internal::PageableResponse for ListClustersResponse {
1907 type PageItem = crate::model::Cluster;
1908
1909 fn items(self) -> std::vec::Vec<Self::PageItem> {
1910 self.clusters
1911 }
1912
1913 fn next_page_token(&self) -> std::string::String {
1914 use std::clone::Clone;
1915 self.next_page_token.clone()
1916 }
1917}
1918
1919#[doc(hidden)]
1920impl<'de> serde::de::Deserialize<'de> for ListClustersResponse {
1921 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1922 where
1923 D: serde::Deserializer<'de>,
1924 {
1925 #[allow(non_camel_case_types)]
1926 #[doc(hidden)]
1927 #[derive(PartialEq, Eq, Hash)]
1928 enum __FieldTag {
1929 __clusters,
1930 __next_page_token,
1931 __unreachable,
1932 Unknown(std::string::String),
1933 }
1934 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
1935 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1936 where
1937 D: serde::Deserializer<'de>,
1938 {
1939 struct Visitor;
1940 impl<'de> serde::de::Visitor<'de> for Visitor {
1941 type Value = __FieldTag;
1942 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1943 formatter.write_str("a field name for ListClustersResponse")
1944 }
1945 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
1946 where
1947 E: serde::de::Error,
1948 {
1949 use std::result::Result::Ok;
1950 use std::string::ToString;
1951 match value {
1952 "clusters" => Ok(__FieldTag::__clusters),
1953 "nextPageToken" => Ok(__FieldTag::__next_page_token),
1954 "next_page_token" => Ok(__FieldTag::__next_page_token),
1955 "unreachable" => Ok(__FieldTag::__unreachable),
1956 _ => Ok(__FieldTag::Unknown(value.to_string())),
1957 }
1958 }
1959 }
1960 deserializer.deserialize_identifier(Visitor)
1961 }
1962 }
1963 struct Visitor;
1964 impl<'de> serde::de::Visitor<'de> for Visitor {
1965 type Value = ListClustersResponse;
1966 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
1967 formatter.write_str("struct ListClustersResponse")
1968 }
1969 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
1970 where
1971 A: serde::de::MapAccess<'de>,
1972 {
1973 #[allow(unused_imports)]
1974 use serde::de::Error;
1975 use std::option::Option::Some;
1976 let mut fields = std::collections::HashSet::new();
1977 let mut result = Self::Value::new();
1978 while let Some(tag) = map.next_key::<__FieldTag>()? {
1979 #[allow(clippy::match_single_binding)]
1980 match tag {
1981 __FieldTag::__clusters => {
1982 if !fields.insert(__FieldTag::__clusters) {
1983 return std::result::Result::Err(A::Error::duplicate_field(
1984 "multiple values for clusters",
1985 ));
1986 }
1987 result.clusters = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Cluster>>>()?.unwrap_or_default();
1988 }
1989 __FieldTag::__next_page_token => {
1990 if !fields.insert(__FieldTag::__next_page_token) {
1991 return std::result::Result::Err(A::Error::duplicate_field(
1992 "multiple values for next_page_token",
1993 ));
1994 }
1995 result.next_page_token = map
1996 .next_value::<std::option::Option<std::string::String>>()?
1997 .unwrap_or_default();
1998 }
1999 __FieldTag::__unreachable => {
2000 if !fields.insert(__FieldTag::__unreachable) {
2001 return std::result::Result::Err(A::Error::duplicate_field(
2002 "multiple values for unreachable",
2003 ));
2004 }
2005 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
2006 }
2007 __FieldTag::Unknown(key) => {
2008 let value = map.next_value::<serde_json::Value>()?;
2009 result._unknown_fields.insert(key, value);
2010 }
2011 }
2012 }
2013 std::result::Result::Ok(result)
2014 }
2015 }
2016 deserializer.deserialize_any(Visitor)
2017 }
2018}
2019
2020#[doc(hidden)]
2021impl serde::ser::Serialize for ListClustersResponse {
2022 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2023 where
2024 S: serde::ser::Serializer,
2025 {
2026 use serde::ser::SerializeMap;
2027 #[allow(unused_imports)]
2028 use std::option::Option::Some;
2029 let mut state = serializer.serialize_map(std::option::Option::None)?;
2030 if !self.clusters.is_empty() {
2031 state.serialize_entry("clusters", &self.clusters)?;
2032 }
2033 if !self.next_page_token.is_empty() {
2034 state.serialize_entry("nextPageToken", &self.next_page_token)?;
2035 }
2036 if !self.unreachable.is_empty() {
2037 state.serialize_entry("unreachable", &self.unreachable)?;
2038 }
2039 if !self._unknown_fields.is_empty() {
2040 for (key, value) in self._unknown_fields.iter() {
2041 state.serialize_entry(key, &value)?;
2042 }
2043 }
2044 state.end()
2045 }
2046}
2047
2048#[derive(Clone, Debug, Default, PartialEq)]
2053#[non_exhaustive]
2054pub struct GetClusterRequest {
2055 pub name: std::string::String,
2061
2062 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2063}
2064
2065impl GetClusterRequest {
2066 pub fn new() -> Self {
2067 std::default::Default::default()
2068 }
2069
2070 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2072 self.name = v.into();
2073 self
2074 }
2075}
2076
2077impl wkt::message::Message for GetClusterRequest {
2078 fn typename() -> &'static str {
2079 "type.googleapis.com/google.cloud.vmwareengine.v1.GetClusterRequest"
2080 }
2081}
2082
2083#[doc(hidden)]
2084impl<'de> serde::de::Deserialize<'de> for GetClusterRequest {
2085 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2086 where
2087 D: serde::Deserializer<'de>,
2088 {
2089 #[allow(non_camel_case_types)]
2090 #[doc(hidden)]
2091 #[derive(PartialEq, Eq, Hash)]
2092 enum __FieldTag {
2093 __name,
2094 Unknown(std::string::String),
2095 }
2096 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2097 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2098 where
2099 D: serde::Deserializer<'de>,
2100 {
2101 struct Visitor;
2102 impl<'de> serde::de::Visitor<'de> for Visitor {
2103 type Value = __FieldTag;
2104 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2105 formatter.write_str("a field name for GetClusterRequest")
2106 }
2107 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2108 where
2109 E: serde::de::Error,
2110 {
2111 use std::result::Result::Ok;
2112 use std::string::ToString;
2113 match value {
2114 "name" => Ok(__FieldTag::__name),
2115 _ => Ok(__FieldTag::Unknown(value.to_string())),
2116 }
2117 }
2118 }
2119 deserializer.deserialize_identifier(Visitor)
2120 }
2121 }
2122 struct Visitor;
2123 impl<'de> serde::de::Visitor<'de> for Visitor {
2124 type Value = GetClusterRequest;
2125 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2126 formatter.write_str("struct GetClusterRequest")
2127 }
2128 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2129 where
2130 A: serde::de::MapAccess<'de>,
2131 {
2132 #[allow(unused_imports)]
2133 use serde::de::Error;
2134 use std::option::Option::Some;
2135 let mut fields = std::collections::HashSet::new();
2136 let mut result = Self::Value::new();
2137 while let Some(tag) = map.next_key::<__FieldTag>()? {
2138 #[allow(clippy::match_single_binding)]
2139 match tag {
2140 __FieldTag::__name => {
2141 if !fields.insert(__FieldTag::__name) {
2142 return std::result::Result::Err(A::Error::duplicate_field(
2143 "multiple values for name",
2144 ));
2145 }
2146 result.name = map
2147 .next_value::<std::option::Option<std::string::String>>()?
2148 .unwrap_or_default();
2149 }
2150 __FieldTag::Unknown(key) => {
2151 let value = map.next_value::<serde_json::Value>()?;
2152 result._unknown_fields.insert(key, value);
2153 }
2154 }
2155 }
2156 std::result::Result::Ok(result)
2157 }
2158 }
2159 deserializer.deserialize_any(Visitor)
2160 }
2161}
2162
2163#[doc(hidden)]
2164impl serde::ser::Serialize for GetClusterRequest {
2165 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2166 where
2167 S: serde::ser::Serializer,
2168 {
2169 use serde::ser::SerializeMap;
2170 #[allow(unused_imports)]
2171 use std::option::Option::Some;
2172 let mut state = serializer.serialize_map(std::option::Option::None)?;
2173 if !self.name.is_empty() {
2174 state.serialize_entry("name", &self.name)?;
2175 }
2176 if !self._unknown_fields.is_empty() {
2177 for (key, value) in self._unknown_fields.iter() {
2178 state.serialize_entry(key, &value)?;
2179 }
2180 }
2181 state.end()
2182 }
2183}
2184
2185#[derive(Clone, Debug, Default, PartialEq)]
2190#[non_exhaustive]
2191pub struct CreateClusterRequest {
2192 pub parent: std::string::String,
2198
2199 pub cluster_id: std::string::String,
2211
2212 pub cluster: std::option::Option<crate::model::Cluster>,
2214
2215 pub request_id: std::string::String,
2218
2219 pub validate_only: bool,
2222
2223 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2224}
2225
2226impl CreateClusterRequest {
2227 pub fn new() -> Self {
2228 std::default::Default::default()
2229 }
2230
2231 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2233 self.parent = v.into();
2234 self
2235 }
2236
2237 pub fn set_cluster_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2239 self.cluster_id = v.into();
2240 self
2241 }
2242
2243 pub fn set_cluster<T>(mut self, v: T) -> Self
2245 where
2246 T: std::convert::Into<crate::model::Cluster>,
2247 {
2248 self.cluster = std::option::Option::Some(v.into());
2249 self
2250 }
2251
2252 pub fn set_or_clear_cluster<T>(mut self, v: std::option::Option<T>) -> Self
2254 where
2255 T: std::convert::Into<crate::model::Cluster>,
2256 {
2257 self.cluster = v.map(|x| x.into());
2258 self
2259 }
2260
2261 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2263 self.request_id = v.into();
2264 self
2265 }
2266
2267 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
2269 self.validate_only = v.into();
2270 self
2271 }
2272}
2273
2274impl wkt::message::Message for CreateClusterRequest {
2275 fn typename() -> &'static str {
2276 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateClusterRequest"
2277 }
2278}
2279
2280#[doc(hidden)]
2281impl<'de> serde::de::Deserialize<'de> for CreateClusterRequest {
2282 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2283 where
2284 D: serde::Deserializer<'de>,
2285 {
2286 #[allow(non_camel_case_types)]
2287 #[doc(hidden)]
2288 #[derive(PartialEq, Eq, Hash)]
2289 enum __FieldTag {
2290 __parent,
2291 __cluster_id,
2292 __cluster,
2293 __request_id,
2294 __validate_only,
2295 Unknown(std::string::String),
2296 }
2297 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2298 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2299 where
2300 D: serde::Deserializer<'de>,
2301 {
2302 struct Visitor;
2303 impl<'de> serde::de::Visitor<'de> for Visitor {
2304 type Value = __FieldTag;
2305 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2306 formatter.write_str("a field name for CreateClusterRequest")
2307 }
2308 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2309 where
2310 E: serde::de::Error,
2311 {
2312 use std::result::Result::Ok;
2313 use std::string::ToString;
2314 match value {
2315 "parent" => Ok(__FieldTag::__parent),
2316 "clusterId" => Ok(__FieldTag::__cluster_id),
2317 "cluster_id" => Ok(__FieldTag::__cluster_id),
2318 "cluster" => Ok(__FieldTag::__cluster),
2319 "requestId" => Ok(__FieldTag::__request_id),
2320 "request_id" => Ok(__FieldTag::__request_id),
2321 "validateOnly" => Ok(__FieldTag::__validate_only),
2322 "validate_only" => Ok(__FieldTag::__validate_only),
2323 _ => Ok(__FieldTag::Unknown(value.to_string())),
2324 }
2325 }
2326 }
2327 deserializer.deserialize_identifier(Visitor)
2328 }
2329 }
2330 struct Visitor;
2331 impl<'de> serde::de::Visitor<'de> for Visitor {
2332 type Value = CreateClusterRequest;
2333 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2334 formatter.write_str("struct CreateClusterRequest")
2335 }
2336 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2337 where
2338 A: serde::de::MapAccess<'de>,
2339 {
2340 #[allow(unused_imports)]
2341 use serde::de::Error;
2342 use std::option::Option::Some;
2343 let mut fields = std::collections::HashSet::new();
2344 let mut result = Self::Value::new();
2345 while let Some(tag) = map.next_key::<__FieldTag>()? {
2346 #[allow(clippy::match_single_binding)]
2347 match tag {
2348 __FieldTag::__parent => {
2349 if !fields.insert(__FieldTag::__parent) {
2350 return std::result::Result::Err(A::Error::duplicate_field(
2351 "multiple values for parent",
2352 ));
2353 }
2354 result.parent = map
2355 .next_value::<std::option::Option<std::string::String>>()?
2356 .unwrap_or_default();
2357 }
2358 __FieldTag::__cluster_id => {
2359 if !fields.insert(__FieldTag::__cluster_id) {
2360 return std::result::Result::Err(A::Error::duplicate_field(
2361 "multiple values for cluster_id",
2362 ));
2363 }
2364 result.cluster_id = map
2365 .next_value::<std::option::Option<std::string::String>>()?
2366 .unwrap_or_default();
2367 }
2368 __FieldTag::__cluster => {
2369 if !fields.insert(__FieldTag::__cluster) {
2370 return std::result::Result::Err(A::Error::duplicate_field(
2371 "multiple values for cluster",
2372 ));
2373 }
2374 result.cluster =
2375 map.next_value::<std::option::Option<crate::model::Cluster>>()?;
2376 }
2377 __FieldTag::__request_id => {
2378 if !fields.insert(__FieldTag::__request_id) {
2379 return std::result::Result::Err(A::Error::duplicate_field(
2380 "multiple values for request_id",
2381 ));
2382 }
2383 result.request_id = map
2384 .next_value::<std::option::Option<std::string::String>>()?
2385 .unwrap_or_default();
2386 }
2387 __FieldTag::__validate_only => {
2388 if !fields.insert(__FieldTag::__validate_only) {
2389 return std::result::Result::Err(A::Error::duplicate_field(
2390 "multiple values for validate_only",
2391 ));
2392 }
2393 result.validate_only = map
2394 .next_value::<std::option::Option<bool>>()?
2395 .unwrap_or_default();
2396 }
2397 __FieldTag::Unknown(key) => {
2398 let value = map.next_value::<serde_json::Value>()?;
2399 result._unknown_fields.insert(key, value);
2400 }
2401 }
2402 }
2403 std::result::Result::Ok(result)
2404 }
2405 }
2406 deserializer.deserialize_any(Visitor)
2407 }
2408}
2409
2410#[doc(hidden)]
2411impl serde::ser::Serialize for CreateClusterRequest {
2412 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2413 where
2414 S: serde::ser::Serializer,
2415 {
2416 use serde::ser::SerializeMap;
2417 #[allow(unused_imports)]
2418 use std::option::Option::Some;
2419 let mut state = serializer.serialize_map(std::option::Option::None)?;
2420 if !self.parent.is_empty() {
2421 state.serialize_entry("parent", &self.parent)?;
2422 }
2423 if !self.cluster_id.is_empty() {
2424 state.serialize_entry("clusterId", &self.cluster_id)?;
2425 }
2426 if self.cluster.is_some() {
2427 state.serialize_entry("cluster", &self.cluster)?;
2428 }
2429 if !self.request_id.is_empty() {
2430 state.serialize_entry("requestId", &self.request_id)?;
2431 }
2432 if !wkt::internal::is_default(&self.validate_only) {
2433 state.serialize_entry("validateOnly", &self.validate_only)?;
2434 }
2435 if !self._unknown_fields.is_empty() {
2436 for (key, value) in self._unknown_fields.iter() {
2437 state.serialize_entry(key, &value)?;
2438 }
2439 }
2440 state.end()
2441 }
2442}
2443
2444#[derive(Clone, Debug, Default, PartialEq)]
2449#[non_exhaustive]
2450pub struct UpdateClusterRequest {
2451 pub update_mask: std::option::Option<wkt::FieldMask>,
2457
2458 pub cluster: std::option::Option<crate::model::Cluster>,
2460
2461 pub request_id: std::string::String,
2464
2465 pub validate_only: bool,
2468
2469 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2470}
2471
2472impl UpdateClusterRequest {
2473 pub fn new() -> Self {
2474 std::default::Default::default()
2475 }
2476
2477 pub fn set_update_mask<T>(mut self, v: T) -> Self
2479 where
2480 T: std::convert::Into<wkt::FieldMask>,
2481 {
2482 self.update_mask = std::option::Option::Some(v.into());
2483 self
2484 }
2485
2486 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
2488 where
2489 T: std::convert::Into<wkt::FieldMask>,
2490 {
2491 self.update_mask = v.map(|x| x.into());
2492 self
2493 }
2494
2495 pub fn set_cluster<T>(mut self, v: T) -> Self
2497 where
2498 T: std::convert::Into<crate::model::Cluster>,
2499 {
2500 self.cluster = std::option::Option::Some(v.into());
2501 self
2502 }
2503
2504 pub fn set_or_clear_cluster<T>(mut self, v: std::option::Option<T>) -> Self
2506 where
2507 T: std::convert::Into<crate::model::Cluster>,
2508 {
2509 self.cluster = v.map(|x| x.into());
2510 self
2511 }
2512
2513 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2515 self.request_id = v.into();
2516 self
2517 }
2518
2519 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
2521 self.validate_only = v.into();
2522 self
2523 }
2524}
2525
2526impl wkt::message::Message for UpdateClusterRequest {
2527 fn typename() -> &'static str {
2528 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateClusterRequest"
2529 }
2530}
2531
2532#[doc(hidden)]
2533impl<'de> serde::de::Deserialize<'de> for UpdateClusterRequest {
2534 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2535 where
2536 D: serde::Deserializer<'de>,
2537 {
2538 #[allow(non_camel_case_types)]
2539 #[doc(hidden)]
2540 #[derive(PartialEq, Eq, Hash)]
2541 enum __FieldTag {
2542 __update_mask,
2543 __cluster,
2544 __request_id,
2545 __validate_only,
2546 Unknown(std::string::String),
2547 }
2548 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2549 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2550 where
2551 D: serde::Deserializer<'de>,
2552 {
2553 struct Visitor;
2554 impl<'de> serde::de::Visitor<'de> for Visitor {
2555 type Value = __FieldTag;
2556 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2557 formatter.write_str("a field name for UpdateClusterRequest")
2558 }
2559 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2560 where
2561 E: serde::de::Error,
2562 {
2563 use std::result::Result::Ok;
2564 use std::string::ToString;
2565 match value {
2566 "updateMask" => Ok(__FieldTag::__update_mask),
2567 "update_mask" => Ok(__FieldTag::__update_mask),
2568 "cluster" => Ok(__FieldTag::__cluster),
2569 "requestId" => Ok(__FieldTag::__request_id),
2570 "request_id" => Ok(__FieldTag::__request_id),
2571 "validateOnly" => Ok(__FieldTag::__validate_only),
2572 "validate_only" => Ok(__FieldTag::__validate_only),
2573 _ => Ok(__FieldTag::Unknown(value.to_string())),
2574 }
2575 }
2576 }
2577 deserializer.deserialize_identifier(Visitor)
2578 }
2579 }
2580 struct Visitor;
2581 impl<'de> serde::de::Visitor<'de> for Visitor {
2582 type Value = UpdateClusterRequest;
2583 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2584 formatter.write_str("struct UpdateClusterRequest")
2585 }
2586 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2587 where
2588 A: serde::de::MapAccess<'de>,
2589 {
2590 #[allow(unused_imports)]
2591 use serde::de::Error;
2592 use std::option::Option::Some;
2593 let mut fields = std::collections::HashSet::new();
2594 let mut result = Self::Value::new();
2595 while let Some(tag) = map.next_key::<__FieldTag>()? {
2596 #[allow(clippy::match_single_binding)]
2597 match tag {
2598 __FieldTag::__update_mask => {
2599 if !fields.insert(__FieldTag::__update_mask) {
2600 return std::result::Result::Err(A::Error::duplicate_field(
2601 "multiple values for update_mask",
2602 ));
2603 }
2604 result.update_mask =
2605 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
2606 }
2607 __FieldTag::__cluster => {
2608 if !fields.insert(__FieldTag::__cluster) {
2609 return std::result::Result::Err(A::Error::duplicate_field(
2610 "multiple values for cluster",
2611 ));
2612 }
2613 result.cluster =
2614 map.next_value::<std::option::Option<crate::model::Cluster>>()?;
2615 }
2616 __FieldTag::__request_id => {
2617 if !fields.insert(__FieldTag::__request_id) {
2618 return std::result::Result::Err(A::Error::duplicate_field(
2619 "multiple values for request_id",
2620 ));
2621 }
2622 result.request_id = map
2623 .next_value::<std::option::Option<std::string::String>>()?
2624 .unwrap_or_default();
2625 }
2626 __FieldTag::__validate_only => {
2627 if !fields.insert(__FieldTag::__validate_only) {
2628 return std::result::Result::Err(A::Error::duplicate_field(
2629 "multiple values for validate_only",
2630 ));
2631 }
2632 result.validate_only = map
2633 .next_value::<std::option::Option<bool>>()?
2634 .unwrap_or_default();
2635 }
2636 __FieldTag::Unknown(key) => {
2637 let value = map.next_value::<serde_json::Value>()?;
2638 result._unknown_fields.insert(key, value);
2639 }
2640 }
2641 }
2642 std::result::Result::Ok(result)
2643 }
2644 }
2645 deserializer.deserialize_any(Visitor)
2646 }
2647}
2648
2649#[doc(hidden)]
2650impl serde::ser::Serialize for UpdateClusterRequest {
2651 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2652 where
2653 S: serde::ser::Serializer,
2654 {
2655 use serde::ser::SerializeMap;
2656 #[allow(unused_imports)]
2657 use std::option::Option::Some;
2658 let mut state = serializer.serialize_map(std::option::Option::None)?;
2659 if self.update_mask.is_some() {
2660 state.serialize_entry("updateMask", &self.update_mask)?;
2661 }
2662 if self.cluster.is_some() {
2663 state.serialize_entry("cluster", &self.cluster)?;
2664 }
2665 if !self.request_id.is_empty() {
2666 state.serialize_entry("requestId", &self.request_id)?;
2667 }
2668 if !wkt::internal::is_default(&self.validate_only) {
2669 state.serialize_entry("validateOnly", &self.validate_only)?;
2670 }
2671 if !self._unknown_fields.is_empty() {
2672 for (key, value) in self._unknown_fields.iter() {
2673 state.serialize_entry(key, &value)?;
2674 }
2675 }
2676 state.end()
2677 }
2678}
2679
2680#[derive(Clone, Debug, Default, PartialEq)]
2685#[non_exhaustive]
2686pub struct DeleteClusterRequest {
2687 pub name: std::string::String,
2693
2694 pub request_id: std::string::String,
2697
2698 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2699}
2700
2701impl DeleteClusterRequest {
2702 pub fn new() -> Self {
2703 std::default::Default::default()
2704 }
2705
2706 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2708 self.name = v.into();
2709 self
2710 }
2711
2712 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2714 self.request_id = v.into();
2715 self
2716 }
2717}
2718
2719impl wkt::message::Message for DeleteClusterRequest {
2720 fn typename() -> &'static str {
2721 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteClusterRequest"
2722 }
2723}
2724
2725#[doc(hidden)]
2726impl<'de> serde::de::Deserialize<'de> for DeleteClusterRequest {
2727 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2728 where
2729 D: serde::Deserializer<'de>,
2730 {
2731 #[allow(non_camel_case_types)]
2732 #[doc(hidden)]
2733 #[derive(PartialEq, Eq, Hash)]
2734 enum __FieldTag {
2735 __name,
2736 __request_id,
2737 Unknown(std::string::String),
2738 }
2739 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2740 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2741 where
2742 D: serde::Deserializer<'de>,
2743 {
2744 struct Visitor;
2745 impl<'de> serde::de::Visitor<'de> for Visitor {
2746 type Value = __FieldTag;
2747 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2748 formatter.write_str("a field name for DeleteClusterRequest")
2749 }
2750 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2751 where
2752 E: serde::de::Error,
2753 {
2754 use std::result::Result::Ok;
2755 use std::string::ToString;
2756 match value {
2757 "name" => Ok(__FieldTag::__name),
2758 "requestId" => Ok(__FieldTag::__request_id),
2759 "request_id" => Ok(__FieldTag::__request_id),
2760 _ => Ok(__FieldTag::Unknown(value.to_string())),
2761 }
2762 }
2763 }
2764 deserializer.deserialize_identifier(Visitor)
2765 }
2766 }
2767 struct Visitor;
2768 impl<'de> serde::de::Visitor<'de> for Visitor {
2769 type Value = DeleteClusterRequest;
2770 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2771 formatter.write_str("struct DeleteClusterRequest")
2772 }
2773 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2774 where
2775 A: serde::de::MapAccess<'de>,
2776 {
2777 #[allow(unused_imports)]
2778 use serde::de::Error;
2779 use std::option::Option::Some;
2780 let mut fields = std::collections::HashSet::new();
2781 let mut result = Self::Value::new();
2782 while let Some(tag) = map.next_key::<__FieldTag>()? {
2783 #[allow(clippy::match_single_binding)]
2784 match tag {
2785 __FieldTag::__name => {
2786 if !fields.insert(__FieldTag::__name) {
2787 return std::result::Result::Err(A::Error::duplicate_field(
2788 "multiple values for name",
2789 ));
2790 }
2791 result.name = map
2792 .next_value::<std::option::Option<std::string::String>>()?
2793 .unwrap_or_default();
2794 }
2795 __FieldTag::__request_id => {
2796 if !fields.insert(__FieldTag::__request_id) {
2797 return std::result::Result::Err(A::Error::duplicate_field(
2798 "multiple values for request_id",
2799 ));
2800 }
2801 result.request_id = map
2802 .next_value::<std::option::Option<std::string::String>>()?
2803 .unwrap_or_default();
2804 }
2805 __FieldTag::Unknown(key) => {
2806 let value = map.next_value::<serde_json::Value>()?;
2807 result._unknown_fields.insert(key, value);
2808 }
2809 }
2810 }
2811 std::result::Result::Ok(result)
2812 }
2813 }
2814 deserializer.deserialize_any(Visitor)
2815 }
2816}
2817
2818#[doc(hidden)]
2819impl serde::ser::Serialize for DeleteClusterRequest {
2820 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
2821 where
2822 S: serde::ser::Serializer,
2823 {
2824 use serde::ser::SerializeMap;
2825 #[allow(unused_imports)]
2826 use std::option::Option::Some;
2827 let mut state = serializer.serialize_map(std::option::Option::None)?;
2828 if !self.name.is_empty() {
2829 state.serialize_entry("name", &self.name)?;
2830 }
2831 if !self.request_id.is_empty() {
2832 state.serialize_entry("requestId", &self.request_id)?;
2833 }
2834 if !self._unknown_fields.is_empty() {
2835 for (key, value) in self._unknown_fields.iter() {
2836 state.serialize_entry(key, &value)?;
2837 }
2838 }
2839 state.end()
2840 }
2841}
2842
2843#[derive(Clone, Debug, Default, PartialEq)]
2848#[non_exhaustive]
2849pub struct ListNodesRequest {
2850 pub parent: std::string::String,
2856
2857 pub page_size: i32,
2862
2863 pub page_token: std::string::String,
2870
2871 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
2872}
2873
2874impl ListNodesRequest {
2875 pub fn new() -> Self {
2876 std::default::Default::default()
2877 }
2878
2879 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2881 self.parent = v.into();
2882 self
2883 }
2884
2885 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
2887 self.page_size = v.into();
2888 self
2889 }
2890
2891 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2893 self.page_token = v.into();
2894 self
2895 }
2896}
2897
2898impl wkt::message::Message for ListNodesRequest {
2899 fn typename() -> &'static str {
2900 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNodesRequest"
2901 }
2902}
2903
2904#[doc(hidden)]
2905impl<'de> serde::de::Deserialize<'de> for ListNodesRequest {
2906 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2907 where
2908 D: serde::Deserializer<'de>,
2909 {
2910 #[allow(non_camel_case_types)]
2911 #[doc(hidden)]
2912 #[derive(PartialEq, Eq, Hash)]
2913 enum __FieldTag {
2914 __parent,
2915 __page_size,
2916 __page_token,
2917 Unknown(std::string::String),
2918 }
2919 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
2920 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
2921 where
2922 D: serde::Deserializer<'de>,
2923 {
2924 struct Visitor;
2925 impl<'de> serde::de::Visitor<'de> for Visitor {
2926 type Value = __FieldTag;
2927 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2928 formatter.write_str("a field name for ListNodesRequest")
2929 }
2930 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
2931 where
2932 E: serde::de::Error,
2933 {
2934 use std::result::Result::Ok;
2935 use std::string::ToString;
2936 match value {
2937 "parent" => Ok(__FieldTag::__parent),
2938 "pageSize" => Ok(__FieldTag::__page_size),
2939 "page_size" => Ok(__FieldTag::__page_size),
2940 "pageToken" => Ok(__FieldTag::__page_token),
2941 "page_token" => Ok(__FieldTag::__page_token),
2942 _ => Ok(__FieldTag::Unknown(value.to_string())),
2943 }
2944 }
2945 }
2946 deserializer.deserialize_identifier(Visitor)
2947 }
2948 }
2949 struct Visitor;
2950 impl<'de> serde::de::Visitor<'de> for Visitor {
2951 type Value = ListNodesRequest;
2952 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
2953 formatter.write_str("struct ListNodesRequest")
2954 }
2955 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
2956 where
2957 A: serde::de::MapAccess<'de>,
2958 {
2959 #[allow(unused_imports)]
2960 use serde::de::Error;
2961 use std::option::Option::Some;
2962 let mut fields = std::collections::HashSet::new();
2963 let mut result = Self::Value::new();
2964 while let Some(tag) = map.next_key::<__FieldTag>()? {
2965 #[allow(clippy::match_single_binding)]
2966 match tag {
2967 __FieldTag::__parent => {
2968 if !fields.insert(__FieldTag::__parent) {
2969 return std::result::Result::Err(A::Error::duplicate_field(
2970 "multiple values for parent",
2971 ));
2972 }
2973 result.parent = map
2974 .next_value::<std::option::Option<std::string::String>>()?
2975 .unwrap_or_default();
2976 }
2977 __FieldTag::__page_size => {
2978 if !fields.insert(__FieldTag::__page_size) {
2979 return std::result::Result::Err(A::Error::duplicate_field(
2980 "multiple values for page_size",
2981 ));
2982 }
2983 struct __With(std::option::Option<i32>);
2984 impl<'de> serde::de::Deserialize<'de> for __With {
2985 fn deserialize<D>(
2986 deserializer: D,
2987 ) -> std::result::Result<Self, D::Error>
2988 where
2989 D: serde::de::Deserializer<'de>,
2990 {
2991 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
2992 }
2993 }
2994 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
2995 }
2996 __FieldTag::__page_token => {
2997 if !fields.insert(__FieldTag::__page_token) {
2998 return std::result::Result::Err(A::Error::duplicate_field(
2999 "multiple values for page_token",
3000 ));
3001 }
3002 result.page_token = map
3003 .next_value::<std::option::Option<std::string::String>>()?
3004 .unwrap_or_default();
3005 }
3006 __FieldTag::Unknown(key) => {
3007 let value = map.next_value::<serde_json::Value>()?;
3008 result._unknown_fields.insert(key, value);
3009 }
3010 }
3011 }
3012 std::result::Result::Ok(result)
3013 }
3014 }
3015 deserializer.deserialize_any(Visitor)
3016 }
3017}
3018
3019#[doc(hidden)]
3020impl serde::ser::Serialize for ListNodesRequest {
3021 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3022 where
3023 S: serde::ser::Serializer,
3024 {
3025 use serde::ser::SerializeMap;
3026 #[allow(unused_imports)]
3027 use std::option::Option::Some;
3028 let mut state = serializer.serialize_map(std::option::Option::None)?;
3029 if !self.parent.is_empty() {
3030 state.serialize_entry("parent", &self.parent)?;
3031 }
3032 if !wkt::internal::is_default(&self.page_size) {
3033 struct __With<'a>(&'a i32);
3034 impl<'a> serde::ser::Serialize for __With<'a> {
3035 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3036 where
3037 S: serde::ser::Serializer,
3038 {
3039 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
3040 }
3041 }
3042 state.serialize_entry("pageSize", &__With(&self.page_size))?;
3043 }
3044 if !self.page_token.is_empty() {
3045 state.serialize_entry("pageToken", &self.page_token)?;
3046 }
3047 if !self._unknown_fields.is_empty() {
3048 for (key, value) in self._unknown_fields.iter() {
3049 state.serialize_entry(key, &value)?;
3050 }
3051 }
3052 state.end()
3053 }
3054}
3055
3056#[derive(Clone, Debug, Default, PartialEq)]
3061#[non_exhaustive]
3062pub struct ListNodesResponse {
3063 pub nodes: std::vec::Vec<crate::model::Node>,
3065
3066 pub next_page_token: std::string::String,
3069
3070 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
3071}
3072
3073impl ListNodesResponse {
3074 pub fn new() -> Self {
3075 std::default::Default::default()
3076 }
3077
3078 pub fn set_nodes<T, V>(mut self, v: T) -> Self
3080 where
3081 T: std::iter::IntoIterator<Item = V>,
3082 V: std::convert::Into<crate::model::Node>,
3083 {
3084 use std::iter::Iterator;
3085 self.nodes = v.into_iter().map(|i| i.into()).collect();
3086 self
3087 }
3088
3089 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3091 self.next_page_token = v.into();
3092 self
3093 }
3094}
3095
3096impl wkt::message::Message for ListNodesResponse {
3097 fn typename() -> &'static str {
3098 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNodesResponse"
3099 }
3100}
3101
3102#[doc(hidden)]
3103impl gax::paginator::internal::PageableResponse for ListNodesResponse {
3104 type PageItem = crate::model::Node;
3105
3106 fn items(self) -> std::vec::Vec<Self::PageItem> {
3107 self.nodes
3108 }
3109
3110 fn next_page_token(&self) -> std::string::String {
3111 use std::clone::Clone;
3112 self.next_page_token.clone()
3113 }
3114}
3115
3116#[doc(hidden)]
3117impl<'de> serde::de::Deserialize<'de> for ListNodesResponse {
3118 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3119 where
3120 D: serde::Deserializer<'de>,
3121 {
3122 #[allow(non_camel_case_types)]
3123 #[doc(hidden)]
3124 #[derive(PartialEq, Eq, Hash)]
3125 enum __FieldTag {
3126 __nodes,
3127 __next_page_token,
3128 Unknown(std::string::String),
3129 }
3130 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3131 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3132 where
3133 D: serde::Deserializer<'de>,
3134 {
3135 struct Visitor;
3136 impl<'de> serde::de::Visitor<'de> for Visitor {
3137 type Value = __FieldTag;
3138 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3139 formatter.write_str("a field name for ListNodesResponse")
3140 }
3141 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3142 where
3143 E: serde::de::Error,
3144 {
3145 use std::result::Result::Ok;
3146 use std::string::ToString;
3147 match value {
3148 "nodes" => Ok(__FieldTag::__nodes),
3149 "nextPageToken" => Ok(__FieldTag::__next_page_token),
3150 "next_page_token" => Ok(__FieldTag::__next_page_token),
3151 _ => Ok(__FieldTag::Unknown(value.to_string())),
3152 }
3153 }
3154 }
3155 deserializer.deserialize_identifier(Visitor)
3156 }
3157 }
3158 struct Visitor;
3159 impl<'de> serde::de::Visitor<'de> for Visitor {
3160 type Value = ListNodesResponse;
3161 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3162 formatter.write_str("struct ListNodesResponse")
3163 }
3164 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3165 where
3166 A: serde::de::MapAccess<'de>,
3167 {
3168 #[allow(unused_imports)]
3169 use serde::de::Error;
3170 use std::option::Option::Some;
3171 let mut fields = std::collections::HashSet::new();
3172 let mut result = Self::Value::new();
3173 while let Some(tag) = map.next_key::<__FieldTag>()? {
3174 #[allow(clippy::match_single_binding)]
3175 match tag {
3176 __FieldTag::__nodes => {
3177 if !fields.insert(__FieldTag::__nodes) {
3178 return std::result::Result::Err(A::Error::duplicate_field(
3179 "multiple values for nodes",
3180 ));
3181 }
3182 result.nodes = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Node>>>()?.unwrap_or_default();
3183 }
3184 __FieldTag::__next_page_token => {
3185 if !fields.insert(__FieldTag::__next_page_token) {
3186 return std::result::Result::Err(A::Error::duplicate_field(
3187 "multiple values for next_page_token",
3188 ));
3189 }
3190 result.next_page_token = map
3191 .next_value::<std::option::Option<std::string::String>>()?
3192 .unwrap_or_default();
3193 }
3194 __FieldTag::Unknown(key) => {
3195 let value = map.next_value::<serde_json::Value>()?;
3196 result._unknown_fields.insert(key, value);
3197 }
3198 }
3199 }
3200 std::result::Result::Ok(result)
3201 }
3202 }
3203 deserializer.deserialize_any(Visitor)
3204 }
3205}
3206
3207#[doc(hidden)]
3208impl serde::ser::Serialize for ListNodesResponse {
3209 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3210 where
3211 S: serde::ser::Serializer,
3212 {
3213 use serde::ser::SerializeMap;
3214 #[allow(unused_imports)]
3215 use std::option::Option::Some;
3216 let mut state = serializer.serialize_map(std::option::Option::None)?;
3217 if !self.nodes.is_empty() {
3218 state.serialize_entry("nodes", &self.nodes)?;
3219 }
3220 if !self.next_page_token.is_empty() {
3221 state.serialize_entry("nextPageToken", &self.next_page_token)?;
3222 }
3223 if !self._unknown_fields.is_empty() {
3224 for (key, value) in self._unknown_fields.iter() {
3225 state.serialize_entry(key, &value)?;
3226 }
3227 }
3228 state.end()
3229 }
3230}
3231
3232#[derive(Clone, Debug, Default, PartialEq)]
3237#[non_exhaustive]
3238pub struct GetNodeRequest {
3239 pub name: std::string::String,
3243
3244 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
3245}
3246
3247impl GetNodeRequest {
3248 pub fn new() -> Self {
3249 std::default::Default::default()
3250 }
3251
3252 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3254 self.name = v.into();
3255 self
3256 }
3257}
3258
3259impl wkt::message::Message for GetNodeRequest {
3260 fn typename() -> &'static str {
3261 "type.googleapis.com/google.cloud.vmwareengine.v1.GetNodeRequest"
3262 }
3263}
3264
3265#[doc(hidden)]
3266impl<'de> serde::de::Deserialize<'de> for GetNodeRequest {
3267 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3268 where
3269 D: serde::Deserializer<'de>,
3270 {
3271 #[allow(non_camel_case_types)]
3272 #[doc(hidden)]
3273 #[derive(PartialEq, Eq, Hash)]
3274 enum __FieldTag {
3275 __name,
3276 Unknown(std::string::String),
3277 }
3278 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3279 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3280 where
3281 D: serde::Deserializer<'de>,
3282 {
3283 struct Visitor;
3284 impl<'de> serde::de::Visitor<'de> for Visitor {
3285 type Value = __FieldTag;
3286 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3287 formatter.write_str("a field name for GetNodeRequest")
3288 }
3289 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3290 where
3291 E: serde::de::Error,
3292 {
3293 use std::result::Result::Ok;
3294 use std::string::ToString;
3295 match value {
3296 "name" => Ok(__FieldTag::__name),
3297 _ => Ok(__FieldTag::Unknown(value.to_string())),
3298 }
3299 }
3300 }
3301 deserializer.deserialize_identifier(Visitor)
3302 }
3303 }
3304 struct Visitor;
3305 impl<'de> serde::de::Visitor<'de> for Visitor {
3306 type Value = GetNodeRequest;
3307 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3308 formatter.write_str("struct GetNodeRequest")
3309 }
3310 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3311 where
3312 A: serde::de::MapAccess<'de>,
3313 {
3314 #[allow(unused_imports)]
3315 use serde::de::Error;
3316 use std::option::Option::Some;
3317 let mut fields = std::collections::HashSet::new();
3318 let mut result = Self::Value::new();
3319 while let Some(tag) = map.next_key::<__FieldTag>()? {
3320 #[allow(clippy::match_single_binding)]
3321 match tag {
3322 __FieldTag::__name => {
3323 if !fields.insert(__FieldTag::__name) {
3324 return std::result::Result::Err(A::Error::duplicate_field(
3325 "multiple values for name",
3326 ));
3327 }
3328 result.name = map
3329 .next_value::<std::option::Option<std::string::String>>()?
3330 .unwrap_or_default();
3331 }
3332 __FieldTag::Unknown(key) => {
3333 let value = map.next_value::<serde_json::Value>()?;
3334 result._unknown_fields.insert(key, value);
3335 }
3336 }
3337 }
3338 std::result::Result::Ok(result)
3339 }
3340 }
3341 deserializer.deserialize_any(Visitor)
3342 }
3343}
3344
3345#[doc(hidden)]
3346impl serde::ser::Serialize for GetNodeRequest {
3347 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3348 where
3349 S: serde::ser::Serializer,
3350 {
3351 use serde::ser::SerializeMap;
3352 #[allow(unused_imports)]
3353 use std::option::Option::Some;
3354 let mut state = serializer.serialize_map(std::option::Option::None)?;
3355 if !self.name.is_empty() {
3356 state.serialize_entry("name", &self.name)?;
3357 }
3358 if !self._unknown_fields.is_empty() {
3359 for (key, value) in self._unknown_fields.iter() {
3360 state.serialize_entry(key, &value)?;
3361 }
3362 }
3363 state.end()
3364 }
3365}
3366
3367#[derive(Clone, Debug, Default, PartialEq)]
3372#[non_exhaustive]
3373pub struct ListExternalAddressesRequest {
3374 pub parent: std::string::String,
3381
3382 pub page_size: i32,
3387
3388 pub page_token: std::string::String,
3394
3395 pub filter: std::string::String,
3423
3424 pub order_by: std::string::String,
3430
3431 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
3432}
3433
3434impl ListExternalAddressesRequest {
3435 pub fn new() -> Self {
3436 std::default::Default::default()
3437 }
3438
3439 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3441 self.parent = v.into();
3442 self
3443 }
3444
3445 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
3447 self.page_size = v.into();
3448 self
3449 }
3450
3451 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3453 self.page_token = v.into();
3454 self
3455 }
3456
3457 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3459 self.filter = v.into();
3460 self
3461 }
3462
3463 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3465 self.order_by = v.into();
3466 self
3467 }
3468}
3469
3470impl wkt::message::Message for ListExternalAddressesRequest {
3471 fn typename() -> &'static str {
3472 "type.googleapis.com/google.cloud.vmwareengine.v1.ListExternalAddressesRequest"
3473 }
3474}
3475
3476#[doc(hidden)]
3477impl<'de> serde::de::Deserialize<'de> for ListExternalAddressesRequest {
3478 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3479 where
3480 D: serde::Deserializer<'de>,
3481 {
3482 #[allow(non_camel_case_types)]
3483 #[doc(hidden)]
3484 #[derive(PartialEq, Eq, Hash)]
3485 enum __FieldTag {
3486 __parent,
3487 __page_size,
3488 __page_token,
3489 __filter,
3490 __order_by,
3491 Unknown(std::string::String),
3492 }
3493 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3494 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3495 where
3496 D: serde::Deserializer<'de>,
3497 {
3498 struct Visitor;
3499 impl<'de> serde::de::Visitor<'de> for Visitor {
3500 type Value = __FieldTag;
3501 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3502 formatter.write_str("a field name for ListExternalAddressesRequest")
3503 }
3504 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3505 where
3506 E: serde::de::Error,
3507 {
3508 use std::result::Result::Ok;
3509 use std::string::ToString;
3510 match value {
3511 "parent" => Ok(__FieldTag::__parent),
3512 "pageSize" => Ok(__FieldTag::__page_size),
3513 "page_size" => Ok(__FieldTag::__page_size),
3514 "pageToken" => Ok(__FieldTag::__page_token),
3515 "page_token" => Ok(__FieldTag::__page_token),
3516 "filter" => Ok(__FieldTag::__filter),
3517 "orderBy" => Ok(__FieldTag::__order_by),
3518 "order_by" => Ok(__FieldTag::__order_by),
3519 _ => Ok(__FieldTag::Unknown(value.to_string())),
3520 }
3521 }
3522 }
3523 deserializer.deserialize_identifier(Visitor)
3524 }
3525 }
3526 struct Visitor;
3527 impl<'de> serde::de::Visitor<'de> for Visitor {
3528 type Value = ListExternalAddressesRequest;
3529 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3530 formatter.write_str("struct ListExternalAddressesRequest")
3531 }
3532 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3533 where
3534 A: serde::de::MapAccess<'de>,
3535 {
3536 #[allow(unused_imports)]
3537 use serde::de::Error;
3538 use std::option::Option::Some;
3539 let mut fields = std::collections::HashSet::new();
3540 let mut result = Self::Value::new();
3541 while let Some(tag) = map.next_key::<__FieldTag>()? {
3542 #[allow(clippy::match_single_binding)]
3543 match tag {
3544 __FieldTag::__parent => {
3545 if !fields.insert(__FieldTag::__parent) {
3546 return std::result::Result::Err(A::Error::duplicate_field(
3547 "multiple values for parent",
3548 ));
3549 }
3550 result.parent = map
3551 .next_value::<std::option::Option<std::string::String>>()?
3552 .unwrap_or_default();
3553 }
3554 __FieldTag::__page_size => {
3555 if !fields.insert(__FieldTag::__page_size) {
3556 return std::result::Result::Err(A::Error::duplicate_field(
3557 "multiple values for page_size",
3558 ));
3559 }
3560 struct __With(std::option::Option<i32>);
3561 impl<'de> serde::de::Deserialize<'de> for __With {
3562 fn deserialize<D>(
3563 deserializer: D,
3564 ) -> std::result::Result<Self, D::Error>
3565 where
3566 D: serde::de::Deserializer<'de>,
3567 {
3568 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
3569 }
3570 }
3571 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
3572 }
3573 __FieldTag::__page_token => {
3574 if !fields.insert(__FieldTag::__page_token) {
3575 return std::result::Result::Err(A::Error::duplicate_field(
3576 "multiple values for page_token",
3577 ));
3578 }
3579 result.page_token = map
3580 .next_value::<std::option::Option<std::string::String>>()?
3581 .unwrap_or_default();
3582 }
3583 __FieldTag::__filter => {
3584 if !fields.insert(__FieldTag::__filter) {
3585 return std::result::Result::Err(A::Error::duplicate_field(
3586 "multiple values for filter",
3587 ));
3588 }
3589 result.filter = map
3590 .next_value::<std::option::Option<std::string::String>>()?
3591 .unwrap_or_default();
3592 }
3593 __FieldTag::__order_by => {
3594 if !fields.insert(__FieldTag::__order_by) {
3595 return std::result::Result::Err(A::Error::duplicate_field(
3596 "multiple values for order_by",
3597 ));
3598 }
3599 result.order_by = map
3600 .next_value::<std::option::Option<std::string::String>>()?
3601 .unwrap_or_default();
3602 }
3603 __FieldTag::Unknown(key) => {
3604 let value = map.next_value::<serde_json::Value>()?;
3605 result._unknown_fields.insert(key, value);
3606 }
3607 }
3608 }
3609 std::result::Result::Ok(result)
3610 }
3611 }
3612 deserializer.deserialize_any(Visitor)
3613 }
3614}
3615
3616#[doc(hidden)]
3617impl serde::ser::Serialize for ListExternalAddressesRequest {
3618 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3619 where
3620 S: serde::ser::Serializer,
3621 {
3622 use serde::ser::SerializeMap;
3623 #[allow(unused_imports)]
3624 use std::option::Option::Some;
3625 let mut state = serializer.serialize_map(std::option::Option::None)?;
3626 if !self.parent.is_empty() {
3627 state.serialize_entry("parent", &self.parent)?;
3628 }
3629 if !wkt::internal::is_default(&self.page_size) {
3630 struct __With<'a>(&'a i32);
3631 impl<'a> serde::ser::Serialize for __With<'a> {
3632 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3633 where
3634 S: serde::ser::Serializer,
3635 {
3636 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
3637 }
3638 }
3639 state.serialize_entry("pageSize", &__With(&self.page_size))?;
3640 }
3641 if !self.page_token.is_empty() {
3642 state.serialize_entry("pageToken", &self.page_token)?;
3643 }
3644 if !self.filter.is_empty() {
3645 state.serialize_entry("filter", &self.filter)?;
3646 }
3647 if !self.order_by.is_empty() {
3648 state.serialize_entry("orderBy", &self.order_by)?;
3649 }
3650 if !self._unknown_fields.is_empty() {
3651 for (key, value) in self._unknown_fields.iter() {
3652 state.serialize_entry(key, &value)?;
3653 }
3654 }
3655 state.end()
3656 }
3657}
3658
3659#[derive(Clone, Debug, Default, PartialEq)]
3664#[non_exhaustive]
3665pub struct ListExternalAddressesResponse {
3666 pub external_addresses: std::vec::Vec<crate::model::ExternalAddress>,
3668
3669 pub next_page_token: std::string::String,
3672
3673 pub unreachable: std::vec::Vec<std::string::String>,
3676
3677 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
3678}
3679
3680impl ListExternalAddressesResponse {
3681 pub fn new() -> Self {
3682 std::default::Default::default()
3683 }
3684
3685 pub fn set_external_addresses<T, V>(mut self, v: T) -> Self
3687 where
3688 T: std::iter::IntoIterator<Item = V>,
3689 V: std::convert::Into<crate::model::ExternalAddress>,
3690 {
3691 use std::iter::Iterator;
3692 self.external_addresses = v.into_iter().map(|i| i.into()).collect();
3693 self
3694 }
3695
3696 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3698 self.next_page_token = v.into();
3699 self
3700 }
3701
3702 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
3704 where
3705 T: std::iter::IntoIterator<Item = V>,
3706 V: std::convert::Into<std::string::String>,
3707 {
3708 use std::iter::Iterator;
3709 self.unreachable = v.into_iter().map(|i| i.into()).collect();
3710 self
3711 }
3712}
3713
3714impl wkt::message::Message for ListExternalAddressesResponse {
3715 fn typename() -> &'static str {
3716 "type.googleapis.com/google.cloud.vmwareengine.v1.ListExternalAddressesResponse"
3717 }
3718}
3719
3720#[doc(hidden)]
3721impl gax::paginator::internal::PageableResponse for ListExternalAddressesResponse {
3722 type PageItem = crate::model::ExternalAddress;
3723
3724 fn items(self) -> std::vec::Vec<Self::PageItem> {
3725 self.external_addresses
3726 }
3727
3728 fn next_page_token(&self) -> std::string::String {
3729 use std::clone::Clone;
3730 self.next_page_token.clone()
3731 }
3732}
3733
3734#[doc(hidden)]
3735impl<'de> serde::de::Deserialize<'de> for ListExternalAddressesResponse {
3736 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3737 where
3738 D: serde::Deserializer<'de>,
3739 {
3740 #[allow(non_camel_case_types)]
3741 #[doc(hidden)]
3742 #[derive(PartialEq, Eq, Hash)]
3743 enum __FieldTag {
3744 __external_addresses,
3745 __next_page_token,
3746 __unreachable,
3747 Unknown(std::string::String),
3748 }
3749 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3750 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3751 where
3752 D: serde::Deserializer<'de>,
3753 {
3754 struct Visitor;
3755 impl<'de> serde::de::Visitor<'de> for Visitor {
3756 type Value = __FieldTag;
3757 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3758 formatter.write_str("a field name for ListExternalAddressesResponse")
3759 }
3760 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3761 where
3762 E: serde::de::Error,
3763 {
3764 use std::result::Result::Ok;
3765 use std::string::ToString;
3766 match value {
3767 "externalAddresses" => Ok(__FieldTag::__external_addresses),
3768 "external_addresses" => Ok(__FieldTag::__external_addresses),
3769 "nextPageToken" => Ok(__FieldTag::__next_page_token),
3770 "next_page_token" => Ok(__FieldTag::__next_page_token),
3771 "unreachable" => Ok(__FieldTag::__unreachable),
3772 _ => Ok(__FieldTag::Unknown(value.to_string())),
3773 }
3774 }
3775 }
3776 deserializer.deserialize_identifier(Visitor)
3777 }
3778 }
3779 struct Visitor;
3780 impl<'de> serde::de::Visitor<'de> for Visitor {
3781 type Value = ListExternalAddressesResponse;
3782 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3783 formatter.write_str("struct ListExternalAddressesResponse")
3784 }
3785 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3786 where
3787 A: serde::de::MapAccess<'de>,
3788 {
3789 #[allow(unused_imports)]
3790 use serde::de::Error;
3791 use std::option::Option::Some;
3792 let mut fields = std::collections::HashSet::new();
3793 let mut result = Self::Value::new();
3794 while let Some(tag) = map.next_key::<__FieldTag>()? {
3795 #[allow(clippy::match_single_binding)]
3796 match tag {
3797 __FieldTag::__external_addresses => {
3798 if !fields.insert(__FieldTag::__external_addresses) {
3799 return std::result::Result::Err(A::Error::duplicate_field(
3800 "multiple values for external_addresses",
3801 ));
3802 }
3803 result.external_addresses =
3804 map.next_value::<std::option::Option<
3805 std::vec::Vec<crate::model::ExternalAddress>,
3806 >>()?
3807 .unwrap_or_default();
3808 }
3809 __FieldTag::__next_page_token => {
3810 if !fields.insert(__FieldTag::__next_page_token) {
3811 return std::result::Result::Err(A::Error::duplicate_field(
3812 "multiple values for next_page_token",
3813 ));
3814 }
3815 result.next_page_token = map
3816 .next_value::<std::option::Option<std::string::String>>()?
3817 .unwrap_or_default();
3818 }
3819 __FieldTag::__unreachable => {
3820 if !fields.insert(__FieldTag::__unreachable) {
3821 return std::result::Result::Err(A::Error::duplicate_field(
3822 "multiple values for unreachable",
3823 ));
3824 }
3825 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
3826 }
3827 __FieldTag::Unknown(key) => {
3828 let value = map.next_value::<serde_json::Value>()?;
3829 result._unknown_fields.insert(key, value);
3830 }
3831 }
3832 }
3833 std::result::Result::Ok(result)
3834 }
3835 }
3836 deserializer.deserialize_any(Visitor)
3837 }
3838}
3839
3840#[doc(hidden)]
3841impl serde::ser::Serialize for ListExternalAddressesResponse {
3842 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
3843 where
3844 S: serde::ser::Serializer,
3845 {
3846 use serde::ser::SerializeMap;
3847 #[allow(unused_imports)]
3848 use std::option::Option::Some;
3849 let mut state = serializer.serialize_map(std::option::Option::None)?;
3850 if !self.external_addresses.is_empty() {
3851 state.serialize_entry("externalAddresses", &self.external_addresses)?;
3852 }
3853 if !self.next_page_token.is_empty() {
3854 state.serialize_entry("nextPageToken", &self.next_page_token)?;
3855 }
3856 if !self.unreachable.is_empty() {
3857 state.serialize_entry("unreachable", &self.unreachable)?;
3858 }
3859 if !self._unknown_fields.is_empty() {
3860 for (key, value) in self._unknown_fields.iter() {
3861 state.serialize_entry(key, &value)?;
3862 }
3863 }
3864 state.end()
3865 }
3866}
3867
3868#[derive(Clone, Debug, Default, PartialEq)]
3873#[non_exhaustive]
3874pub struct FetchNetworkPolicyExternalAddressesRequest {
3875 pub network_policy: std::string::String,
3881
3882 pub page_size: i32,
3887
3888 pub page_token: std::string::String,
3896
3897 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
3898}
3899
3900impl FetchNetworkPolicyExternalAddressesRequest {
3901 pub fn new() -> Self {
3902 std::default::Default::default()
3903 }
3904
3905 pub fn set_network_policy<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3907 self.network_policy = v.into();
3908 self
3909 }
3910
3911 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
3913 self.page_size = v.into();
3914 self
3915 }
3916
3917 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
3919 self.page_token = v.into();
3920 self
3921 }
3922}
3923
3924impl wkt::message::Message for FetchNetworkPolicyExternalAddressesRequest {
3925 fn typename() -> &'static str {
3926 "type.googleapis.com/google.cloud.vmwareengine.v1.FetchNetworkPolicyExternalAddressesRequest"
3927 }
3928}
3929
3930#[doc(hidden)]
3931impl<'de> serde::de::Deserialize<'de> for FetchNetworkPolicyExternalAddressesRequest {
3932 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3933 where
3934 D: serde::Deserializer<'de>,
3935 {
3936 #[allow(non_camel_case_types)]
3937 #[doc(hidden)]
3938 #[derive(PartialEq, Eq, Hash)]
3939 enum __FieldTag {
3940 __network_policy,
3941 __page_size,
3942 __page_token,
3943 Unknown(std::string::String),
3944 }
3945 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
3946 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
3947 where
3948 D: serde::Deserializer<'de>,
3949 {
3950 struct Visitor;
3951 impl<'de> serde::de::Visitor<'de> for Visitor {
3952 type Value = __FieldTag;
3953 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3954 formatter.write_str(
3955 "a field name for FetchNetworkPolicyExternalAddressesRequest",
3956 )
3957 }
3958 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
3959 where
3960 E: serde::de::Error,
3961 {
3962 use std::result::Result::Ok;
3963 use std::string::ToString;
3964 match value {
3965 "networkPolicy" => Ok(__FieldTag::__network_policy),
3966 "network_policy" => Ok(__FieldTag::__network_policy),
3967 "pageSize" => Ok(__FieldTag::__page_size),
3968 "page_size" => Ok(__FieldTag::__page_size),
3969 "pageToken" => Ok(__FieldTag::__page_token),
3970 "page_token" => Ok(__FieldTag::__page_token),
3971 _ => Ok(__FieldTag::Unknown(value.to_string())),
3972 }
3973 }
3974 }
3975 deserializer.deserialize_identifier(Visitor)
3976 }
3977 }
3978 struct Visitor;
3979 impl<'de> serde::de::Visitor<'de> for Visitor {
3980 type Value = FetchNetworkPolicyExternalAddressesRequest;
3981 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
3982 formatter.write_str("struct FetchNetworkPolicyExternalAddressesRequest")
3983 }
3984 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
3985 where
3986 A: serde::de::MapAccess<'de>,
3987 {
3988 #[allow(unused_imports)]
3989 use serde::de::Error;
3990 use std::option::Option::Some;
3991 let mut fields = std::collections::HashSet::new();
3992 let mut result = Self::Value::new();
3993 while let Some(tag) = map.next_key::<__FieldTag>()? {
3994 #[allow(clippy::match_single_binding)]
3995 match tag {
3996 __FieldTag::__network_policy => {
3997 if !fields.insert(__FieldTag::__network_policy) {
3998 return std::result::Result::Err(A::Error::duplicate_field(
3999 "multiple values for network_policy",
4000 ));
4001 }
4002 result.network_policy = map
4003 .next_value::<std::option::Option<std::string::String>>()?
4004 .unwrap_or_default();
4005 }
4006 __FieldTag::__page_size => {
4007 if !fields.insert(__FieldTag::__page_size) {
4008 return std::result::Result::Err(A::Error::duplicate_field(
4009 "multiple values for page_size",
4010 ));
4011 }
4012 struct __With(std::option::Option<i32>);
4013 impl<'de> serde::de::Deserialize<'de> for __With {
4014 fn deserialize<D>(
4015 deserializer: D,
4016 ) -> std::result::Result<Self, D::Error>
4017 where
4018 D: serde::de::Deserializer<'de>,
4019 {
4020 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
4021 }
4022 }
4023 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
4024 }
4025 __FieldTag::__page_token => {
4026 if !fields.insert(__FieldTag::__page_token) {
4027 return std::result::Result::Err(A::Error::duplicate_field(
4028 "multiple values for page_token",
4029 ));
4030 }
4031 result.page_token = map
4032 .next_value::<std::option::Option<std::string::String>>()?
4033 .unwrap_or_default();
4034 }
4035 __FieldTag::Unknown(key) => {
4036 let value = map.next_value::<serde_json::Value>()?;
4037 result._unknown_fields.insert(key, value);
4038 }
4039 }
4040 }
4041 std::result::Result::Ok(result)
4042 }
4043 }
4044 deserializer.deserialize_any(Visitor)
4045 }
4046}
4047
4048#[doc(hidden)]
4049impl serde::ser::Serialize for FetchNetworkPolicyExternalAddressesRequest {
4050 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
4051 where
4052 S: serde::ser::Serializer,
4053 {
4054 use serde::ser::SerializeMap;
4055 #[allow(unused_imports)]
4056 use std::option::Option::Some;
4057 let mut state = serializer.serialize_map(std::option::Option::None)?;
4058 if !self.network_policy.is_empty() {
4059 state.serialize_entry("networkPolicy", &self.network_policy)?;
4060 }
4061 if !wkt::internal::is_default(&self.page_size) {
4062 struct __With<'a>(&'a i32);
4063 impl<'a> serde::ser::Serialize for __With<'a> {
4064 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
4065 where
4066 S: serde::ser::Serializer,
4067 {
4068 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
4069 }
4070 }
4071 state.serialize_entry("pageSize", &__With(&self.page_size))?;
4072 }
4073 if !self.page_token.is_empty() {
4074 state.serialize_entry("pageToken", &self.page_token)?;
4075 }
4076 if !self._unknown_fields.is_empty() {
4077 for (key, value) in self._unknown_fields.iter() {
4078 state.serialize_entry(key, &value)?;
4079 }
4080 }
4081 state.end()
4082 }
4083}
4084
4085#[derive(Clone, Debug, Default, PartialEq)]
4090#[non_exhaustive]
4091pub struct FetchNetworkPolicyExternalAddressesResponse {
4092 pub external_addresses: std::vec::Vec<crate::model::ExternalAddress>,
4095
4096 pub next_page_token: std::string::String,
4099
4100 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
4101}
4102
4103impl FetchNetworkPolicyExternalAddressesResponse {
4104 pub fn new() -> Self {
4105 std::default::Default::default()
4106 }
4107
4108 pub fn set_external_addresses<T, V>(mut self, v: T) -> Self
4110 where
4111 T: std::iter::IntoIterator<Item = V>,
4112 V: std::convert::Into<crate::model::ExternalAddress>,
4113 {
4114 use std::iter::Iterator;
4115 self.external_addresses = v.into_iter().map(|i| i.into()).collect();
4116 self
4117 }
4118
4119 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4121 self.next_page_token = v.into();
4122 self
4123 }
4124}
4125
4126impl wkt::message::Message for FetchNetworkPolicyExternalAddressesResponse {
4127 fn typename() -> &'static str {
4128 "type.googleapis.com/google.cloud.vmwareengine.v1.FetchNetworkPolicyExternalAddressesResponse"
4129 }
4130}
4131
4132#[doc(hidden)]
4133impl gax::paginator::internal::PageableResponse for FetchNetworkPolicyExternalAddressesResponse {
4134 type PageItem = crate::model::ExternalAddress;
4135
4136 fn items(self) -> std::vec::Vec<Self::PageItem> {
4137 self.external_addresses
4138 }
4139
4140 fn next_page_token(&self) -> std::string::String {
4141 use std::clone::Clone;
4142 self.next_page_token.clone()
4143 }
4144}
4145
4146#[doc(hidden)]
4147impl<'de> serde::de::Deserialize<'de> for FetchNetworkPolicyExternalAddressesResponse {
4148 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4149 where
4150 D: serde::Deserializer<'de>,
4151 {
4152 #[allow(non_camel_case_types)]
4153 #[doc(hidden)]
4154 #[derive(PartialEq, Eq, Hash)]
4155 enum __FieldTag {
4156 __external_addresses,
4157 __next_page_token,
4158 Unknown(std::string::String),
4159 }
4160 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
4161 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4162 where
4163 D: serde::Deserializer<'de>,
4164 {
4165 struct Visitor;
4166 impl<'de> serde::de::Visitor<'de> for Visitor {
4167 type Value = __FieldTag;
4168 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4169 formatter.write_str(
4170 "a field name for FetchNetworkPolicyExternalAddressesResponse",
4171 )
4172 }
4173 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
4174 where
4175 E: serde::de::Error,
4176 {
4177 use std::result::Result::Ok;
4178 use std::string::ToString;
4179 match value {
4180 "externalAddresses" => Ok(__FieldTag::__external_addresses),
4181 "external_addresses" => Ok(__FieldTag::__external_addresses),
4182 "nextPageToken" => Ok(__FieldTag::__next_page_token),
4183 "next_page_token" => Ok(__FieldTag::__next_page_token),
4184 _ => Ok(__FieldTag::Unknown(value.to_string())),
4185 }
4186 }
4187 }
4188 deserializer.deserialize_identifier(Visitor)
4189 }
4190 }
4191 struct Visitor;
4192 impl<'de> serde::de::Visitor<'de> for Visitor {
4193 type Value = FetchNetworkPolicyExternalAddressesResponse;
4194 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4195 formatter.write_str("struct FetchNetworkPolicyExternalAddressesResponse")
4196 }
4197 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
4198 where
4199 A: serde::de::MapAccess<'de>,
4200 {
4201 #[allow(unused_imports)]
4202 use serde::de::Error;
4203 use std::option::Option::Some;
4204 let mut fields = std::collections::HashSet::new();
4205 let mut result = Self::Value::new();
4206 while let Some(tag) = map.next_key::<__FieldTag>()? {
4207 #[allow(clippy::match_single_binding)]
4208 match tag {
4209 __FieldTag::__external_addresses => {
4210 if !fields.insert(__FieldTag::__external_addresses) {
4211 return std::result::Result::Err(A::Error::duplicate_field(
4212 "multiple values for external_addresses",
4213 ));
4214 }
4215 result.external_addresses =
4216 map.next_value::<std::option::Option<
4217 std::vec::Vec<crate::model::ExternalAddress>,
4218 >>()?
4219 .unwrap_or_default();
4220 }
4221 __FieldTag::__next_page_token => {
4222 if !fields.insert(__FieldTag::__next_page_token) {
4223 return std::result::Result::Err(A::Error::duplicate_field(
4224 "multiple values for next_page_token",
4225 ));
4226 }
4227 result.next_page_token = map
4228 .next_value::<std::option::Option<std::string::String>>()?
4229 .unwrap_or_default();
4230 }
4231 __FieldTag::Unknown(key) => {
4232 let value = map.next_value::<serde_json::Value>()?;
4233 result._unknown_fields.insert(key, value);
4234 }
4235 }
4236 }
4237 std::result::Result::Ok(result)
4238 }
4239 }
4240 deserializer.deserialize_any(Visitor)
4241 }
4242}
4243
4244#[doc(hidden)]
4245impl serde::ser::Serialize for FetchNetworkPolicyExternalAddressesResponse {
4246 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
4247 where
4248 S: serde::ser::Serializer,
4249 {
4250 use serde::ser::SerializeMap;
4251 #[allow(unused_imports)]
4252 use std::option::Option::Some;
4253 let mut state = serializer.serialize_map(std::option::Option::None)?;
4254 if !self.external_addresses.is_empty() {
4255 state.serialize_entry("externalAddresses", &self.external_addresses)?;
4256 }
4257 if !self.next_page_token.is_empty() {
4258 state.serialize_entry("nextPageToken", &self.next_page_token)?;
4259 }
4260 if !self._unknown_fields.is_empty() {
4261 for (key, value) in self._unknown_fields.iter() {
4262 state.serialize_entry(key, &value)?;
4263 }
4264 }
4265 state.end()
4266 }
4267}
4268
4269#[derive(Clone, Debug, Default, PartialEq)]
4274#[non_exhaustive]
4275pub struct GetExternalAddressRequest {
4276 pub name: std::string::String,
4282
4283 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
4284}
4285
4286impl GetExternalAddressRequest {
4287 pub fn new() -> Self {
4288 std::default::Default::default()
4289 }
4290
4291 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4293 self.name = v.into();
4294 self
4295 }
4296}
4297
4298impl wkt::message::Message for GetExternalAddressRequest {
4299 fn typename() -> &'static str {
4300 "type.googleapis.com/google.cloud.vmwareengine.v1.GetExternalAddressRequest"
4301 }
4302}
4303
4304#[doc(hidden)]
4305impl<'de> serde::de::Deserialize<'de> for GetExternalAddressRequest {
4306 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4307 where
4308 D: serde::Deserializer<'de>,
4309 {
4310 #[allow(non_camel_case_types)]
4311 #[doc(hidden)]
4312 #[derive(PartialEq, Eq, Hash)]
4313 enum __FieldTag {
4314 __name,
4315 Unknown(std::string::String),
4316 }
4317 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
4318 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4319 where
4320 D: serde::Deserializer<'de>,
4321 {
4322 struct Visitor;
4323 impl<'de> serde::de::Visitor<'de> for Visitor {
4324 type Value = __FieldTag;
4325 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4326 formatter.write_str("a field name for GetExternalAddressRequest")
4327 }
4328 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
4329 where
4330 E: serde::de::Error,
4331 {
4332 use std::result::Result::Ok;
4333 use std::string::ToString;
4334 match value {
4335 "name" => Ok(__FieldTag::__name),
4336 _ => Ok(__FieldTag::Unknown(value.to_string())),
4337 }
4338 }
4339 }
4340 deserializer.deserialize_identifier(Visitor)
4341 }
4342 }
4343 struct Visitor;
4344 impl<'de> serde::de::Visitor<'de> for Visitor {
4345 type Value = GetExternalAddressRequest;
4346 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4347 formatter.write_str("struct GetExternalAddressRequest")
4348 }
4349 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
4350 where
4351 A: serde::de::MapAccess<'de>,
4352 {
4353 #[allow(unused_imports)]
4354 use serde::de::Error;
4355 use std::option::Option::Some;
4356 let mut fields = std::collections::HashSet::new();
4357 let mut result = Self::Value::new();
4358 while let Some(tag) = map.next_key::<__FieldTag>()? {
4359 #[allow(clippy::match_single_binding)]
4360 match tag {
4361 __FieldTag::__name => {
4362 if !fields.insert(__FieldTag::__name) {
4363 return std::result::Result::Err(A::Error::duplicate_field(
4364 "multiple values for name",
4365 ));
4366 }
4367 result.name = map
4368 .next_value::<std::option::Option<std::string::String>>()?
4369 .unwrap_or_default();
4370 }
4371 __FieldTag::Unknown(key) => {
4372 let value = map.next_value::<serde_json::Value>()?;
4373 result._unknown_fields.insert(key, value);
4374 }
4375 }
4376 }
4377 std::result::Result::Ok(result)
4378 }
4379 }
4380 deserializer.deserialize_any(Visitor)
4381 }
4382}
4383
4384#[doc(hidden)]
4385impl serde::ser::Serialize for GetExternalAddressRequest {
4386 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
4387 where
4388 S: serde::ser::Serializer,
4389 {
4390 use serde::ser::SerializeMap;
4391 #[allow(unused_imports)]
4392 use std::option::Option::Some;
4393 let mut state = serializer.serialize_map(std::option::Option::None)?;
4394 if !self.name.is_empty() {
4395 state.serialize_entry("name", &self.name)?;
4396 }
4397 if !self._unknown_fields.is_empty() {
4398 for (key, value) in self._unknown_fields.iter() {
4399 state.serialize_entry(key, &value)?;
4400 }
4401 }
4402 state.end()
4403 }
4404}
4405
4406#[derive(Clone, Debug, Default, PartialEq)]
4411#[non_exhaustive]
4412pub struct CreateExternalAddressRequest {
4413 pub parent: std::string::String,
4420
4421 pub external_address: std::option::Option<crate::model::ExternalAddress>,
4423
4424 pub external_address_id: std::string::String,
4436
4437 pub request_id: std::string::String,
4452
4453 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
4454}
4455
4456impl CreateExternalAddressRequest {
4457 pub fn new() -> Self {
4458 std::default::Default::default()
4459 }
4460
4461 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4463 self.parent = v.into();
4464 self
4465 }
4466
4467 pub fn set_external_address<T>(mut self, v: T) -> Self
4469 where
4470 T: std::convert::Into<crate::model::ExternalAddress>,
4471 {
4472 self.external_address = std::option::Option::Some(v.into());
4473 self
4474 }
4475
4476 pub fn set_or_clear_external_address<T>(mut self, v: std::option::Option<T>) -> Self
4478 where
4479 T: std::convert::Into<crate::model::ExternalAddress>,
4480 {
4481 self.external_address = v.map(|x| x.into());
4482 self
4483 }
4484
4485 pub fn set_external_address_id<T: std::convert::Into<std::string::String>>(
4487 mut self,
4488 v: T,
4489 ) -> Self {
4490 self.external_address_id = v.into();
4491 self
4492 }
4493
4494 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4496 self.request_id = v.into();
4497 self
4498 }
4499}
4500
4501impl wkt::message::Message for CreateExternalAddressRequest {
4502 fn typename() -> &'static str {
4503 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateExternalAddressRequest"
4504 }
4505}
4506
4507#[doc(hidden)]
4508impl<'de> serde::de::Deserialize<'de> for CreateExternalAddressRequest {
4509 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4510 where
4511 D: serde::Deserializer<'de>,
4512 {
4513 #[allow(non_camel_case_types)]
4514 #[doc(hidden)]
4515 #[derive(PartialEq, Eq, Hash)]
4516 enum __FieldTag {
4517 __parent,
4518 __external_address,
4519 __external_address_id,
4520 __request_id,
4521 Unknown(std::string::String),
4522 }
4523 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
4524 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4525 where
4526 D: serde::Deserializer<'de>,
4527 {
4528 struct Visitor;
4529 impl<'de> serde::de::Visitor<'de> for Visitor {
4530 type Value = __FieldTag;
4531 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4532 formatter.write_str("a field name for CreateExternalAddressRequest")
4533 }
4534 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
4535 where
4536 E: serde::de::Error,
4537 {
4538 use std::result::Result::Ok;
4539 use std::string::ToString;
4540 match value {
4541 "parent" => Ok(__FieldTag::__parent),
4542 "externalAddress" => Ok(__FieldTag::__external_address),
4543 "external_address" => Ok(__FieldTag::__external_address),
4544 "externalAddressId" => Ok(__FieldTag::__external_address_id),
4545 "external_address_id" => Ok(__FieldTag::__external_address_id),
4546 "requestId" => Ok(__FieldTag::__request_id),
4547 "request_id" => Ok(__FieldTag::__request_id),
4548 _ => Ok(__FieldTag::Unknown(value.to_string())),
4549 }
4550 }
4551 }
4552 deserializer.deserialize_identifier(Visitor)
4553 }
4554 }
4555 struct Visitor;
4556 impl<'de> serde::de::Visitor<'de> for Visitor {
4557 type Value = CreateExternalAddressRequest;
4558 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4559 formatter.write_str("struct CreateExternalAddressRequest")
4560 }
4561 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
4562 where
4563 A: serde::de::MapAccess<'de>,
4564 {
4565 #[allow(unused_imports)]
4566 use serde::de::Error;
4567 use std::option::Option::Some;
4568 let mut fields = std::collections::HashSet::new();
4569 let mut result = Self::Value::new();
4570 while let Some(tag) = map.next_key::<__FieldTag>()? {
4571 #[allow(clippy::match_single_binding)]
4572 match tag {
4573 __FieldTag::__parent => {
4574 if !fields.insert(__FieldTag::__parent) {
4575 return std::result::Result::Err(A::Error::duplicate_field(
4576 "multiple values for parent",
4577 ));
4578 }
4579 result.parent = map
4580 .next_value::<std::option::Option<std::string::String>>()?
4581 .unwrap_or_default();
4582 }
4583 __FieldTag::__external_address => {
4584 if !fields.insert(__FieldTag::__external_address) {
4585 return std::result::Result::Err(A::Error::duplicate_field(
4586 "multiple values for external_address",
4587 ));
4588 }
4589 result.external_address = map
4590 .next_value::<std::option::Option<crate::model::ExternalAddress>>(
4591 )?;
4592 }
4593 __FieldTag::__external_address_id => {
4594 if !fields.insert(__FieldTag::__external_address_id) {
4595 return std::result::Result::Err(A::Error::duplicate_field(
4596 "multiple values for external_address_id",
4597 ));
4598 }
4599 result.external_address_id = map
4600 .next_value::<std::option::Option<std::string::String>>()?
4601 .unwrap_or_default();
4602 }
4603 __FieldTag::__request_id => {
4604 if !fields.insert(__FieldTag::__request_id) {
4605 return std::result::Result::Err(A::Error::duplicate_field(
4606 "multiple values for request_id",
4607 ));
4608 }
4609 result.request_id = map
4610 .next_value::<std::option::Option<std::string::String>>()?
4611 .unwrap_or_default();
4612 }
4613 __FieldTag::Unknown(key) => {
4614 let value = map.next_value::<serde_json::Value>()?;
4615 result._unknown_fields.insert(key, value);
4616 }
4617 }
4618 }
4619 std::result::Result::Ok(result)
4620 }
4621 }
4622 deserializer.deserialize_any(Visitor)
4623 }
4624}
4625
4626#[doc(hidden)]
4627impl serde::ser::Serialize for CreateExternalAddressRequest {
4628 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
4629 where
4630 S: serde::ser::Serializer,
4631 {
4632 use serde::ser::SerializeMap;
4633 #[allow(unused_imports)]
4634 use std::option::Option::Some;
4635 let mut state = serializer.serialize_map(std::option::Option::None)?;
4636 if !self.parent.is_empty() {
4637 state.serialize_entry("parent", &self.parent)?;
4638 }
4639 if self.external_address.is_some() {
4640 state.serialize_entry("externalAddress", &self.external_address)?;
4641 }
4642 if !self.external_address_id.is_empty() {
4643 state.serialize_entry("externalAddressId", &self.external_address_id)?;
4644 }
4645 if !self.request_id.is_empty() {
4646 state.serialize_entry("requestId", &self.request_id)?;
4647 }
4648 if !self._unknown_fields.is_empty() {
4649 for (key, value) in self._unknown_fields.iter() {
4650 state.serialize_entry(key, &value)?;
4651 }
4652 }
4653 state.end()
4654 }
4655}
4656
4657#[derive(Clone, Debug, Default, PartialEq)]
4662#[non_exhaustive]
4663pub struct UpdateExternalAddressRequest {
4664 pub update_mask: std::option::Option<wkt::FieldMask>,
4670
4671 pub external_address: std::option::Option<crate::model::ExternalAddress>,
4673
4674 pub request_id: std::string::String,
4689
4690 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
4691}
4692
4693impl UpdateExternalAddressRequest {
4694 pub fn new() -> Self {
4695 std::default::Default::default()
4696 }
4697
4698 pub fn set_update_mask<T>(mut self, v: T) -> Self
4700 where
4701 T: std::convert::Into<wkt::FieldMask>,
4702 {
4703 self.update_mask = std::option::Option::Some(v.into());
4704 self
4705 }
4706
4707 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
4709 where
4710 T: std::convert::Into<wkt::FieldMask>,
4711 {
4712 self.update_mask = v.map(|x| x.into());
4713 self
4714 }
4715
4716 pub fn set_external_address<T>(mut self, v: T) -> Self
4718 where
4719 T: std::convert::Into<crate::model::ExternalAddress>,
4720 {
4721 self.external_address = std::option::Option::Some(v.into());
4722 self
4723 }
4724
4725 pub fn set_or_clear_external_address<T>(mut self, v: std::option::Option<T>) -> Self
4727 where
4728 T: std::convert::Into<crate::model::ExternalAddress>,
4729 {
4730 self.external_address = v.map(|x| x.into());
4731 self
4732 }
4733
4734 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4736 self.request_id = v.into();
4737 self
4738 }
4739}
4740
4741impl wkt::message::Message for UpdateExternalAddressRequest {
4742 fn typename() -> &'static str {
4743 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateExternalAddressRequest"
4744 }
4745}
4746
4747#[doc(hidden)]
4748impl<'de> serde::de::Deserialize<'de> for UpdateExternalAddressRequest {
4749 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4750 where
4751 D: serde::Deserializer<'de>,
4752 {
4753 #[allow(non_camel_case_types)]
4754 #[doc(hidden)]
4755 #[derive(PartialEq, Eq, Hash)]
4756 enum __FieldTag {
4757 __update_mask,
4758 __external_address,
4759 __request_id,
4760 Unknown(std::string::String),
4761 }
4762 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
4763 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4764 where
4765 D: serde::Deserializer<'de>,
4766 {
4767 struct Visitor;
4768 impl<'de> serde::de::Visitor<'de> for Visitor {
4769 type Value = __FieldTag;
4770 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4771 formatter.write_str("a field name for UpdateExternalAddressRequest")
4772 }
4773 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
4774 where
4775 E: serde::de::Error,
4776 {
4777 use std::result::Result::Ok;
4778 use std::string::ToString;
4779 match value {
4780 "updateMask" => Ok(__FieldTag::__update_mask),
4781 "update_mask" => Ok(__FieldTag::__update_mask),
4782 "externalAddress" => Ok(__FieldTag::__external_address),
4783 "external_address" => Ok(__FieldTag::__external_address),
4784 "requestId" => Ok(__FieldTag::__request_id),
4785 "request_id" => Ok(__FieldTag::__request_id),
4786 _ => Ok(__FieldTag::Unknown(value.to_string())),
4787 }
4788 }
4789 }
4790 deserializer.deserialize_identifier(Visitor)
4791 }
4792 }
4793 struct Visitor;
4794 impl<'de> serde::de::Visitor<'de> for Visitor {
4795 type Value = UpdateExternalAddressRequest;
4796 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4797 formatter.write_str("struct UpdateExternalAddressRequest")
4798 }
4799 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
4800 where
4801 A: serde::de::MapAccess<'de>,
4802 {
4803 #[allow(unused_imports)]
4804 use serde::de::Error;
4805 use std::option::Option::Some;
4806 let mut fields = std::collections::HashSet::new();
4807 let mut result = Self::Value::new();
4808 while let Some(tag) = map.next_key::<__FieldTag>()? {
4809 #[allow(clippy::match_single_binding)]
4810 match tag {
4811 __FieldTag::__update_mask => {
4812 if !fields.insert(__FieldTag::__update_mask) {
4813 return std::result::Result::Err(A::Error::duplicate_field(
4814 "multiple values for update_mask",
4815 ));
4816 }
4817 result.update_mask =
4818 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
4819 }
4820 __FieldTag::__external_address => {
4821 if !fields.insert(__FieldTag::__external_address) {
4822 return std::result::Result::Err(A::Error::duplicate_field(
4823 "multiple values for external_address",
4824 ));
4825 }
4826 result.external_address = map
4827 .next_value::<std::option::Option<crate::model::ExternalAddress>>(
4828 )?;
4829 }
4830 __FieldTag::__request_id => {
4831 if !fields.insert(__FieldTag::__request_id) {
4832 return std::result::Result::Err(A::Error::duplicate_field(
4833 "multiple values for request_id",
4834 ));
4835 }
4836 result.request_id = map
4837 .next_value::<std::option::Option<std::string::String>>()?
4838 .unwrap_or_default();
4839 }
4840 __FieldTag::Unknown(key) => {
4841 let value = map.next_value::<serde_json::Value>()?;
4842 result._unknown_fields.insert(key, value);
4843 }
4844 }
4845 }
4846 std::result::Result::Ok(result)
4847 }
4848 }
4849 deserializer.deserialize_any(Visitor)
4850 }
4851}
4852
4853#[doc(hidden)]
4854impl serde::ser::Serialize for UpdateExternalAddressRequest {
4855 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
4856 where
4857 S: serde::ser::Serializer,
4858 {
4859 use serde::ser::SerializeMap;
4860 #[allow(unused_imports)]
4861 use std::option::Option::Some;
4862 let mut state = serializer.serialize_map(std::option::Option::None)?;
4863 if self.update_mask.is_some() {
4864 state.serialize_entry("updateMask", &self.update_mask)?;
4865 }
4866 if self.external_address.is_some() {
4867 state.serialize_entry("externalAddress", &self.external_address)?;
4868 }
4869 if !self.request_id.is_empty() {
4870 state.serialize_entry("requestId", &self.request_id)?;
4871 }
4872 if !self._unknown_fields.is_empty() {
4873 for (key, value) in self._unknown_fields.iter() {
4874 state.serialize_entry(key, &value)?;
4875 }
4876 }
4877 state.end()
4878 }
4879}
4880
4881#[derive(Clone, Debug, Default, PartialEq)]
4886#[non_exhaustive]
4887pub struct DeleteExternalAddressRequest {
4888 pub name: std::string::String,
4894
4895 pub request_id: std::string::String,
4910
4911 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
4912}
4913
4914impl DeleteExternalAddressRequest {
4915 pub fn new() -> Self {
4916 std::default::Default::default()
4917 }
4918
4919 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4921 self.name = v.into();
4922 self
4923 }
4924
4925 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
4927 self.request_id = v.into();
4928 self
4929 }
4930}
4931
4932impl wkt::message::Message for DeleteExternalAddressRequest {
4933 fn typename() -> &'static str {
4934 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteExternalAddressRequest"
4935 }
4936}
4937
4938#[doc(hidden)]
4939impl<'de> serde::de::Deserialize<'de> for DeleteExternalAddressRequest {
4940 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4941 where
4942 D: serde::Deserializer<'de>,
4943 {
4944 #[allow(non_camel_case_types)]
4945 #[doc(hidden)]
4946 #[derive(PartialEq, Eq, Hash)]
4947 enum __FieldTag {
4948 __name,
4949 __request_id,
4950 Unknown(std::string::String),
4951 }
4952 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
4953 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
4954 where
4955 D: serde::Deserializer<'de>,
4956 {
4957 struct Visitor;
4958 impl<'de> serde::de::Visitor<'de> for Visitor {
4959 type Value = __FieldTag;
4960 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4961 formatter.write_str("a field name for DeleteExternalAddressRequest")
4962 }
4963 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
4964 where
4965 E: serde::de::Error,
4966 {
4967 use std::result::Result::Ok;
4968 use std::string::ToString;
4969 match value {
4970 "name" => Ok(__FieldTag::__name),
4971 "requestId" => Ok(__FieldTag::__request_id),
4972 "request_id" => Ok(__FieldTag::__request_id),
4973 _ => Ok(__FieldTag::Unknown(value.to_string())),
4974 }
4975 }
4976 }
4977 deserializer.deserialize_identifier(Visitor)
4978 }
4979 }
4980 struct Visitor;
4981 impl<'de> serde::de::Visitor<'de> for Visitor {
4982 type Value = DeleteExternalAddressRequest;
4983 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
4984 formatter.write_str("struct DeleteExternalAddressRequest")
4985 }
4986 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
4987 where
4988 A: serde::de::MapAccess<'de>,
4989 {
4990 #[allow(unused_imports)]
4991 use serde::de::Error;
4992 use std::option::Option::Some;
4993 let mut fields = std::collections::HashSet::new();
4994 let mut result = Self::Value::new();
4995 while let Some(tag) = map.next_key::<__FieldTag>()? {
4996 #[allow(clippy::match_single_binding)]
4997 match tag {
4998 __FieldTag::__name => {
4999 if !fields.insert(__FieldTag::__name) {
5000 return std::result::Result::Err(A::Error::duplicate_field(
5001 "multiple values for name",
5002 ));
5003 }
5004 result.name = map
5005 .next_value::<std::option::Option<std::string::String>>()?
5006 .unwrap_or_default();
5007 }
5008 __FieldTag::__request_id => {
5009 if !fields.insert(__FieldTag::__request_id) {
5010 return std::result::Result::Err(A::Error::duplicate_field(
5011 "multiple values for request_id",
5012 ));
5013 }
5014 result.request_id = map
5015 .next_value::<std::option::Option<std::string::String>>()?
5016 .unwrap_or_default();
5017 }
5018 __FieldTag::Unknown(key) => {
5019 let value = map.next_value::<serde_json::Value>()?;
5020 result._unknown_fields.insert(key, value);
5021 }
5022 }
5023 }
5024 std::result::Result::Ok(result)
5025 }
5026 }
5027 deserializer.deserialize_any(Visitor)
5028 }
5029}
5030
5031#[doc(hidden)]
5032impl serde::ser::Serialize for DeleteExternalAddressRequest {
5033 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
5034 where
5035 S: serde::ser::Serializer,
5036 {
5037 use serde::ser::SerializeMap;
5038 #[allow(unused_imports)]
5039 use std::option::Option::Some;
5040 let mut state = serializer.serialize_map(std::option::Option::None)?;
5041 if !self.name.is_empty() {
5042 state.serialize_entry("name", &self.name)?;
5043 }
5044 if !self.request_id.is_empty() {
5045 state.serialize_entry("requestId", &self.request_id)?;
5046 }
5047 if !self._unknown_fields.is_empty() {
5048 for (key, value) in self._unknown_fields.iter() {
5049 state.serialize_entry(key, &value)?;
5050 }
5051 }
5052 state.end()
5053 }
5054}
5055
5056#[derive(Clone, Debug, Default, PartialEq)]
5061#[non_exhaustive]
5062pub struct ListSubnetsRequest {
5063 pub parent: std::string::String,
5070
5071 pub page_size: i32,
5076
5077 pub page_token: std::string::String,
5083
5084 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
5085}
5086
5087impl ListSubnetsRequest {
5088 pub fn new() -> Self {
5089 std::default::Default::default()
5090 }
5091
5092 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5094 self.parent = v.into();
5095 self
5096 }
5097
5098 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
5100 self.page_size = v.into();
5101 self
5102 }
5103
5104 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5106 self.page_token = v.into();
5107 self
5108 }
5109}
5110
5111impl wkt::message::Message for ListSubnetsRequest {
5112 fn typename() -> &'static str {
5113 "type.googleapis.com/google.cloud.vmwareengine.v1.ListSubnetsRequest"
5114 }
5115}
5116
5117#[doc(hidden)]
5118impl<'de> serde::de::Deserialize<'de> for ListSubnetsRequest {
5119 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5120 where
5121 D: serde::Deserializer<'de>,
5122 {
5123 #[allow(non_camel_case_types)]
5124 #[doc(hidden)]
5125 #[derive(PartialEq, Eq, Hash)]
5126 enum __FieldTag {
5127 __parent,
5128 __page_size,
5129 __page_token,
5130 Unknown(std::string::String),
5131 }
5132 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
5133 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5134 where
5135 D: serde::Deserializer<'de>,
5136 {
5137 struct Visitor;
5138 impl<'de> serde::de::Visitor<'de> for Visitor {
5139 type Value = __FieldTag;
5140 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5141 formatter.write_str("a field name for ListSubnetsRequest")
5142 }
5143 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
5144 where
5145 E: serde::de::Error,
5146 {
5147 use std::result::Result::Ok;
5148 use std::string::ToString;
5149 match value {
5150 "parent" => Ok(__FieldTag::__parent),
5151 "pageSize" => Ok(__FieldTag::__page_size),
5152 "page_size" => Ok(__FieldTag::__page_size),
5153 "pageToken" => Ok(__FieldTag::__page_token),
5154 "page_token" => Ok(__FieldTag::__page_token),
5155 _ => Ok(__FieldTag::Unknown(value.to_string())),
5156 }
5157 }
5158 }
5159 deserializer.deserialize_identifier(Visitor)
5160 }
5161 }
5162 struct Visitor;
5163 impl<'de> serde::de::Visitor<'de> for Visitor {
5164 type Value = ListSubnetsRequest;
5165 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5166 formatter.write_str("struct ListSubnetsRequest")
5167 }
5168 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
5169 where
5170 A: serde::de::MapAccess<'de>,
5171 {
5172 #[allow(unused_imports)]
5173 use serde::de::Error;
5174 use std::option::Option::Some;
5175 let mut fields = std::collections::HashSet::new();
5176 let mut result = Self::Value::new();
5177 while let Some(tag) = map.next_key::<__FieldTag>()? {
5178 #[allow(clippy::match_single_binding)]
5179 match tag {
5180 __FieldTag::__parent => {
5181 if !fields.insert(__FieldTag::__parent) {
5182 return std::result::Result::Err(A::Error::duplicate_field(
5183 "multiple values for parent",
5184 ));
5185 }
5186 result.parent = map
5187 .next_value::<std::option::Option<std::string::String>>()?
5188 .unwrap_or_default();
5189 }
5190 __FieldTag::__page_size => {
5191 if !fields.insert(__FieldTag::__page_size) {
5192 return std::result::Result::Err(A::Error::duplicate_field(
5193 "multiple values for page_size",
5194 ));
5195 }
5196 struct __With(std::option::Option<i32>);
5197 impl<'de> serde::de::Deserialize<'de> for __With {
5198 fn deserialize<D>(
5199 deserializer: D,
5200 ) -> std::result::Result<Self, D::Error>
5201 where
5202 D: serde::de::Deserializer<'de>,
5203 {
5204 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
5205 }
5206 }
5207 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
5208 }
5209 __FieldTag::__page_token => {
5210 if !fields.insert(__FieldTag::__page_token) {
5211 return std::result::Result::Err(A::Error::duplicate_field(
5212 "multiple values for page_token",
5213 ));
5214 }
5215 result.page_token = map
5216 .next_value::<std::option::Option<std::string::String>>()?
5217 .unwrap_or_default();
5218 }
5219 __FieldTag::Unknown(key) => {
5220 let value = map.next_value::<serde_json::Value>()?;
5221 result._unknown_fields.insert(key, value);
5222 }
5223 }
5224 }
5225 std::result::Result::Ok(result)
5226 }
5227 }
5228 deserializer.deserialize_any(Visitor)
5229 }
5230}
5231
5232#[doc(hidden)]
5233impl serde::ser::Serialize for ListSubnetsRequest {
5234 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
5235 where
5236 S: serde::ser::Serializer,
5237 {
5238 use serde::ser::SerializeMap;
5239 #[allow(unused_imports)]
5240 use std::option::Option::Some;
5241 let mut state = serializer.serialize_map(std::option::Option::None)?;
5242 if !self.parent.is_empty() {
5243 state.serialize_entry("parent", &self.parent)?;
5244 }
5245 if !wkt::internal::is_default(&self.page_size) {
5246 struct __With<'a>(&'a i32);
5247 impl<'a> serde::ser::Serialize for __With<'a> {
5248 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
5249 where
5250 S: serde::ser::Serializer,
5251 {
5252 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
5253 }
5254 }
5255 state.serialize_entry("pageSize", &__With(&self.page_size))?;
5256 }
5257 if !self.page_token.is_empty() {
5258 state.serialize_entry("pageToken", &self.page_token)?;
5259 }
5260 if !self._unknown_fields.is_empty() {
5261 for (key, value) in self._unknown_fields.iter() {
5262 state.serialize_entry(key, &value)?;
5263 }
5264 }
5265 state.end()
5266 }
5267}
5268
5269#[derive(Clone, Debug, Default, PartialEq)]
5274#[non_exhaustive]
5275pub struct ListSubnetsResponse {
5276 pub subnets: std::vec::Vec<crate::model::Subnet>,
5278
5279 pub next_page_token: std::string::String,
5282
5283 pub unreachable: std::vec::Vec<std::string::String>,
5286
5287 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
5288}
5289
5290impl ListSubnetsResponse {
5291 pub fn new() -> Self {
5292 std::default::Default::default()
5293 }
5294
5295 pub fn set_subnets<T, V>(mut self, v: T) -> Self
5297 where
5298 T: std::iter::IntoIterator<Item = V>,
5299 V: std::convert::Into<crate::model::Subnet>,
5300 {
5301 use std::iter::Iterator;
5302 self.subnets = v.into_iter().map(|i| i.into()).collect();
5303 self
5304 }
5305
5306 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5308 self.next_page_token = v.into();
5309 self
5310 }
5311
5312 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
5314 where
5315 T: std::iter::IntoIterator<Item = V>,
5316 V: std::convert::Into<std::string::String>,
5317 {
5318 use std::iter::Iterator;
5319 self.unreachable = v.into_iter().map(|i| i.into()).collect();
5320 self
5321 }
5322}
5323
5324impl wkt::message::Message for ListSubnetsResponse {
5325 fn typename() -> &'static str {
5326 "type.googleapis.com/google.cloud.vmwareengine.v1.ListSubnetsResponse"
5327 }
5328}
5329
5330#[doc(hidden)]
5331impl gax::paginator::internal::PageableResponse for ListSubnetsResponse {
5332 type PageItem = crate::model::Subnet;
5333
5334 fn items(self) -> std::vec::Vec<Self::PageItem> {
5335 self.subnets
5336 }
5337
5338 fn next_page_token(&self) -> std::string::String {
5339 use std::clone::Clone;
5340 self.next_page_token.clone()
5341 }
5342}
5343
5344#[doc(hidden)]
5345impl<'de> serde::de::Deserialize<'de> for ListSubnetsResponse {
5346 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5347 where
5348 D: serde::Deserializer<'de>,
5349 {
5350 #[allow(non_camel_case_types)]
5351 #[doc(hidden)]
5352 #[derive(PartialEq, Eq, Hash)]
5353 enum __FieldTag {
5354 __subnets,
5355 __next_page_token,
5356 __unreachable,
5357 Unknown(std::string::String),
5358 }
5359 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
5360 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5361 where
5362 D: serde::Deserializer<'de>,
5363 {
5364 struct Visitor;
5365 impl<'de> serde::de::Visitor<'de> for Visitor {
5366 type Value = __FieldTag;
5367 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5368 formatter.write_str("a field name for ListSubnetsResponse")
5369 }
5370 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
5371 where
5372 E: serde::de::Error,
5373 {
5374 use std::result::Result::Ok;
5375 use std::string::ToString;
5376 match value {
5377 "subnets" => Ok(__FieldTag::__subnets),
5378 "nextPageToken" => Ok(__FieldTag::__next_page_token),
5379 "next_page_token" => Ok(__FieldTag::__next_page_token),
5380 "unreachable" => Ok(__FieldTag::__unreachable),
5381 _ => Ok(__FieldTag::Unknown(value.to_string())),
5382 }
5383 }
5384 }
5385 deserializer.deserialize_identifier(Visitor)
5386 }
5387 }
5388 struct Visitor;
5389 impl<'de> serde::de::Visitor<'de> for Visitor {
5390 type Value = ListSubnetsResponse;
5391 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5392 formatter.write_str("struct ListSubnetsResponse")
5393 }
5394 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
5395 where
5396 A: serde::de::MapAccess<'de>,
5397 {
5398 #[allow(unused_imports)]
5399 use serde::de::Error;
5400 use std::option::Option::Some;
5401 let mut fields = std::collections::HashSet::new();
5402 let mut result = Self::Value::new();
5403 while let Some(tag) = map.next_key::<__FieldTag>()? {
5404 #[allow(clippy::match_single_binding)]
5405 match tag {
5406 __FieldTag::__subnets => {
5407 if !fields.insert(__FieldTag::__subnets) {
5408 return std::result::Result::Err(A::Error::duplicate_field(
5409 "multiple values for subnets",
5410 ));
5411 }
5412 result.subnets = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Subnet>>>()?.unwrap_or_default();
5413 }
5414 __FieldTag::__next_page_token => {
5415 if !fields.insert(__FieldTag::__next_page_token) {
5416 return std::result::Result::Err(A::Error::duplicate_field(
5417 "multiple values for next_page_token",
5418 ));
5419 }
5420 result.next_page_token = map
5421 .next_value::<std::option::Option<std::string::String>>()?
5422 .unwrap_or_default();
5423 }
5424 __FieldTag::__unreachable => {
5425 if !fields.insert(__FieldTag::__unreachable) {
5426 return std::result::Result::Err(A::Error::duplicate_field(
5427 "multiple values for unreachable",
5428 ));
5429 }
5430 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
5431 }
5432 __FieldTag::Unknown(key) => {
5433 let value = map.next_value::<serde_json::Value>()?;
5434 result._unknown_fields.insert(key, value);
5435 }
5436 }
5437 }
5438 std::result::Result::Ok(result)
5439 }
5440 }
5441 deserializer.deserialize_any(Visitor)
5442 }
5443}
5444
5445#[doc(hidden)]
5446impl serde::ser::Serialize for ListSubnetsResponse {
5447 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
5448 where
5449 S: serde::ser::Serializer,
5450 {
5451 use serde::ser::SerializeMap;
5452 #[allow(unused_imports)]
5453 use std::option::Option::Some;
5454 let mut state = serializer.serialize_map(std::option::Option::None)?;
5455 if !self.subnets.is_empty() {
5456 state.serialize_entry("subnets", &self.subnets)?;
5457 }
5458 if !self.next_page_token.is_empty() {
5459 state.serialize_entry("nextPageToken", &self.next_page_token)?;
5460 }
5461 if !self.unreachable.is_empty() {
5462 state.serialize_entry("unreachable", &self.unreachable)?;
5463 }
5464 if !self._unknown_fields.is_empty() {
5465 for (key, value) in self._unknown_fields.iter() {
5466 state.serialize_entry(key, &value)?;
5467 }
5468 }
5469 state.end()
5470 }
5471}
5472
5473#[derive(Clone, Debug, Default, PartialEq)]
5478#[non_exhaustive]
5479pub struct GetSubnetRequest {
5480 pub name: std::string::String,
5486
5487 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
5488}
5489
5490impl GetSubnetRequest {
5491 pub fn new() -> Self {
5492 std::default::Default::default()
5493 }
5494
5495 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5497 self.name = v.into();
5498 self
5499 }
5500}
5501
5502impl wkt::message::Message for GetSubnetRequest {
5503 fn typename() -> &'static str {
5504 "type.googleapis.com/google.cloud.vmwareengine.v1.GetSubnetRequest"
5505 }
5506}
5507
5508#[doc(hidden)]
5509impl<'de> serde::de::Deserialize<'de> for GetSubnetRequest {
5510 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5511 where
5512 D: serde::Deserializer<'de>,
5513 {
5514 #[allow(non_camel_case_types)]
5515 #[doc(hidden)]
5516 #[derive(PartialEq, Eq, Hash)]
5517 enum __FieldTag {
5518 __name,
5519 Unknown(std::string::String),
5520 }
5521 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
5522 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5523 where
5524 D: serde::Deserializer<'de>,
5525 {
5526 struct Visitor;
5527 impl<'de> serde::de::Visitor<'de> for Visitor {
5528 type Value = __FieldTag;
5529 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5530 formatter.write_str("a field name for GetSubnetRequest")
5531 }
5532 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
5533 where
5534 E: serde::de::Error,
5535 {
5536 use std::result::Result::Ok;
5537 use std::string::ToString;
5538 match value {
5539 "name" => Ok(__FieldTag::__name),
5540 _ => Ok(__FieldTag::Unknown(value.to_string())),
5541 }
5542 }
5543 }
5544 deserializer.deserialize_identifier(Visitor)
5545 }
5546 }
5547 struct Visitor;
5548 impl<'de> serde::de::Visitor<'de> for Visitor {
5549 type Value = GetSubnetRequest;
5550 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5551 formatter.write_str("struct GetSubnetRequest")
5552 }
5553 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
5554 where
5555 A: serde::de::MapAccess<'de>,
5556 {
5557 #[allow(unused_imports)]
5558 use serde::de::Error;
5559 use std::option::Option::Some;
5560 let mut fields = std::collections::HashSet::new();
5561 let mut result = Self::Value::new();
5562 while let Some(tag) = map.next_key::<__FieldTag>()? {
5563 #[allow(clippy::match_single_binding)]
5564 match tag {
5565 __FieldTag::__name => {
5566 if !fields.insert(__FieldTag::__name) {
5567 return std::result::Result::Err(A::Error::duplicate_field(
5568 "multiple values for name",
5569 ));
5570 }
5571 result.name = map
5572 .next_value::<std::option::Option<std::string::String>>()?
5573 .unwrap_or_default();
5574 }
5575 __FieldTag::Unknown(key) => {
5576 let value = map.next_value::<serde_json::Value>()?;
5577 result._unknown_fields.insert(key, value);
5578 }
5579 }
5580 }
5581 std::result::Result::Ok(result)
5582 }
5583 }
5584 deserializer.deserialize_any(Visitor)
5585 }
5586}
5587
5588#[doc(hidden)]
5589impl serde::ser::Serialize for GetSubnetRequest {
5590 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
5591 where
5592 S: serde::ser::Serializer,
5593 {
5594 use serde::ser::SerializeMap;
5595 #[allow(unused_imports)]
5596 use std::option::Option::Some;
5597 let mut state = serializer.serialize_map(std::option::Option::None)?;
5598 if !self.name.is_empty() {
5599 state.serialize_entry("name", &self.name)?;
5600 }
5601 if !self._unknown_fields.is_empty() {
5602 for (key, value) in self._unknown_fields.iter() {
5603 state.serialize_entry(key, &value)?;
5604 }
5605 }
5606 state.end()
5607 }
5608}
5609
5610#[derive(Clone, Debug, Default, PartialEq)]
5615#[non_exhaustive]
5616pub struct UpdateSubnetRequest {
5617 pub update_mask: std::option::Option<wkt::FieldMask>,
5623
5624 pub subnet: std::option::Option<crate::model::Subnet>,
5626
5627 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
5628}
5629
5630impl UpdateSubnetRequest {
5631 pub fn new() -> Self {
5632 std::default::Default::default()
5633 }
5634
5635 pub fn set_update_mask<T>(mut self, v: T) -> Self
5637 where
5638 T: std::convert::Into<wkt::FieldMask>,
5639 {
5640 self.update_mask = std::option::Option::Some(v.into());
5641 self
5642 }
5643
5644 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
5646 where
5647 T: std::convert::Into<wkt::FieldMask>,
5648 {
5649 self.update_mask = v.map(|x| x.into());
5650 self
5651 }
5652
5653 pub fn set_subnet<T>(mut self, v: T) -> Self
5655 where
5656 T: std::convert::Into<crate::model::Subnet>,
5657 {
5658 self.subnet = std::option::Option::Some(v.into());
5659 self
5660 }
5661
5662 pub fn set_or_clear_subnet<T>(mut self, v: std::option::Option<T>) -> Self
5664 where
5665 T: std::convert::Into<crate::model::Subnet>,
5666 {
5667 self.subnet = v.map(|x| x.into());
5668 self
5669 }
5670}
5671
5672impl wkt::message::Message for UpdateSubnetRequest {
5673 fn typename() -> &'static str {
5674 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateSubnetRequest"
5675 }
5676}
5677
5678#[doc(hidden)]
5679impl<'de> serde::de::Deserialize<'de> for UpdateSubnetRequest {
5680 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5681 where
5682 D: serde::Deserializer<'de>,
5683 {
5684 #[allow(non_camel_case_types)]
5685 #[doc(hidden)]
5686 #[derive(PartialEq, Eq, Hash)]
5687 enum __FieldTag {
5688 __update_mask,
5689 __subnet,
5690 Unknown(std::string::String),
5691 }
5692 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
5693 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5694 where
5695 D: serde::Deserializer<'de>,
5696 {
5697 struct Visitor;
5698 impl<'de> serde::de::Visitor<'de> for Visitor {
5699 type Value = __FieldTag;
5700 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5701 formatter.write_str("a field name for UpdateSubnetRequest")
5702 }
5703 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
5704 where
5705 E: serde::de::Error,
5706 {
5707 use std::result::Result::Ok;
5708 use std::string::ToString;
5709 match value {
5710 "updateMask" => Ok(__FieldTag::__update_mask),
5711 "update_mask" => Ok(__FieldTag::__update_mask),
5712 "subnet" => Ok(__FieldTag::__subnet),
5713 _ => Ok(__FieldTag::Unknown(value.to_string())),
5714 }
5715 }
5716 }
5717 deserializer.deserialize_identifier(Visitor)
5718 }
5719 }
5720 struct Visitor;
5721 impl<'de> serde::de::Visitor<'de> for Visitor {
5722 type Value = UpdateSubnetRequest;
5723 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5724 formatter.write_str("struct UpdateSubnetRequest")
5725 }
5726 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
5727 where
5728 A: serde::de::MapAccess<'de>,
5729 {
5730 #[allow(unused_imports)]
5731 use serde::de::Error;
5732 use std::option::Option::Some;
5733 let mut fields = std::collections::HashSet::new();
5734 let mut result = Self::Value::new();
5735 while let Some(tag) = map.next_key::<__FieldTag>()? {
5736 #[allow(clippy::match_single_binding)]
5737 match tag {
5738 __FieldTag::__update_mask => {
5739 if !fields.insert(__FieldTag::__update_mask) {
5740 return std::result::Result::Err(A::Error::duplicate_field(
5741 "multiple values for update_mask",
5742 ));
5743 }
5744 result.update_mask =
5745 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
5746 }
5747 __FieldTag::__subnet => {
5748 if !fields.insert(__FieldTag::__subnet) {
5749 return std::result::Result::Err(A::Error::duplicate_field(
5750 "multiple values for subnet",
5751 ));
5752 }
5753 result.subnet =
5754 map.next_value::<std::option::Option<crate::model::Subnet>>()?;
5755 }
5756 __FieldTag::Unknown(key) => {
5757 let value = map.next_value::<serde_json::Value>()?;
5758 result._unknown_fields.insert(key, value);
5759 }
5760 }
5761 }
5762 std::result::Result::Ok(result)
5763 }
5764 }
5765 deserializer.deserialize_any(Visitor)
5766 }
5767}
5768
5769#[doc(hidden)]
5770impl serde::ser::Serialize for UpdateSubnetRequest {
5771 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
5772 where
5773 S: serde::ser::Serializer,
5774 {
5775 use serde::ser::SerializeMap;
5776 #[allow(unused_imports)]
5777 use std::option::Option::Some;
5778 let mut state = serializer.serialize_map(std::option::Option::None)?;
5779 if self.update_mask.is_some() {
5780 state.serialize_entry("updateMask", &self.update_mask)?;
5781 }
5782 if self.subnet.is_some() {
5783 state.serialize_entry("subnet", &self.subnet)?;
5784 }
5785 if !self._unknown_fields.is_empty() {
5786 for (key, value) in self._unknown_fields.iter() {
5787 state.serialize_entry(key, &value)?;
5788 }
5789 }
5790 state.end()
5791 }
5792}
5793
5794#[derive(Clone, Debug, Default, PartialEq)]
5799#[non_exhaustive]
5800pub struct ListExternalAccessRulesRequest {
5801 pub parent: std::string::String,
5807
5808 pub page_size: i32,
5813
5814 pub page_token: std::string::String,
5821
5822 pub filter: std::string::String,
5850
5851 pub order_by: std::string::String,
5857
5858 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
5859}
5860
5861impl ListExternalAccessRulesRequest {
5862 pub fn new() -> Self {
5863 std::default::Default::default()
5864 }
5865
5866 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5868 self.parent = v.into();
5869 self
5870 }
5871
5872 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
5874 self.page_size = v.into();
5875 self
5876 }
5877
5878 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5880 self.page_token = v.into();
5881 self
5882 }
5883
5884 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5886 self.filter = v.into();
5887 self
5888 }
5889
5890 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
5892 self.order_by = v.into();
5893 self
5894 }
5895}
5896
5897impl wkt::message::Message for ListExternalAccessRulesRequest {
5898 fn typename() -> &'static str {
5899 "type.googleapis.com/google.cloud.vmwareengine.v1.ListExternalAccessRulesRequest"
5900 }
5901}
5902
5903#[doc(hidden)]
5904impl<'de> serde::de::Deserialize<'de> for ListExternalAccessRulesRequest {
5905 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5906 where
5907 D: serde::Deserializer<'de>,
5908 {
5909 #[allow(non_camel_case_types)]
5910 #[doc(hidden)]
5911 #[derive(PartialEq, Eq, Hash)]
5912 enum __FieldTag {
5913 __parent,
5914 __page_size,
5915 __page_token,
5916 __filter,
5917 __order_by,
5918 Unknown(std::string::String),
5919 }
5920 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
5921 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
5922 where
5923 D: serde::Deserializer<'de>,
5924 {
5925 struct Visitor;
5926 impl<'de> serde::de::Visitor<'de> for Visitor {
5927 type Value = __FieldTag;
5928 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5929 formatter.write_str("a field name for ListExternalAccessRulesRequest")
5930 }
5931 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
5932 where
5933 E: serde::de::Error,
5934 {
5935 use std::result::Result::Ok;
5936 use std::string::ToString;
5937 match value {
5938 "parent" => Ok(__FieldTag::__parent),
5939 "pageSize" => Ok(__FieldTag::__page_size),
5940 "page_size" => Ok(__FieldTag::__page_size),
5941 "pageToken" => Ok(__FieldTag::__page_token),
5942 "page_token" => Ok(__FieldTag::__page_token),
5943 "filter" => Ok(__FieldTag::__filter),
5944 "orderBy" => Ok(__FieldTag::__order_by),
5945 "order_by" => Ok(__FieldTag::__order_by),
5946 _ => Ok(__FieldTag::Unknown(value.to_string())),
5947 }
5948 }
5949 }
5950 deserializer.deserialize_identifier(Visitor)
5951 }
5952 }
5953 struct Visitor;
5954 impl<'de> serde::de::Visitor<'de> for Visitor {
5955 type Value = ListExternalAccessRulesRequest;
5956 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
5957 formatter.write_str("struct ListExternalAccessRulesRequest")
5958 }
5959 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
5960 where
5961 A: serde::de::MapAccess<'de>,
5962 {
5963 #[allow(unused_imports)]
5964 use serde::de::Error;
5965 use std::option::Option::Some;
5966 let mut fields = std::collections::HashSet::new();
5967 let mut result = Self::Value::new();
5968 while let Some(tag) = map.next_key::<__FieldTag>()? {
5969 #[allow(clippy::match_single_binding)]
5970 match tag {
5971 __FieldTag::__parent => {
5972 if !fields.insert(__FieldTag::__parent) {
5973 return std::result::Result::Err(A::Error::duplicate_field(
5974 "multiple values for parent",
5975 ));
5976 }
5977 result.parent = map
5978 .next_value::<std::option::Option<std::string::String>>()?
5979 .unwrap_or_default();
5980 }
5981 __FieldTag::__page_size => {
5982 if !fields.insert(__FieldTag::__page_size) {
5983 return std::result::Result::Err(A::Error::duplicate_field(
5984 "multiple values for page_size",
5985 ));
5986 }
5987 struct __With(std::option::Option<i32>);
5988 impl<'de> serde::de::Deserialize<'de> for __With {
5989 fn deserialize<D>(
5990 deserializer: D,
5991 ) -> std::result::Result<Self, D::Error>
5992 where
5993 D: serde::de::Deserializer<'de>,
5994 {
5995 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
5996 }
5997 }
5998 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
5999 }
6000 __FieldTag::__page_token => {
6001 if !fields.insert(__FieldTag::__page_token) {
6002 return std::result::Result::Err(A::Error::duplicate_field(
6003 "multiple values for page_token",
6004 ));
6005 }
6006 result.page_token = map
6007 .next_value::<std::option::Option<std::string::String>>()?
6008 .unwrap_or_default();
6009 }
6010 __FieldTag::__filter => {
6011 if !fields.insert(__FieldTag::__filter) {
6012 return std::result::Result::Err(A::Error::duplicate_field(
6013 "multiple values for filter",
6014 ));
6015 }
6016 result.filter = map
6017 .next_value::<std::option::Option<std::string::String>>()?
6018 .unwrap_or_default();
6019 }
6020 __FieldTag::__order_by => {
6021 if !fields.insert(__FieldTag::__order_by) {
6022 return std::result::Result::Err(A::Error::duplicate_field(
6023 "multiple values for order_by",
6024 ));
6025 }
6026 result.order_by = map
6027 .next_value::<std::option::Option<std::string::String>>()?
6028 .unwrap_or_default();
6029 }
6030 __FieldTag::Unknown(key) => {
6031 let value = map.next_value::<serde_json::Value>()?;
6032 result._unknown_fields.insert(key, value);
6033 }
6034 }
6035 }
6036 std::result::Result::Ok(result)
6037 }
6038 }
6039 deserializer.deserialize_any(Visitor)
6040 }
6041}
6042
6043#[doc(hidden)]
6044impl serde::ser::Serialize for ListExternalAccessRulesRequest {
6045 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
6046 where
6047 S: serde::ser::Serializer,
6048 {
6049 use serde::ser::SerializeMap;
6050 #[allow(unused_imports)]
6051 use std::option::Option::Some;
6052 let mut state = serializer.serialize_map(std::option::Option::None)?;
6053 if !self.parent.is_empty() {
6054 state.serialize_entry("parent", &self.parent)?;
6055 }
6056 if !wkt::internal::is_default(&self.page_size) {
6057 struct __With<'a>(&'a i32);
6058 impl<'a> serde::ser::Serialize for __With<'a> {
6059 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
6060 where
6061 S: serde::ser::Serializer,
6062 {
6063 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
6064 }
6065 }
6066 state.serialize_entry("pageSize", &__With(&self.page_size))?;
6067 }
6068 if !self.page_token.is_empty() {
6069 state.serialize_entry("pageToken", &self.page_token)?;
6070 }
6071 if !self.filter.is_empty() {
6072 state.serialize_entry("filter", &self.filter)?;
6073 }
6074 if !self.order_by.is_empty() {
6075 state.serialize_entry("orderBy", &self.order_by)?;
6076 }
6077 if !self._unknown_fields.is_empty() {
6078 for (key, value) in self._unknown_fields.iter() {
6079 state.serialize_entry(key, &value)?;
6080 }
6081 }
6082 state.end()
6083 }
6084}
6085
6086#[derive(Clone, Debug, Default, PartialEq)]
6091#[non_exhaustive]
6092pub struct ListExternalAccessRulesResponse {
6093 pub external_access_rules: std::vec::Vec<crate::model::ExternalAccessRule>,
6095
6096 pub next_page_token: std::string::String,
6099
6100 pub unreachable: std::vec::Vec<std::string::String>,
6103
6104 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
6105}
6106
6107impl ListExternalAccessRulesResponse {
6108 pub fn new() -> Self {
6109 std::default::Default::default()
6110 }
6111
6112 pub fn set_external_access_rules<T, V>(mut self, v: T) -> Self
6114 where
6115 T: std::iter::IntoIterator<Item = V>,
6116 V: std::convert::Into<crate::model::ExternalAccessRule>,
6117 {
6118 use std::iter::Iterator;
6119 self.external_access_rules = v.into_iter().map(|i| i.into()).collect();
6120 self
6121 }
6122
6123 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6125 self.next_page_token = v.into();
6126 self
6127 }
6128
6129 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
6131 where
6132 T: std::iter::IntoIterator<Item = V>,
6133 V: std::convert::Into<std::string::String>,
6134 {
6135 use std::iter::Iterator;
6136 self.unreachable = v.into_iter().map(|i| i.into()).collect();
6137 self
6138 }
6139}
6140
6141impl wkt::message::Message for ListExternalAccessRulesResponse {
6142 fn typename() -> &'static str {
6143 "type.googleapis.com/google.cloud.vmwareengine.v1.ListExternalAccessRulesResponse"
6144 }
6145}
6146
6147#[doc(hidden)]
6148impl gax::paginator::internal::PageableResponse for ListExternalAccessRulesResponse {
6149 type PageItem = crate::model::ExternalAccessRule;
6150
6151 fn items(self) -> std::vec::Vec<Self::PageItem> {
6152 self.external_access_rules
6153 }
6154
6155 fn next_page_token(&self) -> std::string::String {
6156 use std::clone::Clone;
6157 self.next_page_token.clone()
6158 }
6159}
6160
6161#[doc(hidden)]
6162impl<'de> serde::de::Deserialize<'de> for ListExternalAccessRulesResponse {
6163 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6164 where
6165 D: serde::Deserializer<'de>,
6166 {
6167 #[allow(non_camel_case_types)]
6168 #[doc(hidden)]
6169 #[derive(PartialEq, Eq, Hash)]
6170 enum __FieldTag {
6171 __external_access_rules,
6172 __next_page_token,
6173 __unreachable,
6174 Unknown(std::string::String),
6175 }
6176 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
6177 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6178 where
6179 D: serde::Deserializer<'de>,
6180 {
6181 struct Visitor;
6182 impl<'de> serde::de::Visitor<'de> for Visitor {
6183 type Value = __FieldTag;
6184 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6185 formatter.write_str("a field name for ListExternalAccessRulesResponse")
6186 }
6187 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
6188 where
6189 E: serde::de::Error,
6190 {
6191 use std::result::Result::Ok;
6192 use std::string::ToString;
6193 match value {
6194 "externalAccessRules" => Ok(__FieldTag::__external_access_rules),
6195 "external_access_rules" => Ok(__FieldTag::__external_access_rules),
6196 "nextPageToken" => Ok(__FieldTag::__next_page_token),
6197 "next_page_token" => Ok(__FieldTag::__next_page_token),
6198 "unreachable" => Ok(__FieldTag::__unreachable),
6199 _ => Ok(__FieldTag::Unknown(value.to_string())),
6200 }
6201 }
6202 }
6203 deserializer.deserialize_identifier(Visitor)
6204 }
6205 }
6206 struct Visitor;
6207 impl<'de> serde::de::Visitor<'de> for Visitor {
6208 type Value = ListExternalAccessRulesResponse;
6209 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6210 formatter.write_str("struct ListExternalAccessRulesResponse")
6211 }
6212 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
6213 where
6214 A: serde::de::MapAccess<'de>,
6215 {
6216 #[allow(unused_imports)]
6217 use serde::de::Error;
6218 use std::option::Option::Some;
6219 let mut fields = std::collections::HashSet::new();
6220 let mut result = Self::Value::new();
6221 while let Some(tag) = map.next_key::<__FieldTag>()? {
6222 #[allow(clippy::match_single_binding)]
6223 match tag {
6224 __FieldTag::__external_access_rules => {
6225 if !fields.insert(__FieldTag::__external_access_rules) {
6226 return std::result::Result::Err(A::Error::duplicate_field(
6227 "multiple values for external_access_rules",
6228 ));
6229 }
6230 result.external_access_rules = map
6231 .next_value::<std::option::Option<
6232 std::vec::Vec<crate::model::ExternalAccessRule>,
6233 >>()?
6234 .unwrap_or_default();
6235 }
6236 __FieldTag::__next_page_token => {
6237 if !fields.insert(__FieldTag::__next_page_token) {
6238 return std::result::Result::Err(A::Error::duplicate_field(
6239 "multiple values for next_page_token",
6240 ));
6241 }
6242 result.next_page_token = map
6243 .next_value::<std::option::Option<std::string::String>>()?
6244 .unwrap_or_default();
6245 }
6246 __FieldTag::__unreachable => {
6247 if !fields.insert(__FieldTag::__unreachable) {
6248 return std::result::Result::Err(A::Error::duplicate_field(
6249 "multiple values for unreachable",
6250 ));
6251 }
6252 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
6253 }
6254 __FieldTag::Unknown(key) => {
6255 let value = map.next_value::<serde_json::Value>()?;
6256 result._unknown_fields.insert(key, value);
6257 }
6258 }
6259 }
6260 std::result::Result::Ok(result)
6261 }
6262 }
6263 deserializer.deserialize_any(Visitor)
6264 }
6265}
6266
6267#[doc(hidden)]
6268impl serde::ser::Serialize for ListExternalAccessRulesResponse {
6269 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
6270 where
6271 S: serde::ser::Serializer,
6272 {
6273 use serde::ser::SerializeMap;
6274 #[allow(unused_imports)]
6275 use std::option::Option::Some;
6276 let mut state = serializer.serialize_map(std::option::Option::None)?;
6277 if !self.external_access_rules.is_empty() {
6278 state.serialize_entry("externalAccessRules", &self.external_access_rules)?;
6279 }
6280 if !self.next_page_token.is_empty() {
6281 state.serialize_entry("nextPageToken", &self.next_page_token)?;
6282 }
6283 if !self.unreachable.is_empty() {
6284 state.serialize_entry("unreachable", &self.unreachable)?;
6285 }
6286 if !self._unknown_fields.is_empty() {
6287 for (key, value) in self._unknown_fields.iter() {
6288 state.serialize_entry(key, &value)?;
6289 }
6290 }
6291 state.end()
6292 }
6293}
6294
6295#[derive(Clone, Debug, Default, PartialEq)]
6300#[non_exhaustive]
6301pub struct GetExternalAccessRuleRequest {
6302 pub name: std::string::String,
6308
6309 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
6310}
6311
6312impl GetExternalAccessRuleRequest {
6313 pub fn new() -> Self {
6314 std::default::Default::default()
6315 }
6316
6317 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6319 self.name = v.into();
6320 self
6321 }
6322}
6323
6324impl wkt::message::Message for GetExternalAccessRuleRequest {
6325 fn typename() -> &'static str {
6326 "type.googleapis.com/google.cloud.vmwareengine.v1.GetExternalAccessRuleRequest"
6327 }
6328}
6329
6330#[doc(hidden)]
6331impl<'de> serde::de::Deserialize<'de> for GetExternalAccessRuleRequest {
6332 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6333 where
6334 D: serde::Deserializer<'de>,
6335 {
6336 #[allow(non_camel_case_types)]
6337 #[doc(hidden)]
6338 #[derive(PartialEq, Eq, Hash)]
6339 enum __FieldTag {
6340 __name,
6341 Unknown(std::string::String),
6342 }
6343 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
6344 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6345 where
6346 D: serde::Deserializer<'de>,
6347 {
6348 struct Visitor;
6349 impl<'de> serde::de::Visitor<'de> for Visitor {
6350 type Value = __FieldTag;
6351 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6352 formatter.write_str("a field name for GetExternalAccessRuleRequest")
6353 }
6354 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
6355 where
6356 E: serde::de::Error,
6357 {
6358 use std::result::Result::Ok;
6359 use std::string::ToString;
6360 match value {
6361 "name" => Ok(__FieldTag::__name),
6362 _ => Ok(__FieldTag::Unknown(value.to_string())),
6363 }
6364 }
6365 }
6366 deserializer.deserialize_identifier(Visitor)
6367 }
6368 }
6369 struct Visitor;
6370 impl<'de> serde::de::Visitor<'de> for Visitor {
6371 type Value = GetExternalAccessRuleRequest;
6372 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6373 formatter.write_str("struct GetExternalAccessRuleRequest")
6374 }
6375 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
6376 where
6377 A: serde::de::MapAccess<'de>,
6378 {
6379 #[allow(unused_imports)]
6380 use serde::de::Error;
6381 use std::option::Option::Some;
6382 let mut fields = std::collections::HashSet::new();
6383 let mut result = Self::Value::new();
6384 while let Some(tag) = map.next_key::<__FieldTag>()? {
6385 #[allow(clippy::match_single_binding)]
6386 match tag {
6387 __FieldTag::__name => {
6388 if !fields.insert(__FieldTag::__name) {
6389 return std::result::Result::Err(A::Error::duplicate_field(
6390 "multiple values for name",
6391 ));
6392 }
6393 result.name = map
6394 .next_value::<std::option::Option<std::string::String>>()?
6395 .unwrap_or_default();
6396 }
6397 __FieldTag::Unknown(key) => {
6398 let value = map.next_value::<serde_json::Value>()?;
6399 result._unknown_fields.insert(key, value);
6400 }
6401 }
6402 }
6403 std::result::Result::Ok(result)
6404 }
6405 }
6406 deserializer.deserialize_any(Visitor)
6407 }
6408}
6409
6410#[doc(hidden)]
6411impl serde::ser::Serialize for GetExternalAccessRuleRequest {
6412 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
6413 where
6414 S: serde::ser::Serializer,
6415 {
6416 use serde::ser::SerializeMap;
6417 #[allow(unused_imports)]
6418 use std::option::Option::Some;
6419 let mut state = serializer.serialize_map(std::option::Option::None)?;
6420 if !self.name.is_empty() {
6421 state.serialize_entry("name", &self.name)?;
6422 }
6423 if !self._unknown_fields.is_empty() {
6424 for (key, value) in self._unknown_fields.iter() {
6425 state.serialize_entry(key, &value)?;
6426 }
6427 }
6428 state.end()
6429 }
6430}
6431
6432#[derive(Clone, Debug, Default, PartialEq)]
6437#[non_exhaustive]
6438pub struct CreateExternalAccessRuleRequest {
6439 pub parent: std::string::String,
6446
6447 pub external_access_rule: std::option::Option<crate::model::ExternalAccessRule>,
6449
6450 pub external_access_rule_id: std::string::String,
6462
6463 pub request_id: std::string::String,
6478
6479 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
6480}
6481
6482impl CreateExternalAccessRuleRequest {
6483 pub fn new() -> Self {
6484 std::default::Default::default()
6485 }
6486
6487 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6489 self.parent = v.into();
6490 self
6491 }
6492
6493 pub fn set_external_access_rule<T>(mut self, v: T) -> Self
6495 where
6496 T: std::convert::Into<crate::model::ExternalAccessRule>,
6497 {
6498 self.external_access_rule = std::option::Option::Some(v.into());
6499 self
6500 }
6501
6502 pub fn set_or_clear_external_access_rule<T>(mut self, v: std::option::Option<T>) -> Self
6504 where
6505 T: std::convert::Into<crate::model::ExternalAccessRule>,
6506 {
6507 self.external_access_rule = v.map(|x| x.into());
6508 self
6509 }
6510
6511 pub fn set_external_access_rule_id<T: std::convert::Into<std::string::String>>(
6513 mut self,
6514 v: T,
6515 ) -> Self {
6516 self.external_access_rule_id = v.into();
6517 self
6518 }
6519
6520 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6522 self.request_id = v.into();
6523 self
6524 }
6525}
6526
6527impl wkt::message::Message for CreateExternalAccessRuleRequest {
6528 fn typename() -> &'static str {
6529 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateExternalAccessRuleRequest"
6530 }
6531}
6532
6533#[doc(hidden)]
6534impl<'de> serde::de::Deserialize<'de> for CreateExternalAccessRuleRequest {
6535 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6536 where
6537 D: serde::Deserializer<'de>,
6538 {
6539 #[allow(non_camel_case_types)]
6540 #[doc(hidden)]
6541 #[derive(PartialEq, Eq, Hash)]
6542 enum __FieldTag {
6543 __parent,
6544 __external_access_rule,
6545 __external_access_rule_id,
6546 __request_id,
6547 Unknown(std::string::String),
6548 }
6549 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
6550 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6551 where
6552 D: serde::Deserializer<'de>,
6553 {
6554 struct Visitor;
6555 impl<'de> serde::de::Visitor<'de> for Visitor {
6556 type Value = __FieldTag;
6557 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6558 formatter.write_str("a field name for CreateExternalAccessRuleRequest")
6559 }
6560 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
6561 where
6562 E: serde::de::Error,
6563 {
6564 use std::result::Result::Ok;
6565 use std::string::ToString;
6566 match value {
6567 "parent" => Ok(__FieldTag::__parent),
6568 "externalAccessRule" => Ok(__FieldTag::__external_access_rule),
6569 "external_access_rule" => Ok(__FieldTag::__external_access_rule),
6570 "externalAccessRuleId" => Ok(__FieldTag::__external_access_rule_id),
6571 "external_access_rule_id" => Ok(__FieldTag::__external_access_rule_id),
6572 "requestId" => Ok(__FieldTag::__request_id),
6573 "request_id" => Ok(__FieldTag::__request_id),
6574 _ => Ok(__FieldTag::Unknown(value.to_string())),
6575 }
6576 }
6577 }
6578 deserializer.deserialize_identifier(Visitor)
6579 }
6580 }
6581 struct Visitor;
6582 impl<'de> serde::de::Visitor<'de> for Visitor {
6583 type Value = CreateExternalAccessRuleRequest;
6584 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6585 formatter.write_str("struct CreateExternalAccessRuleRequest")
6586 }
6587 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
6588 where
6589 A: serde::de::MapAccess<'de>,
6590 {
6591 #[allow(unused_imports)]
6592 use serde::de::Error;
6593 use std::option::Option::Some;
6594 let mut fields = std::collections::HashSet::new();
6595 let mut result = Self::Value::new();
6596 while let Some(tag) = map.next_key::<__FieldTag>()? {
6597 #[allow(clippy::match_single_binding)]
6598 match tag {
6599 __FieldTag::__parent => {
6600 if !fields.insert(__FieldTag::__parent) {
6601 return std::result::Result::Err(A::Error::duplicate_field(
6602 "multiple values for parent",
6603 ));
6604 }
6605 result.parent = map
6606 .next_value::<std::option::Option<std::string::String>>()?
6607 .unwrap_or_default();
6608 }
6609 __FieldTag::__external_access_rule => {
6610 if !fields.insert(__FieldTag::__external_access_rule) {
6611 return std::result::Result::Err(A::Error::duplicate_field(
6612 "multiple values for external_access_rule",
6613 ));
6614 }
6615 result.external_access_rule = map.next_value::<std::option::Option<crate::model::ExternalAccessRule>>()?
6616 ;
6617 }
6618 __FieldTag::__external_access_rule_id => {
6619 if !fields.insert(__FieldTag::__external_access_rule_id) {
6620 return std::result::Result::Err(A::Error::duplicate_field(
6621 "multiple values for external_access_rule_id",
6622 ));
6623 }
6624 result.external_access_rule_id = map
6625 .next_value::<std::option::Option<std::string::String>>()?
6626 .unwrap_or_default();
6627 }
6628 __FieldTag::__request_id => {
6629 if !fields.insert(__FieldTag::__request_id) {
6630 return std::result::Result::Err(A::Error::duplicate_field(
6631 "multiple values for request_id",
6632 ));
6633 }
6634 result.request_id = map
6635 .next_value::<std::option::Option<std::string::String>>()?
6636 .unwrap_or_default();
6637 }
6638 __FieldTag::Unknown(key) => {
6639 let value = map.next_value::<serde_json::Value>()?;
6640 result._unknown_fields.insert(key, value);
6641 }
6642 }
6643 }
6644 std::result::Result::Ok(result)
6645 }
6646 }
6647 deserializer.deserialize_any(Visitor)
6648 }
6649}
6650
6651#[doc(hidden)]
6652impl serde::ser::Serialize for CreateExternalAccessRuleRequest {
6653 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
6654 where
6655 S: serde::ser::Serializer,
6656 {
6657 use serde::ser::SerializeMap;
6658 #[allow(unused_imports)]
6659 use std::option::Option::Some;
6660 let mut state = serializer.serialize_map(std::option::Option::None)?;
6661 if !self.parent.is_empty() {
6662 state.serialize_entry("parent", &self.parent)?;
6663 }
6664 if self.external_access_rule.is_some() {
6665 state.serialize_entry("externalAccessRule", &self.external_access_rule)?;
6666 }
6667 if !self.external_access_rule_id.is_empty() {
6668 state.serialize_entry("externalAccessRuleId", &self.external_access_rule_id)?;
6669 }
6670 if !self.request_id.is_empty() {
6671 state.serialize_entry("requestId", &self.request_id)?;
6672 }
6673 if !self._unknown_fields.is_empty() {
6674 for (key, value) in self._unknown_fields.iter() {
6675 state.serialize_entry(key, &value)?;
6676 }
6677 }
6678 state.end()
6679 }
6680}
6681
6682#[derive(Clone, Debug, Default, PartialEq)]
6687#[non_exhaustive]
6688pub struct UpdateExternalAccessRuleRequest {
6689 pub update_mask: std::option::Option<wkt::FieldMask>,
6695
6696 pub external_access_rule: std::option::Option<crate::model::ExternalAccessRule>,
6698
6699 pub request_id: std::string::String,
6714
6715 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
6716}
6717
6718impl UpdateExternalAccessRuleRequest {
6719 pub fn new() -> Self {
6720 std::default::Default::default()
6721 }
6722
6723 pub fn set_update_mask<T>(mut self, v: T) -> Self
6725 where
6726 T: std::convert::Into<wkt::FieldMask>,
6727 {
6728 self.update_mask = std::option::Option::Some(v.into());
6729 self
6730 }
6731
6732 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
6734 where
6735 T: std::convert::Into<wkt::FieldMask>,
6736 {
6737 self.update_mask = v.map(|x| x.into());
6738 self
6739 }
6740
6741 pub fn set_external_access_rule<T>(mut self, v: T) -> Self
6743 where
6744 T: std::convert::Into<crate::model::ExternalAccessRule>,
6745 {
6746 self.external_access_rule = std::option::Option::Some(v.into());
6747 self
6748 }
6749
6750 pub fn set_or_clear_external_access_rule<T>(mut self, v: std::option::Option<T>) -> Self
6752 where
6753 T: std::convert::Into<crate::model::ExternalAccessRule>,
6754 {
6755 self.external_access_rule = v.map(|x| x.into());
6756 self
6757 }
6758
6759 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6761 self.request_id = v.into();
6762 self
6763 }
6764}
6765
6766impl wkt::message::Message for UpdateExternalAccessRuleRequest {
6767 fn typename() -> &'static str {
6768 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateExternalAccessRuleRequest"
6769 }
6770}
6771
6772#[doc(hidden)]
6773impl<'de> serde::de::Deserialize<'de> for UpdateExternalAccessRuleRequest {
6774 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6775 where
6776 D: serde::Deserializer<'de>,
6777 {
6778 #[allow(non_camel_case_types)]
6779 #[doc(hidden)]
6780 #[derive(PartialEq, Eq, Hash)]
6781 enum __FieldTag {
6782 __update_mask,
6783 __external_access_rule,
6784 __request_id,
6785 Unknown(std::string::String),
6786 }
6787 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
6788 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6789 where
6790 D: serde::Deserializer<'de>,
6791 {
6792 struct Visitor;
6793 impl<'de> serde::de::Visitor<'de> for Visitor {
6794 type Value = __FieldTag;
6795 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6796 formatter.write_str("a field name for UpdateExternalAccessRuleRequest")
6797 }
6798 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
6799 where
6800 E: serde::de::Error,
6801 {
6802 use std::result::Result::Ok;
6803 use std::string::ToString;
6804 match value {
6805 "updateMask" => Ok(__FieldTag::__update_mask),
6806 "update_mask" => Ok(__FieldTag::__update_mask),
6807 "externalAccessRule" => Ok(__FieldTag::__external_access_rule),
6808 "external_access_rule" => Ok(__FieldTag::__external_access_rule),
6809 "requestId" => Ok(__FieldTag::__request_id),
6810 "request_id" => Ok(__FieldTag::__request_id),
6811 _ => Ok(__FieldTag::Unknown(value.to_string())),
6812 }
6813 }
6814 }
6815 deserializer.deserialize_identifier(Visitor)
6816 }
6817 }
6818 struct Visitor;
6819 impl<'de> serde::de::Visitor<'de> for Visitor {
6820 type Value = UpdateExternalAccessRuleRequest;
6821 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6822 formatter.write_str("struct UpdateExternalAccessRuleRequest")
6823 }
6824 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
6825 where
6826 A: serde::de::MapAccess<'de>,
6827 {
6828 #[allow(unused_imports)]
6829 use serde::de::Error;
6830 use std::option::Option::Some;
6831 let mut fields = std::collections::HashSet::new();
6832 let mut result = Self::Value::new();
6833 while let Some(tag) = map.next_key::<__FieldTag>()? {
6834 #[allow(clippy::match_single_binding)]
6835 match tag {
6836 __FieldTag::__update_mask => {
6837 if !fields.insert(__FieldTag::__update_mask) {
6838 return std::result::Result::Err(A::Error::duplicate_field(
6839 "multiple values for update_mask",
6840 ));
6841 }
6842 result.update_mask =
6843 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
6844 }
6845 __FieldTag::__external_access_rule => {
6846 if !fields.insert(__FieldTag::__external_access_rule) {
6847 return std::result::Result::Err(A::Error::duplicate_field(
6848 "multiple values for external_access_rule",
6849 ));
6850 }
6851 result.external_access_rule = map.next_value::<std::option::Option<crate::model::ExternalAccessRule>>()?
6852 ;
6853 }
6854 __FieldTag::__request_id => {
6855 if !fields.insert(__FieldTag::__request_id) {
6856 return std::result::Result::Err(A::Error::duplicate_field(
6857 "multiple values for request_id",
6858 ));
6859 }
6860 result.request_id = map
6861 .next_value::<std::option::Option<std::string::String>>()?
6862 .unwrap_or_default();
6863 }
6864 __FieldTag::Unknown(key) => {
6865 let value = map.next_value::<serde_json::Value>()?;
6866 result._unknown_fields.insert(key, value);
6867 }
6868 }
6869 }
6870 std::result::Result::Ok(result)
6871 }
6872 }
6873 deserializer.deserialize_any(Visitor)
6874 }
6875}
6876
6877#[doc(hidden)]
6878impl serde::ser::Serialize for UpdateExternalAccessRuleRequest {
6879 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
6880 where
6881 S: serde::ser::Serializer,
6882 {
6883 use serde::ser::SerializeMap;
6884 #[allow(unused_imports)]
6885 use std::option::Option::Some;
6886 let mut state = serializer.serialize_map(std::option::Option::None)?;
6887 if self.update_mask.is_some() {
6888 state.serialize_entry("updateMask", &self.update_mask)?;
6889 }
6890 if self.external_access_rule.is_some() {
6891 state.serialize_entry("externalAccessRule", &self.external_access_rule)?;
6892 }
6893 if !self.request_id.is_empty() {
6894 state.serialize_entry("requestId", &self.request_id)?;
6895 }
6896 if !self._unknown_fields.is_empty() {
6897 for (key, value) in self._unknown_fields.iter() {
6898 state.serialize_entry(key, &value)?;
6899 }
6900 }
6901 state.end()
6902 }
6903}
6904
6905#[derive(Clone, Debug, Default, PartialEq)]
6910#[non_exhaustive]
6911pub struct DeleteExternalAccessRuleRequest {
6912 pub name: std::string::String,
6918
6919 pub request_id: std::string::String,
6934
6935 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
6936}
6937
6938impl DeleteExternalAccessRuleRequest {
6939 pub fn new() -> Self {
6940 std::default::Default::default()
6941 }
6942
6943 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6945 self.name = v.into();
6946 self
6947 }
6948
6949 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
6951 self.request_id = v.into();
6952 self
6953 }
6954}
6955
6956impl wkt::message::Message for DeleteExternalAccessRuleRequest {
6957 fn typename() -> &'static str {
6958 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteExternalAccessRuleRequest"
6959 }
6960}
6961
6962#[doc(hidden)]
6963impl<'de> serde::de::Deserialize<'de> for DeleteExternalAccessRuleRequest {
6964 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6965 where
6966 D: serde::Deserializer<'de>,
6967 {
6968 #[allow(non_camel_case_types)]
6969 #[doc(hidden)]
6970 #[derive(PartialEq, Eq, Hash)]
6971 enum __FieldTag {
6972 __name,
6973 __request_id,
6974 Unknown(std::string::String),
6975 }
6976 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
6977 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
6978 where
6979 D: serde::Deserializer<'de>,
6980 {
6981 struct Visitor;
6982 impl<'de> serde::de::Visitor<'de> for Visitor {
6983 type Value = __FieldTag;
6984 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
6985 formatter.write_str("a field name for DeleteExternalAccessRuleRequest")
6986 }
6987 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
6988 where
6989 E: serde::de::Error,
6990 {
6991 use std::result::Result::Ok;
6992 use std::string::ToString;
6993 match value {
6994 "name" => Ok(__FieldTag::__name),
6995 "requestId" => Ok(__FieldTag::__request_id),
6996 "request_id" => Ok(__FieldTag::__request_id),
6997 _ => Ok(__FieldTag::Unknown(value.to_string())),
6998 }
6999 }
7000 }
7001 deserializer.deserialize_identifier(Visitor)
7002 }
7003 }
7004 struct Visitor;
7005 impl<'de> serde::de::Visitor<'de> for Visitor {
7006 type Value = DeleteExternalAccessRuleRequest;
7007 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7008 formatter.write_str("struct DeleteExternalAccessRuleRequest")
7009 }
7010 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
7011 where
7012 A: serde::de::MapAccess<'de>,
7013 {
7014 #[allow(unused_imports)]
7015 use serde::de::Error;
7016 use std::option::Option::Some;
7017 let mut fields = std::collections::HashSet::new();
7018 let mut result = Self::Value::new();
7019 while let Some(tag) = map.next_key::<__FieldTag>()? {
7020 #[allow(clippy::match_single_binding)]
7021 match tag {
7022 __FieldTag::__name => {
7023 if !fields.insert(__FieldTag::__name) {
7024 return std::result::Result::Err(A::Error::duplicate_field(
7025 "multiple values for name",
7026 ));
7027 }
7028 result.name = map
7029 .next_value::<std::option::Option<std::string::String>>()?
7030 .unwrap_or_default();
7031 }
7032 __FieldTag::__request_id => {
7033 if !fields.insert(__FieldTag::__request_id) {
7034 return std::result::Result::Err(A::Error::duplicate_field(
7035 "multiple values for request_id",
7036 ));
7037 }
7038 result.request_id = map
7039 .next_value::<std::option::Option<std::string::String>>()?
7040 .unwrap_or_default();
7041 }
7042 __FieldTag::Unknown(key) => {
7043 let value = map.next_value::<serde_json::Value>()?;
7044 result._unknown_fields.insert(key, value);
7045 }
7046 }
7047 }
7048 std::result::Result::Ok(result)
7049 }
7050 }
7051 deserializer.deserialize_any(Visitor)
7052 }
7053}
7054
7055#[doc(hidden)]
7056impl serde::ser::Serialize for DeleteExternalAccessRuleRequest {
7057 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
7058 where
7059 S: serde::ser::Serializer,
7060 {
7061 use serde::ser::SerializeMap;
7062 #[allow(unused_imports)]
7063 use std::option::Option::Some;
7064 let mut state = serializer.serialize_map(std::option::Option::None)?;
7065 if !self.name.is_empty() {
7066 state.serialize_entry("name", &self.name)?;
7067 }
7068 if !self.request_id.is_empty() {
7069 state.serialize_entry("requestId", &self.request_id)?;
7070 }
7071 if !self._unknown_fields.is_empty() {
7072 for (key, value) in self._unknown_fields.iter() {
7073 state.serialize_entry(key, &value)?;
7074 }
7075 }
7076 state.end()
7077 }
7078}
7079
7080#[derive(Clone, Debug, Default, PartialEq)]
7085#[non_exhaustive]
7086pub struct ListLoggingServersRequest {
7087 pub parent: std::string::String,
7094
7095 pub page_size: i32,
7100
7101 pub page_token: std::string::String,
7108
7109 pub filter: std::string::String,
7137
7138 pub order_by: std::string::String,
7144
7145 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
7146}
7147
7148impl ListLoggingServersRequest {
7149 pub fn new() -> Self {
7150 std::default::Default::default()
7151 }
7152
7153 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7155 self.parent = v.into();
7156 self
7157 }
7158
7159 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
7161 self.page_size = v.into();
7162 self
7163 }
7164
7165 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7167 self.page_token = v.into();
7168 self
7169 }
7170
7171 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7173 self.filter = v.into();
7174 self
7175 }
7176
7177 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7179 self.order_by = v.into();
7180 self
7181 }
7182}
7183
7184impl wkt::message::Message for ListLoggingServersRequest {
7185 fn typename() -> &'static str {
7186 "type.googleapis.com/google.cloud.vmwareengine.v1.ListLoggingServersRequest"
7187 }
7188}
7189
7190#[doc(hidden)]
7191impl<'de> serde::de::Deserialize<'de> for ListLoggingServersRequest {
7192 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7193 where
7194 D: serde::Deserializer<'de>,
7195 {
7196 #[allow(non_camel_case_types)]
7197 #[doc(hidden)]
7198 #[derive(PartialEq, Eq, Hash)]
7199 enum __FieldTag {
7200 __parent,
7201 __page_size,
7202 __page_token,
7203 __filter,
7204 __order_by,
7205 Unknown(std::string::String),
7206 }
7207 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
7208 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7209 where
7210 D: serde::Deserializer<'de>,
7211 {
7212 struct Visitor;
7213 impl<'de> serde::de::Visitor<'de> for Visitor {
7214 type Value = __FieldTag;
7215 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7216 formatter.write_str("a field name for ListLoggingServersRequest")
7217 }
7218 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
7219 where
7220 E: serde::de::Error,
7221 {
7222 use std::result::Result::Ok;
7223 use std::string::ToString;
7224 match value {
7225 "parent" => Ok(__FieldTag::__parent),
7226 "pageSize" => Ok(__FieldTag::__page_size),
7227 "page_size" => Ok(__FieldTag::__page_size),
7228 "pageToken" => Ok(__FieldTag::__page_token),
7229 "page_token" => Ok(__FieldTag::__page_token),
7230 "filter" => Ok(__FieldTag::__filter),
7231 "orderBy" => Ok(__FieldTag::__order_by),
7232 "order_by" => Ok(__FieldTag::__order_by),
7233 _ => Ok(__FieldTag::Unknown(value.to_string())),
7234 }
7235 }
7236 }
7237 deserializer.deserialize_identifier(Visitor)
7238 }
7239 }
7240 struct Visitor;
7241 impl<'de> serde::de::Visitor<'de> for Visitor {
7242 type Value = ListLoggingServersRequest;
7243 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7244 formatter.write_str("struct ListLoggingServersRequest")
7245 }
7246 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
7247 where
7248 A: serde::de::MapAccess<'de>,
7249 {
7250 #[allow(unused_imports)]
7251 use serde::de::Error;
7252 use std::option::Option::Some;
7253 let mut fields = std::collections::HashSet::new();
7254 let mut result = Self::Value::new();
7255 while let Some(tag) = map.next_key::<__FieldTag>()? {
7256 #[allow(clippy::match_single_binding)]
7257 match tag {
7258 __FieldTag::__parent => {
7259 if !fields.insert(__FieldTag::__parent) {
7260 return std::result::Result::Err(A::Error::duplicate_field(
7261 "multiple values for parent",
7262 ));
7263 }
7264 result.parent = map
7265 .next_value::<std::option::Option<std::string::String>>()?
7266 .unwrap_or_default();
7267 }
7268 __FieldTag::__page_size => {
7269 if !fields.insert(__FieldTag::__page_size) {
7270 return std::result::Result::Err(A::Error::duplicate_field(
7271 "multiple values for page_size",
7272 ));
7273 }
7274 struct __With(std::option::Option<i32>);
7275 impl<'de> serde::de::Deserialize<'de> for __With {
7276 fn deserialize<D>(
7277 deserializer: D,
7278 ) -> std::result::Result<Self, D::Error>
7279 where
7280 D: serde::de::Deserializer<'de>,
7281 {
7282 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
7283 }
7284 }
7285 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
7286 }
7287 __FieldTag::__page_token => {
7288 if !fields.insert(__FieldTag::__page_token) {
7289 return std::result::Result::Err(A::Error::duplicate_field(
7290 "multiple values for page_token",
7291 ));
7292 }
7293 result.page_token = map
7294 .next_value::<std::option::Option<std::string::String>>()?
7295 .unwrap_or_default();
7296 }
7297 __FieldTag::__filter => {
7298 if !fields.insert(__FieldTag::__filter) {
7299 return std::result::Result::Err(A::Error::duplicate_field(
7300 "multiple values for filter",
7301 ));
7302 }
7303 result.filter = map
7304 .next_value::<std::option::Option<std::string::String>>()?
7305 .unwrap_or_default();
7306 }
7307 __FieldTag::__order_by => {
7308 if !fields.insert(__FieldTag::__order_by) {
7309 return std::result::Result::Err(A::Error::duplicate_field(
7310 "multiple values for order_by",
7311 ));
7312 }
7313 result.order_by = map
7314 .next_value::<std::option::Option<std::string::String>>()?
7315 .unwrap_or_default();
7316 }
7317 __FieldTag::Unknown(key) => {
7318 let value = map.next_value::<serde_json::Value>()?;
7319 result._unknown_fields.insert(key, value);
7320 }
7321 }
7322 }
7323 std::result::Result::Ok(result)
7324 }
7325 }
7326 deserializer.deserialize_any(Visitor)
7327 }
7328}
7329
7330#[doc(hidden)]
7331impl serde::ser::Serialize for ListLoggingServersRequest {
7332 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
7333 where
7334 S: serde::ser::Serializer,
7335 {
7336 use serde::ser::SerializeMap;
7337 #[allow(unused_imports)]
7338 use std::option::Option::Some;
7339 let mut state = serializer.serialize_map(std::option::Option::None)?;
7340 if !self.parent.is_empty() {
7341 state.serialize_entry("parent", &self.parent)?;
7342 }
7343 if !wkt::internal::is_default(&self.page_size) {
7344 struct __With<'a>(&'a i32);
7345 impl<'a> serde::ser::Serialize for __With<'a> {
7346 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
7347 where
7348 S: serde::ser::Serializer,
7349 {
7350 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
7351 }
7352 }
7353 state.serialize_entry("pageSize", &__With(&self.page_size))?;
7354 }
7355 if !self.page_token.is_empty() {
7356 state.serialize_entry("pageToken", &self.page_token)?;
7357 }
7358 if !self.filter.is_empty() {
7359 state.serialize_entry("filter", &self.filter)?;
7360 }
7361 if !self.order_by.is_empty() {
7362 state.serialize_entry("orderBy", &self.order_by)?;
7363 }
7364 if !self._unknown_fields.is_empty() {
7365 for (key, value) in self._unknown_fields.iter() {
7366 state.serialize_entry(key, &value)?;
7367 }
7368 }
7369 state.end()
7370 }
7371}
7372
7373#[derive(Clone, Debug, Default, PartialEq)]
7378#[non_exhaustive]
7379pub struct ListLoggingServersResponse {
7380 pub logging_servers: std::vec::Vec<crate::model::LoggingServer>,
7382
7383 pub next_page_token: std::string::String,
7386
7387 pub unreachable: std::vec::Vec<std::string::String>,
7390
7391 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
7392}
7393
7394impl ListLoggingServersResponse {
7395 pub fn new() -> Self {
7396 std::default::Default::default()
7397 }
7398
7399 pub fn set_logging_servers<T, V>(mut self, v: T) -> Self
7401 where
7402 T: std::iter::IntoIterator<Item = V>,
7403 V: std::convert::Into<crate::model::LoggingServer>,
7404 {
7405 use std::iter::Iterator;
7406 self.logging_servers = v.into_iter().map(|i| i.into()).collect();
7407 self
7408 }
7409
7410 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7412 self.next_page_token = v.into();
7413 self
7414 }
7415
7416 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
7418 where
7419 T: std::iter::IntoIterator<Item = V>,
7420 V: std::convert::Into<std::string::String>,
7421 {
7422 use std::iter::Iterator;
7423 self.unreachable = v.into_iter().map(|i| i.into()).collect();
7424 self
7425 }
7426}
7427
7428impl wkt::message::Message for ListLoggingServersResponse {
7429 fn typename() -> &'static str {
7430 "type.googleapis.com/google.cloud.vmwareengine.v1.ListLoggingServersResponse"
7431 }
7432}
7433
7434#[doc(hidden)]
7435impl gax::paginator::internal::PageableResponse for ListLoggingServersResponse {
7436 type PageItem = crate::model::LoggingServer;
7437
7438 fn items(self) -> std::vec::Vec<Self::PageItem> {
7439 self.logging_servers
7440 }
7441
7442 fn next_page_token(&self) -> std::string::String {
7443 use std::clone::Clone;
7444 self.next_page_token.clone()
7445 }
7446}
7447
7448#[doc(hidden)]
7449impl<'de> serde::de::Deserialize<'de> for ListLoggingServersResponse {
7450 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7451 where
7452 D: serde::Deserializer<'de>,
7453 {
7454 #[allow(non_camel_case_types)]
7455 #[doc(hidden)]
7456 #[derive(PartialEq, Eq, Hash)]
7457 enum __FieldTag {
7458 __logging_servers,
7459 __next_page_token,
7460 __unreachable,
7461 Unknown(std::string::String),
7462 }
7463 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
7464 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7465 where
7466 D: serde::Deserializer<'de>,
7467 {
7468 struct Visitor;
7469 impl<'de> serde::de::Visitor<'de> for Visitor {
7470 type Value = __FieldTag;
7471 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7472 formatter.write_str("a field name for ListLoggingServersResponse")
7473 }
7474 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
7475 where
7476 E: serde::de::Error,
7477 {
7478 use std::result::Result::Ok;
7479 use std::string::ToString;
7480 match value {
7481 "loggingServers" => Ok(__FieldTag::__logging_servers),
7482 "logging_servers" => Ok(__FieldTag::__logging_servers),
7483 "nextPageToken" => Ok(__FieldTag::__next_page_token),
7484 "next_page_token" => Ok(__FieldTag::__next_page_token),
7485 "unreachable" => Ok(__FieldTag::__unreachable),
7486 _ => Ok(__FieldTag::Unknown(value.to_string())),
7487 }
7488 }
7489 }
7490 deserializer.deserialize_identifier(Visitor)
7491 }
7492 }
7493 struct Visitor;
7494 impl<'de> serde::de::Visitor<'de> for Visitor {
7495 type Value = ListLoggingServersResponse;
7496 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7497 formatter.write_str("struct ListLoggingServersResponse")
7498 }
7499 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
7500 where
7501 A: serde::de::MapAccess<'de>,
7502 {
7503 #[allow(unused_imports)]
7504 use serde::de::Error;
7505 use std::option::Option::Some;
7506 let mut fields = std::collections::HashSet::new();
7507 let mut result = Self::Value::new();
7508 while let Some(tag) = map.next_key::<__FieldTag>()? {
7509 #[allow(clippy::match_single_binding)]
7510 match tag {
7511 __FieldTag::__logging_servers => {
7512 if !fields.insert(__FieldTag::__logging_servers) {
7513 return std::result::Result::Err(A::Error::duplicate_field(
7514 "multiple values for logging_servers",
7515 ));
7516 }
7517 result.logging_servers = map.next_value::<std::option::Option<std::vec::Vec<crate::model::LoggingServer>>>()?.unwrap_or_default();
7518 }
7519 __FieldTag::__next_page_token => {
7520 if !fields.insert(__FieldTag::__next_page_token) {
7521 return std::result::Result::Err(A::Error::duplicate_field(
7522 "multiple values for next_page_token",
7523 ));
7524 }
7525 result.next_page_token = map
7526 .next_value::<std::option::Option<std::string::String>>()?
7527 .unwrap_or_default();
7528 }
7529 __FieldTag::__unreachable => {
7530 if !fields.insert(__FieldTag::__unreachable) {
7531 return std::result::Result::Err(A::Error::duplicate_field(
7532 "multiple values for unreachable",
7533 ));
7534 }
7535 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
7536 }
7537 __FieldTag::Unknown(key) => {
7538 let value = map.next_value::<serde_json::Value>()?;
7539 result._unknown_fields.insert(key, value);
7540 }
7541 }
7542 }
7543 std::result::Result::Ok(result)
7544 }
7545 }
7546 deserializer.deserialize_any(Visitor)
7547 }
7548}
7549
7550#[doc(hidden)]
7551impl serde::ser::Serialize for ListLoggingServersResponse {
7552 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
7553 where
7554 S: serde::ser::Serializer,
7555 {
7556 use serde::ser::SerializeMap;
7557 #[allow(unused_imports)]
7558 use std::option::Option::Some;
7559 let mut state = serializer.serialize_map(std::option::Option::None)?;
7560 if !self.logging_servers.is_empty() {
7561 state.serialize_entry("loggingServers", &self.logging_servers)?;
7562 }
7563 if !self.next_page_token.is_empty() {
7564 state.serialize_entry("nextPageToken", &self.next_page_token)?;
7565 }
7566 if !self.unreachable.is_empty() {
7567 state.serialize_entry("unreachable", &self.unreachable)?;
7568 }
7569 if !self._unknown_fields.is_empty() {
7570 for (key, value) in self._unknown_fields.iter() {
7571 state.serialize_entry(key, &value)?;
7572 }
7573 }
7574 state.end()
7575 }
7576}
7577
7578#[derive(Clone, Debug, Default, PartialEq)]
7583#[non_exhaustive]
7584pub struct GetLoggingServerRequest {
7585 pub name: std::string::String,
7591
7592 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
7593}
7594
7595impl GetLoggingServerRequest {
7596 pub fn new() -> Self {
7597 std::default::Default::default()
7598 }
7599
7600 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7602 self.name = v.into();
7603 self
7604 }
7605}
7606
7607impl wkt::message::Message for GetLoggingServerRequest {
7608 fn typename() -> &'static str {
7609 "type.googleapis.com/google.cloud.vmwareengine.v1.GetLoggingServerRequest"
7610 }
7611}
7612
7613#[doc(hidden)]
7614impl<'de> serde::de::Deserialize<'de> for GetLoggingServerRequest {
7615 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7616 where
7617 D: serde::Deserializer<'de>,
7618 {
7619 #[allow(non_camel_case_types)]
7620 #[doc(hidden)]
7621 #[derive(PartialEq, Eq, Hash)]
7622 enum __FieldTag {
7623 __name,
7624 Unknown(std::string::String),
7625 }
7626 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
7627 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7628 where
7629 D: serde::Deserializer<'de>,
7630 {
7631 struct Visitor;
7632 impl<'de> serde::de::Visitor<'de> for Visitor {
7633 type Value = __FieldTag;
7634 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7635 formatter.write_str("a field name for GetLoggingServerRequest")
7636 }
7637 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
7638 where
7639 E: serde::de::Error,
7640 {
7641 use std::result::Result::Ok;
7642 use std::string::ToString;
7643 match value {
7644 "name" => Ok(__FieldTag::__name),
7645 _ => Ok(__FieldTag::Unknown(value.to_string())),
7646 }
7647 }
7648 }
7649 deserializer.deserialize_identifier(Visitor)
7650 }
7651 }
7652 struct Visitor;
7653 impl<'de> serde::de::Visitor<'de> for Visitor {
7654 type Value = GetLoggingServerRequest;
7655 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7656 formatter.write_str("struct GetLoggingServerRequest")
7657 }
7658 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
7659 where
7660 A: serde::de::MapAccess<'de>,
7661 {
7662 #[allow(unused_imports)]
7663 use serde::de::Error;
7664 use std::option::Option::Some;
7665 let mut fields = std::collections::HashSet::new();
7666 let mut result = Self::Value::new();
7667 while let Some(tag) = map.next_key::<__FieldTag>()? {
7668 #[allow(clippy::match_single_binding)]
7669 match tag {
7670 __FieldTag::__name => {
7671 if !fields.insert(__FieldTag::__name) {
7672 return std::result::Result::Err(A::Error::duplicate_field(
7673 "multiple values for name",
7674 ));
7675 }
7676 result.name = map
7677 .next_value::<std::option::Option<std::string::String>>()?
7678 .unwrap_or_default();
7679 }
7680 __FieldTag::Unknown(key) => {
7681 let value = map.next_value::<serde_json::Value>()?;
7682 result._unknown_fields.insert(key, value);
7683 }
7684 }
7685 }
7686 std::result::Result::Ok(result)
7687 }
7688 }
7689 deserializer.deserialize_any(Visitor)
7690 }
7691}
7692
7693#[doc(hidden)]
7694impl serde::ser::Serialize for GetLoggingServerRequest {
7695 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
7696 where
7697 S: serde::ser::Serializer,
7698 {
7699 use serde::ser::SerializeMap;
7700 #[allow(unused_imports)]
7701 use std::option::Option::Some;
7702 let mut state = serializer.serialize_map(std::option::Option::None)?;
7703 if !self.name.is_empty() {
7704 state.serialize_entry("name", &self.name)?;
7705 }
7706 if !self._unknown_fields.is_empty() {
7707 for (key, value) in self._unknown_fields.iter() {
7708 state.serialize_entry(key, &value)?;
7709 }
7710 }
7711 state.end()
7712 }
7713}
7714
7715#[derive(Clone, Debug, Default, PartialEq)]
7720#[non_exhaustive]
7721pub struct CreateLoggingServerRequest {
7722 pub parent: std::string::String,
7729
7730 pub logging_server: std::option::Option<crate::model::LoggingServer>,
7732
7733 pub logging_server_id: std::string::String,
7745
7746 pub request_id: std::string::String,
7761
7762 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
7763}
7764
7765impl CreateLoggingServerRequest {
7766 pub fn new() -> Self {
7767 std::default::Default::default()
7768 }
7769
7770 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7772 self.parent = v.into();
7773 self
7774 }
7775
7776 pub fn set_logging_server<T>(mut self, v: T) -> Self
7778 where
7779 T: std::convert::Into<crate::model::LoggingServer>,
7780 {
7781 self.logging_server = std::option::Option::Some(v.into());
7782 self
7783 }
7784
7785 pub fn set_or_clear_logging_server<T>(mut self, v: std::option::Option<T>) -> Self
7787 where
7788 T: std::convert::Into<crate::model::LoggingServer>,
7789 {
7790 self.logging_server = v.map(|x| x.into());
7791 self
7792 }
7793
7794 pub fn set_logging_server_id<T: std::convert::Into<std::string::String>>(
7796 mut self,
7797 v: T,
7798 ) -> Self {
7799 self.logging_server_id = v.into();
7800 self
7801 }
7802
7803 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
7805 self.request_id = v.into();
7806 self
7807 }
7808}
7809
7810impl wkt::message::Message for CreateLoggingServerRequest {
7811 fn typename() -> &'static str {
7812 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateLoggingServerRequest"
7813 }
7814}
7815
7816#[doc(hidden)]
7817impl<'de> serde::de::Deserialize<'de> for CreateLoggingServerRequest {
7818 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7819 where
7820 D: serde::Deserializer<'de>,
7821 {
7822 #[allow(non_camel_case_types)]
7823 #[doc(hidden)]
7824 #[derive(PartialEq, Eq, Hash)]
7825 enum __FieldTag {
7826 __parent,
7827 __logging_server,
7828 __logging_server_id,
7829 __request_id,
7830 Unknown(std::string::String),
7831 }
7832 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
7833 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
7834 where
7835 D: serde::Deserializer<'de>,
7836 {
7837 struct Visitor;
7838 impl<'de> serde::de::Visitor<'de> for Visitor {
7839 type Value = __FieldTag;
7840 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7841 formatter.write_str("a field name for CreateLoggingServerRequest")
7842 }
7843 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
7844 where
7845 E: serde::de::Error,
7846 {
7847 use std::result::Result::Ok;
7848 use std::string::ToString;
7849 match value {
7850 "parent" => Ok(__FieldTag::__parent),
7851 "loggingServer" => Ok(__FieldTag::__logging_server),
7852 "logging_server" => Ok(__FieldTag::__logging_server),
7853 "loggingServerId" => Ok(__FieldTag::__logging_server_id),
7854 "logging_server_id" => Ok(__FieldTag::__logging_server_id),
7855 "requestId" => Ok(__FieldTag::__request_id),
7856 "request_id" => Ok(__FieldTag::__request_id),
7857 _ => Ok(__FieldTag::Unknown(value.to_string())),
7858 }
7859 }
7860 }
7861 deserializer.deserialize_identifier(Visitor)
7862 }
7863 }
7864 struct Visitor;
7865 impl<'de> serde::de::Visitor<'de> for Visitor {
7866 type Value = CreateLoggingServerRequest;
7867 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
7868 formatter.write_str("struct CreateLoggingServerRequest")
7869 }
7870 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
7871 where
7872 A: serde::de::MapAccess<'de>,
7873 {
7874 #[allow(unused_imports)]
7875 use serde::de::Error;
7876 use std::option::Option::Some;
7877 let mut fields = std::collections::HashSet::new();
7878 let mut result = Self::Value::new();
7879 while let Some(tag) = map.next_key::<__FieldTag>()? {
7880 #[allow(clippy::match_single_binding)]
7881 match tag {
7882 __FieldTag::__parent => {
7883 if !fields.insert(__FieldTag::__parent) {
7884 return std::result::Result::Err(A::Error::duplicate_field(
7885 "multiple values for parent",
7886 ));
7887 }
7888 result.parent = map
7889 .next_value::<std::option::Option<std::string::String>>()?
7890 .unwrap_or_default();
7891 }
7892 __FieldTag::__logging_server => {
7893 if !fields.insert(__FieldTag::__logging_server) {
7894 return std::result::Result::Err(A::Error::duplicate_field(
7895 "multiple values for logging_server",
7896 ));
7897 }
7898 result.logging_server = map
7899 .next_value::<std::option::Option<crate::model::LoggingServer>>()?;
7900 }
7901 __FieldTag::__logging_server_id => {
7902 if !fields.insert(__FieldTag::__logging_server_id) {
7903 return std::result::Result::Err(A::Error::duplicate_field(
7904 "multiple values for logging_server_id",
7905 ));
7906 }
7907 result.logging_server_id = map
7908 .next_value::<std::option::Option<std::string::String>>()?
7909 .unwrap_or_default();
7910 }
7911 __FieldTag::__request_id => {
7912 if !fields.insert(__FieldTag::__request_id) {
7913 return std::result::Result::Err(A::Error::duplicate_field(
7914 "multiple values for request_id",
7915 ));
7916 }
7917 result.request_id = map
7918 .next_value::<std::option::Option<std::string::String>>()?
7919 .unwrap_or_default();
7920 }
7921 __FieldTag::Unknown(key) => {
7922 let value = map.next_value::<serde_json::Value>()?;
7923 result._unknown_fields.insert(key, value);
7924 }
7925 }
7926 }
7927 std::result::Result::Ok(result)
7928 }
7929 }
7930 deserializer.deserialize_any(Visitor)
7931 }
7932}
7933
7934#[doc(hidden)]
7935impl serde::ser::Serialize for CreateLoggingServerRequest {
7936 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
7937 where
7938 S: serde::ser::Serializer,
7939 {
7940 use serde::ser::SerializeMap;
7941 #[allow(unused_imports)]
7942 use std::option::Option::Some;
7943 let mut state = serializer.serialize_map(std::option::Option::None)?;
7944 if !self.parent.is_empty() {
7945 state.serialize_entry("parent", &self.parent)?;
7946 }
7947 if self.logging_server.is_some() {
7948 state.serialize_entry("loggingServer", &self.logging_server)?;
7949 }
7950 if !self.logging_server_id.is_empty() {
7951 state.serialize_entry("loggingServerId", &self.logging_server_id)?;
7952 }
7953 if !self.request_id.is_empty() {
7954 state.serialize_entry("requestId", &self.request_id)?;
7955 }
7956 if !self._unknown_fields.is_empty() {
7957 for (key, value) in self._unknown_fields.iter() {
7958 state.serialize_entry(key, &value)?;
7959 }
7960 }
7961 state.end()
7962 }
7963}
7964
7965#[derive(Clone, Debug, Default, PartialEq)]
7970#[non_exhaustive]
7971pub struct UpdateLoggingServerRequest {
7972 pub update_mask: std::option::Option<wkt::FieldMask>,
7978
7979 pub logging_server: std::option::Option<crate::model::LoggingServer>,
7981
7982 pub request_id: std::string::String,
7997
7998 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
7999}
8000
8001impl UpdateLoggingServerRequest {
8002 pub fn new() -> Self {
8003 std::default::Default::default()
8004 }
8005
8006 pub fn set_update_mask<T>(mut self, v: T) -> Self
8008 where
8009 T: std::convert::Into<wkt::FieldMask>,
8010 {
8011 self.update_mask = std::option::Option::Some(v.into());
8012 self
8013 }
8014
8015 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
8017 where
8018 T: std::convert::Into<wkt::FieldMask>,
8019 {
8020 self.update_mask = v.map(|x| x.into());
8021 self
8022 }
8023
8024 pub fn set_logging_server<T>(mut self, v: T) -> Self
8026 where
8027 T: std::convert::Into<crate::model::LoggingServer>,
8028 {
8029 self.logging_server = std::option::Option::Some(v.into());
8030 self
8031 }
8032
8033 pub fn set_or_clear_logging_server<T>(mut self, v: std::option::Option<T>) -> Self
8035 where
8036 T: std::convert::Into<crate::model::LoggingServer>,
8037 {
8038 self.logging_server = v.map(|x| x.into());
8039 self
8040 }
8041
8042 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8044 self.request_id = v.into();
8045 self
8046 }
8047}
8048
8049impl wkt::message::Message for UpdateLoggingServerRequest {
8050 fn typename() -> &'static str {
8051 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateLoggingServerRequest"
8052 }
8053}
8054
8055#[doc(hidden)]
8056impl<'de> serde::de::Deserialize<'de> for UpdateLoggingServerRequest {
8057 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8058 where
8059 D: serde::Deserializer<'de>,
8060 {
8061 #[allow(non_camel_case_types)]
8062 #[doc(hidden)]
8063 #[derive(PartialEq, Eq, Hash)]
8064 enum __FieldTag {
8065 __update_mask,
8066 __logging_server,
8067 __request_id,
8068 Unknown(std::string::String),
8069 }
8070 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
8071 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8072 where
8073 D: serde::Deserializer<'de>,
8074 {
8075 struct Visitor;
8076 impl<'de> serde::de::Visitor<'de> for Visitor {
8077 type Value = __FieldTag;
8078 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8079 formatter.write_str("a field name for UpdateLoggingServerRequest")
8080 }
8081 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
8082 where
8083 E: serde::de::Error,
8084 {
8085 use std::result::Result::Ok;
8086 use std::string::ToString;
8087 match value {
8088 "updateMask" => Ok(__FieldTag::__update_mask),
8089 "update_mask" => Ok(__FieldTag::__update_mask),
8090 "loggingServer" => Ok(__FieldTag::__logging_server),
8091 "logging_server" => Ok(__FieldTag::__logging_server),
8092 "requestId" => Ok(__FieldTag::__request_id),
8093 "request_id" => Ok(__FieldTag::__request_id),
8094 _ => Ok(__FieldTag::Unknown(value.to_string())),
8095 }
8096 }
8097 }
8098 deserializer.deserialize_identifier(Visitor)
8099 }
8100 }
8101 struct Visitor;
8102 impl<'de> serde::de::Visitor<'de> for Visitor {
8103 type Value = UpdateLoggingServerRequest;
8104 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8105 formatter.write_str("struct UpdateLoggingServerRequest")
8106 }
8107 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
8108 where
8109 A: serde::de::MapAccess<'de>,
8110 {
8111 #[allow(unused_imports)]
8112 use serde::de::Error;
8113 use std::option::Option::Some;
8114 let mut fields = std::collections::HashSet::new();
8115 let mut result = Self::Value::new();
8116 while let Some(tag) = map.next_key::<__FieldTag>()? {
8117 #[allow(clippy::match_single_binding)]
8118 match tag {
8119 __FieldTag::__update_mask => {
8120 if !fields.insert(__FieldTag::__update_mask) {
8121 return std::result::Result::Err(A::Error::duplicate_field(
8122 "multiple values for update_mask",
8123 ));
8124 }
8125 result.update_mask =
8126 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
8127 }
8128 __FieldTag::__logging_server => {
8129 if !fields.insert(__FieldTag::__logging_server) {
8130 return std::result::Result::Err(A::Error::duplicate_field(
8131 "multiple values for logging_server",
8132 ));
8133 }
8134 result.logging_server = map
8135 .next_value::<std::option::Option<crate::model::LoggingServer>>()?;
8136 }
8137 __FieldTag::__request_id => {
8138 if !fields.insert(__FieldTag::__request_id) {
8139 return std::result::Result::Err(A::Error::duplicate_field(
8140 "multiple values for request_id",
8141 ));
8142 }
8143 result.request_id = map
8144 .next_value::<std::option::Option<std::string::String>>()?
8145 .unwrap_or_default();
8146 }
8147 __FieldTag::Unknown(key) => {
8148 let value = map.next_value::<serde_json::Value>()?;
8149 result._unknown_fields.insert(key, value);
8150 }
8151 }
8152 }
8153 std::result::Result::Ok(result)
8154 }
8155 }
8156 deserializer.deserialize_any(Visitor)
8157 }
8158}
8159
8160#[doc(hidden)]
8161impl serde::ser::Serialize for UpdateLoggingServerRequest {
8162 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
8163 where
8164 S: serde::ser::Serializer,
8165 {
8166 use serde::ser::SerializeMap;
8167 #[allow(unused_imports)]
8168 use std::option::Option::Some;
8169 let mut state = serializer.serialize_map(std::option::Option::None)?;
8170 if self.update_mask.is_some() {
8171 state.serialize_entry("updateMask", &self.update_mask)?;
8172 }
8173 if self.logging_server.is_some() {
8174 state.serialize_entry("loggingServer", &self.logging_server)?;
8175 }
8176 if !self.request_id.is_empty() {
8177 state.serialize_entry("requestId", &self.request_id)?;
8178 }
8179 if !self._unknown_fields.is_empty() {
8180 for (key, value) in self._unknown_fields.iter() {
8181 state.serialize_entry(key, &value)?;
8182 }
8183 }
8184 state.end()
8185 }
8186}
8187
8188#[derive(Clone, Debug, Default, PartialEq)]
8193#[non_exhaustive]
8194pub struct DeleteLoggingServerRequest {
8195 pub name: std::string::String,
8201
8202 pub request_id: std::string::String,
8217
8218 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
8219}
8220
8221impl DeleteLoggingServerRequest {
8222 pub fn new() -> Self {
8223 std::default::Default::default()
8224 }
8225
8226 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8228 self.name = v.into();
8229 self
8230 }
8231
8232 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8234 self.request_id = v.into();
8235 self
8236 }
8237}
8238
8239impl wkt::message::Message for DeleteLoggingServerRequest {
8240 fn typename() -> &'static str {
8241 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteLoggingServerRequest"
8242 }
8243}
8244
8245#[doc(hidden)]
8246impl<'de> serde::de::Deserialize<'de> for DeleteLoggingServerRequest {
8247 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8248 where
8249 D: serde::Deserializer<'de>,
8250 {
8251 #[allow(non_camel_case_types)]
8252 #[doc(hidden)]
8253 #[derive(PartialEq, Eq, Hash)]
8254 enum __FieldTag {
8255 __name,
8256 __request_id,
8257 Unknown(std::string::String),
8258 }
8259 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
8260 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8261 where
8262 D: serde::Deserializer<'de>,
8263 {
8264 struct Visitor;
8265 impl<'de> serde::de::Visitor<'de> for Visitor {
8266 type Value = __FieldTag;
8267 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8268 formatter.write_str("a field name for DeleteLoggingServerRequest")
8269 }
8270 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
8271 where
8272 E: serde::de::Error,
8273 {
8274 use std::result::Result::Ok;
8275 use std::string::ToString;
8276 match value {
8277 "name" => Ok(__FieldTag::__name),
8278 "requestId" => Ok(__FieldTag::__request_id),
8279 "request_id" => Ok(__FieldTag::__request_id),
8280 _ => Ok(__FieldTag::Unknown(value.to_string())),
8281 }
8282 }
8283 }
8284 deserializer.deserialize_identifier(Visitor)
8285 }
8286 }
8287 struct Visitor;
8288 impl<'de> serde::de::Visitor<'de> for Visitor {
8289 type Value = DeleteLoggingServerRequest;
8290 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8291 formatter.write_str("struct DeleteLoggingServerRequest")
8292 }
8293 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
8294 where
8295 A: serde::de::MapAccess<'de>,
8296 {
8297 #[allow(unused_imports)]
8298 use serde::de::Error;
8299 use std::option::Option::Some;
8300 let mut fields = std::collections::HashSet::new();
8301 let mut result = Self::Value::new();
8302 while let Some(tag) = map.next_key::<__FieldTag>()? {
8303 #[allow(clippy::match_single_binding)]
8304 match tag {
8305 __FieldTag::__name => {
8306 if !fields.insert(__FieldTag::__name) {
8307 return std::result::Result::Err(A::Error::duplicate_field(
8308 "multiple values for name",
8309 ));
8310 }
8311 result.name = map
8312 .next_value::<std::option::Option<std::string::String>>()?
8313 .unwrap_or_default();
8314 }
8315 __FieldTag::__request_id => {
8316 if !fields.insert(__FieldTag::__request_id) {
8317 return std::result::Result::Err(A::Error::duplicate_field(
8318 "multiple values for request_id",
8319 ));
8320 }
8321 result.request_id = map
8322 .next_value::<std::option::Option<std::string::String>>()?
8323 .unwrap_or_default();
8324 }
8325 __FieldTag::Unknown(key) => {
8326 let value = map.next_value::<serde_json::Value>()?;
8327 result._unknown_fields.insert(key, value);
8328 }
8329 }
8330 }
8331 std::result::Result::Ok(result)
8332 }
8333 }
8334 deserializer.deserialize_any(Visitor)
8335 }
8336}
8337
8338#[doc(hidden)]
8339impl serde::ser::Serialize for DeleteLoggingServerRequest {
8340 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
8341 where
8342 S: serde::ser::Serializer,
8343 {
8344 use serde::ser::SerializeMap;
8345 #[allow(unused_imports)]
8346 use std::option::Option::Some;
8347 let mut state = serializer.serialize_map(std::option::Option::None)?;
8348 if !self.name.is_empty() {
8349 state.serialize_entry("name", &self.name)?;
8350 }
8351 if !self.request_id.is_empty() {
8352 state.serialize_entry("requestId", &self.request_id)?;
8353 }
8354 if !self._unknown_fields.is_empty() {
8355 for (key, value) in self._unknown_fields.iter() {
8356 state.serialize_entry(key, &value)?;
8357 }
8358 }
8359 state.end()
8360 }
8361}
8362
8363#[derive(Clone, Debug, Default, PartialEq)]
8365#[non_exhaustive]
8366pub struct OperationMetadata {
8367 pub create_time: std::option::Option<wkt::Timestamp>,
8369
8370 pub end_time: std::option::Option<wkt::Timestamp>,
8372
8373 pub target: std::string::String,
8375
8376 pub verb: std::string::String,
8378
8379 pub status_message: std::string::String,
8381
8382 pub requested_cancellation: bool,
8391
8392 pub api_version: std::string::String,
8394
8395 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
8396}
8397
8398impl OperationMetadata {
8399 pub fn new() -> Self {
8400 std::default::Default::default()
8401 }
8402
8403 pub fn set_create_time<T>(mut self, v: T) -> Self
8405 where
8406 T: std::convert::Into<wkt::Timestamp>,
8407 {
8408 self.create_time = std::option::Option::Some(v.into());
8409 self
8410 }
8411
8412 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
8414 where
8415 T: std::convert::Into<wkt::Timestamp>,
8416 {
8417 self.create_time = v.map(|x| x.into());
8418 self
8419 }
8420
8421 pub fn set_end_time<T>(mut self, v: T) -> Self
8423 where
8424 T: std::convert::Into<wkt::Timestamp>,
8425 {
8426 self.end_time = std::option::Option::Some(v.into());
8427 self
8428 }
8429
8430 pub fn set_or_clear_end_time<T>(mut self, v: std::option::Option<T>) -> Self
8432 where
8433 T: std::convert::Into<wkt::Timestamp>,
8434 {
8435 self.end_time = v.map(|x| x.into());
8436 self
8437 }
8438
8439 pub fn set_target<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8441 self.target = v.into();
8442 self
8443 }
8444
8445 pub fn set_verb<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8447 self.verb = v.into();
8448 self
8449 }
8450
8451 pub fn set_status_message<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8453 self.status_message = v.into();
8454 self
8455 }
8456
8457 pub fn set_requested_cancellation<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
8459 self.requested_cancellation = v.into();
8460 self
8461 }
8462
8463 pub fn set_api_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8465 self.api_version = v.into();
8466 self
8467 }
8468}
8469
8470impl wkt::message::Message for OperationMetadata {
8471 fn typename() -> &'static str {
8472 "type.googleapis.com/google.cloud.vmwareengine.v1.OperationMetadata"
8473 }
8474}
8475
8476#[doc(hidden)]
8477impl<'de> serde::de::Deserialize<'de> for OperationMetadata {
8478 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8479 where
8480 D: serde::Deserializer<'de>,
8481 {
8482 #[allow(non_camel_case_types)]
8483 #[doc(hidden)]
8484 #[derive(PartialEq, Eq, Hash)]
8485 enum __FieldTag {
8486 __create_time,
8487 __end_time,
8488 __target,
8489 __verb,
8490 __status_message,
8491 __requested_cancellation,
8492 __api_version,
8493 Unknown(std::string::String),
8494 }
8495 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
8496 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8497 where
8498 D: serde::Deserializer<'de>,
8499 {
8500 struct Visitor;
8501 impl<'de> serde::de::Visitor<'de> for Visitor {
8502 type Value = __FieldTag;
8503 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8504 formatter.write_str("a field name for OperationMetadata")
8505 }
8506 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
8507 where
8508 E: serde::de::Error,
8509 {
8510 use std::result::Result::Ok;
8511 use std::string::ToString;
8512 match value {
8513 "createTime" => Ok(__FieldTag::__create_time),
8514 "create_time" => Ok(__FieldTag::__create_time),
8515 "endTime" => Ok(__FieldTag::__end_time),
8516 "end_time" => Ok(__FieldTag::__end_time),
8517 "target" => Ok(__FieldTag::__target),
8518 "verb" => Ok(__FieldTag::__verb),
8519 "statusMessage" => Ok(__FieldTag::__status_message),
8520 "status_message" => Ok(__FieldTag::__status_message),
8521 "requestedCancellation" => Ok(__FieldTag::__requested_cancellation),
8522 "requested_cancellation" => Ok(__FieldTag::__requested_cancellation),
8523 "apiVersion" => Ok(__FieldTag::__api_version),
8524 "api_version" => Ok(__FieldTag::__api_version),
8525 _ => Ok(__FieldTag::Unknown(value.to_string())),
8526 }
8527 }
8528 }
8529 deserializer.deserialize_identifier(Visitor)
8530 }
8531 }
8532 struct Visitor;
8533 impl<'de> serde::de::Visitor<'de> for Visitor {
8534 type Value = OperationMetadata;
8535 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8536 formatter.write_str("struct OperationMetadata")
8537 }
8538 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
8539 where
8540 A: serde::de::MapAccess<'de>,
8541 {
8542 #[allow(unused_imports)]
8543 use serde::de::Error;
8544 use std::option::Option::Some;
8545 let mut fields = std::collections::HashSet::new();
8546 let mut result = Self::Value::new();
8547 while let Some(tag) = map.next_key::<__FieldTag>()? {
8548 #[allow(clippy::match_single_binding)]
8549 match tag {
8550 __FieldTag::__create_time => {
8551 if !fields.insert(__FieldTag::__create_time) {
8552 return std::result::Result::Err(A::Error::duplicate_field(
8553 "multiple values for create_time",
8554 ));
8555 }
8556 result.create_time =
8557 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
8558 }
8559 __FieldTag::__end_time => {
8560 if !fields.insert(__FieldTag::__end_time) {
8561 return std::result::Result::Err(A::Error::duplicate_field(
8562 "multiple values for end_time",
8563 ));
8564 }
8565 result.end_time =
8566 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
8567 }
8568 __FieldTag::__target => {
8569 if !fields.insert(__FieldTag::__target) {
8570 return std::result::Result::Err(A::Error::duplicate_field(
8571 "multiple values for target",
8572 ));
8573 }
8574 result.target = map
8575 .next_value::<std::option::Option<std::string::String>>()?
8576 .unwrap_or_default();
8577 }
8578 __FieldTag::__verb => {
8579 if !fields.insert(__FieldTag::__verb) {
8580 return std::result::Result::Err(A::Error::duplicate_field(
8581 "multiple values for verb",
8582 ));
8583 }
8584 result.verb = map
8585 .next_value::<std::option::Option<std::string::String>>()?
8586 .unwrap_or_default();
8587 }
8588 __FieldTag::__status_message => {
8589 if !fields.insert(__FieldTag::__status_message) {
8590 return std::result::Result::Err(A::Error::duplicate_field(
8591 "multiple values for status_message",
8592 ));
8593 }
8594 result.status_message = map
8595 .next_value::<std::option::Option<std::string::String>>()?
8596 .unwrap_or_default();
8597 }
8598 __FieldTag::__requested_cancellation => {
8599 if !fields.insert(__FieldTag::__requested_cancellation) {
8600 return std::result::Result::Err(A::Error::duplicate_field(
8601 "multiple values for requested_cancellation",
8602 ));
8603 }
8604 result.requested_cancellation = map
8605 .next_value::<std::option::Option<bool>>()?
8606 .unwrap_or_default();
8607 }
8608 __FieldTag::__api_version => {
8609 if !fields.insert(__FieldTag::__api_version) {
8610 return std::result::Result::Err(A::Error::duplicate_field(
8611 "multiple values for api_version",
8612 ));
8613 }
8614 result.api_version = map
8615 .next_value::<std::option::Option<std::string::String>>()?
8616 .unwrap_or_default();
8617 }
8618 __FieldTag::Unknown(key) => {
8619 let value = map.next_value::<serde_json::Value>()?;
8620 result._unknown_fields.insert(key, value);
8621 }
8622 }
8623 }
8624 std::result::Result::Ok(result)
8625 }
8626 }
8627 deserializer.deserialize_any(Visitor)
8628 }
8629}
8630
8631#[doc(hidden)]
8632impl serde::ser::Serialize for OperationMetadata {
8633 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
8634 where
8635 S: serde::ser::Serializer,
8636 {
8637 use serde::ser::SerializeMap;
8638 #[allow(unused_imports)]
8639 use std::option::Option::Some;
8640 let mut state = serializer.serialize_map(std::option::Option::None)?;
8641 if self.create_time.is_some() {
8642 state.serialize_entry("createTime", &self.create_time)?;
8643 }
8644 if self.end_time.is_some() {
8645 state.serialize_entry("endTime", &self.end_time)?;
8646 }
8647 if !self.target.is_empty() {
8648 state.serialize_entry("target", &self.target)?;
8649 }
8650 if !self.verb.is_empty() {
8651 state.serialize_entry("verb", &self.verb)?;
8652 }
8653 if !self.status_message.is_empty() {
8654 state.serialize_entry("statusMessage", &self.status_message)?;
8655 }
8656 if !wkt::internal::is_default(&self.requested_cancellation) {
8657 state.serialize_entry("requestedCancellation", &self.requested_cancellation)?;
8658 }
8659 if !self.api_version.is_empty() {
8660 state.serialize_entry("apiVersion", &self.api_version)?;
8661 }
8662 if !self._unknown_fields.is_empty() {
8663 for (key, value) in self._unknown_fields.iter() {
8664 state.serialize_entry(key, &value)?;
8665 }
8666 }
8667 state.end()
8668 }
8669}
8670
8671#[derive(Clone, Debug, Default, PartialEq)]
8676#[non_exhaustive]
8677pub struct ListNodeTypesRequest {
8678 pub parent: std::string::String,
8684
8685 pub page_size: i32,
8690
8691 pub page_token: std::string::String,
8697
8698 pub filter: std::string::String,
8726
8727 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
8728}
8729
8730impl ListNodeTypesRequest {
8731 pub fn new() -> Self {
8732 std::default::Default::default()
8733 }
8734
8735 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8737 self.parent = v.into();
8738 self
8739 }
8740
8741 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
8743 self.page_size = v.into();
8744 self
8745 }
8746
8747 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8749 self.page_token = v.into();
8750 self
8751 }
8752
8753 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8755 self.filter = v.into();
8756 self
8757 }
8758}
8759
8760impl wkt::message::Message for ListNodeTypesRequest {
8761 fn typename() -> &'static str {
8762 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNodeTypesRequest"
8763 }
8764}
8765
8766#[doc(hidden)]
8767impl<'de> serde::de::Deserialize<'de> for ListNodeTypesRequest {
8768 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8769 where
8770 D: serde::Deserializer<'de>,
8771 {
8772 #[allow(non_camel_case_types)]
8773 #[doc(hidden)]
8774 #[derive(PartialEq, Eq, Hash)]
8775 enum __FieldTag {
8776 __parent,
8777 __page_size,
8778 __page_token,
8779 __filter,
8780 Unknown(std::string::String),
8781 }
8782 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
8783 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
8784 where
8785 D: serde::Deserializer<'de>,
8786 {
8787 struct Visitor;
8788 impl<'de> serde::de::Visitor<'de> for Visitor {
8789 type Value = __FieldTag;
8790 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8791 formatter.write_str("a field name for ListNodeTypesRequest")
8792 }
8793 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
8794 where
8795 E: serde::de::Error,
8796 {
8797 use std::result::Result::Ok;
8798 use std::string::ToString;
8799 match value {
8800 "parent" => Ok(__FieldTag::__parent),
8801 "pageSize" => Ok(__FieldTag::__page_size),
8802 "page_size" => Ok(__FieldTag::__page_size),
8803 "pageToken" => Ok(__FieldTag::__page_token),
8804 "page_token" => Ok(__FieldTag::__page_token),
8805 "filter" => Ok(__FieldTag::__filter),
8806 _ => Ok(__FieldTag::Unknown(value.to_string())),
8807 }
8808 }
8809 }
8810 deserializer.deserialize_identifier(Visitor)
8811 }
8812 }
8813 struct Visitor;
8814 impl<'de> serde::de::Visitor<'de> for Visitor {
8815 type Value = ListNodeTypesRequest;
8816 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
8817 formatter.write_str("struct ListNodeTypesRequest")
8818 }
8819 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
8820 where
8821 A: serde::de::MapAccess<'de>,
8822 {
8823 #[allow(unused_imports)]
8824 use serde::de::Error;
8825 use std::option::Option::Some;
8826 let mut fields = std::collections::HashSet::new();
8827 let mut result = Self::Value::new();
8828 while let Some(tag) = map.next_key::<__FieldTag>()? {
8829 #[allow(clippy::match_single_binding)]
8830 match tag {
8831 __FieldTag::__parent => {
8832 if !fields.insert(__FieldTag::__parent) {
8833 return std::result::Result::Err(A::Error::duplicate_field(
8834 "multiple values for parent",
8835 ));
8836 }
8837 result.parent = map
8838 .next_value::<std::option::Option<std::string::String>>()?
8839 .unwrap_or_default();
8840 }
8841 __FieldTag::__page_size => {
8842 if !fields.insert(__FieldTag::__page_size) {
8843 return std::result::Result::Err(A::Error::duplicate_field(
8844 "multiple values for page_size",
8845 ));
8846 }
8847 struct __With(std::option::Option<i32>);
8848 impl<'de> serde::de::Deserialize<'de> for __With {
8849 fn deserialize<D>(
8850 deserializer: D,
8851 ) -> std::result::Result<Self, D::Error>
8852 where
8853 D: serde::de::Deserializer<'de>,
8854 {
8855 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
8856 }
8857 }
8858 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
8859 }
8860 __FieldTag::__page_token => {
8861 if !fields.insert(__FieldTag::__page_token) {
8862 return std::result::Result::Err(A::Error::duplicate_field(
8863 "multiple values for page_token",
8864 ));
8865 }
8866 result.page_token = map
8867 .next_value::<std::option::Option<std::string::String>>()?
8868 .unwrap_or_default();
8869 }
8870 __FieldTag::__filter => {
8871 if !fields.insert(__FieldTag::__filter) {
8872 return std::result::Result::Err(A::Error::duplicate_field(
8873 "multiple values for filter",
8874 ));
8875 }
8876 result.filter = map
8877 .next_value::<std::option::Option<std::string::String>>()?
8878 .unwrap_or_default();
8879 }
8880 __FieldTag::Unknown(key) => {
8881 let value = map.next_value::<serde_json::Value>()?;
8882 result._unknown_fields.insert(key, value);
8883 }
8884 }
8885 }
8886 std::result::Result::Ok(result)
8887 }
8888 }
8889 deserializer.deserialize_any(Visitor)
8890 }
8891}
8892
8893#[doc(hidden)]
8894impl serde::ser::Serialize for ListNodeTypesRequest {
8895 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
8896 where
8897 S: serde::ser::Serializer,
8898 {
8899 use serde::ser::SerializeMap;
8900 #[allow(unused_imports)]
8901 use std::option::Option::Some;
8902 let mut state = serializer.serialize_map(std::option::Option::None)?;
8903 if !self.parent.is_empty() {
8904 state.serialize_entry("parent", &self.parent)?;
8905 }
8906 if !wkt::internal::is_default(&self.page_size) {
8907 struct __With<'a>(&'a i32);
8908 impl<'a> serde::ser::Serialize for __With<'a> {
8909 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
8910 where
8911 S: serde::ser::Serializer,
8912 {
8913 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
8914 }
8915 }
8916 state.serialize_entry("pageSize", &__With(&self.page_size))?;
8917 }
8918 if !self.page_token.is_empty() {
8919 state.serialize_entry("pageToken", &self.page_token)?;
8920 }
8921 if !self.filter.is_empty() {
8922 state.serialize_entry("filter", &self.filter)?;
8923 }
8924 if !self._unknown_fields.is_empty() {
8925 for (key, value) in self._unknown_fields.iter() {
8926 state.serialize_entry(key, &value)?;
8927 }
8928 }
8929 state.end()
8930 }
8931}
8932
8933#[derive(Clone, Debug, Default, PartialEq)]
8938#[non_exhaustive]
8939pub struct ListNodeTypesResponse {
8940 pub node_types: std::vec::Vec<crate::model::NodeType>,
8942
8943 pub next_page_token: std::string::String,
8946
8947 pub unreachable: std::vec::Vec<std::string::String>,
8950
8951 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
8952}
8953
8954impl ListNodeTypesResponse {
8955 pub fn new() -> Self {
8956 std::default::Default::default()
8957 }
8958
8959 pub fn set_node_types<T, V>(mut self, v: T) -> Self
8961 where
8962 T: std::iter::IntoIterator<Item = V>,
8963 V: std::convert::Into<crate::model::NodeType>,
8964 {
8965 use std::iter::Iterator;
8966 self.node_types = v.into_iter().map(|i| i.into()).collect();
8967 self
8968 }
8969
8970 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
8972 self.next_page_token = v.into();
8973 self
8974 }
8975
8976 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
8978 where
8979 T: std::iter::IntoIterator<Item = V>,
8980 V: std::convert::Into<std::string::String>,
8981 {
8982 use std::iter::Iterator;
8983 self.unreachable = v.into_iter().map(|i| i.into()).collect();
8984 self
8985 }
8986}
8987
8988impl wkt::message::Message for ListNodeTypesResponse {
8989 fn typename() -> &'static str {
8990 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNodeTypesResponse"
8991 }
8992}
8993
8994#[doc(hidden)]
8995impl gax::paginator::internal::PageableResponse for ListNodeTypesResponse {
8996 type PageItem = crate::model::NodeType;
8997
8998 fn items(self) -> std::vec::Vec<Self::PageItem> {
8999 self.node_types
9000 }
9001
9002 fn next_page_token(&self) -> std::string::String {
9003 use std::clone::Clone;
9004 self.next_page_token.clone()
9005 }
9006}
9007
9008#[doc(hidden)]
9009impl<'de> serde::de::Deserialize<'de> for ListNodeTypesResponse {
9010 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9011 where
9012 D: serde::Deserializer<'de>,
9013 {
9014 #[allow(non_camel_case_types)]
9015 #[doc(hidden)]
9016 #[derive(PartialEq, Eq, Hash)]
9017 enum __FieldTag {
9018 __node_types,
9019 __next_page_token,
9020 __unreachable,
9021 Unknown(std::string::String),
9022 }
9023 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
9024 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9025 where
9026 D: serde::Deserializer<'de>,
9027 {
9028 struct Visitor;
9029 impl<'de> serde::de::Visitor<'de> for Visitor {
9030 type Value = __FieldTag;
9031 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9032 formatter.write_str("a field name for ListNodeTypesResponse")
9033 }
9034 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
9035 where
9036 E: serde::de::Error,
9037 {
9038 use std::result::Result::Ok;
9039 use std::string::ToString;
9040 match value {
9041 "nodeTypes" => Ok(__FieldTag::__node_types),
9042 "node_types" => Ok(__FieldTag::__node_types),
9043 "nextPageToken" => Ok(__FieldTag::__next_page_token),
9044 "next_page_token" => Ok(__FieldTag::__next_page_token),
9045 "unreachable" => Ok(__FieldTag::__unreachable),
9046 _ => Ok(__FieldTag::Unknown(value.to_string())),
9047 }
9048 }
9049 }
9050 deserializer.deserialize_identifier(Visitor)
9051 }
9052 }
9053 struct Visitor;
9054 impl<'de> serde::de::Visitor<'de> for Visitor {
9055 type Value = ListNodeTypesResponse;
9056 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9057 formatter.write_str("struct ListNodeTypesResponse")
9058 }
9059 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
9060 where
9061 A: serde::de::MapAccess<'de>,
9062 {
9063 #[allow(unused_imports)]
9064 use serde::de::Error;
9065 use std::option::Option::Some;
9066 let mut fields = std::collections::HashSet::new();
9067 let mut result = Self::Value::new();
9068 while let Some(tag) = map.next_key::<__FieldTag>()? {
9069 #[allow(clippy::match_single_binding)]
9070 match tag {
9071 __FieldTag::__node_types => {
9072 if !fields.insert(__FieldTag::__node_types) {
9073 return std::result::Result::Err(A::Error::duplicate_field(
9074 "multiple values for node_types",
9075 ));
9076 }
9077 result.node_types = map.next_value::<std::option::Option<std::vec::Vec<crate::model::NodeType>>>()?.unwrap_or_default();
9078 }
9079 __FieldTag::__next_page_token => {
9080 if !fields.insert(__FieldTag::__next_page_token) {
9081 return std::result::Result::Err(A::Error::duplicate_field(
9082 "multiple values for next_page_token",
9083 ));
9084 }
9085 result.next_page_token = map
9086 .next_value::<std::option::Option<std::string::String>>()?
9087 .unwrap_or_default();
9088 }
9089 __FieldTag::__unreachable => {
9090 if !fields.insert(__FieldTag::__unreachable) {
9091 return std::result::Result::Err(A::Error::duplicate_field(
9092 "multiple values for unreachable",
9093 ));
9094 }
9095 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
9096 }
9097 __FieldTag::Unknown(key) => {
9098 let value = map.next_value::<serde_json::Value>()?;
9099 result._unknown_fields.insert(key, value);
9100 }
9101 }
9102 }
9103 std::result::Result::Ok(result)
9104 }
9105 }
9106 deserializer.deserialize_any(Visitor)
9107 }
9108}
9109
9110#[doc(hidden)]
9111impl serde::ser::Serialize for ListNodeTypesResponse {
9112 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
9113 where
9114 S: serde::ser::Serializer,
9115 {
9116 use serde::ser::SerializeMap;
9117 #[allow(unused_imports)]
9118 use std::option::Option::Some;
9119 let mut state = serializer.serialize_map(std::option::Option::None)?;
9120 if !self.node_types.is_empty() {
9121 state.serialize_entry("nodeTypes", &self.node_types)?;
9122 }
9123 if !self.next_page_token.is_empty() {
9124 state.serialize_entry("nextPageToken", &self.next_page_token)?;
9125 }
9126 if !self.unreachable.is_empty() {
9127 state.serialize_entry("unreachable", &self.unreachable)?;
9128 }
9129 if !self._unknown_fields.is_empty() {
9130 for (key, value) in self._unknown_fields.iter() {
9131 state.serialize_entry(key, &value)?;
9132 }
9133 }
9134 state.end()
9135 }
9136}
9137
9138#[derive(Clone, Debug, Default, PartialEq)]
9143#[non_exhaustive]
9144pub struct GetNodeTypeRequest {
9145 pub name: std::string::String,
9151
9152 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
9153}
9154
9155impl GetNodeTypeRequest {
9156 pub fn new() -> Self {
9157 std::default::Default::default()
9158 }
9159
9160 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9162 self.name = v.into();
9163 self
9164 }
9165}
9166
9167impl wkt::message::Message for GetNodeTypeRequest {
9168 fn typename() -> &'static str {
9169 "type.googleapis.com/google.cloud.vmwareengine.v1.GetNodeTypeRequest"
9170 }
9171}
9172
9173#[doc(hidden)]
9174impl<'de> serde::de::Deserialize<'de> for GetNodeTypeRequest {
9175 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9176 where
9177 D: serde::Deserializer<'de>,
9178 {
9179 #[allow(non_camel_case_types)]
9180 #[doc(hidden)]
9181 #[derive(PartialEq, Eq, Hash)]
9182 enum __FieldTag {
9183 __name,
9184 Unknown(std::string::String),
9185 }
9186 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
9187 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9188 where
9189 D: serde::Deserializer<'de>,
9190 {
9191 struct Visitor;
9192 impl<'de> serde::de::Visitor<'de> for Visitor {
9193 type Value = __FieldTag;
9194 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9195 formatter.write_str("a field name for GetNodeTypeRequest")
9196 }
9197 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
9198 where
9199 E: serde::de::Error,
9200 {
9201 use std::result::Result::Ok;
9202 use std::string::ToString;
9203 match value {
9204 "name" => Ok(__FieldTag::__name),
9205 _ => Ok(__FieldTag::Unknown(value.to_string())),
9206 }
9207 }
9208 }
9209 deserializer.deserialize_identifier(Visitor)
9210 }
9211 }
9212 struct Visitor;
9213 impl<'de> serde::de::Visitor<'de> for Visitor {
9214 type Value = GetNodeTypeRequest;
9215 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9216 formatter.write_str("struct GetNodeTypeRequest")
9217 }
9218 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
9219 where
9220 A: serde::de::MapAccess<'de>,
9221 {
9222 #[allow(unused_imports)]
9223 use serde::de::Error;
9224 use std::option::Option::Some;
9225 let mut fields = std::collections::HashSet::new();
9226 let mut result = Self::Value::new();
9227 while let Some(tag) = map.next_key::<__FieldTag>()? {
9228 #[allow(clippy::match_single_binding)]
9229 match tag {
9230 __FieldTag::__name => {
9231 if !fields.insert(__FieldTag::__name) {
9232 return std::result::Result::Err(A::Error::duplicate_field(
9233 "multiple values for name",
9234 ));
9235 }
9236 result.name = map
9237 .next_value::<std::option::Option<std::string::String>>()?
9238 .unwrap_or_default();
9239 }
9240 __FieldTag::Unknown(key) => {
9241 let value = map.next_value::<serde_json::Value>()?;
9242 result._unknown_fields.insert(key, value);
9243 }
9244 }
9245 }
9246 std::result::Result::Ok(result)
9247 }
9248 }
9249 deserializer.deserialize_any(Visitor)
9250 }
9251}
9252
9253#[doc(hidden)]
9254impl serde::ser::Serialize for GetNodeTypeRequest {
9255 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
9256 where
9257 S: serde::ser::Serializer,
9258 {
9259 use serde::ser::SerializeMap;
9260 #[allow(unused_imports)]
9261 use std::option::Option::Some;
9262 let mut state = serializer.serialize_map(std::option::Option::None)?;
9263 if !self.name.is_empty() {
9264 state.serialize_entry("name", &self.name)?;
9265 }
9266 if !self._unknown_fields.is_empty() {
9267 for (key, value) in self._unknown_fields.iter() {
9268 state.serialize_entry(key, &value)?;
9269 }
9270 }
9271 state.end()
9272 }
9273}
9274
9275#[derive(Clone, Debug, Default, PartialEq)]
9280#[non_exhaustive]
9281pub struct ShowNsxCredentialsRequest {
9282 pub private_cloud: std::string::String,
9289
9290 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
9291}
9292
9293impl ShowNsxCredentialsRequest {
9294 pub fn new() -> Self {
9295 std::default::Default::default()
9296 }
9297
9298 pub fn set_private_cloud<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9300 self.private_cloud = v.into();
9301 self
9302 }
9303}
9304
9305impl wkt::message::Message for ShowNsxCredentialsRequest {
9306 fn typename() -> &'static str {
9307 "type.googleapis.com/google.cloud.vmwareengine.v1.ShowNsxCredentialsRequest"
9308 }
9309}
9310
9311#[doc(hidden)]
9312impl<'de> serde::de::Deserialize<'de> for ShowNsxCredentialsRequest {
9313 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9314 where
9315 D: serde::Deserializer<'de>,
9316 {
9317 #[allow(non_camel_case_types)]
9318 #[doc(hidden)]
9319 #[derive(PartialEq, Eq, Hash)]
9320 enum __FieldTag {
9321 __private_cloud,
9322 Unknown(std::string::String),
9323 }
9324 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
9325 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9326 where
9327 D: serde::Deserializer<'de>,
9328 {
9329 struct Visitor;
9330 impl<'de> serde::de::Visitor<'de> for Visitor {
9331 type Value = __FieldTag;
9332 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9333 formatter.write_str("a field name for ShowNsxCredentialsRequest")
9334 }
9335 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
9336 where
9337 E: serde::de::Error,
9338 {
9339 use std::result::Result::Ok;
9340 use std::string::ToString;
9341 match value {
9342 "privateCloud" => Ok(__FieldTag::__private_cloud),
9343 "private_cloud" => Ok(__FieldTag::__private_cloud),
9344 _ => Ok(__FieldTag::Unknown(value.to_string())),
9345 }
9346 }
9347 }
9348 deserializer.deserialize_identifier(Visitor)
9349 }
9350 }
9351 struct Visitor;
9352 impl<'de> serde::de::Visitor<'de> for Visitor {
9353 type Value = ShowNsxCredentialsRequest;
9354 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9355 formatter.write_str("struct ShowNsxCredentialsRequest")
9356 }
9357 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
9358 where
9359 A: serde::de::MapAccess<'de>,
9360 {
9361 #[allow(unused_imports)]
9362 use serde::de::Error;
9363 use std::option::Option::Some;
9364 let mut fields = std::collections::HashSet::new();
9365 let mut result = Self::Value::new();
9366 while let Some(tag) = map.next_key::<__FieldTag>()? {
9367 #[allow(clippy::match_single_binding)]
9368 match tag {
9369 __FieldTag::__private_cloud => {
9370 if !fields.insert(__FieldTag::__private_cloud) {
9371 return std::result::Result::Err(A::Error::duplicate_field(
9372 "multiple values for private_cloud",
9373 ));
9374 }
9375 result.private_cloud = map
9376 .next_value::<std::option::Option<std::string::String>>()?
9377 .unwrap_or_default();
9378 }
9379 __FieldTag::Unknown(key) => {
9380 let value = map.next_value::<serde_json::Value>()?;
9381 result._unknown_fields.insert(key, value);
9382 }
9383 }
9384 }
9385 std::result::Result::Ok(result)
9386 }
9387 }
9388 deserializer.deserialize_any(Visitor)
9389 }
9390}
9391
9392#[doc(hidden)]
9393impl serde::ser::Serialize for ShowNsxCredentialsRequest {
9394 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
9395 where
9396 S: serde::ser::Serializer,
9397 {
9398 use serde::ser::SerializeMap;
9399 #[allow(unused_imports)]
9400 use std::option::Option::Some;
9401 let mut state = serializer.serialize_map(std::option::Option::None)?;
9402 if !self.private_cloud.is_empty() {
9403 state.serialize_entry("privateCloud", &self.private_cloud)?;
9404 }
9405 if !self._unknown_fields.is_empty() {
9406 for (key, value) in self._unknown_fields.iter() {
9407 state.serialize_entry(key, &value)?;
9408 }
9409 }
9410 state.end()
9411 }
9412}
9413
9414#[derive(Clone, Debug, Default, PartialEq)]
9419#[non_exhaustive]
9420pub struct ShowVcenterCredentialsRequest {
9421 pub private_cloud: std::string::String,
9428
9429 pub username: std::string::String,
9440
9441 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
9442}
9443
9444impl ShowVcenterCredentialsRequest {
9445 pub fn new() -> Self {
9446 std::default::Default::default()
9447 }
9448
9449 pub fn set_private_cloud<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9451 self.private_cloud = v.into();
9452 self
9453 }
9454
9455 pub fn set_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9457 self.username = v.into();
9458 self
9459 }
9460}
9461
9462impl wkt::message::Message for ShowVcenterCredentialsRequest {
9463 fn typename() -> &'static str {
9464 "type.googleapis.com/google.cloud.vmwareengine.v1.ShowVcenterCredentialsRequest"
9465 }
9466}
9467
9468#[doc(hidden)]
9469impl<'de> serde::de::Deserialize<'de> for ShowVcenterCredentialsRequest {
9470 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9471 where
9472 D: serde::Deserializer<'de>,
9473 {
9474 #[allow(non_camel_case_types)]
9475 #[doc(hidden)]
9476 #[derive(PartialEq, Eq, Hash)]
9477 enum __FieldTag {
9478 __private_cloud,
9479 __username,
9480 Unknown(std::string::String),
9481 }
9482 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
9483 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9484 where
9485 D: serde::Deserializer<'de>,
9486 {
9487 struct Visitor;
9488 impl<'de> serde::de::Visitor<'de> for Visitor {
9489 type Value = __FieldTag;
9490 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9491 formatter.write_str("a field name for ShowVcenterCredentialsRequest")
9492 }
9493 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
9494 where
9495 E: serde::de::Error,
9496 {
9497 use std::result::Result::Ok;
9498 use std::string::ToString;
9499 match value {
9500 "privateCloud" => Ok(__FieldTag::__private_cloud),
9501 "private_cloud" => Ok(__FieldTag::__private_cloud),
9502 "username" => Ok(__FieldTag::__username),
9503 _ => Ok(__FieldTag::Unknown(value.to_string())),
9504 }
9505 }
9506 }
9507 deserializer.deserialize_identifier(Visitor)
9508 }
9509 }
9510 struct Visitor;
9511 impl<'de> serde::de::Visitor<'de> for Visitor {
9512 type Value = ShowVcenterCredentialsRequest;
9513 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9514 formatter.write_str("struct ShowVcenterCredentialsRequest")
9515 }
9516 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
9517 where
9518 A: serde::de::MapAccess<'de>,
9519 {
9520 #[allow(unused_imports)]
9521 use serde::de::Error;
9522 use std::option::Option::Some;
9523 let mut fields = std::collections::HashSet::new();
9524 let mut result = Self::Value::new();
9525 while let Some(tag) = map.next_key::<__FieldTag>()? {
9526 #[allow(clippy::match_single_binding)]
9527 match tag {
9528 __FieldTag::__private_cloud => {
9529 if !fields.insert(__FieldTag::__private_cloud) {
9530 return std::result::Result::Err(A::Error::duplicate_field(
9531 "multiple values for private_cloud",
9532 ));
9533 }
9534 result.private_cloud = map
9535 .next_value::<std::option::Option<std::string::String>>()?
9536 .unwrap_or_default();
9537 }
9538 __FieldTag::__username => {
9539 if !fields.insert(__FieldTag::__username) {
9540 return std::result::Result::Err(A::Error::duplicate_field(
9541 "multiple values for username",
9542 ));
9543 }
9544 result.username = map
9545 .next_value::<std::option::Option<std::string::String>>()?
9546 .unwrap_or_default();
9547 }
9548 __FieldTag::Unknown(key) => {
9549 let value = map.next_value::<serde_json::Value>()?;
9550 result._unknown_fields.insert(key, value);
9551 }
9552 }
9553 }
9554 std::result::Result::Ok(result)
9555 }
9556 }
9557 deserializer.deserialize_any(Visitor)
9558 }
9559}
9560
9561#[doc(hidden)]
9562impl serde::ser::Serialize for ShowVcenterCredentialsRequest {
9563 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
9564 where
9565 S: serde::ser::Serializer,
9566 {
9567 use serde::ser::SerializeMap;
9568 #[allow(unused_imports)]
9569 use std::option::Option::Some;
9570 let mut state = serializer.serialize_map(std::option::Option::None)?;
9571 if !self.private_cloud.is_empty() {
9572 state.serialize_entry("privateCloud", &self.private_cloud)?;
9573 }
9574 if !self.username.is_empty() {
9575 state.serialize_entry("username", &self.username)?;
9576 }
9577 if !self._unknown_fields.is_empty() {
9578 for (key, value) in self._unknown_fields.iter() {
9579 state.serialize_entry(key, &value)?;
9580 }
9581 }
9582 state.end()
9583 }
9584}
9585
9586#[derive(Clone, Debug, Default, PartialEq)]
9591#[non_exhaustive]
9592pub struct ResetNsxCredentialsRequest {
9593 pub private_cloud: std::string::String,
9600
9601 pub request_id: std::string::String,
9616
9617 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
9618}
9619
9620impl ResetNsxCredentialsRequest {
9621 pub fn new() -> Self {
9622 std::default::Default::default()
9623 }
9624
9625 pub fn set_private_cloud<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9627 self.private_cloud = v.into();
9628 self
9629 }
9630
9631 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9633 self.request_id = v.into();
9634 self
9635 }
9636}
9637
9638impl wkt::message::Message for ResetNsxCredentialsRequest {
9639 fn typename() -> &'static str {
9640 "type.googleapis.com/google.cloud.vmwareengine.v1.ResetNsxCredentialsRequest"
9641 }
9642}
9643
9644#[doc(hidden)]
9645impl<'de> serde::de::Deserialize<'de> for ResetNsxCredentialsRequest {
9646 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9647 where
9648 D: serde::Deserializer<'de>,
9649 {
9650 #[allow(non_camel_case_types)]
9651 #[doc(hidden)]
9652 #[derive(PartialEq, Eq, Hash)]
9653 enum __FieldTag {
9654 __private_cloud,
9655 __request_id,
9656 Unknown(std::string::String),
9657 }
9658 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
9659 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9660 where
9661 D: serde::Deserializer<'de>,
9662 {
9663 struct Visitor;
9664 impl<'de> serde::de::Visitor<'de> for Visitor {
9665 type Value = __FieldTag;
9666 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9667 formatter.write_str("a field name for ResetNsxCredentialsRequest")
9668 }
9669 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
9670 where
9671 E: serde::de::Error,
9672 {
9673 use std::result::Result::Ok;
9674 use std::string::ToString;
9675 match value {
9676 "privateCloud" => Ok(__FieldTag::__private_cloud),
9677 "private_cloud" => Ok(__FieldTag::__private_cloud),
9678 "requestId" => Ok(__FieldTag::__request_id),
9679 "request_id" => Ok(__FieldTag::__request_id),
9680 _ => Ok(__FieldTag::Unknown(value.to_string())),
9681 }
9682 }
9683 }
9684 deserializer.deserialize_identifier(Visitor)
9685 }
9686 }
9687 struct Visitor;
9688 impl<'de> serde::de::Visitor<'de> for Visitor {
9689 type Value = ResetNsxCredentialsRequest;
9690 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9691 formatter.write_str("struct ResetNsxCredentialsRequest")
9692 }
9693 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
9694 where
9695 A: serde::de::MapAccess<'de>,
9696 {
9697 #[allow(unused_imports)]
9698 use serde::de::Error;
9699 use std::option::Option::Some;
9700 let mut fields = std::collections::HashSet::new();
9701 let mut result = Self::Value::new();
9702 while let Some(tag) = map.next_key::<__FieldTag>()? {
9703 #[allow(clippy::match_single_binding)]
9704 match tag {
9705 __FieldTag::__private_cloud => {
9706 if !fields.insert(__FieldTag::__private_cloud) {
9707 return std::result::Result::Err(A::Error::duplicate_field(
9708 "multiple values for private_cloud",
9709 ));
9710 }
9711 result.private_cloud = map
9712 .next_value::<std::option::Option<std::string::String>>()?
9713 .unwrap_or_default();
9714 }
9715 __FieldTag::__request_id => {
9716 if !fields.insert(__FieldTag::__request_id) {
9717 return std::result::Result::Err(A::Error::duplicate_field(
9718 "multiple values for request_id",
9719 ));
9720 }
9721 result.request_id = map
9722 .next_value::<std::option::Option<std::string::String>>()?
9723 .unwrap_or_default();
9724 }
9725 __FieldTag::Unknown(key) => {
9726 let value = map.next_value::<serde_json::Value>()?;
9727 result._unknown_fields.insert(key, value);
9728 }
9729 }
9730 }
9731 std::result::Result::Ok(result)
9732 }
9733 }
9734 deserializer.deserialize_any(Visitor)
9735 }
9736}
9737
9738#[doc(hidden)]
9739impl serde::ser::Serialize for ResetNsxCredentialsRequest {
9740 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
9741 where
9742 S: serde::ser::Serializer,
9743 {
9744 use serde::ser::SerializeMap;
9745 #[allow(unused_imports)]
9746 use std::option::Option::Some;
9747 let mut state = serializer.serialize_map(std::option::Option::None)?;
9748 if !self.private_cloud.is_empty() {
9749 state.serialize_entry("privateCloud", &self.private_cloud)?;
9750 }
9751 if !self.request_id.is_empty() {
9752 state.serialize_entry("requestId", &self.request_id)?;
9753 }
9754 if !self._unknown_fields.is_empty() {
9755 for (key, value) in self._unknown_fields.iter() {
9756 state.serialize_entry(key, &value)?;
9757 }
9758 }
9759 state.end()
9760 }
9761}
9762
9763#[derive(Clone, Debug, Default, PartialEq)]
9768#[non_exhaustive]
9769pub struct ResetVcenterCredentialsRequest {
9770 pub private_cloud: std::string::String,
9777
9778 pub request_id: std::string::String,
9793
9794 pub username: std::string::String,
9804
9805 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
9806}
9807
9808impl ResetVcenterCredentialsRequest {
9809 pub fn new() -> Self {
9810 std::default::Default::default()
9811 }
9812
9813 pub fn set_private_cloud<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9815 self.private_cloud = v.into();
9816 self
9817 }
9818
9819 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9821 self.request_id = v.into();
9822 self
9823 }
9824
9825 pub fn set_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
9827 self.username = v.into();
9828 self
9829 }
9830}
9831
9832impl wkt::message::Message for ResetVcenterCredentialsRequest {
9833 fn typename() -> &'static str {
9834 "type.googleapis.com/google.cloud.vmwareengine.v1.ResetVcenterCredentialsRequest"
9835 }
9836}
9837
9838#[doc(hidden)]
9839impl<'de> serde::de::Deserialize<'de> for ResetVcenterCredentialsRequest {
9840 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9841 where
9842 D: serde::Deserializer<'de>,
9843 {
9844 #[allow(non_camel_case_types)]
9845 #[doc(hidden)]
9846 #[derive(PartialEq, Eq, Hash)]
9847 enum __FieldTag {
9848 __private_cloud,
9849 __request_id,
9850 __username,
9851 Unknown(std::string::String),
9852 }
9853 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
9854 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
9855 where
9856 D: serde::Deserializer<'de>,
9857 {
9858 struct Visitor;
9859 impl<'de> serde::de::Visitor<'de> for Visitor {
9860 type Value = __FieldTag;
9861 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9862 formatter.write_str("a field name for ResetVcenterCredentialsRequest")
9863 }
9864 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
9865 where
9866 E: serde::de::Error,
9867 {
9868 use std::result::Result::Ok;
9869 use std::string::ToString;
9870 match value {
9871 "privateCloud" => Ok(__FieldTag::__private_cloud),
9872 "private_cloud" => Ok(__FieldTag::__private_cloud),
9873 "requestId" => Ok(__FieldTag::__request_id),
9874 "request_id" => Ok(__FieldTag::__request_id),
9875 "username" => Ok(__FieldTag::__username),
9876 _ => Ok(__FieldTag::Unknown(value.to_string())),
9877 }
9878 }
9879 }
9880 deserializer.deserialize_identifier(Visitor)
9881 }
9882 }
9883 struct Visitor;
9884 impl<'de> serde::de::Visitor<'de> for Visitor {
9885 type Value = ResetVcenterCredentialsRequest;
9886 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
9887 formatter.write_str("struct ResetVcenterCredentialsRequest")
9888 }
9889 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
9890 where
9891 A: serde::de::MapAccess<'de>,
9892 {
9893 #[allow(unused_imports)]
9894 use serde::de::Error;
9895 use std::option::Option::Some;
9896 let mut fields = std::collections::HashSet::new();
9897 let mut result = Self::Value::new();
9898 while let Some(tag) = map.next_key::<__FieldTag>()? {
9899 #[allow(clippy::match_single_binding)]
9900 match tag {
9901 __FieldTag::__private_cloud => {
9902 if !fields.insert(__FieldTag::__private_cloud) {
9903 return std::result::Result::Err(A::Error::duplicate_field(
9904 "multiple values for private_cloud",
9905 ));
9906 }
9907 result.private_cloud = map
9908 .next_value::<std::option::Option<std::string::String>>()?
9909 .unwrap_or_default();
9910 }
9911 __FieldTag::__request_id => {
9912 if !fields.insert(__FieldTag::__request_id) {
9913 return std::result::Result::Err(A::Error::duplicate_field(
9914 "multiple values for request_id",
9915 ));
9916 }
9917 result.request_id = map
9918 .next_value::<std::option::Option<std::string::String>>()?
9919 .unwrap_or_default();
9920 }
9921 __FieldTag::__username => {
9922 if !fields.insert(__FieldTag::__username) {
9923 return std::result::Result::Err(A::Error::duplicate_field(
9924 "multiple values for username",
9925 ));
9926 }
9927 result.username = map
9928 .next_value::<std::option::Option<std::string::String>>()?
9929 .unwrap_or_default();
9930 }
9931 __FieldTag::Unknown(key) => {
9932 let value = map.next_value::<serde_json::Value>()?;
9933 result._unknown_fields.insert(key, value);
9934 }
9935 }
9936 }
9937 std::result::Result::Ok(result)
9938 }
9939 }
9940 deserializer.deserialize_any(Visitor)
9941 }
9942}
9943
9944#[doc(hidden)]
9945impl serde::ser::Serialize for ResetVcenterCredentialsRequest {
9946 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
9947 where
9948 S: serde::ser::Serializer,
9949 {
9950 use serde::ser::SerializeMap;
9951 #[allow(unused_imports)]
9952 use std::option::Option::Some;
9953 let mut state = serializer.serialize_map(std::option::Option::None)?;
9954 if !self.private_cloud.is_empty() {
9955 state.serialize_entry("privateCloud", &self.private_cloud)?;
9956 }
9957 if !self.request_id.is_empty() {
9958 state.serialize_entry("requestId", &self.request_id)?;
9959 }
9960 if !self.username.is_empty() {
9961 state.serialize_entry("username", &self.username)?;
9962 }
9963 if !self._unknown_fields.is_empty() {
9964 for (key, value) in self._unknown_fields.iter() {
9965 state.serialize_entry(key, &value)?;
9966 }
9967 }
9968 state.end()
9969 }
9970}
9971
9972#[derive(Clone, Debug, Default, PartialEq)]
9977#[non_exhaustive]
9978pub struct ListHcxActivationKeysResponse {
9979 pub hcx_activation_keys: std::vec::Vec<crate::model::HcxActivationKey>,
9981
9982 pub next_page_token: std::string::String,
9985
9986 pub unreachable: std::vec::Vec<std::string::String>,
9989
9990 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
9991}
9992
9993impl ListHcxActivationKeysResponse {
9994 pub fn new() -> Self {
9995 std::default::Default::default()
9996 }
9997
9998 pub fn set_hcx_activation_keys<T, V>(mut self, v: T) -> Self
10000 where
10001 T: std::iter::IntoIterator<Item = V>,
10002 V: std::convert::Into<crate::model::HcxActivationKey>,
10003 {
10004 use std::iter::Iterator;
10005 self.hcx_activation_keys = v.into_iter().map(|i| i.into()).collect();
10006 self
10007 }
10008
10009 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10011 self.next_page_token = v.into();
10012 self
10013 }
10014
10015 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
10017 where
10018 T: std::iter::IntoIterator<Item = V>,
10019 V: std::convert::Into<std::string::String>,
10020 {
10021 use std::iter::Iterator;
10022 self.unreachable = v.into_iter().map(|i| i.into()).collect();
10023 self
10024 }
10025}
10026
10027impl wkt::message::Message for ListHcxActivationKeysResponse {
10028 fn typename() -> &'static str {
10029 "type.googleapis.com/google.cloud.vmwareengine.v1.ListHcxActivationKeysResponse"
10030 }
10031}
10032
10033#[doc(hidden)]
10034impl gax::paginator::internal::PageableResponse for ListHcxActivationKeysResponse {
10035 type PageItem = crate::model::HcxActivationKey;
10036
10037 fn items(self) -> std::vec::Vec<Self::PageItem> {
10038 self.hcx_activation_keys
10039 }
10040
10041 fn next_page_token(&self) -> std::string::String {
10042 use std::clone::Clone;
10043 self.next_page_token.clone()
10044 }
10045}
10046
10047#[doc(hidden)]
10048impl<'de> serde::de::Deserialize<'de> for ListHcxActivationKeysResponse {
10049 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10050 where
10051 D: serde::Deserializer<'de>,
10052 {
10053 #[allow(non_camel_case_types)]
10054 #[doc(hidden)]
10055 #[derive(PartialEq, Eq, Hash)]
10056 enum __FieldTag {
10057 __hcx_activation_keys,
10058 __next_page_token,
10059 __unreachable,
10060 Unknown(std::string::String),
10061 }
10062 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
10063 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10064 where
10065 D: serde::Deserializer<'de>,
10066 {
10067 struct Visitor;
10068 impl<'de> serde::de::Visitor<'de> for Visitor {
10069 type Value = __FieldTag;
10070 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10071 formatter.write_str("a field name for ListHcxActivationKeysResponse")
10072 }
10073 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
10074 where
10075 E: serde::de::Error,
10076 {
10077 use std::result::Result::Ok;
10078 use std::string::ToString;
10079 match value {
10080 "hcxActivationKeys" => Ok(__FieldTag::__hcx_activation_keys),
10081 "hcx_activation_keys" => Ok(__FieldTag::__hcx_activation_keys),
10082 "nextPageToken" => Ok(__FieldTag::__next_page_token),
10083 "next_page_token" => Ok(__FieldTag::__next_page_token),
10084 "unreachable" => Ok(__FieldTag::__unreachable),
10085 _ => Ok(__FieldTag::Unknown(value.to_string())),
10086 }
10087 }
10088 }
10089 deserializer.deserialize_identifier(Visitor)
10090 }
10091 }
10092 struct Visitor;
10093 impl<'de> serde::de::Visitor<'de> for Visitor {
10094 type Value = ListHcxActivationKeysResponse;
10095 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10096 formatter.write_str("struct ListHcxActivationKeysResponse")
10097 }
10098 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
10099 where
10100 A: serde::de::MapAccess<'de>,
10101 {
10102 #[allow(unused_imports)]
10103 use serde::de::Error;
10104 use std::option::Option::Some;
10105 let mut fields = std::collections::HashSet::new();
10106 let mut result = Self::Value::new();
10107 while let Some(tag) = map.next_key::<__FieldTag>()? {
10108 #[allow(clippy::match_single_binding)]
10109 match tag {
10110 __FieldTag::__hcx_activation_keys => {
10111 if !fields.insert(__FieldTag::__hcx_activation_keys) {
10112 return std::result::Result::Err(A::Error::duplicate_field(
10113 "multiple values for hcx_activation_keys",
10114 ));
10115 }
10116 result.hcx_activation_keys =
10117 map.next_value::<std::option::Option<
10118 std::vec::Vec<crate::model::HcxActivationKey>,
10119 >>()?
10120 .unwrap_or_default();
10121 }
10122 __FieldTag::__next_page_token => {
10123 if !fields.insert(__FieldTag::__next_page_token) {
10124 return std::result::Result::Err(A::Error::duplicate_field(
10125 "multiple values for next_page_token",
10126 ));
10127 }
10128 result.next_page_token = map
10129 .next_value::<std::option::Option<std::string::String>>()?
10130 .unwrap_or_default();
10131 }
10132 __FieldTag::__unreachable => {
10133 if !fields.insert(__FieldTag::__unreachable) {
10134 return std::result::Result::Err(A::Error::duplicate_field(
10135 "multiple values for unreachable",
10136 ));
10137 }
10138 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
10139 }
10140 __FieldTag::Unknown(key) => {
10141 let value = map.next_value::<serde_json::Value>()?;
10142 result._unknown_fields.insert(key, value);
10143 }
10144 }
10145 }
10146 std::result::Result::Ok(result)
10147 }
10148 }
10149 deserializer.deserialize_any(Visitor)
10150 }
10151}
10152
10153#[doc(hidden)]
10154impl serde::ser::Serialize for ListHcxActivationKeysResponse {
10155 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
10156 where
10157 S: serde::ser::Serializer,
10158 {
10159 use serde::ser::SerializeMap;
10160 #[allow(unused_imports)]
10161 use std::option::Option::Some;
10162 let mut state = serializer.serialize_map(std::option::Option::None)?;
10163 if !self.hcx_activation_keys.is_empty() {
10164 state.serialize_entry("hcxActivationKeys", &self.hcx_activation_keys)?;
10165 }
10166 if !self.next_page_token.is_empty() {
10167 state.serialize_entry("nextPageToken", &self.next_page_token)?;
10168 }
10169 if !self.unreachable.is_empty() {
10170 state.serialize_entry("unreachable", &self.unreachable)?;
10171 }
10172 if !self._unknown_fields.is_empty() {
10173 for (key, value) in self._unknown_fields.iter() {
10174 state.serialize_entry(key, &value)?;
10175 }
10176 }
10177 state.end()
10178 }
10179}
10180
10181#[derive(Clone, Debug, Default, PartialEq)]
10186#[non_exhaustive]
10187pub struct ListHcxActivationKeysRequest {
10188 pub parent: std::string::String,
10195
10196 pub page_size: i32,
10201
10202 pub page_token: std::string::String,
10209
10210 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
10211}
10212
10213impl ListHcxActivationKeysRequest {
10214 pub fn new() -> Self {
10215 std::default::Default::default()
10216 }
10217
10218 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10220 self.parent = v.into();
10221 self
10222 }
10223
10224 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
10226 self.page_size = v.into();
10227 self
10228 }
10229
10230 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10232 self.page_token = v.into();
10233 self
10234 }
10235}
10236
10237impl wkt::message::Message for ListHcxActivationKeysRequest {
10238 fn typename() -> &'static str {
10239 "type.googleapis.com/google.cloud.vmwareengine.v1.ListHcxActivationKeysRequest"
10240 }
10241}
10242
10243#[doc(hidden)]
10244impl<'de> serde::de::Deserialize<'de> for ListHcxActivationKeysRequest {
10245 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10246 where
10247 D: serde::Deserializer<'de>,
10248 {
10249 #[allow(non_camel_case_types)]
10250 #[doc(hidden)]
10251 #[derive(PartialEq, Eq, Hash)]
10252 enum __FieldTag {
10253 __parent,
10254 __page_size,
10255 __page_token,
10256 Unknown(std::string::String),
10257 }
10258 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
10259 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10260 where
10261 D: serde::Deserializer<'de>,
10262 {
10263 struct Visitor;
10264 impl<'de> serde::de::Visitor<'de> for Visitor {
10265 type Value = __FieldTag;
10266 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10267 formatter.write_str("a field name for ListHcxActivationKeysRequest")
10268 }
10269 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
10270 where
10271 E: serde::de::Error,
10272 {
10273 use std::result::Result::Ok;
10274 use std::string::ToString;
10275 match value {
10276 "parent" => Ok(__FieldTag::__parent),
10277 "pageSize" => Ok(__FieldTag::__page_size),
10278 "page_size" => Ok(__FieldTag::__page_size),
10279 "pageToken" => Ok(__FieldTag::__page_token),
10280 "page_token" => Ok(__FieldTag::__page_token),
10281 _ => Ok(__FieldTag::Unknown(value.to_string())),
10282 }
10283 }
10284 }
10285 deserializer.deserialize_identifier(Visitor)
10286 }
10287 }
10288 struct Visitor;
10289 impl<'de> serde::de::Visitor<'de> for Visitor {
10290 type Value = ListHcxActivationKeysRequest;
10291 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10292 formatter.write_str("struct ListHcxActivationKeysRequest")
10293 }
10294 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
10295 where
10296 A: serde::de::MapAccess<'de>,
10297 {
10298 #[allow(unused_imports)]
10299 use serde::de::Error;
10300 use std::option::Option::Some;
10301 let mut fields = std::collections::HashSet::new();
10302 let mut result = Self::Value::new();
10303 while let Some(tag) = map.next_key::<__FieldTag>()? {
10304 #[allow(clippy::match_single_binding)]
10305 match tag {
10306 __FieldTag::__parent => {
10307 if !fields.insert(__FieldTag::__parent) {
10308 return std::result::Result::Err(A::Error::duplicate_field(
10309 "multiple values for parent",
10310 ));
10311 }
10312 result.parent = map
10313 .next_value::<std::option::Option<std::string::String>>()?
10314 .unwrap_or_default();
10315 }
10316 __FieldTag::__page_size => {
10317 if !fields.insert(__FieldTag::__page_size) {
10318 return std::result::Result::Err(A::Error::duplicate_field(
10319 "multiple values for page_size",
10320 ));
10321 }
10322 struct __With(std::option::Option<i32>);
10323 impl<'de> serde::de::Deserialize<'de> for __With {
10324 fn deserialize<D>(
10325 deserializer: D,
10326 ) -> std::result::Result<Self, D::Error>
10327 where
10328 D: serde::de::Deserializer<'de>,
10329 {
10330 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
10331 }
10332 }
10333 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
10334 }
10335 __FieldTag::__page_token => {
10336 if !fields.insert(__FieldTag::__page_token) {
10337 return std::result::Result::Err(A::Error::duplicate_field(
10338 "multiple values for page_token",
10339 ));
10340 }
10341 result.page_token = map
10342 .next_value::<std::option::Option<std::string::String>>()?
10343 .unwrap_or_default();
10344 }
10345 __FieldTag::Unknown(key) => {
10346 let value = map.next_value::<serde_json::Value>()?;
10347 result._unknown_fields.insert(key, value);
10348 }
10349 }
10350 }
10351 std::result::Result::Ok(result)
10352 }
10353 }
10354 deserializer.deserialize_any(Visitor)
10355 }
10356}
10357
10358#[doc(hidden)]
10359impl serde::ser::Serialize for ListHcxActivationKeysRequest {
10360 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
10361 where
10362 S: serde::ser::Serializer,
10363 {
10364 use serde::ser::SerializeMap;
10365 #[allow(unused_imports)]
10366 use std::option::Option::Some;
10367 let mut state = serializer.serialize_map(std::option::Option::None)?;
10368 if !self.parent.is_empty() {
10369 state.serialize_entry("parent", &self.parent)?;
10370 }
10371 if !wkt::internal::is_default(&self.page_size) {
10372 struct __With<'a>(&'a i32);
10373 impl<'a> serde::ser::Serialize for __With<'a> {
10374 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
10375 where
10376 S: serde::ser::Serializer,
10377 {
10378 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
10379 }
10380 }
10381 state.serialize_entry("pageSize", &__With(&self.page_size))?;
10382 }
10383 if !self.page_token.is_empty() {
10384 state.serialize_entry("pageToken", &self.page_token)?;
10385 }
10386 if !self._unknown_fields.is_empty() {
10387 for (key, value) in self._unknown_fields.iter() {
10388 state.serialize_entry(key, &value)?;
10389 }
10390 }
10391 state.end()
10392 }
10393}
10394
10395#[derive(Clone, Debug, Default, PartialEq)]
10397#[non_exhaustive]
10398pub struct GetHcxActivationKeyRequest {
10399 pub name: std::string::String,
10405
10406 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
10407}
10408
10409impl GetHcxActivationKeyRequest {
10410 pub fn new() -> Self {
10411 std::default::Default::default()
10412 }
10413
10414 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10416 self.name = v.into();
10417 self
10418 }
10419}
10420
10421impl wkt::message::Message for GetHcxActivationKeyRequest {
10422 fn typename() -> &'static str {
10423 "type.googleapis.com/google.cloud.vmwareengine.v1.GetHcxActivationKeyRequest"
10424 }
10425}
10426
10427#[doc(hidden)]
10428impl<'de> serde::de::Deserialize<'de> for GetHcxActivationKeyRequest {
10429 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10430 where
10431 D: serde::Deserializer<'de>,
10432 {
10433 #[allow(non_camel_case_types)]
10434 #[doc(hidden)]
10435 #[derive(PartialEq, Eq, Hash)]
10436 enum __FieldTag {
10437 __name,
10438 Unknown(std::string::String),
10439 }
10440 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
10441 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10442 where
10443 D: serde::Deserializer<'de>,
10444 {
10445 struct Visitor;
10446 impl<'de> serde::de::Visitor<'de> for Visitor {
10447 type Value = __FieldTag;
10448 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10449 formatter.write_str("a field name for GetHcxActivationKeyRequest")
10450 }
10451 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
10452 where
10453 E: serde::de::Error,
10454 {
10455 use std::result::Result::Ok;
10456 use std::string::ToString;
10457 match value {
10458 "name" => Ok(__FieldTag::__name),
10459 _ => Ok(__FieldTag::Unknown(value.to_string())),
10460 }
10461 }
10462 }
10463 deserializer.deserialize_identifier(Visitor)
10464 }
10465 }
10466 struct Visitor;
10467 impl<'de> serde::de::Visitor<'de> for Visitor {
10468 type Value = GetHcxActivationKeyRequest;
10469 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10470 formatter.write_str("struct GetHcxActivationKeyRequest")
10471 }
10472 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
10473 where
10474 A: serde::de::MapAccess<'de>,
10475 {
10476 #[allow(unused_imports)]
10477 use serde::de::Error;
10478 use std::option::Option::Some;
10479 let mut fields = std::collections::HashSet::new();
10480 let mut result = Self::Value::new();
10481 while let Some(tag) = map.next_key::<__FieldTag>()? {
10482 #[allow(clippy::match_single_binding)]
10483 match tag {
10484 __FieldTag::__name => {
10485 if !fields.insert(__FieldTag::__name) {
10486 return std::result::Result::Err(A::Error::duplicate_field(
10487 "multiple values for name",
10488 ));
10489 }
10490 result.name = map
10491 .next_value::<std::option::Option<std::string::String>>()?
10492 .unwrap_or_default();
10493 }
10494 __FieldTag::Unknown(key) => {
10495 let value = map.next_value::<serde_json::Value>()?;
10496 result._unknown_fields.insert(key, value);
10497 }
10498 }
10499 }
10500 std::result::Result::Ok(result)
10501 }
10502 }
10503 deserializer.deserialize_any(Visitor)
10504 }
10505}
10506
10507#[doc(hidden)]
10508impl serde::ser::Serialize for GetHcxActivationKeyRequest {
10509 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
10510 where
10511 S: serde::ser::Serializer,
10512 {
10513 use serde::ser::SerializeMap;
10514 #[allow(unused_imports)]
10515 use std::option::Option::Some;
10516 let mut state = serializer.serialize_map(std::option::Option::None)?;
10517 if !self.name.is_empty() {
10518 state.serialize_entry("name", &self.name)?;
10519 }
10520 if !self._unknown_fields.is_empty() {
10521 for (key, value) in self._unknown_fields.iter() {
10522 state.serialize_entry(key, &value)?;
10523 }
10524 }
10525 state.end()
10526 }
10527}
10528
10529#[derive(Clone, Debug, Default, PartialEq)]
10534#[non_exhaustive]
10535pub struct CreateHcxActivationKeyRequest {
10536 pub parent: std::string::String,
10542
10543 pub hcx_activation_key: std::option::Option<crate::model::HcxActivationKey>,
10546
10547 pub hcx_activation_key_id: std::string::String,
10559
10560 pub request_id: std::string::String,
10575
10576 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
10577}
10578
10579impl CreateHcxActivationKeyRequest {
10580 pub fn new() -> Self {
10581 std::default::Default::default()
10582 }
10583
10584 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10586 self.parent = v.into();
10587 self
10588 }
10589
10590 pub fn set_hcx_activation_key<T>(mut self, v: T) -> Self
10592 where
10593 T: std::convert::Into<crate::model::HcxActivationKey>,
10594 {
10595 self.hcx_activation_key = std::option::Option::Some(v.into());
10596 self
10597 }
10598
10599 pub fn set_or_clear_hcx_activation_key<T>(mut self, v: std::option::Option<T>) -> Self
10601 where
10602 T: std::convert::Into<crate::model::HcxActivationKey>,
10603 {
10604 self.hcx_activation_key = v.map(|x| x.into());
10605 self
10606 }
10607
10608 pub fn set_hcx_activation_key_id<T: std::convert::Into<std::string::String>>(
10610 mut self,
10611 v: T,
10612 ) -> Self {
10613 self.hcx_activation_key_id = v.into();
10614 self
10615 }
10616
10617 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10619 self.request_id = v.into();
10620 self
10621 }
10622}
10623
10624impl wkt::message::Message for CreateHcxActivationKeyRequest {
10625 fn typename() -> &'static str {
10626 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateHcxActivationKeyRequest"
10627 }
10628}
10629
10630#[doc(hidden)]
10631impl<'de> serde::de::Deserialize<'de> for CreateHcxActivationKeyRequest {
10632 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10633 where
10634 D: serde::Deserializer<'de>,
10635 {
10636 #[allow(non_camel_case_types)]
10637 #[doc(hidden)]
10638 #[derive(PartialEq, Eq, Hash)]
10639 enum __FieldTag {
10640 __parent,
10641 __hcx_activation_key,
10642 __hcx_activation_key_id,
10643 __request_id,
10644 Unknown(std::string::String),
10645 }
10646 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
10647 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10648 where
10649 D: serde::Deserializer<'de>,
10650 {
10651 struct Visitor;
10652 impl<'de> serde::de::Visitor<'de> for Visitor {
10653 type Value = __FieldTag;
10654 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10655 formatter.write_str("a field name for CreateHcxActivationKeyRequest")
10656 }
10657 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
10658 where
10659 E: serde::de::Error,
10660 {
10661 use std::result::Result::Ok;
10662 use std::string::ToString;
10663 match value {
10664 "parent" => Ok(__FieldTag::__parent),
10665 "hcxActivationKey" => Ok(__FieldTag::__hcx_activation_key),
10666 "hcx_activation_key" => Ok(__FieldTag::__hcx_activation_key),
10667 "hcxActivationKeyId" => Ok(__FieldTag::__hcx_activation_key_id),
10668 "hcx_activation_key_id" => Ok(__FieldTag::__hcx_activation_key_id),
10669 "requestId" => Ok(__FieldTag::__request_id),
10670 "request_id" => Ok(__FieldTag::__request_id),
10671 _ => Ok(__FieldTag::Unknown(value.to_string())),
10672 }
10673 }
10674 }
10675 deserializer.deserialize_identifier(Visitor)
10676 }
10677 }
10678 struct Visitor;
10679 impl<'de> serde::de::Visitor<'de> for Visitor {
10680 type Value = CreateHcxActivationKeyRequest;
10681 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10682 formatter.write_str("struct CreateHcxActivationKeyRequest")
10683 }
10684 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
10685 where
10686 A: serde::de::MapAccess<'de>,
10687 {
10688 #[allow(unused_imports)]
10689 use serde::de::Error;
10690 use std::option::Option::Some;
10691 let mut fields = std::collections::HashSet::new();
10692 let mut result = Self::Value::new();
10693 while let Some(tag) = map.next_key::<__FieldTag>()? {
10694 #[allow(clippy::match_single_binding)]
10695 match tag {
10696 __FieldTag::__parent => {
10697 if !fields.insert(__FieldTag::__parent) {
10698 return std::result::Result::Err(A::Error::duplicate_field(
10699 "multiple values for parent",
10700 ));
10701 }
10702 result.parent = map
10703 .next_value::<std::option::Option<std::string::String>>()?
10704 .unwrap_or_default();
10705 }
10706 __FieldTag::__hcx_activation_key => {
10707 if !fields.insert(__FieldTag::__hcx_activation_key) {
10708 return std::result::Result::Err(A::Error::duplicate_field(
10709 "multiple values for hcx_activation_key",
10710 ));
10711 }
10712 result.hcx_activation_key = map
10713 .next_value::<std::option::Option<crate::model::HcxActivationKey>>(
10714 )?;
10715 }
10716 __FieldTag::__hcx_activation_key_id => {
10717 if !fields.insert(__FieldTag::__hcx_activation_key_id) {
10718 return std::result::Result::Err(A::Error::duplicate_field(
10719 "multiple values for hcx_activation_key_id",
10720 ));
10721 }
10722 result.hcx_activation_key_id = map
10723 .next_value::<std::option::Option<std::string::String>>()?
10724 .unwrap_or_default();
10725 }
10726 __FieldTag::__request_id => {
10727 if !fields.insert(__FieldTag::__request_id) {
10728 return std::result::Result::Err(A::Error::duplicate_field(
10729 "multiple values for request_id",
10730 ));
10731 }
10732 result.request_id = map
10733 .next_value::<std::option::Option<std::string::String>>()?
10734 .unwrap_or_default();
10735 }
10736 __FieldTag::Unknown(key) => {
10737 let value = map.next_value::<serde_json::Value>()?;
10738 result._unknown_fields.insert(key, value);
10739 }
10740 }
10741 }
10742 std::result::Result::Ok(result)
10743 }
10744 }
10745 deserializer.deserialize_any(Visitor)
10746 }
10747}
10748
10749#[doc(hidden)]
10750impl serde::ser::Serialize for CreateHcxActivationKeyRequest {
10751 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
10752 where
10753 S: serde::ser::Serializer,
10754 {
10755 use serde::ser::SerializeMap;
10756 #[allow(unused_imports)]
10757 use std::option::Option::Some;
10758 let mut state = serializer.serialize_map(std::option::Option::None)?;
10759 if !self.parent.is_empty() {
10760 state.serialize_entry("parent", &self.parent)?;
10761 }
10762 if self.hcx_activation_key.is_some() {
10763 state.serialize_entry("hcxActivationKey", &self.hcx_activation_key)?;
10764 }
10765 if !self.hcx_activation_key_id.is_empty() {
10766 state.serialize_entry("hcxActivationKeyId", &self.hcx_activation_key_id)?;
10767 }
10768 if !self.request_id.is_empty() {
10769 state.serialize_entry("requestId", &self.request_id)?;
10770 }
10771 if !self._unknown_fields.is_empty() {
10772 for (key, value) in self._unknown_fields.iter() {
10773 state.serialize_entry(key, &value)?;
10774 }
10775 }
10776 state.end()
10777 }
10778}
10779
10780#[derive(Clone, Debug, Default, PartialEq)]
10785#[non_exhaustive]
10786pub struct GetDnsForwardingRequest {
10787 pub name: std::string::String,
10793
10794 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
10795}
10796
10797impl GetDnsForwardingRequest {
10798 pub fn new() -> Self {
10799 std::default::Default::default()
10800 }
10801
10802 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10804 self.name = v.into();
10805 self
10806 }
10807}
10808
10809impl wkt::message::Message for GetDnsForwardingRequest {
10810 fn typename() -> &'static str {
10811 "type.googleapis.com/google.cloud.vmwareengine.v1.GetDnsForwardingRequest"
10812 }
10813}
10814
10815#[doc(hidden)]
10816impl<'de> serde::de::Deserialize<'de> for GetDnsForwardingRequest {
10817 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10818 where
10819 D: serde::Deserializer<'de>,
10820 {
10821 #[allow(non_camel_case_types)]
10822 #[doc(hidden)]
10823 #[derive(PartialEq, Eq, Hash)]
10824 enum __FieldTag {
10825 __name,
10826 Unknown(std::string::String),
10827 }
10828 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
10829 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
10830 where
10831 D: serde::Deserializer<'de>,
10832 {
10833 struct Visitor;
10834 impl<'de> serde::de::Visitor<'de> for Visitor {
10835 type Value = __FieldTag;
10836 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10837 formatter.write_str("a field name for GetDnsForwardingRequest")
10838 }
10839 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
10840 where
10841 E: serde::de::Error,
10842 {
10843 use std::result::Result::Ok;
10844 use std::string::ToString;
10845 match value {
10846 "name" => Ok(__FieldTag::__name),
10847 _ => Ok(__FieldTag::Unknown(value.to_string())),
10848 }
10849 }
10850 }
10851 deserializer.deserialize_identifier(Visitor)
10852 }
10853 }
10854 struct Visitor;
10855 impl<'de> serde::de::Visitor<'de> for Visitor {
10856 type Value = GetDnsForwardingRequest;
10857 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
10858 formatter.write_str("struct GetDnsForwardingRequest")
10859 }
10860 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
10861 where
10862 A: serde::de::MapAccess<'de>,
10863 {
10864 #[allow(unused_imports)]
10865 use serde::de::Error;
10866 use std::option::Option::Some;
10867 let mut fields = std::collections::HashSet::new();
10868 let mut result = Self::Value::new();
10869 while let Some(tag) = map.next_key::<__FieldTag>()? {
10870 #[allow(clippy::match_single_binding)]
10871 match tag {
10872 __FieldTag::__name => {
10873 if !fields.insert(__FieldTag::__name) {
10874 return std::result::Result::Err(A::Error::duplicate_field(
10875 "multiple values for name",
10876 ));
10877 }
10878 result.name = map
10879 .next_value::<std::option::Option<std::string::String>>()?
10880 .unwrap_or_default();
10881 }
10882 __FieldTag::Unknown(key) => {
10883 let value = map.next_value::<serde_json::Value>()?;
10884 result._unknown_fields.insert(key, value);
10885 }
10886 }
10887 }
10888 std::result::Result::Ok(result)
10889 }
10890 }
10891 deserializer.deserialize_any(Visitor)
10892 }
10893}
10894
10895#[doc(hidden)]
10896impl serde::ser::Serialize for GetDnsForwardingRequest {
10897 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
10898 where
10899 S: serde::ser::Serializer,
10900 {
10901 use serde::ser::SerializeMap;
10902 #[allow(unused_imports)]
10903 use std::option::Option::Some;
10904 let mut state = serializer.serialize_map(std::option::Option::None)?;
10905 if !self.name.is_empty() {
10906 state.serialize_entry("name", &self.name)?;
10907 }
10908 if !self._unknown_fields.is_empty() {
10909 for (key, value) in self._unknown_fields.iter() {
10910 state.serialize_entry(key, &value)?;
10911 }
10912 }
10913 state.end()
10914 }
10915}
10916
10917#[derive(Clone, Debug, Default, PartialEq)]
10922#[non_exhaustive]
10923pub struct UpdateDnsForwardingRequest {
10924 pub dns_forwarding: std::option::Option<crate::model::DnsForwarding>,
10926
10927 pub update_mask: std::option::Option<wkt::FieldMask>,
10933
10934 pub request_id: std::string::String,
10949
10950 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
10951}
10952
10953impl UpdateDnsForwardingRequest {
10954 pub fn new() -> Self {
10955 std::default::Default::default()
10956 }
10957
10958 pub fn set_dns_forwarding<T>(mut self, v: T) -> Self
10960 where
10961 T: std::convert::Into<crate::model::DnsForwarding>,
10962 {
10963 self.dns_forwarding = std::option::Option::Some(v.into());
10964 self
10965 }
10966
10967 pub fn set_or_clear_dns_forwarding<T>(mut self, v: std::option::Option<T>) -> Self
10969 where
10970 T: std::convert::Into<crate::model::DnsForwarding>,
10971 {
10972 self.dns_forwarding = v.map(|x| x.into());
10973 self
10974 }
10975
10976 pub fn set_update_mask<T>(mut self, v: T) -> Self
10978 where
10979 T: std::convert::Into<wkt::FieldMask>,
10980 {
10981 self.update_mask = std::option::Option::Some(v.into());
10982 self
10983 }
10984
10985 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
10987 where
10988 T: std::convert::Into<wkt::FieldMask>,
10989 {
10990 self.update_mask = v.map(|x| x.into());
10991 self
10992 }
10993
10994 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
10996 self.request_id = v.into();
10997 self
10998 }
10999}
11000
11001impl wkt::message::Message for UpdateDnsForwardingRequest {
11002 fn typename() -> &'static str {
11003 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateDnsForwardingRequest"
11004 }
11005}
11006
11007#[doc(hidden)]
11008impl<'de> serde::de::Deserialize<'de> for UpdateDnsForwardingRequest {
11009 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11010 where
11011 D: serde::Deserializer<'de>,
11012 {
11013 #[allow(non_camel_case_types)]
11014 #[doc(hidden)]
11015 #[derive(PartialEq, Eq, Hash)]
11016 enum __FieldTag {
11017 __dns_forwarding,
11018 __update_mask,
11019 __request_id,
11020 Unknown(std::string::String),
11021 }
11022 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
11023 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11024 where
11025 D: serde::Deserializer<'de>,
11026 {
11027 struct Visitor;
11028 impl<'de> serde::de::Visitor<'de> for Visitor {
11029 type Value = __FieldTag;
11030 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11031 formatter.write_str("a field name for UpdateDnsForwardingRequest")
11032 }
11033 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
11034 where
11035 E: serde::de::Error,
11036 {
11037 use std::result::Result::Ok;
11038 use std::string::ToString;
11039 match value {
11040 "dnsForwarding" => Ok(__FieldTag::__dns_forwarding),
11041 "dns_forwarding" => Ok(__FieldTag::__dns_forwarding),
11042 "updateMask" => Ok(__FieldTag::__update_mask),
11043 "update_mask" => Ok(__FieldTag::__update_mask),
11044 "requestId" => Ok(__FieldTag::__request_id),
11045 "request_id" => Ok(__FieldTag::__request_id),
11046 _ => Ok(__FieldTag::Unknown(value.to_string())),
11047 }
11048 }
11049 }
11050 deserializer.deserialize_identifier(Visitor)
11051 }
11052 }
11053 struct Visitor;
11054 impl<'de> serde::de::Visitor<'de> for Visitor {
11055 type Value = UpdateDnsForwardingRequest;
11056 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11057 formatter.write_str("struct UpdateDnsForwardingRequest")
11058 }
11059 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
11060 where
11061 A: serde::de::MapAccess<'de>,
11062 {
11063 #[allow(unused_imports)]
11064 use serde::de::Error;
11065 use std::option::Option::Some;
11066 let mut fields = std::collections::HashSet::new();
11067 let mut result = Self::Value::new();
11068 while let Some(tag) = map.next_key::<__FieldTag>()? {
11069 #[allow(clippy::match_single_binding)]
11070 match tag {
11071 __FieldTag::__dns_forwarding => {
11072 if !fields.insert(__FieldTag::__dns_forwarding) {
11073 return std::result::Result::Err(A::Error::duplicate_field(
11074 "multiple values for dns_forwarding",
11075 ));
11076 }
11077 result.dns_forwarding = map
11078 .next_value::<std::option::Option<crate::model::DnsForwarding>>()?;
11079 }
11080 __FieldTag::__update_mask => {
11081 if !fields.insert(__FieldTag::__update_mask) {
11082 return std::result::Result::Err(A::Error::duplicate_field(
11083 "multiple values for update_mask",
11084 ));
11085 }
11086 result.update_mask =
11087 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
11088 }
11089 __FieldTag::__request_id => {
11090 if !fields.insert(__FieldTag::__request_id) {
11091 return std::result::Result::Err(A::Error::duplicate_field(
11092 "multiple values for request_id",
11093 ));
11094 }
11095 result.request_id = map
11096 .next_value::<std::option::Option<std::string::String>>()?
11097 .unwrap_or_default();
11098 }
11099 __FieldTag::Unknown(key) => {
11100 let value = map.next_value::<serde_json::Value>()?;
11101 result._unknown_fields.insert(key, value);
11102 }
11103 }
11104 }
11105 std::result::Result::Ok(result)
11106 }
11107 }
11108 deserializer.deserialize_any(Visitor)
11109 }
11110}
11111
11112#[doc(hidden)]
11113impl serde::ser::Serialize for UpdateDnsForwardingRequest {
11114 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
11115 where
11116 S: serde::ser::Serializer,
11117 {
11118 use serde::ser::SerializeMap;
11119 #[allow(unused_imports)]
11120 use std::option::Option::Some;
11121 let mut state = serializer.serialize_map(std::option::Option::None)?;
11122 if self.dns_forwarding.is_some() {
11123 state.serialize_entry("dnsForwarding", &self.dns_forwarding)?;
11124 }
11125 if self.update_mask.is_some() {
11126 state.serialize_entry("updateMask", &self.update_mask)?;
11127 }
11128 if !self.request_id.is_empty() {
11129 state.serialize_entry("requestId", &self.request_id)?;
11130 }
11131 if !self._unknown_fields.is_empty() {
11132 for (key, value) in self._unknown_fields.iter() {
11133 state.serialize_entry(key, &value)?;
11134 }
11135 }
11136 state.end()
11137 }
11138}
11139
11140#[derive(Clone, Debug, Default, PartialEq)]
11145#[non_exhaustive]
11146pub struct CreateNetworkPeeringRequest {
11147 pub parent: std::string::String,
11153
11154 pub network_peering_id: std::string::String,
11166
11167 pub network_peering: std::option::Option<crate::model::NetworkPeering>,
11169
11170 pub request_id: std::string::String,
11185
11186 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
11187}
11188
11189impl CreateNetworkPeeringRequest {
11190 pub fn new() -> Self {
11191 std::default::Default::default()
11192 }
11193
11194 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11196 self.parent = v.into();
11197 self
11198 }
11199
11200 pub fn set_network_peering_id<T: std::convert::Into<std::string::String>>(
11202 mut self,
11203 v: T,
11204 ) -> Self {
11205 self.network_peering_id = v.into();
11206 self
11207 }
11208
11209 pub fn set_network_peering<T>(mut self, v: T) -> Self
11211 where
11212 T: std::convert::Into<crate::model::NetworkPeering>,
11213 {
11214 self.network_peering = std::option::Option::Some(v.into());
11215 self
11216 }
11217
11218 pub fn set_or_clear_network_peering<T>(mut self, v: std::option::Option<T>) -> Self
11220 where
11221 T: std::convert::Into<crate::model::NetworkPeering>,
11222 {
11223 self.network_peering = v.map(|x| x.into());
11224 self
11225 }
11226
11227 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11229 self.request_id = v.into();
11230 self
11231 }
11232}
11233
11234impl wkt::message::Message for CreateNetworkPeeringRequest {
11235 fn typename() -> &'static str {
11236 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateNetworkPeeringRequest"
11237 }
11238}
11239
11240#[doc(hidden)]
11241impl<'de> serde::de::Deserialize<'de> for CreateNetworkPeeringRequest {
11242 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11243 where
11244 D: serde::Deserializer<'de>,
11245 {
11246 #[allow(non_camel_case_types)]
11247 #[doc(hidden)]
11248 #[derive(PartialEq, Eq, Hash)]
11249 enum __FieldTag {
11250 __parent,
11251 __network_peering_id,
11252 __network_peering,
11253 __request_id,
11254 Unknown(std::string::String),
11255 }
11256 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
11257 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11258 where
11259 D: serde::Deserializer<'de>,
11260 {
11261 struct Visitor;
11262 impl<'de> serde::de::Visitor<'de> for Visitor {
11263 type Value = __FieldTag;
11264 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11265 formatter.write_str("a field name for CreateNetworkPeeringRequest")
11266 }
11267 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
11268 where
11269 E: serde::de::Error,
11270 {
11271 use std::result::Result::Ok;
11272 use std::string::ToString;
11273 match value {
11274 "parent" => Ok(__FieldTag::__parent),
11275 "networkPeeringId" => Ok(__FieldTag::__network_peering_id),
11276 "network_peering_id" => Ok(__FieldTag::__network_peering_id),
11277 "networkPeering" => Ok(__FieldTag::__network_peering),
11278 "network_peering" => Ok(__FieldTag::__network_peering),
11279 "requestId" => Ok(__FieldTag::__request_id),
11280 "request_id" => Ok(__FieldTag::__request_id),
11281 _ => Ok(__FieldTag::Unknown(value.to_string())),
11282 }
11283 }
11284 }
11285 deserializer.deserialize_identifier(Visitor)
11286 }
11287 }
11288 struct Visitor;
11289 impl<'de> serde::de::Visitor<'de> for Visitor {
11290 type Value = CreateNetworkPeeringRequest;
11291 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11292 formatter.write_str("struct CreateNetworkPeeringRequest")
11293 }
11294 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
11295 where
11296 A: serde::de::MapAccess<'de>,
11297 {
11298 #[allow(unused_imports)]
11299 use serde::de::Error;
11300 use std::option::Option::Some;
11301 let mut fields = std::collections::HashSet::new();
11302 let mut result = Self::Value::new();
11303 while let Some(tag) = map.next_key::<__FieldTag>()? {
11304 #[allow(clippy::match_single_binding)]
11305 match tag {
11306 __FieldTag::__parent => {
11307 if !fields.insert(__FieldTag::__parent) {
11308 return std::result::Result::Err(A::Error::duplicate_field(
11309 "multiple values for parent",
11310 ));
11311 }
11312 result.parent = map
11313 .next_value::<std::option::Option<std::string::String>>()?
11314 .unwrap_or_default();
11315 }
11316 __FieldTag::__network_peering_id => {
11317 if !fields.insert(__FieldTag::__network_peering_id) {
11318 return std::result::Result::Err(A::Error::duplicate_field(
11319 "multiple values for network_peering_id",
11320 ));
11321 }
11322 result.network_peering_id = map
11323 .next_value::<std::option::Option<std::string::String>>()?
11324 .unwrap_or_default();
11325 }
11326 __FieldTag::__network_peering => {
11327 if !fields.insert(__FieldTag::__network_peering) {
11328 return std::result::Result::Err(A::Error::duplicate_field(
11329 "multiple values for network_peering",
11330 ));
11331 }
11332 result.network_peering = map
11333 .next_value::<std::option::Option<crate::model::NetworkPeering>>(
11334 )?;
11335 }
11336 __FieldTag::__request_id => {
11337 if !fields.insert(__FieldTag::__request_id) {
11338 return std::result::Result::Err(A::Error::duplicate_field(
11339 "multiple values for request_id",
11340 ));
11341 }
11342 result.request_id = map
11343 .next_value::<std::option::Option<std::string::String>>()?
11344 .unwrap_or_default();
11345 }
11346 __FieldTag::Unknown(key) => {
11347 let value = map.next_value::<serde_json::Value>()?;
11348 result._unknown_fields.insert(key, value);
11349 }
11350 }
11351 }
11352 std::result::Result::Ok(result)
11353 }
11354 }
11355 deserializer.deserialize_any(Visitor)
11356 }
11357}
11358
11359#[doc(hidden)]
11360impl serde::ser::Serialize for CreateNetworkPeeringRequest {
11361 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
11362 where
11363 S: serde::ser::Serializer,
11364 {
11365 use serde::ser::SerializeMap;
11366 #[allow(unused_imports)]
11367 use std::option::Option::Some;
11368 let mut state = serializer.serialize_map(std::option::Option::None)?;
11369 if !self.parent.is_empty() {
11370 state.serialize_entry("parent", &self.parent)?;
11371 }
11372 if !self.network_peering_id.is_empty() {
11373 state.serialize_entry("networkPeeringId", &self.network_peering_id)?;
11374 }
11375 if self.network_peering.is_some() {
11376 state.serialize_entry("networkPeering", &self.network_peering)?;
11377 }
11378 if !self.request_id.is_empty() {
11379 state.serialize_entry("requestId", &self.request_id)?;
11380 }
11381 if !self._unknown_fields.is_empty() {
11382 for (key, value) in self._unknown_fields.iter() {
11383 state.serialize_entry(key, &value)?;
11384 }
11385 }
11386 state.end()
11387 }
11388}
11389
11390#[derive(Clone, Debug, Default, PartialEq)]
11395#[non_exhaustive]
11396pub struct DeleteNetworkPeeringRequest {
11397 pub name: std::string::String,
11403
11404 pub request_id: std::string::String,
11419
11420 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
11421}
11422
11423impl DeleteNetworkPeeringRequest {
11424 pub fn new() -> Self {
11425 std::default::Default::default()
11426 }
11427
11428 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11430 self.name = v.into();
11431 self
11432 }
11433
11434 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11436 self.request_id = v.into();
11437 self
11438 }
11439}
11440
11441impl wkt::message::Message for DeleteNetworkPeeringRequest {
11442 fn typename() -> &'static str {
11443 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteNetworkPeeringRequest"
11444 }
11445}
11446
11447#[doc(hidden)]
11448impl<'de> serde::de::Deserialize<'de> for DeleteNetworkPeeringRequest {
11449 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11450 where
11451 D: serde::Deserializer<'de>,
11452 {
11453 #[allow(non_camel_case_types)]
11454 #[doc(hidden)]
11455 #[derive(PartialEq, Eq, Hash)]
11456 enum __FieldTag {
11457 __name,
11458 __request_id,
11459 Unknown(std::string::String),
11460 }
11461 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
11462 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11463 where
11464 D: serde::Deserializer<'de>,
11465 {
11466 struct Visitor;
11467 impl<'de> serde::de::Visitor<'de> for Visitor {
11468 type Value = __FieldTag;
11469 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11470 formatter.write_str("a field name for DeleteNetworkPeeringRequest")
11471 }
11472 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
11473 where
11474 E: serde::de::Error,
11475 {
11476 use std::result::Result::Ok;
11477 use std::string::ToString;
11478 match value {
11479 "name" => Ok(__FieldTag::__name),
11480 "requestId" => Ok(__FieldTag::__request_id),
11481 "request_id" => Ok(__FieldTag::__request_id),
11482 _ => Ok(__FieldTag::Unknown(value.to_string())),
11483 }
11484 }
11485 }
11486 deserializer.deserialize_identifier(Visitor)
11487 }
11488 }
11489 struct Visitor;
11490 impl<'de> serde::de::Visitor<'de> for Visitor {
11491 type Value = DeleteNetworkPeeringRequest;
11492 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11493 formatter.write_str("struct DeleteNetworkPeeringRequest")
11494 }
11495 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
11496 where
11497 A: serde::de::MapAccess<'de>,
11498 {
11499 #[allow(unused_imports)]
11500 use serde::de::Error;
11501 use std::option::Option::Some;
11502 let mut fields = std::collections::HashSet::new();
11503 let mut result = Self::Value::new();
11504 while let Some(tag) = map.next_key::<__FieldTag>()? {
11505 #[allow(clippy::match_single_binding)]
11506 match tag {
11507 __FieldTag::__name => {
11508 if !fields.insert(__FieldTag::__name) {
11509 return std::result::Result::Err(A::Error::duplicate_field(
11510 "multiple values for name",
11511 ));
11512 }
11513 result.name = map
11514 .next_value::<std::option::Option<std::string::String>>()?
11515 .unwrap_or_default();
11516 }
11517 __FieldTag::__request_id => {
11518 if !fields.insert(__FieldTag::__request_id) {
11519 return std::result::Result::Err(A::Error::duplicate_field(
11520 "multiple values for request_id",
11521 ));
11522 }
11523 result.request_id = map
11524 .next_value::<std::option::Option<std::string::String>>()?
11525 .unwrap_or_default();
11526 }
11527 __FieldTag::Unknown(key) => {
11528 let value = map.next_value::<serde_json::Value>()?;
11529 result._unknown_fields.insert(key, value);
11530 }
11531 }
11532 }
11533 std::result::Result::Ok(result)
11534 }
11535 }
11536 deserializer.deserialize_any(Visitor)
11537 }
11538}
11539
11540#[doc(hidden)]
11541impl serde::ser::Serialize for DeleteNetworkPeeringRequest {
11542 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
11543 where
11544 S: serde::ser::Serializer,
11545 {
11546 use serde::ser::SerializeMap;
11547 #[allow(unused_imports)]
11548 use std::option::Option::Some;
11549 let mut state = serializer.serialize_map(std::option::Option::None)?;
11550 if !self.name.is_empty() {
11551 state.serialize_entry("name", &self.name)?;
11552 }
11553 if !self.request_id.is_empty() {
11554 state.serialize_entry("requestId", &self.request_id)?;
11555 }
11556 if !self._unknown_fields.is_empty() {
11557 for (key, value) in self._unknown_fields.iter() {
11558 state.serialize_entry(key, &value)?;
11559 }
11560 }
11561 state.end()
11562 }
11563}
11564
11565#[derive(Clone, Debug, Default, PartialEq)]
11570#[non_exhaustive]
11571pub struct GetNetworkPeeringRequest {
11572 pub name: std::string::String,
11578
11579 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
11580}
11581
11582impl GetNetworkPeeringRequest {
11583 pub fn new() -> Self {
11584 std::default::Default::default()
11585 }
11586
11587 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11589 self.name = v.into();
11590 self
11591 }
11592}
11593
11594impl wkt::message::Message for GetNetworkPeeringRequest {
11595 fn typename() -> &'static str {
11596 "type.googleapis.com/google.cloud.vmwareengine.v1.GetNetworkPeeringRequest"
11597 }
11598}
11599
11600#[doc(hidden)]
11601impl<'de> serde::de::Deserialize<'de> for GetNetworkPeeringRequest {
11602 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11603 where
11604 D: serde::Deserializer<'de>,
11605 {
11606 #[allow(non_camel_case_types)]
11607 #[doc(hidden)]
11608 #[derive(PartialEq, Eq, Hash)]
11609 enum __FieldTag {
11610 __name,
11611 Unknown(std::string::String),
11612 }
11613 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
11614 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11615 where
11616 D: serde::Deserializer<'de>,
11617 {
11618 struct Visitor;
11619 impl<'de> serde::de::Visitor<'de> for Visitor {
11620 type Value = __FieldTag;
11621 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11622 formatter.write_str("a field name for GetNetworkPeeringRequest")
11623 }
11624 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
11625 where
11626 E: serde::de::Error,
11627 {
11628 use std::result::Result::Ok;
11629 use std::string::ToString;
11630 match value {
11631 "name" => Ok(__FieldTag::__name),
11632 _ => Ok(__FieldTag::Unknown(value.to_string())),
11633 }
11634 }
11635 }
11636 deserializer.deserialize_identifier(Visitor)
11637 }
11638 }
11639 struct Visitor;
11640 impl<'de> serde::de::Visitor<'de> for Visitor {
11641 type Value = GetNetworkPeeringRequest;
11642 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11643 formatter.write_str("struct GetNetworkPeeringRequest")
11644 }
11645 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
11646 where
11647 A: serde::de::MapAccess<'de>,
11648 {
11649 #[allow(unused_imports)]
11650 use serde::de::Error;
11651 use std::option::Option::Some;
11652 let mut fields = std::collections::HashSet::new();
11653 let mut result = Self::Value::new();
11654 while let Some(tag) = map.next_key::<__FieldTag>()? {
11655 #[allow(clippy::match_single_binding)]
11656 match tag {
11657 __FieldTag::__name => {
11658 if !fields.insert(__FieldTag::__name) {
11659 return std::result::Result::Err(A::Error::duplicate_field(
11660 "multiple values for name",
11661 ));
11662 }
11663 result.name = map
11664 .next_value::<std::option::Option<std::string::String>>()?
11665 .unwrap_or_default();
11666 }
11667 __FieldTag::Unknown(key) => {
11668 let value = map.next_value::<serde_json::Value>()?;
11669 result._unknown_fields.insert(key, value);
11670 }
11671 }
11672 }
11673 std::result::Result::Ok(result)
11674 }
11675 }
11676 deserializer.deserialize_any(Visitor)
11677 }
11678}
11679
11680#[doc(hidden)]
11681impl serde::ser::Serialize for GetNetworkPeeringRequest {
11682 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
11683 where
11684 S: serde::ser::Serializer,
11685 {
11686 use serde::ser::SerializeMap;
11687 #[allow(unused_imports)]
11688 use std::option::Option::Some;
11689 let mut state = serializer.serialize_map(std::option::Option::None)?;
11690 if !self.name.is_empty() {
11691 state.serialize_entry("name", &self.name)?;
11692 }
11693 if !self._unknown_fields.is_empty() {
11694 for (key, value) in self._unknown_fields.iter() {
11695 state.serialize_entry(key, &value)?;
11696 }
11697 }
11698 state.end()
11699 }
11700}
11701
11702#[derive(Clone, Debug, Default, PartialEq)]
11707#[non_exhaustive]
11708pub struct ListNetworkPeeringsRequest {
11709 pub parent: std::string::String,
11714
11715 pub page_size: i32,
11719
11720 pub page_token: std::string::String,
11727
11728 pub filter: std::string::String,
11756
11757 pub order_by: std::string::String,
11763
11764 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
11765}
11766
11767impl ListNetworkPeeringsRequest {
11768 pub fn new() -> Self {
11769 std::default::Default::default()
11770 }
11771
11772 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11774 self.parent = v.into();
11775 self
11776 }
11777
11778 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
11780 self.page_size = v.into();
11781 self
11782 }
11783
11784 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11786 self.page_token = v.into();
11787 self
11788 }
11789
11790 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11792 self.filter = v.into();
11793 self
11794 }
11795
11796 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
11798 self.order_by = v.into();
11799 self
11800 }
11801}
11802
11803impl wkt::message::Message for ListNetworkPeeringsRequest {
11804 fn typename() -> &'static str {
11805 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNetworkPeeringsRequest"
11806 }
11807}
11808
11809#[doc(hidden)]
11810impl<'de> serde::de::Deserialize<'de> for ListNetworkPeeringsRequest {
11811 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11812 where
11813 D: serde::Deserializer<'de>,
11814 {
11815 #[allow(non_camel_case_types)]
11816 #[doc(hidden)]
11817 #[derive(PartialEq, Eq, Hash)]
11818 enum __FieldTag {
11819 __parent,
11820 __page_size,
11821 __page_token,
11822 __filter,
11823 __order_by,
11824 Unknown(std::string::String),
11825 }
11826 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
11827 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
11828 where
11829 D: serde::Deserializer<'de>,
11830 {
11831 struct Visitor;
11832 impl<'de> serde::de::Visitor<'de> for Visitor {
11833 type Value = __FieldTag;
11834 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11835 formatter.write_str("a field name for ListNetworkPeeringsRequest")
11836 }
11837 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
11838 where
11839 E: serde::de::Error,
11840 {
11841 use std::result::Result::Ok;
11842 use std::string::ToString;
11843 match value {
11844 "parent" => Ok(__FieldTag::__parent),
11845 "pageSize" => Ok(__FieldTag::__page_size),
11846 "page_size" => Ok(__FieldTag::__page_size),
11847 "pageToken" => Ok(__FieldTag::__page_token),
11848 "page_token" => Ok(__FieldTag::__page_token),
11849 "filter" => Ok(__FieldTag::__filter),
11850 "orderBy" => Ok(__FieldTag::__order_by),
11851 "order_by" => Ok(__FieldTag::__order_by),
11852 _ => Ok(__FieldTag::Unknown(value.to_string())),
11853 }
11854 }
11855 }
11856 deserializer.deserialize_identifier(Visitor)
11857 }
11858 }
11859 struct Visitor;
11860 impl<'de> serde::de::Visitor<'de> for Visitor {
11861 type Value = ListNetworkPeeringsRequest;
11862 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
11863 formatter.write_str("struct ListNetworkPeeringsRequest")
11864 }
11865 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
11866 where
11867 A: serde::de::MapAccess<'de>,
11868 {
11869 #[allow(unused_imports)]
11870 use serde::de::Error;
11871 use std::option::Option::Some;
11872 let mut fields = std::collections::HashSet::new();
11873 let mut result = Self::Value::new();
11874 while let Some(tag) = map.next_key::<__FieldTag>()? {
11875 #[allow(clippy::match_single_binding)]
11876 match tag {
11877 __FieldTag::__parent => {
11878 if !fields.insert(__FieldTag::__parent) {
11879 return std::result::Result::Err(A::Error::duplicate_field(
11880 "multiple values for parent",
11881 ));
11882 }
11883 result.parent = map
11884 .next_value::<std::option::Option<std::string::String>>()?
11885 .unwrap_or_default();
11886 }
11887 __FieldTag::__page_size => {
11888 if !fields.insert(__FieldTag::__page_size) {
11889 return std::result::Result::Err(A::Error::duplicate_field(
11890 "multiple values for page_size",
11891 ));
11892 }
11893 struct __With(std::option::Option<i32>);
11894 impl<'de> serde::de::Deserialize<'de> for __With {
11895 fn deserialize<D>(
11896 deserializer: D,
11897 ) -> std::result::Result<Self, D::Error>
11898 where
11899 D: serde::de::Deserializer<'de>,
11900 {
11901 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
11902 }
11903 }
11904 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
11905 }
11906 __FieldTag::__page_token => {
11907 if !fields.insert(__FieldTag::__page_token) {
11908 return std::result::Result::Err(A::Error::duplicate_field(
11909 "multiple values for page_token",
11910 ));
11911 }
11912 result.page_token = map
11913 .next_value::<std::option::Option<std::string::String>>()?
11914 .unwrap_or_default();
11915 }
11916 __FieldTag::__filter => {
11917 if !fields.insert(__FieldTag::__filter) {
11918 return std::result::Result::Err(A::Error::duplicate_field(
11919 "multiple values for filter",
11920 ));
11921 }
11922 result.filter = map
11923 .next_value::<std::option::Option<std::string::String>>()?
11924 .unwrap_or_default();
11925 }
11926 __FieldTag::__order_by => {
11927 if !fields.insert(__FieldTag::__order_by) {
11928 return std::result::Result::Err(A::Error::duplicate_field(
11929 "multiple values for order_by",
11930 ));
11931 }
11932 result.order_by = map
11933 .next_value::<std::option::Option<std::string::String>>()?
11934 .unwrap_or_default();
11935 }
11936 __FieldTag::Unknown(key) => {
11937 let value = map.next_value::<serde_json::Value>()?;
11938 result._unknown_fields.insert(key, value);
11939 }
11940 }
11941 }
11942 std::result::Result::Ok(result)
11943 }
11944 }
11945 deserializer.deserialize_any(Visitor)
11946 }
11947}
11948
11949#[doc(hidden)]
11950impl serde::ser::Serialize for ListNetworkPeeringsRequest {
11951 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
11952 where
11953 S: serde::ser::Serializer,
11954 {
11955 use serde::ser::SerializeMap;
11956 #[allow(unused_imports)]
11957 use std::option::Option::Some;
11958 let mut state = serializer.serialize_map(std::option::Option::None)?;
11959 if !self.parent.is_empty() {
11960 state.serialize_entry("parent", &self.parent)?;
11961 }
11962 if !wkt::internal::is_default(&self.page_size) {
11963 struct __With<'a>(&'a i32);
11964 impl<'a> serde::ser::Serialize for __With<'a> {
11965 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
11966 where
11967 S: serde::ser::Serializer,
11968 {
11969 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
11970 }
11971 }
11972 state.serialize_entry("pageSize", &__With(&self.page_size))?;
11973 }
11974 if !self.page_token.is_empty() {
11975 state.serialize_entry("pageToken", &self.page_token)?;
11976 }
11977 if !self.filter.is_empty() {
11978 state.serialize_entry("filter", &self.filter)?;
11979 }
11980 if !self.order_by.is_empty() {
11981 state.serialize_entry("orderBy", &self.order_by)?;
11982 }
11983 if !self._unknown_fields.is_empty() {
11984 for (key, value) in self._unknown_fields.iter() {
11985 state.serialize_entry(key, &value)?;
11986 }
11987 }
11988 state.end()
11989 }
11990}
11991
11992#[derive(Clone, Debug, Default, PartialEq)]
11997#[non_exhaustive]
11998pub struct UpdateNetworkPeeringRequest {
11999 pub network_peering: std::option::Option<crate::model::NetworkPeering>,
12001
12002 pub update_mask: std::option::Option<wkt::FieldMask>,
12008
12009 pub request_id: std::string::String,
12024
12025 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
12026}
12027
12028impl UpdateNetworkPeeringRequest {
12029 pub fn new() -> Self {
12030 std::default::Default::default()
12031 }
12032
12033 pub fn set_network_peering<T>(mut self, v: T) -> Self
12035 where
12036 T: std::convert::Into<crate::model::NetworkPeering>,
12037 {
12038 self.network_peering = std::option::Option::Some(v.into());
12039 self
12040 }
12041
12042 pub fn set_or_clear_network_peering<T>(mut self, v: std::option::Option<T>) -> Self
12044 where
12045 T: std::convert::Into<crate::model::NetworkPeering>,
12046 {
12047 self.network_peering = v.map(|x| x.into());
12048 self
12049 }
12050
12051 pub fn set_update_mask<T>(mut self, v: T) -> Self
12053 where
12054 T: std::convert::Into<wkt::FieldMask>,
12055 {
12056 self.update_mask = std::option::Option::Some(v.into());
12057 self
12058 }
12059
12060 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
12062 where
12063 T: std::convert::Into<wkt::FieldMask>,
12064 {
12065 self.update_mask = v.map(|x| x.into());
12066 self
12067 }
12068
12069 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12071 self.request_id = v.into();
12072 self
12073 }
12074}
12075
12076impl wkt::message::Message for UpdateNetworkPeeringRequest {
12077 fn typename() -> &'static str {
12078 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateNetworkPeeringRequest"
12079 }
12080}
12081
12082#[doc(hidden)]
12083impl<'de> serde::de::Deserialize<'de> for UpdateNetworkPeeringRequest {
12084 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12085 where
12086 D: serde::Deserializer<'de>,
12087 {
12088 #[allow(non_camel_case_types)]
12089 #[doc(hidden)]
12090 #[derive(PartialEq, Eq, Hash)]
12091 enum __FieldTag {
12092 __network_peering,
12093 __update_mask,
12094 __request_id,
12095 Unknown(std::string::String),
12096 }
12097 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
12098 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12099 where
12100 D: serde::Deserializer<'de>,
12101 {
12102 struct Visitor;
12103 impl<'de> serde::de::Visitor<'de> for Visitor {
12104 type Value = __FieldTag;
12105 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12106 formatter.write_str("a field name for UpdateNetworkPeeringRequest")
12107 }
12108 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
12109 where
12110 E: serde::de::Error,
12111 {
12112 use std::result::Result::Ok;
12113 use std::string::ToString;
12114 match value {
12115 "networkPeering" => Ok(__FieldTag::__network_peering),
12116 "network_peering" => Ok(__FieldTag::__network_peering),
12117 "updateMask" => Ok(__FieldTag::__update_mask),
12118 "update_mask" => Ok(__FieldTag::__update_mask),
12119 "requestId" => Ok(__FieldTag::__request_id),
12120 "request_id" => Ok(__FieldTag::__request_id),
12121 _ => Ok(__FieldTag::Unknown(value.to_string())),
12122 }
12123 }
12124 }
12125 deserializer.deserialize_identifier(Visitor)
12126 }
12127 }
12128 struct Visitor;
12129 impl<'de> serde::de::Visitor<'de> for Visitor {
12130 type Value = UpdateNetworkPeeringRequest;
12131 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12132 formatter.write_str("struct UpdateNetworkPeeringRequest")
12133 }
12134 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
12135 where
12136 A: serde::de::MapAccess<'de>,
12137 {
12138 #[allow(unused_imports)]
12139 use serde::de::Error;
12140 use std::option::Option::Some;
12141 let mut fields = std::collections::HashSet::new();
12142 let mut result = Self::Value::new();
12143 while let Some(tag) = map.next_key::<__FieldTag>()? {
12144 #[allow(clippy::match_single_binding)]
12145 match tag {
12146 __FieldTag::__network_peering => {
12147 if !fields.insert(__FieldTag::__network_peering) {
12148 return std::result::Result::Err(A::Error::duplicate_field(
12149 "multiple values for network_peering",
12150 ));
12151 }
12152 result.network_peering = map
12153 .next_value::<std::option::Option<crate::model::NetworkPeering>>(
12154 )?;
12155 }
12156 __FieldTag::__update_mask => {
12157 if !fields.insert(__FieldTag::__update_mask) {
12158 return std::result::Result::Err(A::Error::duplicate_field(
12159 "multiple values for update_mask",
12160 ));
12161 }
12162 result.update_mask =
12163 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
12164 }
12165 __FieldTag::__request_id => {
12166 if !fields.insert(__FieldTag::__request_id) {
12167 return std::result::Result::Err(A::Error::duplicate_field(
12168 "multiple values for request_id",
12169 ));
12170 }
12171 result.request_id = map
12172 .next_value::<std::option::Option<std::string::String>>()?
12173 .unwrap_or_default();
12174 }
12175 __FieldTag::Unknown(key) => {
12176 let value = map.next_value::<serde_json::Value>()?;
12177 result._unknown_fields.insert(key, value);
12178 }
12179 }
12180 }
12181 std::result::Result::Ok(result)
12182 }
12183 }
12184 deserializer.deserialize_any(Visitor)
12185 }
12186}
12187
12188#[doc(hidden)]
12189impl serde::ser::Serialize for UpdateNetworkPeeringRequest {
12190 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
12191 where
12192 S: serde::ser::Serializer,
12193 {
12194 use serde::ser::SerializeMap;
12195 #[allow(unused_imports)]
12196 use std::option::Option::Some;
12197 let mut state = serializer.serialize_map(std::option::Option::None)?;
12198 if self.network_peering.is_some() {
12199 state.serialize_entry("networkPeering", &self.network_peering)?;
12200 }
12201 if self.update_mask.is_some() {
12202 state.serialize_entry("updateMask", &self.update_mask)?;
12203 }
12204 if !self.request_id.is_empty() {
12205 state.serialize_entry("requestId", &self.request_id)?;
12206 }
12207 if !self._unknown_fields.is_empty() {
12208 for (key, value) in self._unknown_fields.iter() {
12209 state.serialize_entry(key, &value)?;
12210 }
12211 }
12212 state.end()
12213 }
12214}
12215
12216#[derive(Clone, Debug, Default, PartialEq)]
12221#[non_exhaustive]
12222pub struct ListNetworkPeeringsResponse {
12223 pub network_peerings: std::vec::Vec<crate::model::NetworkPeering>,
12225
12226 pub next_page_token: std::string::String,
12229
12230 pub unreachable: std::vec::Vec<std::string::String>,
12232
12233 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
12234}
12235
12236impl ListNetworkPeeringsResponse {
12237 pub fn new() -> Self {
12238 std::default::Default::default()
12239 }
12240
12241 pub fn set_network_peerings<T, V>(mut self, v: T) -> Self
12243 where
12244 T: std::iter::IntoIterator<Item = V>,
12245 V: std::convert::Into<crate::model::NetworkPeering>,
12246 {
12247 use std::iter::Iterator;
12248 self.network_peerings = v.into_iter().map(|i| i.into()).collect();
12249 self
12250 }
12251
12252 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12254 self.next_page_token = v.into();
12255 self
12256 }
12257
12258 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
12260 where
12261 T: std::iter::IntoIterator<Item = V>,
12262 V: std::convert::Into<std::string::String>,
12263 {
12264 use std::iter::Iterator;
12265 self.unreachable = v.into_iter().map(|i| i.into()).collect();
12266 self
12267 }
12268}
12269
12270impl wkt::message::Message for ListNetworkPeeringsResponse {
12271 fn typename() -> &'static str {
12272 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNetworkPeeringsResponse"
12273 }
12274}
12275
12276#[doc(hidden)]
12277impl gax::paginator::internal::PageableResponse for ListNetworkPeeringsResponse {
12278 type PageItem = crate::model::NetworkPeering;
12279
12280 fn items(self) -> std::vec::Vec<Self::PageItem> {
12281 self.network_peerings
12282 }
12283
12284 fn next_page_token(&self) -> std::string::String {
12285 use std::clone::Clone;
12286 self.next_page_token.clone()
12287 }
12288}
12289
12290#[doc(hidden)]
12291impl<'de> serde::de::Deserialize<'de> for ListNetworkPeeringsResponse {
12292 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12293 where
12294 D: serde::Deserializer<'de>,
12295 {
12296 #[allow(non_camel_case_types)]
12297 #[doc(hidden)]
12298 #[derive(PartialEq, Eq, Hash)]
12299 enum __FieldTag {
12300 __network_peerings,
12301 __next_page_token,
12302 __unreachable,
12303 Unknown(std::string::String),
12304 }
12305 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
12306 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12307 where
12308 D: serde::Deserializer<'de>,
12309 {
12310 struct Visitor;
12311 impl<'de> serde::de::Visitor<'de> for Visitor {
12312 type Value = __FieldTag;
12313 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12314 formatter.write_str("a field name for ListNetworkPeeringsResponse")
12315 }
12316 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
12317 where
12318 E: serde::de::Error,
12319 {
12320 use std::result::Result::Ok;
12321 use std::string::ToString;
12322 match value {
12323 "networkPeerings" => Ok(__FieldTag::__network_peerings),
12324 "network_peerings" => Ok(__FieldTag::__network_peerings),
12325 "nextPageToken" => Ok(__FieldTag::__next_page_token),
12326 "next_page_token" => Ok(__FieldTag::__next_page_token),
12327 "unreachable" => Ok(__FieldTag::__unreachable),
12328 _ => Ok(__FieldTag::Unknown(value.to_string())),
12329 }
12330 }
12331 }
12332 deserializer.deserialize_identifier(Visitor)
12333 }
12334 }
12335 struct Visitor;
12336 impl<'de> serde::de::Visitor<'de> for Visitor {
12337 type Value = ListNetworkPeeringsResponse;
12338 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12339 formatter.write_str("struct ListNetworkPeeringsResponse")
12340 }
12341 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
12342 where
12343 A: serde::de::MapAccess<'de>,
12344 {
12345 #[allow(unused_imports)]
12346 use serde::de::Error;
12347 use std::option::Option::Some;
12348 let mut fields = std::collections::HashSet::new();
12349 let mut result = Self::Value::new();
12350 while let Some(tag) = map.next_key::<__FieldTag>()? {
12351 #[allow(clippy::match_single_binding)]
12352 match tag {
12353 __FieldTag::__network_peerings => {
12354 if !fields.insert(__FieldTag::__network_peerings) {
12355 return std::result::Result::Err(A::Error::duplicate_field(
12356 "multiple values for network_peerings",
12357 ));
12358 }
12359 result.network_peerings =
12360 map.next_value::<std::option::Option<
12361 std::vec::Vec<crate::model::NetworkPeering>,
12362 >>()?
12363 .unwrap_or_default();
12364 }
12365 __FieldTag::__next_page_token => {
12366 if !fields.insert(__FieldTag::__next_page_token) {
12367 return std::result::Result::Err(A::Error::duplicate_field(
12368 "multiple values for next_page_token",
12369 ));
12370 }
12371 result.next_page_token = map
12372 .next_value::<std::option::Option<std::string::String>>()?
12373 .unwrap_or_default();
12374 }
12375 __FieldTag::__unreachable => {
12376 if !fields.insert(__FieldTag::__unreachable) {
12377 return std::result::Result::Err(A::Error::duplicate_field(
12378 "multiple values for unreachable",
12379 ));
12380 }
12381 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
12382 }
12383 __FieldTag::Unknown(key) => {
12384 let value = map.next_value::<serde_json::Value>()?;
12385 result._unknown_fields.insert(key, value);
12386 }
12387 }
12388 }
12389 std::result::Result::Ok(result)
12390 }
12391 }
12392 deserializer.deserialize_any(Visitor)
12393 }
12394}
12395
12396#[doc(hidden)]
12397impl serde::ser::Serialize for ListNetworkPeeringsResponse {
12398 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
12399 where
12400 S: serde::ser::Serializer,
12401 {
12402 use serde::ser::SerializeMap;
12403 #[allow(unused_imports)]
12404 use std::option::Option::Some;
12405 let mut state = serializer.serialize_map(std::option::Option::None)?;
12406 if !self.network_peerings.is_empty() {
12407 state.serialize_entry("networkPeerings", &self.network_peerings)?;
12408 }
12409 if !self.next_page_token.is_empty() {
12410 state.serialize_entry("nextPageToken", &self.next_page_token)?;
12411 }
12412 if !self.unreachable.is_empty() {
12413 state.serialize_entry("unreachable", &self.unreachable)?;
12414 }
12415 if !self._unknown_fields.is_empty() {
12416 for (key, value) in self._unknown_fields.iter() {
12417 state.serialize_entry(key, &value)?;
12418 }
12419 }
12420 state.end()
12421 }
12422}
12423
12424#[derive(Clone, Debug, Default, PartialEq)]
12429#[non_exhaustive]
12430pub struct ListPeeringRoutesRequest {
12431 pub parent: std::string::String,
12436
12437 pub page_size: i32,
12442
12443 pub page_token: std::string::String,
12448
12449 pub filter: std::string::String,
12455
12456 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
12457}
12458
12459impl ListPeeringRoutesRequest {
12460 pub fn new() -> Self {
12461 std::default::Default::default()
12462 }
12463
12464 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12466 self.parent = v.into();
12467 self
12468 }
12469
12470 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
12472 self.page_size = v.into();
12473 self
12474 }
12475
12476 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12478 self.page_token = v.into();
12479 self
12480 }
12481
12482 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12484 self.filter = v.into();
12485 self
12486 }
12487}
12488
12489impl wkt::message::Message for ListPeeringRoutesRequest {
12490 fn typename() -> &'static str {
12491 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPeeringRoutesRequest"
12492 }
12493}
12494
12495#[doc(hidden)]
12496impl<'de> serde::de::Deserialize<'de> for ListPeeringRoutesRequest {
12497 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12498 where
12499 D: serde::Deserializer<'de>,
12500 {
12501 #[allow(non_camel_case_types)]
12502 #[doc(hidden)]
12503 #[derive(PartialEq, Eq, Hash)]
12504 enum __FieldTag {
12505 __parent,
12506 __page_size,
12507 __page_token,
12508 __filter,
12509 Unknown(std::string::String),
12510 }
12511 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
12512 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12513 where
12514 D: serde::Deserializer<'de>,
12515 {
12516 struct Visitor;
12517 impl<'de> serde::de::Visitor<'de> for Visitor {
12518 type Value = __FieldTag;
12519 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12520 formatter.write_str("a field name for ListPeeringRoutesRequest")
12521 }
12522 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
12523 where
12524 E: serde::de::Error,
12525 {
12526 use std::result::Result::Ok;
12527 use std::string::ToString;
12528 match value {
12529 "parent" => Ok(__FieldTag::__parent),
12530 "pageSize" => Ok(__FieldTag::__page_size),
12531 "page_size" => Ok(__FieldTag::__page_size),
12532 "pageToken" => Ok(__FieldTag::__page_token),
12533 "page_token" => Ok(__FieldTag::__page_token),
12534 "filter" => Ok(__FieldTag::__filter),
12535 _ => Ok(__FieldTag::Unknown(value.to_string())),
12536 }
12537 }
12538 }
12539 deserializer.deserialize_identifier(Visitor)
12540 }
12541 }
12542 struct Visitor;
12543 impl<'de> serde::de::Visitor<'de> for Visitor {
12544 type Value = ListPeeringRoutesRequest;
12545 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12546 formatter.write_str("struct ListPeeringRoutesRequest")
12547 }
12548 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
12549 where
12550 A: serde::de::MapAccess<'de>,
12551 {
12552 #[allow(unused_imports)]
12553 use serde::de::Error;
12554 use std::option::Option::Some;
12555 let mut fields = std::collections::HashSet::new();
12556 let mut result = Self::Value::new();
12557 while let Some(tag) = map.next_key::<__FieldTag>()? {
12558 #[allow(clippy::match_single_binding)]
12559 match tag {
12560 __FieldTag::__parent => {
12561 if !fields.insert(__FieldTag::__parent) {
12562 return std::result::Result::Err(A::Error::duplicate_field(
12563 "multiple values for parent",
12564 ));
12565 }
12566 result.parent = map
12567 .next_value::<std::option::Option<std::string::String>>()?
12568 .unwrap_or_default();
12569 }
12570 __FieldTag::__page_size => {
12571 if !fields.insert(__FieldTag::__page_size) {
12572 return std::result::Result::Err(A::Error::duplicate_field(
12573 "multiple values for page_size",
12574 ));
12575 }
12576 struct __With(std::option::Option<i32>);
12577 impl<'de> serde::de::Deserialize<'de> for __With {
12578 fn deserialize<D>(
12579 deserializer: D,
12580 ) -> std::result::Result<Self, D::Error>
12581 where
12582 D: serde::de::Deserializer<'de>,
12583 {
12584 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
12585 }
12586 }
12587 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
12588 }
12589 __FieldTag::__page_token => {
12590 if !fields.insert(__FieldTag::__page_token) {
12591 return std::result::Result::Err(A::Error::duplicate_field(
12592 "multiple values for page_token",
12593 ));
12594 }
12595 result.page_token = map
12596 .next_value::<std::option::Option<std::string::String>>()?
12597 .unwrap_or_default();
12598 }
12599 __FieldTag::__filter => {
12600 if !fields.insert(__FieldTag::__filter) {
12601 return std::result::Result::Err(A::Error::duplicate_field(
12602 "multiple values for filter",
12603 ));
12604 }
12605 result.filter = map
12606 .next_value::<std::option::Option<std::string::String>>()?
12607 .unwrap_or_default();
12608 }
12609 __FieldTag::Unknown(key) => {
12610 let value = map.next_value::<serde_json::Value>()?;
12611 result._unknown_fields.insert(key, value);
12612 }
12613 }
12614 }
12615 std::result::Result::Ok(result)
12616 }
12617 }
12618 deserializer.deserialize_any(Visitor)
12619 }
12620}
12621
12622#[doc(hidden)]
12623impl serde::ser::Serialize for ListPeeringRoutesRequest {
12624 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
12625 where
12626 S: serde::ser::Serializer,
12627 {
12628 use serde::ser::SerializeMap;
12629 #[allow(unused_imports)]
12630 use std::option::Option::Some;
12631 let mut state = serializer.serialize_map(std::option::Option::None)?;
12632 if !self.parent.is_empty() {
12633 state.serialize_entry("parent", &self.parent)?;
12634 }
12635 if !wkt::internal::is_default(&self.page_size) {
12636 struct __With<'a>(&'a i32);
12637 impl<'a> serde::ser::Serialize for __With<'a> {
12638 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
12639 where
12640 S: serde::ser::Serializer,
12641 {
12642 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
12643 }
12644 }
12645 state.serialize_entry("pageSize", &__With(&self.page_size))?;
12646 }
12647 if !self.page_token.is_empty() {
12648 state.serialize_entry("pageToken", &self.page_token)?;
12649 }
12650 if !self.filter.is_empty() {
12651 state.serialize_entry("filter", &self.filter)?;
12652 }
12653 if !self._unknown_fields.is_empty() {
12654 for (key, value) in self._unknown_fields.iter() {
12655 state.serialize_entry(key, &value)?;
12656 }
12657 }
12658 state.end()
12659 }
12660}
12661
12662#[derive(Clone, Debug, Default, PartialEq)]
12667#[non_exhaustive]
12668pub struct ListPeeringRoutesResponse {
12669 pub peering_routes: std::vec::Vec<crate::model::PeeringRoute>,
12671
12672 pub next_page_token: std::string::String,
12675
12676 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
12677}
12678
12679impl ListPeeringRoutesResponse {
12680 pub fn new() -> Self {
12681 std::default::Default::default()
12682 }
12683
12684 pub fn set_peering_routes<T, V>(mut self, v: T) -> Self
12686 where
12687 T: std::iter::IntoIterator<Item = V>,
12688 V: std::convert::Into<crate::model::PeeringRoute>,
12689 {
12690 use std::iter::Iterator;
12691 self.peering_routes = v.into_iter().map(|i| i.into()).collect();
12692 self
12693 }
12694
12695 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12697 self.next_page_token = v.into();
12698 self
12699 }
12700}
12701
12702impl wkt::message::Message for ListPeeringRoutesResponse {
12703 fn typename() -> &'static str {
12704 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPeeringRoutesResponse"
12705 }
12706}
12707
12708#[doc(hidden)]
12709impl gax::paginator::internal::PageableResponse for ListPeeringRoutesResponse {
12710 type PageItem = crate::model::PeeringRoute;
12711
12712 fn items(self) -> std::vec::Vec<Self::PageItem> {
12713 self.peering_routes
12714 }
12715
12716 fn next_page_token(&self) -> std::string::String {
12717 use std::clone::Clone;
12718 self.next_page_token.clone()
12719 }
12720}
12721
12722#[doc(hidden)]
12723impl<'de> serde::de::Deserialize<'de> for ListPeeringRoutesResponse {
12724 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12725 where
12726 D: serde::Deserializer<'de>,
12727 {
12728 #[allow(non_camel_case_types)]
12729 #[doc(hidden)]
12730 #[derive(PartialEq, Eq, Hash)]
12731 enum __FieldTag {
12732 __peering_routes,
12733 __next_page_token,
12734 Unknown(std::string::String),
12735 }
12736 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
12737 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12738 where
12739 D: serde::Deserializer<'de>,
12740 {
12741 struct Visitor;
12742 impl<'de> serde::de::Visitor<'de> for Visitor {
12743 type Value = __FieldTag;
12744 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12745 formatter.write_str("a field name for ListPeeringRoutesResponse")
12746 }
12747 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
12748 where
12749 E: serde::de::Error,
12750 {
12751 use std::result::Result::Ok;
12752 use std::string::ToString;
12753 match value {
12754 "peeringRoutes" => Ok(__FieldTag::__peering_routes),
12755 "peering_routes" => Ok(__FieldTag::__peering_routes),
12756 "nextPageToken" => Ok(__FieldTag::__next_page_token),
12757 "next_page_token" => Ok(__FieldTag::__next_page_token),
12758 _ => Ok(__FieldTag::Unknown(value.to_string())),
12759 }
12760 }
12761 }
12762 deserializer.deserialize_identifier(Visitor)
12763 }
12764 }
12765 struct Visitor;
12766 impl<'de> serde::de::Visitor<'de> for Visitor {
12767 type Value = ListPeeringRoutesResponse;
12768 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12769 formatter.write_str("struct ListPeeringRoutesResponse")
12770 }
12771 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
12772 where
12773 A: serde::de::MapAccess<'de>,
12774 {
12775 #[allow(unused_imports)]
12776 use serde::de::Error;
12777 use std::option::Option::Some;
12778 let mut fields = std::collections::HashSet::new();
12779 let mut result = Self::Value::new();
12780 while let Some(tag) = map.next_key::<__FieldTag>()? {
12781 #[allow(clippy::match_single_binding)]
12782 match tag {
12783 __FieldTag::__peering_routes => {
12784 if !fields.insert(__FieldTag::__peering_routes) {
12785 return std::result::Result::Err(A::Error::duplicate_field(
12786 "multiple values for peering_routes",
12787 ));
12788 }
12789 result.peering_routes = map.next_value::<std::option::Option<std::vec::Vec<crate::model::PeeringRoute>>>()?.unwrap_or_default();
12790 }
12791 __FieldTag::__next_page_token => {
12792 if !fields.insert(__FieldTag::__next_page_token) {
12793 return std::result::Result::Err(A::Error::duplicate_field(
12794 "multiple values for next_page_token",
12795 ));
12796 }
12797 result.next_page_token = map
12798 .next_value::<std::option::Option<std::string::String>>()?
12799 .unwrap_or_default();
12800 }
12801 __FieldTag::Unknown(key) => {
12802 let value = map.next_value::<serde_json::Value>()?;
12803 result._unknown_fields.insert(key, value);
12804 }
12805 }
12806 }
12807 std::result::Result::Ok(result)
12808 }
12809 }
12810 deserializer.deserialize_any(Visitor)
12811 }
12812}
12813
12814#[doc(hidden)]
12815impl serde::ser::Serialize for ListPeeringRoutesResponse {
12816 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
12817 where
12818 S: serde::ser::Serializer,
12819 {
12820 use serde::ser::SerializeMap;
12821 #[allow(unused_imports)]
12822 use std::option::Option::Some;
12823 let mut state = serializer.serialize_map(std::option::Option::None)?;
12824 if !self.peering_routes.is_empty() {
12825 state.serialize_entry("peeringRoutes", &self.peering_routes)?;
12826 }
12827 if !self.next_page_token.is_empty() {
12828 state.serialize_entry("nextPageToken", &self.next_page_token)?;
12829 }
12830 if !self._unknown_fields.is_empty() {
12831 for (key, value) in self._unknown_fields.iter() {
12832 state.serialize_entry(key, &value)?;
12833 }
12834 }
12835 state.end()
12836 }
12837}
12838
12839#[derive(Clone, Debug, Default, PartialEq)]
12844#[non_exhaustive]
12845pub struct ListNetworkPoliciesRequest {
12846 pub parent: std::string::String,
12851
12852 pub page_size: i32,
12857
12858 pub page_token: std::string::String,
12865
12866 pub filter: std::string::String,
12894
12895 pub order_by: std::string::String,
12901
12902 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
12903}
12904
12905impl ListNetworkPoliciesRequest {
12906 pub fn new() -> Self {
12907 std::default::Default::default()
12908 }
12909
12910 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12912 self.parent = v.into();
12913 self
12914 }
12915
12916 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
12918 self.page_size = v.into();
12919 self
12920 }
12921
12922 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12924 self.page_token = v.into();
12925 self
12926 }
12927
12928 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12930 self.filter = v.into();
12931 self
12932 }
12933
12934 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
12936 self.order_by = v.into();
12937 self
12938 }
12939}
12940
12941impl wkt::message::Message for ListNetworkPoliciesRequest {
12942 fn typename() -> &'static str {
12943 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNetworkPoliciesRequest"
12944 }
12945}
12946
12947#[doc(hidden)]
12948impl<'de> serde::de::Deserialize<'de> for ListNetworkPoliciesRequest {
12949 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12950 where
12951 D: serde::Deserializer<'de>,
12952 {
12953 #[allow(non_camel_case_types)]
12954 #[doc(hidden)]
12955 #[derive(PartialEq, Eq, Hash)]
12956 enum __FieldTag {
12957 __parent,
12958 __page_size,
12959 __page_token,
12960 __filter,
12961 __order_by,
12962 Unknown(std::string::String),
12963 }
12964 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
12965 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
12966 where
12967 D: serde::Deserializer<'de>,
12968 {
12969 struct Visitor;
12970 impl<'de> serde::de::Visitor<'de> for Visitor {
12971 type Value = __FieldTag;
12972 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
12973 formatter.write_str("a field name for ListNetworkPoliciesRequest")
12974 }
12975 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
12976 where
12977 E: serde::de::Error,
12978 {
12979 use std::result::Result::Ok;
12980 use std::string::ToString;
12981 match value {
12982 "parent" => Ok(__FieldTag::__parent),
12983 "pageSize" => Ok(__FieldTag::__page_size),
12984 "page_size" => Ok(__FieldTag::__page_size),
12985 "pageToken" => Ok(__FieldTag::__page_token),
12986 "page_token" => Ok(__FieldTag::__page_token),
12987 "filter" => Ok(__FieldTag::__filter),
12988 "orderBy" => Ok(__FieldTag::__order_by),
12989 "order_by" => Ok(__FieldTag::__order_by),
12990 _ => Ok(__FieldTag::Unknown(value.to_string())),
12991 }
12992 }
12993 }
12994 deserializer.deserialize_identifier(Visitor)
12995 }
12996 }
12997 struct Visitor;
12998 impl<'de> serde::de::Visitor<'de> for Visitor {
12999 type Value = ListNetworkPoliciesRequest;
13000 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13001 formatter.write_str("struct ListNetworkPoliciesRequest")
13002 }
13003 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
13004 where
13005 A: serde::de::MapAccess<'de>,
13006 {
13007 #[allow(unused_imports)]
13008 use serde::de::Error;
13009 use std::option::Option::Some;
13010 let mut fields = std::collections::HashSet::new();
13011 let mut result = Self::Value::new();
13012 while let Some(tag) = map.next_key::<__FieldTag>()? {
13013 #[allow(clippy::match_single_binding)]
13014 match tag {
13015 __FieldTag::__parent => {
13016 if !fields.insert(__FieldTag::__parent) {
13017 return std::result::Result::Err(A::Error::duplicate_field(
13018 "multiple values for parent",
13019 ));
13020 }
13021 result.parent = map
13022 .next_value::<std::option::Option<std::string::String>>()?
13023 .unwrap_or_default();
13024 }
13025 __FieldTag::__page_size => {
13026 if !fields.insert(__FieldTag::__page_size) {
13027 return std::result::Result::Err(A::Error::duplicate_field(
13028 "multiple values for page_size",
13029 ));
13030 }
13031 struct __With(std::option::Option<i32>);
13032 impl<'de> serde::de::Deserialize<'de> for __With {
13033 fn deserialize<D>(
13034 deserializer: D,
13035 ) -> std::result::Result<Self, D::Error>
13036 where
13037 D: serde::de::Deserializer<'de>,
13038 {
13039 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
13040 }
13041 }
13042 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
13043 }
13044 __FieldTag::__page_token => {
13045 if !fields.insert(__FieldTag::__page_token) {
13046 return std::result::Result::Err(A::Error::duplicate_field(
13047 "multiple values for page_token",
13048 ));
13049 }
13050 result.page_token = map
13051 .next_value::<std::option::Option<std::string::String>>()?
13052 .unwrap_or_default();
13053 }
13054 __FieldTag::__filter => {
13055 if !fields.insert(__FieldTag::__filter) {
13056 return std::result::Result::Err(A::Error::duplicate_field(
13057 "multiple values for filter",
13058 ));
13059 }
13060 result.filter = map
13061 .next_value::<std::option::Option<std::string::String>>()?
13062 .unwrap_or_default();
13063 }
13064 __FieldTag::__order_by => {
13065 if !fields.insert(__FieldTag::__order_by) {
13066 return std::result::Result::Err(A::Error::duplicate_field(
13067 "multiple values for order_by",
13068 ));
13069 }
13070 result.order_by = map
13071 .next_value::<std::option::Option<std::string::String>>()?
13072 .unwrap_or_default();
13073 }
13074 __FieldTag::Unknown(key) => {
13075 let value = map.next_value::<serde_json::Value>()?;
13076 result._unknown_fields.insert(key, value);
13077 }
13078 }
13079 }
13080 std::result::Result::Ok(result)
13081 }
13082 }
13083 deserializer.deserialize_any(Visitor)
13084 }
13085}
13086
13087#[doc(hidden)]
13088impl serde::ser::Serialize for ListNetworkPoliciesRequest {
13089 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
13090 where
13091 S: serde::ser::Serializer,
13092 {
13093 use serde::ser::SerializeMap;
13094 #[allow(unused_imports)]
13095 use std::option::Option::Some;
13096 let mut state = serializer.serialize_map(std::option::Option::None)?;
13097 if !self.parent.is_empty() {
13098 state.serialize_entry("parent", &self.parent)?;
13099 }
13100 if !wkt::internal::is_default(&self.page_size) {
13101 struct __With<'a>(&'a i32);
13102 impl<'a> serde::ser::Serialize for __With<'a> {
13103 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
13104 where
13105 S: serde::ser::Serializer,
13106 {
13107 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
13108 }
13109 }
13110 state.serialize_entry("pageSize", &__With(&self.page_size))?;
13111 }
13112 if !self.page_token.is_empty() {
13113 state.serialize_entry("pageToken", &self.page_token)?;
13114 }
13115 if !self.filter.is_empty() {
13116 state.serialize_entry("filter", &self.filter)?;
13117 }
13118 if !self.order_by.is_empty() {
13119 state.serialize_entry("orderBy", &self.order_by)?;
13120 }
13121 if !self._unknown_fields.is_empty() {
13122 for (key, value) in self._unknown_fields.iter() {
13123 state.serialize_entry(key, &value)?;
13124 }
13125 }
13126 state.end()
13127 }
13128}
13129
13130#[derive(Clone, Debug, Default, PartialEq)]
13135#[non_exhaustive]
13136pub struct ListNetworkPoliciesResponse {
13137 pub network_policies: std::vec::Vec<crate::model::NetworkPolicy>,
13139
13140 pub next_page_token: std::string::String,
13143
13144 pub unreachable: std::vec::Vec<std::string::String>,
13147
13148 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
13149}
13150
13151impl ListNetworkPoliciesResponse {
13152 pub fn new() -> Self {
13153 std::default::Default::default()
13154 }
13155
13156 pub fn set_network_policies<T, V>(mut self, v: T) -> Self
13158 where
13159 T: std::iter::IntoIterator<Item = V>,
13160 V: std::convert::Into<crate::model::NetworkPolicy>,
13161 {
13162 use std::iter::Iterator;
13163 self.network_policies = v.into_iter().map(|i| i.into()).collect();
13164 self
13165 }
13166
13167 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13169 self.next_page_token = v.into();
13170 self
13171 }
13172
13173 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
13175 where
13176 T: std::iter::IntoIterator<Item = V>,
13177 V: std::convert::Into<std::string::String>,
13178 {
13179 use std::iter::Iterator;
13180 self.unreachable = v.into_iter().map(|i| i.into()).collect();
13181 self
13182 }
13183}
13184
13185impl wkt::message::Message for ListNetworkPoliciesResponse {
13186 fn typename() -> &'static str {
13187 "type.googleapis.com/google.cloud.vmwareengine.v1.ListNetworkPoliciesResponse"
13188 }
13189}
13190
13191#[doc(hidden)]
13192impl gax::paginator::internal::PageableResponse for ListNetworkPoliciesResponse {
13193 type PageItem = crate::model::NetworkPolicy;
13194
13195 fn items(self) -> std::vec::Vec<Self::PageItem> {
13196 self.network_policies
13197 }
13198
13199 fn next_page_token(&self) -> std::string::String {
13200 use std::clone::Clone;
13201 self.next_page_token.clone()
13202 }
13203}
13204
13205#[doc(hidden)]
13206impl<'de> serde::de::Deserialize<'de> for ListNetworkPoliciesResponse {
13207 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13208 where
13209 D: serde::Deserializer<'de>,
13210 {
13211 #[allow(non_camel_case_types)]
13212 #[doc(hidden)]
13213 #[derive(PartialEq, Eq, Hash)]
13214 enum __FieldTag {
13215 __network_policies,
13216 __next_page_token,
13217 __unreachable,
13218 Unknown(std::string::String),
13219 }
13220 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
13221 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13222 where
13223 D: serde::Deserializer<'de>,
13224 {
13225 struct Visitor;
13226 impl<'de> serde::de::Visitor<'de> for Visitor {
13227 type Value = __FieldTag;
13228 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13229 formatter.write_str("a field name for ListNetworkPoliciesResponse")
13230 }
13231 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
13232 where
13233 E: serde::de::Error,
13234 {
13235 use std::result::Result::Ok;
13236 use std::string::ToString;
13237 match value {
13238 "networkPolicies" => Ok(__FieldTag::__network_policies),
13239 "network_policies" => Ok(__FieldTag::__network_policies),
13240 "nextPageToken" => Ok(__FieldTag::__next_page_token),
13241 "next_page_token" => Ok(__FieldTag::__next_page_token),
13242 "unreachable" => Ok(__FieldTag::__unreachable),
13243 _ => Ok(__FieldTag::Unknown(value.to_string())),
13244 }
13245 }
13246 }
13247 deserializer.deserialize_identifier(Visitor)
13248 }
13249 }
13250 struct Visitor;
13251 impl<'de> serde::de::Visitor<'de> for Visitor {
13252 type Value = ListNetworkPoliciesResponse;
13253 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13254 formatter.write_str("struct ListNetworkPoliciesResponse")
13255 }
13256 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
13257 where
13258 A: serde::de::MapAccess<'de>,
13259 {
13260 #[allow(unused_imports)]
13261 use serde::de::Error;
13262 use std::option::Option::Some;
13263 let mut fields = std::collections::HashSet::new();
13264 let mut result = Self::Value::new();
13265 while let Some(tag) = map.next_key::<__FieldTag>()? {
13266 #[allow(clippy::match_single_binding)]
13267 match tag {
13268 __FieldTag::__network_policies => {
13269 if !fields.insert(__FieldTag::__network_policies) {
13270 return std::result::Result::Err(A::Error::duplicate_field(
13271 "multiple values for network_policies",
13272 ));
13273 }
13274 result.network_policies = map.next_value::<std::option::Option<std::vec::Vec<crate::model::NetworkPolicy>>>()?.unwrap_or_default();
13275 }
13276 __FieldTag::__next_page_token => {
13277 if !fields.insert(__FieldTag::__next_page_token) {
13278 return std::result::Result::Err(A::Error::duplicate_field(
13279 "multiple values for next_page_token",
13280 ));
13281 }
13282 result.next_page_token = map
13283 .next_value::<std::option::Option<std::string::String>>()?
13284 .unwrap_or_default();
13285 }
13286 __FieldTag::__unreachable => {
13287 if !fields.insert(__FieldTag::__unreachable) {
13288 return std::result::Result::Err(A::Error::duplicate_field(
13289 "multiple values for unreachable",
13290 ));
13291 }
13292 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
13293 }
13294 __FieldTag::Unknown(key) => {
13295 let value = map.next_value::<serde_json::Value>()?;
13296 result._unknown_fields.insert(key, value);
13297 }
13298 }
13299 }
13300 std::result::Result::Ok(result)
13301 }
13302 }
13303 deserializer.deserialize_any(Visitor)
13304 }
13305}
13306
13307#[doc(hidden)]
13308impl serde::ser::Serialize for ListNetworkPoliciesResponse {
13309 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
13310 where
13311 S: serde::ser::Serializer,
13312 {
13313 use serde::ser::SerializeMap;
13314 #[allow(unused_imports)]
13315 use std::option::Option::Some;
13316 let mut state = serializer.serialize_map(std::option::Option::None)?;
13317 if !self.network_policies.is_empty() {
13318 state.serialize_entry("networkPolicies", &self.network_policies)?;
13319 }
13320 if !self.next_page_token.is_empty() {
13321 state.serialize_entry("nextPageToken", &self.next_page_token)?;
13322 }
13323 if !self.unreachable.is_empty() {
13324 state.serialize_entry("unreachable", &self.unreachable)?;
13325 }
13326 if !self._unknown_fields.is_empty() {
13327 for (key, value) in self._unknown_fields.iter() {
13328 state.serialize_entry(key, &value)?;
13329 }
13330 }
13331 state.end()
13332 }
13333}
13334
13335#[derive(Clone, Debug, Default, PartialEq)]
13340#[non_exhaustive]
13341pub struct GetNetworkPolicyRequest {
13342 pub name: std::string::String,
13348
13349 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
13350}
13351
13352impl GetNetworkPolicyRequest {
13353 pub fn new() -> Self {
13354 std::default::Default::default()
13355 }
13356
13357 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13359 self.name = v.into();
13360 self
13361 }
13362}
13363
13364impl wkt::message::Message for GetNetworkPolicyRequest {
13365 fn typename() -> &'static str {
13366 "type.googleapis.com/google.cloud.vmwareengine.v1.GetNetworkPolicyRequest"
13367 }
13368}
13369
13370#[doc(hidden)]
13371impl<'de> serde::de::Deserialize<'de> for GetNetworkPolicyRequest {
13372 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13373 where
13374 D: serde::Deserializer<'de>,
13375 {
13376 #[allow(non_camel_case_types)]
13377 #[doc(hidden)]
13378 #[derive(PartialEq, Eq, Hash)]
13379 enum __FieldTag {
13380 __name,
13381 Unknown(std::string::String),
13382 }
13383 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
13384 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13385 where
13386 D: serde::Deserializer<'de>,
13387 {
13388 struct Visitor;
13389 impl<'de> serde::de::Visitor<'de> for Visitor {
13390 type Value = __FieldTag;
13391 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13392 formatter.write_str("a field name for GetNetworkPolicyRequest")
13393 }
13394 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
13395 where
13396 E: serde::de::Error,
13397 {
13398 use std::result::Result::Ok;
13399 use std::string::ToString;
13400 match value {
13401 "name" => Ok(__FieldTag::__name),
13402 _ => Ok(__FieldTag::Unknown(value.to_string())),
13403 }
13404 }
13405 }
13406 deserializer.deserialize_identifier(Visitor)
13407 }
13408 }
13409 struct Visitor;
13410 impl<'de> serde::de::Visitor<'de> for Visitor {
13411 type Value = GetNetworkPolicyRequest;
13412 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13413 formatter.write_str("struct GetNetworkPolicyRequest")
13414 }
13415 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
13416 where
13417 A: serde::de::MapAccess<'de>,
13418 {
13419 #[allow(unused_imports)]
13420 use serde::de::Error;
13421 use std::option::Option::Some;
13422 let mut fields = std::collections::HashSet::new();
13423 let mut result = Self::Value::new();
13424 while let Some(tag) = map.next_key::<__FieldTag>()? {
13425 #[allow(clippy::match_single_binding)]
13426 match tag {
13427 __FieldTag::__name => {
13428 if !fields.insert(__FieldTag::__name) {
13429 return std::result::Result::Err(A::Error::duplicate_field(
13430 "multiple values for name",
13431 ));
13432 }
13433 result.name = map
13434 .next_value::<std::option::Option<std::string::String>>()?
13435 .unwrap_or_default();
13436 }
13437 __FieldTag::Unknown(key) => {
13438 let value = map.next_value::<serde_json::Value>()?;
13439 result._unknown_fields.insert(key, value);
13440 }
13441 }
13442 }
13443 std::result::Result::Ok(result)
13444 }
13445 }
13446 deserializer.deserialize_any(Visitor)
13447 }
13448}
13449
13450#[doc(hidden)]
13451impl serde::ser::Serialize for GetNetworkPolicyRequest {
13452 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
13453 where
13454 S: serde::ser::Serializer,
13455 {
13456 use serde::ser::SerializeMap;
13457 #[allow(unused_imports)]
13458 use std::option::Option::Some;
13459 let mut state = serializer.serialize_map(std::option::Option::None)?;
13460 if !self.name.is_empty() {
13461 state.serialize_entry("name", &self.name)?;
13462 }
13463 if !self._unknown_fields.is_empty() {
13464 for (key, value) in self._unknown_fields.iter() {
13465 state.serialize_entry(key, &value)?;
13466 }
13467 }
13468 state.end()
13469 }
13470}
13471
13472#[derive(Clone, Debug, Default, PartialEq)]
13477#[non_exhaustive]
13478pub struct UpdateNetworkPolicyRequest {
13479 pub network_policy: std::option::Option<crate::model::NetworkPolicy>,
13481
13482 pub update_mask: std::option::Option<wkt::FieldMask>,
13488
13489 pub request_id: std::string::String,
13504
13505 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
13506}
13507
13508impl UpdateNetworkPolicyRequest {
13509 pub fn new() -> Self {
13510 std::default::Default::default()
13511 }
13512
13513 pub fn set_network_policy<T>(mut self, v: T) -> Self
13515 where
13516 T: std::convert::Into<crate::model::NetworkPolicy>,
13517 {
13518 self.network_policy = std::option::Option::Some(v.into());
13519 self
13520 }
13521
13522 pub fn set_or_clear_network_policy<T>(mut self, v: std::option::Option<T>) -> Self
13524 where
13525 T: std::convert::Into<crate::model::NetworkPolicy>,
13526 {
13527 self.network_policy = v.map(|x| x.into());
13528 self
13529 }
13530
13531 pub fn set_update_mask<T>(mut self, v: T) -> Self
13533 where
13534 T: std::convert::Into<wkt::FieldMask>,
13535 {
13536 self.update_mask = std::option::Option::Some(v.into());
13537 self
13538 }
13539
13540 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
13542 where
13543 T: std::convert::Into<wkt::FieldMask>,
13544 {
13545 self.update_mask = v.map(|x| x.into());
13546 self
13547 }
13548
13549 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13551 self.request_id = v.into();
13552 self
13553 }
13554}
13555
13556impl wkt::message::Message for UpdateNetworkPolicyRequest {
13557 fn typename() -> &'static str {
13558 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateNetworkPolicyRequest"
13559 }
13560}
13561
13562#[doc(hidden)]
13563impl<'de> serde::de::Deserialize<'de> for UpdateNetworkPolicyRequest {
13564 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13565 where
13566 D: serde::Deserializer<'de>,
13567 {
13568 #[allow(non_camel_case_types)]
13569 #[doc(hidden)]
13570 #[derive(PartialEq, Eq, Hash)]
13571 enum __FieldTag {
13572 __network_policy,
13573 __update_mask,
13574 __request_id,
13575 Unknown(std::string::String),
13576 }
13577 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
13578 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13579 where
13580 D: serde::Deserializer<'de>,
13581 {
13582 struct Visitor;
13583 impl<'de> serde::de::Visitor<'de> for Visitor {
13584 type Value = __FieldTag;
13585 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13586 formatter.write_str("a field name for UpdateNetworkPolicyRequest")
13587 }
13588 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
13589 where
13590 E: serde::de::Error,
13591 {
13592 use std::result::Result::Ok;
13593 use std::string::ToString;
13594 match value {
13595 "networkPolicy" => Ok(__FieldTag::__network_policy),
13596 "network_policy" => Ok(__FieldTag::__network_policy),
13597 "updateMask" => Ok(__FieldTag::__update_mask),
13598 "update_mask" => Ok(__FieldTag::__update_mask),
13599 "requestId" => Ok(__FieldTag::__request_id),
13600 "request_id" => Ok(__FieldTag::__request_id),
13601 _ => Ok(__FieldTag::Unknown(value.to_string())),
13602 }
13603 }
13604 }
13605 deserializer.deserialize_identifier(Visitor)
13606 }
13607 }
13608 struct Visitor;
13609 impl<'de> serde::de::Visitor<'de> for Visitor {
13610 type Value = UpdateNetworkPolicyRequest;
13611 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13612 formatter.write_str("struct UpdateNetworkPolicyRequest")
13613 }
13614 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
13615 where
13616 A: serde::de::MapAccess<'de>,
13617 {
13618 #[allow(unused_imports)]
13619 use serde::de::Error;
13620 use std::option::Option::Some;
13621 let mut fields = std::collections::HashSet::new();
13622 let mut result = Self::Value::new();
13623 while let Some(tag) = map.next_key::<__FieldTag>()? {
13624 #[allow(clippy::match_single_binding)]
13625 match tag {
13626 __FieldTag::__network_policy => {
13627 if !fields.insert(__FieldTag::__network_policy) {
13628 return std::result::Result::Err(A::Error::duplicate_field(
13629 "multiple values for network_policy",
13630 ));
13631 }
13632 result.network_policy = map
13633 .next_value::<std::option::Option<crate::model::NetworkPolicy>>()?;
13634 }
13635 __FieldTag::__update_mask => {
13636 if !fields.insert(__FieldTag::__update_mask) {
13637 return std::result::Result::Err(A::Error::duplicate_field(
13638 "multiple values for update_mask",
13639 ));
13640 }
13641 result.update_mask =
13642 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
13643 }
13644 __FieldTag::__request_id => {
13645 if !fields.insert(__FieldTag::__request_id) {
13646 return std::result::Result::Err(A::Error::duplicate_field(
13647 "multiple values for request_id",
13648 ));
13649 }
13650 result.request_id = map
13651 .next_value::<std::option::Option<std::string::String>>()?
13652 .unwrap_or_default();
13653 }
13654 __FieldTag::Unknown(key) => {
13655 let value = map.next_value::<serde_json::Value>()?;
13656 result._unknown_fields.insert(key, value);
13657 }
13658 }
13659 }
13660 std::result::Result::Ok(result)
13661 }
13662 }
13663 deserializer.deserialize_any(Visitor)
13664 }
13665}
13666
13667#[doc(hidden)]
13668impl serde::ser::Serialize for UpdateNetworkPolicyRequest {
13669 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
13670 where
13671 S: serde::ser::Serializer,
13672 {
13673 use serde::ser::SerializeMap;
13674 #[allow(unused_imports)]
13675 use std::option::Option::Some;
13676 let mut state = serializer.serialize_map(std::option::Option::None)?;
13677 if self.network_policy.is_some() {
13678 state.serialize_entry("networkPolicy", &self.network_policy)?;
13679 }
13680 if self.update_mask.is_some() {
13681 state.serialize_entry("updateMask", &self.update_mask)?;
13682 }
13683 if !self.request_id.is_empty() {
13684 state.serialize_entry("requestId", &self.request_id)?;
13685 }
13686 if !self._unknown_fields.is_empty() {
13687 for (key, value) in self._unknown_fields.iter() {
13688 state.serialize_entry(key, &value)?;
13689 }
13690 }
13691 state.end()
13692 }
13693}
13694
13695#[derive(Clone, Debug, Default, PartialEq)]
13700#[non_exhaustive]
13701pub struct CreateNetworkPolicyRequest {
13702 pub parent: std::string::String,
13709
13710 pub network_policy_id: std::string::String,
13723
13724 pub network_policy: std::option::Option<crate::model::NetworkPolicy>,
13726
13727 pub request_id: std::string::String,
13742
13743 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
13744}
13745
13746impl CreateNetworkPolicyRequest {
13747 pub fn new() -> Self {
13748 std::default::Default::default()
13749 }
13750
13751 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13753 self.parent = v.into();
13754 self
13755 }
13756
13757 pub fn set_network_policy_id<T: std::convert::Into<std::string::String>>(
13759 mut self,
13760 v: T,
13761 ) -> Self {
13762 self.network_policy_id = v.into();
13763 self
13764 }
13765
13766 pub fn set_network_policy<T>(mut self, v: T) -> Self
13768 where
13769 T: std::convert::Into<crate::model::NetworkPolicy>,
13770 {
13771 self.network_policy = std::option::Option::Some(v.into());
13772 self
13773 }
13774
13775 pub fn set_or_clear_network_policy<T>(mut self, v: std::option::Option<T>) -> Self
13777 where
13778 T: std::convert::Into<crate::model::NetworkPolicy>,
13779 {
13780 self.network_policy = v.map(|x| x.into());
13781 self
13782 }
13783
13784 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13786 self.request_id = v.into();
13787 self
13788 }
13789}
13790
13791impl wkt::message::Message for CreateNetworkPolicyRequest {
13792 fn typename() -> &'static str {
13793 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateNetworkPolicyRequest"
13794 }
13795}
13796
13797#[doc(hidden)]
13798impl<'de> serde::de::Deserialize<'de> for CreateNetworkPolicyRequest {
13799 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13800 where
13801 D: serde::Deserializer<'de>,
13802 {
13803 #[allow(non_camel_case_types)]
13804 #[doc(hidden)]
13805 #[derive(PartialEq, Eq, Hash)]
13806 enum __FieldTag {
13807 __parent,
13808 __network_policy_id,
13809 __network_policy,
13810 __request_id,
13811 Unknown(std::string::String),
13812 }
13813 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
13814 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
13815 where
13816 D: serde::Deserializer<'de>,
13817 {
13818 struct Visitor;
13819 impl<'de> serde::de::Visitor<'de> for Visitor {
13820 type Value = __FieldTag;
13821 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13822 formatter.write_str("a field name for CreateNetworkPolicyRequest")
13823 }
13824 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
13825 where
13826 E: serde::de::Error,
13827 {
13828 use std::result::Result::Ok;
13829 use std::string::ToString;
13830 match value {
13831 "parent" => Ok(__FieldTag::__parent),
13832 "networkPolicyId" => Ok(__FieldTag::__network_policy_id),
13833 "network_policy_id" => Ok(__FieldTag::__network_policy_id),
13834 "networkPolicy" => Ok(__FieldTag::__network_policy),
13835 "network_policy" => Ok(__FieldTag::__network_policy),
13836 "requestId" => Ok(__FieldTag::__request_id),
13837 "request_id" => Ok(__FieldTag::__request_id),
13838 _ => Ok(__FieldTag::Unknown(value.to_string())),
13839 }
13840 }
13841 }
13842 deserializer.deserialize_identifier(Visitor)
13843 }
13844 }
13845 struct Visitor;
13846 impl<'de> serde::de::Visitor<'de> for Visitor {
13847 type Value = CreateNetworkPolicyRequest;
13848 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
13849 formatter.write_str("struct CreateNetworkPolicyRequest")
13850 }
13851 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
13852 where
13853 A: serde::de::MapAccess<'de>,
13854 {
13855 #[allow(unused_imports)]
13856 use serde::de::Error;
13857 use std::option::Option::Some;
13858 let mut fields = std::collections::HashSet::new();
13859 let mut result = Self::Value::new();
13860 while let Some(tag) = map.next_key::<__FieldTag>()? {
13861 #[allow(clippy::match_single_binding)]
13862 match tag {
13863 __FieldTag::__parent => {
13864 if !fields.insert(__FieldTag::__parent) {
13865 return std::result::Result::Err(A::Error::duplicate_field(
13866 "multiple values for parent",
13867 ));
13868 }
13869 result.parent = map
13870 .next_value::<std::option::Option<std::string::String>>()?
13871 .unwrap_or_default();
13872 }
13873 __FieldTag::__network_policy_id => {
13874 if !fields.insert(__FieldTag::__network_policy_id) {
13875 return std::result::Result::Err(A::Error::duplicate_field(
13876 "multiple values for network_policy_id",
13877 ));
13878 }
13879 result.network_policy_id = map
13880 .next_value::<std::option::Option<std::string::String>>()?
13881 .unwrap_or_default();
13882 }
13883 __FieldTag::__network_policy => {
13884 if !fields.insert(__FieldTag::__network_policy) {
13885 return std::result::Result::Err(A::Error::duplicate_field(
13886 "multiple values for network_policy",
13887 ));
13888 }
13889 result.network_policy = map
13890 .next_value::<std::option::Option<crate::model::NetworkPolicy>>()?;
13891 }
13892 __FieldTag::__request_id => {
13893 if !fields.insert(__FieldTag::__request_id) {
13894 return std::result::Result::Err(A::Error::duplicate_field(
13895 "multiple values for request_id",
13896 ));
13897 }
13898 result.request_id = map
13899 .next_value::<std::option::Option<std::string::String>>()?
13900 .unwrap_or_default();
13901 }
13902 __FieldTag::Unknown(key) => {
13903 let value = map.next_value::<serde_json::Value>()?;
13904 result._unknown_fields.insert(key, value);
13905 }
13906 }
13907 }
13908 std::result::Result::Ok(result)
13909 }
13910 }
13911 deserializer.deserialize_any(Visitor)
13912 }
13913}
13914
13915#[doc(hidden)]
13916impl serde::ser::Serialize for CreateNetworkPolicyRequest {
13917 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
13918 where
13919 S: serde::ser::Serializer,
13920 {
13921 use serde::ser::SerializeMap;
13922 #[allow(unused_imports)]
13923 use std::option::Option::Some;
13924 let mut state = serializer.serialize_map(std::option::Option::None)?;
13925 if !self.parent.is_empty() {
13926 state.serialize_entry("parent", &self.parent)?;
13927 }
13928 if !self.network_policy_id.is_empty() {
13929 state.serialize_entry("networkPolicyId", &self.network_policy_id)?;
13930 }
13931 if self.network_policy.is_some() {
13932 state.serialize_entry("networkPolicy", &self.network_policy)?;
13933 }
13934 if !self.request_id.is_empty() {
13935 state.serialize_entry("requestId", &self.request_id)?;
13936 }
13937 if !self._unknown_fields.is_empty() {
13938 for (key, value) in self._unknown_fields.iter() {
13939 state.serialize_entry(key, &value)?;
13940 }
13941 }
13942 state.end()
13943 }
13944}
13945
13946#[derive(Clone, Debug, Default, PartialEq)]
13951#[non_exhaustive]
13952pub struct DeleteNetworkPolicyRequest {
13953 pub name: std::string::String,
13959
13960 pub request_id: std::string::String,
13975
13976 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
13977}
13978
13979impl DeleteNetworkPolicyRequest {
13980 pub fn new() -> Self {
13981 std::default::Default::default()
13982 }
13983
13984 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13986 self.name = v.into();
13987 self
13988 }
13989
13990 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
13992 self.request_id = v.into();
13993 self
13994 }
13995}
13996
13997impl wkt::message::Message for DeleteNetworkPolicyRequest {
13998 fn typename() -> &'static str {
13999 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteNetworkPolicyRequest"
14000 }
14001}
14002
14003#[doc(hidden)]
14004impl<'de> serde::de::Deserialize<'de> for DeleteNetworkPolicyRequest {
14005 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14006 where
14007 D: serde::Deserializer<'de>,
14008 {
14009 #[allow(non_camel_case_types)]
14010 #[doc(hidden)]
14011 #[derive(PartialEq, Eq, Hash)]
14012 enum __FieldTag {
14013 __name,
14014 __request_id,
14015 Unknown(std::string::String),
14016 }
14017 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
14018 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14019 where
14020 D: serde::Deserializer<'de>,
14021 {
14022 struct Visitor;
14023 impl<'de> serde::de::Visitor<'de> for Visitor {
14024 type Value = __FieldTag;
14025 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14026 formatter.write_str("a field name for DeleteNetworkPolicyRequest")
14027 }
14028 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
14029 where
14030 E: serde::de::Error,
14031 {
14032 use std::result::Result::Ok;
14033 use std::string::ToString;
14034 match value {
14035 "name" => Ok(__FieldTag::__name),
14036 "requestId" => Ok(__FieldTag::__request_id),
14037 "request_id" => Ok(__FieldTag::__request_id),
14038 _ => Ok(__FieldTag::Unknown(value.to_string())),
14039 }
14040 }
14041 }
14042 deserializer.deserialize_identifier(Visitor)
14043 }
14044 }
14045 struct Visitor;
14046 impl<'de> serde::de::Visitor<'de> for Visitor {
14047 type Value = DeleteNetworkPolicyRequest;
14048 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14049 formatter.write_str("struct DeleteNetworkPolicyRequest")
14050 }
14051 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
14052 where
14053 A: serde::de::MapAccess<'de>,
14054 {
14055 #[allow(unused_imports)]
14056 use serde::de::Error;
14057 use std::option::Option::Some;
14058 let mut fields = std::collections::HashSet::new();
14059 let mut result = Self::Value::new();
14060 while let Some(tag) = map.next_key::<__FieldTag>()? {
14061 #[allow(clippy::match_single_binding)]
14062 match tag {
14063 __FieldTag::__name => {
14064 if !fields.insert(__FieldTag::__name) {
14065 return std::result::Result::Err(A::Error::duplicate_field(
14066 "multiple values for name",
14067 ));
14068 }
14069 result.name = map
14070 .next_value::<std::option::Option<std::string::String>>()?
14071 .unwrap_or_default();
14072 }
14073 __FieldTag::__request_id => {
14074 if !fields.insert(__FieldTag::__request_id) {
14075 return std::result::Result::Err(A::Error::duplicate_field(
14076 "multiple values for request_id",
14077 ));
14078 }
14079 result.request_id = map
14080 .next_value::<std::option::Option<std::string::String>>()?
14081 .unwrap_or_default();
14082 }
14083 __FieldTag::Unknown(key) => {
14084 let value = map.next_value::<serde_json::Value>()?;
14085 result._unknown_fields.insert(key, value);
14086 }
14087 }
14088 }
14089 std::result::Result::Ok(result)
14090 }
14091 }
14092 deserializer.deserialize_any(Visitor)
14093 }
14094}
14095
14096#[doc(hidden)]
14097impl serde::ser::Serialize for DeleteNetworkPolicyRequest {
14098 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
14099 where
14100 S: serde::ser::Serializer,
14101 {
14102 use serde::ser::SerializeMap;
14103 #[allow(unused_imports)]
14104 use std::option::Option::Some;
14105 let mut state = serializer.serialize_map(std::option::Option::None)?;
14106 if !self.name.is_empty() {
14107 state.serialize_entry("name", &self.name)?;
14108 }
14109 if !self.request_id.is_empty() {
14110 state.serialize_entry("requestId", &self.request_id)?;
14111 }
14112 if !self._unknown_fields.is_empty() {
14113 for (key, value) in self._unknown_fields.iter() {
14114 state.serialize_entry(key, &value)?;
14115 }
14116 }
14117 state.end()
14118 }
14119}
14120
14121#[derive(Clone, Debug, Default, PartialEq)]
14126#[non_exhaustive]
14127pub struct ListManagementDnsZoneBindingsRequest {
14128 pub parent: std::string::String,
14135
14136 pub page_size: i32,
14141
14142 pub page_token: std::string::String,
14149
14150 pub filter: std::string::String,
14178
14179 pub order_by: std::string::String,
14185
14186 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
14187}
14188
14189impl ListManagementDnsZoneBindingsRequest {
14190 pub fn new() -> Self {
14191 std::default::Default::default()
14192 }
14193
14194 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14196 self.parent = v.into();
14197 self
14198 }
14199
14200 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
14202 self.page_size = v.into();
14203 self
14204 }
14205
14206 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14208 self.page_token = v.into();
14209 self
14210 }
14211
14212 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14214 self.filter = v.into();
14215 self
14216 }
14217
14218 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14220 self.order_by = v.into();
14221 self
14222 }
14223}
14224
14225impl wkt::message::Message for ListManagementDnsZoneBindingsRequest {
14226 fn typename() -> &'static str {
14227 "type.googleapis.com/google.cloud.vmwareengine.v1.ListManagementDnsZoneBindingsRequest"
14228 }
14229}
14230
14231#[doc(hidden)]
14232impl<'de> serde::de::Deserialize<'de> for ListManagementDnsZoneBindingsRequest {
14233 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14234 where
14235 D: serde::Deserializer<'de>,
14236 {
14237 #[allow(non_camel_case_types)]
14238 #[doc(hidden)]
14239 #[derive(PartialEq, Eq, Hash)]
14240 enum __FieldTag {
14241 __parent,
14242 __page_size,
14243 __page_token,
14244 __filter,
14245 __order_by,
14246 Unknown(std::string::String),
14247 }
14248 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
14249 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14250 where
14251 D: serde::Deserializer<'de>,
14252 {
14253 struct Visitor;
14254 impl<'de> serde::de::Visitor<'de> for Visitor {
14255 type Value = __FieldTag;
14256 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14257 formatter.write_str("a field name for ListManagementDnsZoneBindingsRequest")
14258 }
14259 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
14260 where
14261 E: serde::de::Error,
14262 {
14263 use std::result::Result::Ok;
14264 use std::string::ToString;
14265 match value {
14266 "parent" => Ok(__FieldTag::__parent),
14267 "pageSize" => Ok(__FieldTag::__page_size),
14268 "page_size" => Ok(__FieldTag::__page_size),
14269 "pageToken" => Ok(__FieldTag::__page_token),
14270 "page_token" => Ok(__FieldTag::__page_token),
14271 "filter" => Ok(__FieldTag::__filter),
14272 "orderBy" => Ok(__FieldTag::__order_by),
14273 "order_by" => Ok(__FieldTag::__order_by),
14274 _ => Ok(__FieldTag::Unknown(value.to_string())),
14275 }
14276 }
14277 }
14278 deserializer.deserialize_identifier(Visitor)
14279 }
14280 }
14281 struct Visitor;
14282 impl<'de> serde::de::Visitor<'de> for Visitor {
14283 type Value = ListManagementDnsZoneBindingsRequest;
14284 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14285 formatter.write_str("struct ListManagementDnsZoneBindingsRequest")
14286 }
14287 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
14288 where
14289 A: serde::de::MapAccess<'de>,
14290 {
14291 #[allow(unused_imports)]
14292 use serde::de::Error;
14293 use std::option::Option::Some;
14294 let mut fields = std::collections::HashSet::new();
14295 let mut result = Self::Value::new();
14296 while let Some(tag) = map.next_key::<__FieldTag>()? {
14297 #[allow(clippy::match_single_binding)]
14298 match tag {
14299 __FieldTag::__parent => {
14300 if !fields.insert(__FieldTag::__parent) {
14301 return std::result::Result::Err(A::Error::duplicate_field(
14302 "multiple values for parent",
14303 ));
14304 }
14305 result.parent = map
14306 .next_value::<std::option::Option<std::string::String>>()?
14307 .unwrap_or_default();
14308 }
14309 __FieldTag::__page_size => {
14310 if !fields.insert(__FieldTag::__page_size) {
14311 return std::result::Result::Err(A::Error::duplicate_field(
14312 "multiple values for page_size",
14313 ));
14314 }
14315 struct __With(std::option::Option<i32>);
14316 impl<'de> serde::de::Deserialize<'de> for __With {
14317 fn deserialize<D>(
14318 deserializer: D,
14319 ) -> std::result::Result<Self, D::Error>
14320 where
14321 D: serde::de::Deserializer<'de>,
14322 {
14323 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
14324 }
14325 }
14326 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
14327 }
14328 __FieldTag::__page_token => {
14329 if !fields.insert(__FieldTag::__page_token) {
14330 return std::result::Result::Err(A::Error::duplicate_field(
14331 "multiple values for page_token",
14332 ));
14333 }
14334 result.page_token = map
14335 .next_value::<std::option::Option<std::string::String>>()?
14336 .unwrap_or_default();
14337 }
14338 __FieldTag::__filter => {
14339 if !fields.insert(__FieldTag::__filter) {
14340 return std::result::Result::Err(A::Error::duplicate_field(
14341 "multiple values for filter",
14342 ));
14343 }
14344 result.filter = map
14345 .next_value::<std::option::Option<std::string::String>>()?
14346 .unwrap_or_default();
14347 }
14348 __FieldTag::__order_by => {
14349 if !fields.insert(__FieldTag::__order_by) {
14350 return std::result::Result::Err(A::Error::duplicate_field(
14351 "multiple values for order_by",
14352 ));
14353 }
14354 result.order_by = map
14355 .next_value::<std::option::Option<std::string::String>>()?
14356 .unwrap_or_default();
14357 }
14358 __FieldTag::Unknown(key) => {
14359 let value = map.next_value::<serde_json::Value>()?;
14360 result._unknown_fields.insert(key, value);
14361 }
14362 }
14363 }
14364 std::result::Result::Ok(result)
14365 }
14366 }
14367 deserializer.deserialize_any(Visitor)
14368 }
14369}
14370
14371#[doc(hidden)]
14372impl serde::ser::Serialize for ListManagementDnsZoneBindingsRequest {
14373 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
14374 where
14375 S: serde::ser::Serializer,
14376 {
14377 use serde::ser::SerializeMap;
14378 #[allow(unused_imports)]
14379 use std::option::Option::Some;
14380 let mut state = serializer.serialize_map(std::option::Option::None)?;
14381 if !self.parent.is_empty() {
14382 state.serialize_entry("parent", &self.parent)?;
14383 }
14384 if !wkt::internal::is_default(&self.page_size) {
14385 struct __With<'a>(&'a i32);
14386 impl<'a> serde::ser::Serialize for __With<'a> {
14387 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
14388 where
14389 S: serde::ser::Serializer,
14390 {
14391 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
14392 }
14393 }
14394 state.serialize_entry("pageSize", &__With(&self.page_size))?;
14395 }
14396 if !self.page_token.is_empty() {
14397 state.serialize_entry("pageToken", &self.page_token)?;
14398 }
14399 if !self.filter.is_empty() {
14400 state.serialize_entry("filter", &self.filter)?;
14401 }
14402 if !self.order_by.is_empty() {
14403 state.serialize_entry("orderBy", &self.order_by)?;
14404 }
14405 if !self._unknown_fields.is_empty() {
14406 for (key, value) in self._unknown_fields.iter() {
14407 state.serialize_entry(key, &value)?;
14408 }
14409 }
14410 state.end()
14411 }
14412}
14413
14414#[derive(Clone, Debug, Default, PartialEq)]
14419#[non_exhaustive]
14420pub struct ListManagementDnsZoneBindingsResponse {
14421 pub management_dns_zone_bindings: std::vec::Vec<crate::model::ManagementDnsZoneBinding>,
14423
14424 pub next_page_token: std::string::String,
14427
14428 pub unreachable: std::vec::Vec<std::string::String>,
14431
14432 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
14433}
14434
14435impl ListManagementDnsZoneBindingsResponse {
14436 pub fn new() -> Self {
14437 std::default::Default::default()
14438 }
14439
14440 pub fn set_management_dns_zone_bindings<T, V>(mut self, v: T) -> Self
14442 where
14443 T: std::iter::IntoIterator<Item = V>,
14444 V: std::convert::Into<crate::model::ManagementDnsZoneBinding>,
14445 {
14446 use std::iter::Iterator;
14447 self.management_dns_zone_bindings = v.into_iter().map(|i| i.into()).collect();
14448 self
14449 }
14450
14451 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14453 self.next_page_token = v.into();
14454 self
14455 }
14456
14457 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
14459 where
14460 T: std::iter::IntoIterator<Item = V>,
14461 V: std::convert::Into<std::string::String>,
14462 {
14463 use std::iter::Iterator;
14464 self.unreachable = v.into_iter().map(|i| i.into()).collect();
14465 self
14466 }
14467}
14468
14469impl wkt::message::Message for ListManagementDnsZoneBindingsResponse {
14470 fn typename() -> &'static str {
14471 "type.googleapis.com/google.cloud.vmwareengine.v1.ListManagementDnsZoneBindingsResponse"
14472 }
14473}
14474
14475#[doc(hidden)]
14476impl gax::paginator::internal::PageableResponse for ListManagementDnsZoneBindingsResponse {
14477 type PageItem = crate::model::ManagementDnsZoneBinding;
14478
14479 fn items(self) -> std::vec::Vec<Self::PageItem> {
14480 self.management_dns_zone_bindings
14481 }
14482
14483 fn next_page_token(&self) -> std::string::String {
14484 use std::clone::Clone;
14485 self.next_page_token.clone()
14486 }
14487}
14488
14489#[doc(hidden)]
14490impl<'de> serde::de::Deserialize<'de> for ListManagementDnsZoneBindingsResponse {
14491 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14492 where
14493 D: serde::Deserializer<'de>,
14494 {
14495 #[allow(non_camel_case_types)]
14496 #[doc(hidden)]
14497 #[derive(PartialEq, Eq, Hash)]
14498 enum __FieldTag {
14499 __management_dns_zone_bindings,
14500 __next_page_token,
14501 __unreachable,
14502 Unknown(std::string::String),
14503 }
14504 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
14505 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14506 where
14507 D: serde::Deserializer<'de>,
14508 {
14509 struct Visitor;
14510 impl<'de> serde::de::Visitor<'de> for Visitor {
14511 type Value = __FieldTag;
14512 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14513 formatter
14514 .write_str("a field name for ListManagementDnsZoneBindingsResponse")
14515 }
14516 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
14517 where
14518 E: serde::de::Error,
14519 {
14520 use std::result::Result::Ok;
14521 use std::string::ToString;
14522 match value {
14523 "managementDnsZoneBindings" => {
14524 Ok(__FieldTag::__management_dns_zone_bindings)
14525 }
14526 "management_dns_zone_bindings" => {
14527 Ok(__FieldTag::__management_dns_zone_bindings)
14528 }
14529 "nextPageToken" => Ok(__FieldTag::__next_page_token),
14530 "next_page_token" => Ok(__FieldTag::__next_page_token),
14531 "unreachable" => Ok(__FieldTag::__unreachable),
14532 _ => Ok(__FieldTag::Unknown(value.to_string())),
14533 }
14534 }
14535 }
14536 deserializer.deserialize_identifier(Visitor)
14537 }
14538 }
14539 struct Visitor;
14540 impl<'de> serde::de::Visitor<'de> for Visitor {
14541 type Value = ListManagementDnsZoneBindingsResponse;
14542 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14543 formatter.write_str("struct ListManagementDnsZoneBindingsResponse")
14544 }
14545 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
14546 where
14547 A: serde::de::MapAccess<'de>,
14548 {
14549 #[allow(unused_imports)]
14550 use serde::de::Error;
14551 use std::option::Option::Some;
14552 let mut fields = std::collections::HashSet::new();
14553 let mut result = Self::Value::new();
14554 while let Some(tag) = map.next_key::<__FieldTag>()? {
14555 #[allow(clippy::match_single_binding)]
14556 match tag {
14557 __FieldTag::__management_dns_zone_bindings => {
14558 if !fields.insert(__FieldTag::__management_dns_zone_bindings) {
14559 return std::result::Result::Err(A::Error::duplicate_field(
14560 "multiple values for management_dns_zone_bindings",
14561 ));
14562 }
14563 result.management_dns_zone_bindings = map
14564 .next_value::<std::option::Option<
14565 std::vec::Vec<crate::model::ManagementDnsZoneBinding>,
14566 >>()?
14567 .unwrap_or_default();
14568 }
14569 __FieldTag::__next_page_token => {
14570 if !fields.insert(__FieldTag::__next_page_token) {
14571 return std::result::Result::Err(A::Error::duplicate_field(
14572 "multiple values for next_page_token",
14573 ));
14574 }
14575 result.next_page_token = map
14576 .next_value::<std::option::Option<std::string::String>>()?
14577 .unwrap_or_default();
14578 }
14579 __FieldTag::__unreachable => {
14580 if !fields.insert(__FieldTag::__unreachable) {
14581 return std::result::Result::Err(A::Error::duplicate_field(
14582 "multiple values for unreachable",
14583 ));
14584 }
14585 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
14586 }
14587 __FieldTag::Unknown(key) => {
14588 let value = map.next_value::<serde_json::Value>()?;
14589 result._unknown_fields.insert(key, value);
14590 }
14591 }
14592 }
14593 std::result::Result::Ok(result)
14594 }
14595 }
14596 deserializer.deserialize_any(Visitor)
14597 }
14598}
14599
14600#[doc(hidden)]
14601impl serde::ser::Serialize for ListManagementDnsZoneBindingsResponse {
14602 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
14603 where
14604 S: serde::ser::Serializer,
14605 {
14606 use serde::ser::SerializeMap;
14607 #[allow(unused_imports)]
14608 use std::option::Option::Some;
14609 let mut state = serializer.serialize_map(std::option::Option::None)?;
14610 if !self.management_dns_zone_bindings.is_empty() {
14611 state.serialize_entry(
14612 "managementDnsZoneBindings",
14613 &self.management_dns_zone_bindings,
14614 )?;
14615 }
14616 if !self.next_page_token.is_empty() {
14617 state.serialize_entry("nextPageToken", &self.next_page_token)?;
14618 }
14619 if !self.unreachable.is_empty() {
14620 state.serialize_entry("unreachable", &self.unreachable)?;
14621 }
14622 if !self._unknown_fields.is_empty() {
14623 for (key, value) in self._unknown_fields.iter() {
14624 state.serialize_entry(key, &value)?;
14625 }
14626 }
14627 state.end()
14628 }
14629}
14630
14631#[derive(Clone, Debug, Default, PartialEq)]
14636#[non_exhaustive]
14637pub struct GetManagementDnsZoneBindingRequest {
14638 pub name: std::string::String,
14644
14645 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
14646}
14647
14648impl GetManagementDnsZoneBindingRequest {
14649 pub fn new() -> Self {
14650 std::default::Default::default()
14651 }
14652
14653 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14655 self.name = v.into();
14656 self
14657 }
14658}
14659
14660impl wkt::message::Message for GetManagementDnsZoneBindingRequest {
14661 fn typename() -> &'static str {
14662 "type.googleapis.com/google.cloud.vmwareengine.v1.GetManagementDnsZoneBindingRequest"
14663 }
14664}
14665
14666#[doc(hidden)]
14667impl<'de> serde::de::Deserialize<'de> for GetManagementDnsZoneBindingRequest {
14668 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14669 where
14670 D: serde::Deserializer<'de>,
14671 {
14672 #[allow(non_camel_case_types)]
14673 #[doc(hidden)]
14674 #[derive(PartialEq, Eq, Hash)]
14675 enum __FieldTag {
14676 __name,
14677 Unknown(std::string::String),
14678 }
14679 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
14680 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14681 where
14682 D: serde::Deserializer<'de>,
14683 {
14684 struct Visitor;
14685 impl<'de> serde::de::Visitor<'de> for Visitor {
14686 type Value = __FieldTag;
14687 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14688 formatter.write_str("a field name for GetManagementDnsZoneBindingRequest")
14689 }
14690 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
14691 where
14692 E: serde::de::Error,
14693 {
14694 use std::result::Result::Ok;
14695 use std::string::ToString;
14696 match value {
14697 "name" => Ok(__FieldTag::__name),
14698 _ => Ok(__FieldTag::Unknown(value.to_string())),
14699 }
14700 }
14701 }
14702 deserializer.deserialize_identifier(Visitor)
14703 }
14704 }
14705 struct Visitor;
14706 impl<'de> serde::de::Visitor<'de> for Visitor {
14707 type Value = GetManagementDnsZoneBindingRequest;
14708 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14709 formatter.write_str("struct GetManagementDnsZoneBindingRequest")
14710 }
14711 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
14712 where
14713 A: serde::de::MapAccess<'de>,
14714 {
14715 #[allow(unused_imports)]
14716 use serde::de::Error;
14717 use std::option::Option::Some;
14718 let mut fields = std::collections::HashSet::new();
14719 let mut result = Self::Value::new();
14720 while let Some(tag) = map.next_key::<__FieldTag>()? {
14721 #[allow(clippy::match_single_binding)]
14722 match tag {
14723 __FieldTag::__name => {
14724 if !fields.insert(__FieldTag::__name) {
14725 return std::result::Result::Err(A::Error::duplicate_field(
14726 "multiple values for name",
14727 ));
14728 }
14729 result.name = map
14730 .next_value::<std::option::Option<std::string::String>>()?
14731 .unwrap_or_default();
14732 }
14733 __FieldTag::Unknown(key) => {
14734 let value = map.next_value::<serde_json::Value>()?;
14735 result._unknown_fields.insert(key, value);
14736 }
14737 }
14738 }
14739 std::result::Result::Ok(result)
14740 }
14741 }
14742 deserializer.deserialize_any(Visitor)
14743 }
14744}
14745
14746#[doc(hidden)]
14747impl serde::ser::Serialize for GetManagementDnsZoneBindingRequest {
14748 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
14749 where
14750 S: serde::ser::Serializer,
14751 {
14752 use serde::ser::SerializeMap;
14753 #[allow(unused_imports)]
14754 use std::option::Option::Some;
14755 let mut state = serializer.serialize_map(std::option::Option::None)?;
14756 if !self.name.is_empty() {
14757 state.serialize_entry("name", &self.name)?;
14758 }
14759 if !self._unknown_fields.is_empty() {
14760 for (key, value) in self._unknown_fields.iter() {
14761 state.serialize_entry(key, &value)?;
14762 }
14763 }
14764 state.end()
14765 }
14766}
14767
14768#[derive(Clone, Debug, Default, PartialEq)]
14770#[non_exhaustive]
14771pub struct CreateManagementDnsZoneBindingRequest {
14772 pub parent: std::string::String,
14779
14780 pub management_dns_zone_binding: std::option::Option<crate::model::ManagementDnsZoneBinding>,
14782
14783 pub management_dns_zone_binding_id: std::string::String,
14796
14797 pub request_id: std::string::String,
14812
14813 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
14814}
14815
14816impl CreateManagementDnsZoneBindingRequest {
14817 pub fn new() -> Self {
14818 std::default::Default::default()
14819 }
14820
14821 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14823 self.parent = v.into();
14824 self
14825 }
14826
14827 pub fn set_management_dns_zone_binding<T>(mut self, v: T) -> Self
14829 where
14830 T: std::convert::Into<crate::model::ManagementDnsZoneBinding>,
14831 {
14832 self.management_dns_zone_binding = std::option::Option::Some(v.into());
14833 self
14834 }
14835
14836 pub fn set_or_clear_management_dns_zone_binding<T>(mut self, v: std::option::Option<T>) -> Self
14838 where
14839 T: std::convert::Into<crate::model::ManagementDnsZoneBinding>,
14840 {
14841 self.management_dns_zone_binding = v.map(|x| x.into());
14842 self
14843 }
14844
14845 pub fn set_management_dns_zone_binding_id<T: std::convert::Into<std::string::String>>(
14847 mut self,
14848 v: T,
14849 ) -> Self {
14850 self.management_dns_zone_binding_id = v.into();
14851 self
14852 }
14853
14854 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
14856 self.request_id = v.into();
14857 self
14858 }
14859}
14860
14861impl wkt::message::Message for CreateManagementDnsZoneBindingRequest {
14862 fn typename() -> &'static str {
14863 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateManagementDnsZoneBindingRequest"
14864 }
14865}
14866
14867#[doc(hidden)]
14868impl<'de> serde::de::Deserialize<'de> for CreateManagementDnsZoneBindingRequest {
14869 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14870 where
14871 D: serde::Deserializer<'de>,
14872 {
14873 #[allow(non_camel_case_types)]
14874 #[doc(hidden)]
14875 #[derive(PartialEq, Eq, Hash)]
14876 enum __FieldTag {
14877 __parent,
14878 __management_dns_zone_binding,
14879 __management_dns_zone_binding_id,
14880 __request_id,
14881 Unknown(std::string::String),
14882 }
14883 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
14884 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
14885 where
14886 D: serde::Deserializer<'de>,
14887 {
14888 struct Visitor;
14889 impl<'de> serde::de::Visitor<'de> for Visitor {
14890 type Value = __FieldTag;
14891 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14892 formatter
14893 .write_str("a field name for CreateManagementDnsZoneBindingRequest")
14894 }
14895 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
14896 where
14897 E: serde::de::Error,
14898 {
14899 use std::result::Result::Ok;
14900 use std::string::ToString;
14901 match value {
14902 "parent" => Ok(__FieldTag::__parent),
14903 "managementDnsZoneBinding" => {
14904 Ok(__FieldTag::__management_dns_zone_binding)
14905 }
14906 "management_dns_zone_binding" => {
14907 Ok(__FieldTag::__management_dns_zone_binding)
14908 }
14909 "managementDnsZoneBindingId" => {
14910 Ok(__FieldTag::__management_dns_zone_binding_id)
14911 }
14912 "management_dns_zone_binding_id" => {
14913 Ok(__FieldTag::__management_dns_zone_binding_id)
14914 }
14915 "requestId" => Ok(__FieldTag::__request_id),
14916 "request_id" => Ok(__FieldTag::__request_id),
14917 _ => Ok(__FieldTag::Unknown(value.to_string())),
14918 }
14919 }
14920 }
14921 deserializer.deserialize_identifier(Visitor)
14922 }
14923 }
14924 struct Visitor;
14925 impl<'de> serde::de::Visitor<'de> for Visitor {
14926 type Value = CreateManagementDnsZoneBindingRequest;
14927 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
14928 formatter.write_str("struct CreateManagementDnsZoneBindingRequest")
14929 }
14930 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
14931 where
14932 A: serde::de::MapAccess<'de>,
14933 {
14934 #[allow(unused_imports)]
14935 use serde::de::Error;
14936 use std::option::Option::Some;
14937 let mut fields = std::collections::HashSet::new();
14938 let mut result = Self::Value::new();
14939 while let Some(tag) = map.next_key::<__FieldTag>()? {
14940 #[allow(clippy::match_single_binding)]
14941 match tag {
14942 __FieldTag::__parent => {
14943 if !fields.insert(__FieldTag::__parent) {
14944 return std::result::Result::Err(A::Error::duplicate_field(
14945 "multiple values for parent",
14946 ));
14947 }
14948 result.parent = map
14949 .next_value::<std::option::Option<std::string::String>>()?
14950 .unwrap_or_default();
14951 }
14952 __FieldTag::__management_dns_zone_binding => {
14953 if !fields.insert(__FieldTag::__management_dns_zone_binding) {
14954 return std::result::Result::Err(A::Error::duplicate_field(
14955 "multiple values for management_dns_zone_binding",
14956 ));
14957 }
14958 result.management_dns_zone_binding = map.next_value::<std::option::Option<crate::model::ManagementDnsZoneBinding>>()?
14959 ;
14960 }
14961 __FieldTag::__management_dns_zone_binding_id => {
14962 if !fields.insert(__FieldTag::__management_dns_zone_binding_id) {
14963 return std::result::Result::Err(A::Error::duplicate_field(
14964 "multiple values for management_dns_zone_binding_id",
14965 ));
14966 }
14967 result.management_dns_zone_binding_id = map
14968 .next_value::<std::option::Option<std::string::String>>()?
14969 .unwrap_or_default();
14970 }
14971 __FieldTag::__request_id => {
14972 if !fields.insert(__FieldTag::__request_id) {
14973 return std::result::Result::Err(A::Error::duplicate_field(
14974 "multiple values for request_id",
14975 ));
14976 }
14977 result.request_id = map
14978 .next_value::<std::option::Option<std::string::String>>()?
14979 .unwrap_or_default();
14980 }
14981 __FieldTag::Unknown(key) => {
14982 let value = map.next_value::<serde_json::Value>()?;
14983 result._unknown_fields.insert(key, value);
14984 }
14985 }
14986 }
14987 std::result::Result::Ok(result)
14988 }
14989 }
14990 deserializer.deserialize_any(Visitor)
14991 }
14992}
14993
14994#[doc(hidden)]
14995impl serde::ser::Serialize for CreateManagementDnsZoneBindingRequest {
14996 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
14997 where
14998 S: serde::ser::Serializer,
14999 {
15000 use serde::ser::SerializeMap;
15001 #[allow(unused_imports)]
15002 use std::option::Option::Some;
15003 let mut state = serializer.serialize_map(std::option::Option::None)?;
15004 if !self.parent.is_empty() {
15005 state.serialize_entry("parent", &self.parent)?;
15006 }
15007 if self.management_dns_zone_binding.is_some() {
15008 state.serialize_entry(
15009 "managementDnsZoneBinding",
15010 &self.management_dns_zone_binding,
15011 )?;
15012 }
15013 if !self.management_dns_zone_binding_id.is_empty() {
15014 state.serialize_entry(
15015 "managementDnsZoneBindingId",
15016 &self.management_dns_zone_binding_id,
15017 )?;
15018 }
15019 if !self.request_id.is_empty() {
15020 state.serialize_entry("requestId", &self.request_id)?;
15021 }
15022 if !self._unknown_fields.is_empty() {
15023 for (key, value) in self._unknown_fields.iter() {
15024 state.serialize_entry(key, &value)?;
15025 }
15026 }
15027 state.end()
15028 }
15029}
15030
15031#[derive(Clone, Debug, Default, PartialEq)]
15036#[non_exhaustive]
15037pub struct UpdateManagementDnsZoneBindingRequest {
15038 pub update_mask: std::option::Option<wkt::FieldMask>,
15044
15045 pub management_dns_zone_binding: std::option::Option<crate::model::ManagementDnsZoneBinding>,
15047
15048 pub request_id: std::string::String,
15063
15064 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
15065}
15066
15067impl UpdateManagementDnsZoneBindingRequest {
15068 pub fn new() -> Self {
15069 std::default::Default::default()
15070 }
15071
15072 pub fn set_update_mask<T>(mut self, v: T) -> Self
15074 where
15075 T: std::convert::Into<wkt::FieldMask>,
15076 {
15077 self.update_mask = std::option::Option::Some(v.into());
15078 self
15079 }
15080
15081 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
15083 where
15084 T: std::convert::Into<wkt::FieldMask>,
15085 {
15086 self.update_mask = v.map(|x| x.into());
15087 self
15088 }
15089
15090 pub fn set_management_dns_zone_binding<T>(mut self, v: T) -> Self
15092 where
15093 T: std::convert::Into<crate::model::ManagementDnsZoneBinding>,
15094 {
15095 self.management_dns_zone_binding = std::option::Option::Some(v.into());
15096 self
15097 }
15098
15099 pub fn set_or_clear_management_dns_zone_binding<T>(mut self, v: std::option::Option<T>) -> Self
15101 where
15102 T: std::convert::Into<crate::model::ManagementDnsZoneBinding>,
15103 {
15104 self.management_dns_zone_binding = v.map(|x| x.into());
15105 self
15106 }
15107
15108 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15110 self.request_id = v.into();
15111 self
15112 }
15113}
15114
15115impl wkt::message::Message for UpdateManagementDnsZoneBindingRequest {
15116 fn typename() -> &'static str {
15117 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateManagementDnsZoneBindingRequest"
15118 }
15119}
15120
15121#[doc(hidden)]
15122impl<'de> serde::de::Deserialize<'de> for UpdateManagementDnsZoneBindingRequest {
15123 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15124 where
15125 D: serde::Deserializer<'de>,
15126 {
15127 #[allow(non_camel_case_types)]
15128 #[doc(hidden)]
15129 #[derive(PartialEq, Eq, Hash)]
15130 enum __FieldTag {
15131 __update_mask,
15132 __management_dns_zone_binding,
15133 __request_id,
15134 Unknown(std::string::String),
15135 }
15136 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
15137 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15138 where
15139 D: serde::Deserializer<'de>,
15140 {
15141 struct Visitor;
15142 impl<'de> serde::de::Visitor<'de> for Visitor {
15143 type Value = __FieldTag;
15144 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15145 formatter
15146 .write_str("a field name for UpdateManagementDnsZoneBindingRequest")
15147 }
15148 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
15149 where
15150 E: serde::de::Error,
15151 {
15152 use std::result::Result::Ok;
15153 use std::string::ToString;
15154 match value {
15155 "updateMask" => Ok(__FieldTag::__update_mask),
15156 "update_mask" => Ok(__FieldTag::__update_mask),
15157 "managementDnsZoneBinding" => {
15158 Ok(__FieldTag::__management_dns_zone_binding)
15159 }
15160 "management_dns_zone_binding" => {
15161 Ok(__FieldTag::__management_dns_zone_binding)
15162 }
15163 "requestId" => Ok(__FieldTag::__request_id),
15164 "request_id" => Ok(__FieldTag::__request_id),
15165 _ => Ok(__FieldTag::Unknown(value.to_string())),
15166 }
15167 }
15168 }
15169 deserializer.deserialize_identifier(Visitor)
15170 }
15171 }
15172 struct Visitor;
15173 impl<'de> serde::de::Visitor<'de> for Visitor {
15174 type Value = UpdateManagementDnsZoneBindingRequest;
15175 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15176 formatter.write_str("struct UpdateManagementDnsZoneBindingRequest")
15177 }
15178 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
15179 where
15180 A: serde::de::MapAccess<'de>,
15181 {
15182 #[allow(unused_imports)]
15183 use serde::de::Error;
15184 use std::option::Option::Some;
15185 let mut fields = std::collections::HashSet::new();
15186 let mut result = Self::Value::new();
15187 while let Some(tag) = map.next_key::<__FieldTag>()? {
15188 #[allow(clippy::match_single_binding)]
15189 match tag {
15190 __FieldTag::__update_mask => {
15191 if !fields.insert(__FieldTag::__update_mask) {
15192 return std::result::Result::Err(A::Error::duplicate_field(
15193 "multiple values for update_mask",
15194 ));
15195 }
15196 result.update_mask =
15197 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
15198 }
15199 __FieldTag::__management_dns_zone_binding => {
15200 if !fields.insert(__FieldTag::__management_dns_zone_binding) {
15201 return std::result::Result::Err(A::Error::duplicate_field(
15202 "multiple values for management_dns_zone_binding",
15203 ));
15204 }
15205 result.management_dns_zone_binding = map.next_value::<std::option::Option<crate::model::ManagementDnsZoneBinding>>()?
15206 ;
15207 }
15208 __FieldTag::__request_id => {
15209 if !fields.insert(__FieldTag::__request_id) {
15210 return std::result::Result::Err(A::Error::duplicate_field(
15211 "multiple values for request_id",
15212 ));
15213 }
15214 result.request_id = map
15215 .next_value::<std::option::Option<std::string::String>>()?
15216 .unwrap_or_default();
15217 }
15218 __FieldTag::Unknown(key) => {
15219 let value = map.next_value::<serde_json::Value>()?;
15220 result._unknown_fields.insert(key, value);
15221 }
15222 }
15223 }
15224 std::result::Result::Ok(result)
15225 }
15226 }
15227 deserializer.deserialize_any(Visitor)
15228 }
15229}
15230
15231#[doc(hidden)]
15232impl serde::ser::Serialize for UpdateManagementDnsZoneBindingRequest {
15233 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
15234 where
15235 S: serde::ser::Serializer,
15236 {
15237 use serde::ser::SerializeMap;
15238 #[allow(unused_imports)]
15239 use std::option::Option::Some;
15240 let mut state = serializer.serialize_map(std::option::Option::None)?;
15241 if self.update_mask.is_some() {
15242 state.serialize_entry("updateMask", &self.update_mask)?;
15243 }
15244 if self.management_dns_zone_binding.is_some() {
15245 state.serialize_entry(
15246 "managementDnsZoneBinding",
15247 &self.management_dns_zone_binding,
15248 )?;
15249 }
15250 if !self.request_id.is_empty() {
15251 state.serialize_entry("requestId", &self.request_id)?;
15252 }
15253 if !self._unknown_fields.is_empty() {
15254 for (key, value) in self._unknown_fields.iter() {
15255 state.serialize_entry(key, &value)?;
15256 }
15257 }
15258 state.end()
15259 }
15260}
15261
15262#[derive(Clone, Debug, Default, PartialEq)]
15267#[non_exhaustive]
15268pub struct DeleteManagementDnsZoneBindingRequest {
15269 pub name: std::string::String,
15275
15276 pub request_id: std::string::String,
15291
15292 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
15293}
15294
15295impl DeleteManagementDnsZoneBindingRequest {
15296 pub fn new() -> Self {
15297 std::default::Default::default()
15298 }
15299
15300 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15302 self.name = v.into();
15303 self
15304 }
15305
15306 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15308 self.request_id = v.into();
15309 self
15310 }
15311}
15312
15313impl wkt::message::Message for DeleteManagementDnsZoneBindingRequest {
15314 fn typename() -> &'static str {
15315 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteManagementDnsZoneBindingRequest"
15316 }
15317}
15318
15319#[doc(hidden)]
15320impl<'de> serde::de::Deserialize<'de> for DeleteManagementDnsZoneBindingRequest {
15321 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15322 where
15323 D: serde::Deserializer<'de>,
15324 {
15325 #[allow(non_camel_case_types)]
15326 #[doc(hidden)]
15327 #[derive(PartialEq, Eq, Hash)]
15328 enum __FieldTag {
15329 __name,
15330 __request_id,
15331 Unknown(std::string::String),
15332 }
15333 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
15334 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15335 where
15336 D: serde::Deserializer<'de>,
15337 {
15338 struct Visitor;
15339 impl<'de> serde::de::Visitor<'de> for Visitor {
15340 type Value = __FieldTag;
15341 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15342 formatter
15343 .write_str("a field name for DeleteManagementDnsZoneBindingRequest")
15344 }
15345 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
15346 where
15347 E: serde::de::Error,
15348 {
15349 use std::result::Result::Ok;
15350 use std::string::ToString;
15351 match value {
15352 "name" => Ok(__FieldTag::__name),
15353 "requestId" => Ok(__FieldTag::__request_id),
15354 "request_id" => Ok(__FieldTag::__request_id),
15355 _ => Ok(__FieldTag::Unknown(value.to_string())),
15356 }
15357 }
15358 }
15359 deserializer.deserialize_identifier(Visitor)
15360 }
15361 }
15362 struct Visitor;
15363 impl<'de> serde::de::Visitor<'de> for Visitor {
15364 type Value = DeleteManagementDnsZoneBindingRequest;
15365 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15366 formatter.write_str("struct DeleteManagementDnsZoneBindingRequest")
15367 }
15368 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
15369 where
15370 A: serde::de::MapAccess<'de>,
15371 {
15372 #[allow(unused_imports)]
15373 use serde::de::Error;
15374 use std::option::Option::Some;
15375 let mut fields = std::collections::HashSet::new();
15376 let mut result = Self::Value::new();
15377 while let Some(tag) = map.next_key::<__FieldTag>()? {
15378 #[allow(clippy::match_single_binding)]
15379 match tag {
15380 __FieldTag::__name => {
15381 if !fields.insert(__FieldTag::__name) {
15382 return std::result::Result::Err(A::Error::duplicate_field(
15383 "multiple values for name",
15384 ));
15385 }
15386 result.name = map
15387 .next_value::<std::option::Option<std::string::String>>()?
15388 .unwrap_or_default();
15389 }
15390 __FieldTag::__request_id => {
15391 if !fields.insert(__FieldTag::__request_id) {
15392 return std::result::Result::Err(A::Error::duplicate_field(
15393 "multiple values for request_id",
15394 ));
15395 }
15396 result.request_id = map
15397 .next_value::<std::option::Option<std::string::String>>()?
15398 .unwrap_or_default();
15399 }
15400 __FieldTag::Unknown(key) => {
15401 let value = map.next_value::<serde_json::Value>()?;
15402 result._unknown_fields.insert(key, value);
15403 }
15404 }
15405 }
15406 std::result::Result::Ok(result)
15407 }
15408 }
15409 deserializer.deserialize_any(Visitor)
15410 }
15411}
15412
15413#[doc(hidden)]
15414impl serde::ser::Serialize for DeleteManagementDnsZoneBindingRequest {
15415 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
15416 where
15417 S: serde::ser::Serializer,
15418 {
15419 use serde::ser::SerializeMap;
15420 #[allow(unused_imports)]
15421 use std::option::Option::Some;
15422 let mut state = serializer.serialize_map(std::option::Option::None)?;
15423 if !self.name.is_empty() {
15424 state.serialize_entry("name", &self.name)?;
15425 }
15426 if !self.request_id.is_empty() {
15427 state.serialize_entry("requestId", &self.request_id)?;
15428 }
15429 if !self._unknown_fields.is_empty() {
15430 for (key, value) in self._unknown_fields.iter() {
15431 state.serialize_entry(key, &value)?;
15432 }
15433 }
15434 state.end()
15435 }
15436}
15437
15438#[derive(Clone, Debug, Default, PartialEq)]
15440#[non_exhaustive]
15441pub struct RepairManagementDnsZoneBindingRequest {
15442 pub name: std::string::String,
15448
15449 pub request_id: std::string::String,
15464
15465 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
15466}
15467
15468impl RepairManagementDnsZoneBindingRequest {
15469 pub fn new() -> Self {
15470 std::default::Default::default()
15471 }
15472
15473 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15475 self.name = v.into();
15476 self
15477 }
15478
15479 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15481 self.request_id = v.into();
15482 self
15483 }
15484}
15485
15486impl wkt::message::Message for RepairManagementDnsZoneBindingRequest {
15487 fn typename() -> &'static str {
15488 "type.googleapis.com/google.cloud.vmwareengine.v1.RepairManagementDnsZoneBindingRequest"
15489 }
15490}
15491
15492#[doc(hidden)]
15493impl<'de> serde::de::Deserialize<'de> for RepairManagementDnsZoneBindingRequest {
15494 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15495 where
15496 D: serde::Deserializer<'de>,
15497 {
15498 #[allow(non_camel_case_types)]
15499 #[doc(hidden)]
15500 #[derive(PartialEq, Eq, Hash)]
15501 enum __FieldTag {
15502 __name,
15503 __request_id,
15504 Unknown(std::string::String),
15505 }
15506 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
15507 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15508 where
15509 D: serde::Deserializer<'de>,
15510 {
15511 struct Visitor;
15512 impl<'de> serde::de::Visitor<'de> for Visitor {
15513 type Value = __FieldTag;
15514 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15515 formatter
15516 .write_str("a field name for RepairManagementDnsZoneBindingRequest")
15517 }
15518 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
15519 where
15520 E: serde::de::Error,
15521 {
15522 use std::result::Result::Ok;
15523 use std::string::ToString;
15524 match value {
15525 "name" => Ok(__FieldTag::__name),
15526 "requestId" => Ok(__FieldTag::__request_id),
15527 "request_id" => Ok(__FieldTag::__request_id),
15528 _ => Ok(__FieldTag::Unknown(value.to_string())),
15529 }
15530 }
15531 }
15532 deserializer.deserialize_identifier(Visitor)
15533 }
15534 }
15535 struct Visitor;
15536 impl<'de> serde::de::Visitor<'de> for Visitor {
15537 type Value = RepairManagementDnsZoneBindingRequest;
15538 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15539 formatter.write_str("struct RepairManagementDnsZoneBindingRequest")
15540 }
15541 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
15542 where
15543 A: serde::de::MapAccess<'de>,
15544 {
15545 #[allow(unused_imports)]
15546 use serde::de::Error;
15547 use std::option::Option::Some;
15548 let mut fields = std::collections::HashSet::new();
15549 let mut result = Self::Value::new();
15550 while let Some(tag) = map.next_key::<__FieldTag>()? {
15551 #[allow(clippy::match_single_binding)]
15552 match tag {
15553 __FieldTag::__name => {
15554 if !fields.insert(__FieldTag::__name) {
15555 return std::result::Result::Err(A::Error::duplicate_field(
15556 "multiple values for name",
15557 ));
15558 }
15559 result.name = map
15560 .next_value::<std::option::Option<std::string::String>>()?
15561 .unwrap_or_default();
15562 }
15563 __FieldTag::__request_id => {
15564 if !fields.insert(__FieldTag::__request_id) {
15565 return std::result::Result::Err(A::Error::duplicate_field(
15566 "multiple values for request_id",
15567 ));
15568 }
15569 result.request_id = map
15570 .next_value::<std::option::Option<std::string::String>>()?
15571 .unwrap_or_default();
15572 }
15573 __FieldTag::Unknown(key) => {
15574 let value = map.next_value::<serde_json::Value>()?;
15575 result._unknown_fields.insert(key, value);
15576 }
15577 }
15578 }
15579 std::result::Result::Ok(result)
15580 }
15581 }
15582 deserializer.deserialize_any(Visitor)
15583 }
15584}
15585
15586#[doc(hidden)]
15587impl serde::ser::Serialize for RepairManagementDnsZoneBindingRequest {
15588 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
15589 where
15590 S: serde::ser::Serializer,
15591 {
15592 use serde::ser::SerializeMap;
15593 #[allow(unused_imports)]
15594 use std::option::Option::Some;
15595 let mut state = serializer.serialize_map(std::option::Option::None)?;
15596 if !self.name.is_empty() {
15597 state.serialize_entry("name", &self.name)?;
15598 }
15599 if !self.request_id.is_empty() {
15600 state.serialize_entry("requestId", &self.request_id)?;
15601 }
15602 if !self._unknown_fields.is_empty() {
15603 for (key, value) in self._unknown_fields.iter() {
15604 state.serialize_entry(key, &value)?;
15605 }
15606 }
15607 state.end()
15608 }
15609}
15610
15611#[derive(Clone, Debug, Default, PartialEq)]
15616#[non_exhaustive]
15617pub struct CreateVmwareEngineNetworkRequest {
15618 pub parent: std::string::String,
15626
15627 pub vmware_engine_network_id: std::string::String,
15642
15643 pub vmware_engine_network: std::option::Option<crate::model::VmwareEngineNetwork>,
15645
15646 pub request_id: std::string::String,
15661
15662 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
15663}
15664
15665impl CreateVmwareEngineNetworkRequest {
15666 pub fn new() -> Self {
15667 std::default::Default::default()
15668 }
15669
15670 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15672 self.parent = v.into();
15673 self
15674 }
15675
15676 pub fn set_vmware_engine_network_id<T: std::convert::Into<std::string::String>>(
15678 mut self,
15679 v: T,
15680 ) -> Self {
15681 self.vmware_engine_network_id = v.into();
15682 self
15683 }
15684
15685 pub fn set_vmware_engine_network<T>(mut self, v: T) -> Self
15687 where
15688 T: std::convert::Into<crate::model::VmwareEngineNetwork>,
15689 {
15690 self.vmware_engine_network = std::option::Option::Some(v.into());
15691 self
15692 }
15693
15694 pub fn set_or_clear_vmware_engine_network<T>(mut self, v: std::option::Option<T>) -> Self
15696 where
15697 T: std::convert::Into<crate::model::VmwareEngineNetwork>,
15698 {
15699 self.vmware_engine_network = v.map(|x| x.into());
15700 self
15701 }
15702
15703 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15705 self.request_id = v.into();
15706 self
15707 }
15708}
15709
15710impl wkt::message::Message for CreateVmwareEngineNetworkRequest {
15711 fn typename() -> &'static str {
15712 "type.googleapis.com/google.cloud.vmwareengine.v1.CreateVmwareEngineNetworkRequest"
15713 }
15714}
15715
15716#[doc(hidden)]
15717impl<'de> serde::de::Deserialize<'de> for CreateVmwareEngineNetworkRequest {
15718 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15719 where
15720 D: serde::Deserializer<'de>,
15721 {
15722 #[allow(non_camel_case_types)]
15723 #[doc(hidden)]
15724 #[derive(PartialEq, Eq, Hash)]
15725 enum __FieldTag {
15726 __parent,
15727 __vmware_engine_network_id,
15728 __vmware_engine_network,
15729 __request_id,
15730 Unknown(std::string::String),
15731 }
15732 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
15733 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15734 where
15735 D: serde::Deserializer<'de>,
15736 {
15737 struct Visitor;
15738 impl<'de> serde::de::Visitor<'de> for Visitor {
15739 type Value = __FieldTag;
15740 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15741 formatter.write_str("a field name for CreateVmwareEngineNetworkRequest")
15742 }
15743 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
15744 where
15745 E: serde::de::Error,
15746 {
15747 use std::result::Result::Ok;
15748 use std::string::ToString;
15749 match value {
15750 "parent" => Ok(__FieldTag::__parent),
15751 "vmwareEngineNetworkId" => Ok(__FieldTag::__vmware_engine_network_id),
15752 "vmware_engine_network_id" => {
15753 Ok(__FieldTag::__vmware_engine_network_id)
15754 }
15755 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
15756 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
15757 "requestId" => Ok(__FieldTag::__request_id),
15758 "request_id" => Ok(__FieldTag::__request_id),
15759 _ => Ok(__FieldTag::Unknown(value.to_string())),
15760 }
15761 }
15762 }
15763 deserializer.deserialize_identifier(Visitor)
15764 }
15765 }
15766 struct Visitor;
15767 impl<'de> serde::de::Visitor<'de> for Visitor {
15768 type Value = CreateVmwareEngineNetworkRequest;
15769 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15770 formatter.write_str("struct CreateVmwareEngineNetworkRequest")
15771 }
15772 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
15773 where
15774 A: serde::de::MapAccess<'de>,
15775 {
15776 #[allow(unused_imports)]
15777 use serde::de::Error;
15778 use std::option::Option::Some;
15779 let mut fields = std::collections::HashSet::new();
15780 let mut result = Self::Value::new();
15781 while let Some(tag) = map.next_key::<__FieldTag>()? {
15782 #[allow(clippy::match_single_binding)]
15783 match tag {
15784 __FieldTag::__parent => {
15785 if !fields.insert(__FieldTag::__parent) {
15786 return std::result::Result::Err(A::Error::duplicate_field(
15787 "multiple values for parent",
15788 ));
15789 }
15790 result.parent = map
15791 .next_value::<std::option::Option<std::string::String>>()?
15792 .unwrap_or_default();
15793 }
15794 __FieldTag::__vmware_engine_network_id => {
15795 if !fields.insert(__FieldTag::__vmware_engine_network_id) {
15796 return std::result::Result::Err(A::Error::duplicate_field(
15797 "multiple values for vmware_engine_network_id",
15798 ));
15799 }
15800 result.vmware_engine_network_id = map
15801 .next_value::<std::option::Option<std::string::String>>()?
15802 .unwrap_or_default();
15803 }
15804 __FieldTag::__vmware_engine_network => {
15805 if !fields.insert(__FieldTag::__vmware_engine_network) {
15806 return std::result::Result::Err(A::Error::duplicate_field(
15807 "multiple values for vmware_engine_network",
15808 ));
15809 }
15810 result.vmware_engine_network = map.next_value::<std::option::Option<crate::model::VmwareEngineNetwork>>()?
15811 ;
15812 }
15813 __FieldTag::__request_id => {
15814 if !fields.insert(__FieldTag::__request_id) {
15815 return std::result::Result::Err(A::Error::duplicate_field(
15816 "multiple values for request_id",
15817 ));
15818 }
15819 result.request_id = map
15820 .next_value::<std::option::Option<std::string::String>>()?
15821 .unwrap_or_default();
15822 }
15823 __FieldTag::Unknown(key) => {
15824 let value = map.next_value::<serde_json::Value>()?;
15825 result._unknown_fields.insert(key, value);
15826 }
15827 }
15828 }
15829 std::result::Result::Ok(result)
15830 }
15831 }
15832 deserializer.deserialize_any(Visitor)
15833 }
15834}
15835
15836#[doc(hidden)]
15837impl serde::ser::Serialize for CreateVmwareEngineNetworkRequest {
15838 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
15839 where
15840 S: serde::ser::Serializer,
15841 {
15842 use serde::ser::SerializeMap;
15843 #[allow(unused_imports)]
15844 use std::option::Option::Some;
15845 let mut state = serializer.serialize_map(std::option::Option::None)?;
15846 if !self.parent.is_empty() {
15847 state.serialize_entry("parent", &self.parent)?;
15848 }
15849 if !self.vmware_engine_network_id.is_empty() {
15850 state.serialize_entry("vmwareEngineNetworkId", &self.vmware_engine_network_id)?;
15851 }
15852 if self.vmware_engine_network.is_some() {
15853 state.serialize_entry("vmwareEngineNetwork", &self.vmware_engine_network)?;
15854 }
15855 if !self.request_id.is_empty() {
15856 state.serialize_entry("requestId", &self.request_id)?;
15857 }
15858 if !self._unknown_fields.is_empty() {
15859 for (key, value) in self._unknown_fields.iter() {
15860 state.serialize_entry(key, &value)?;
15861 }
15862 }
15863 state.end()
15864 }
15865}
15866
15867#[derive(Clone, Debug, Default, PartialEq)]
15872#[non_exhaustive]
15873pub struct UpdateVmwareEngineNetworkRequest {
15874 pub vmware_engine_network: std::option::Option<crate::model::VmwareEngineNetwork>,
15876
15877 pub update_mask: std::option::Option<wkt::FieldMask>,
15884
15885 pub request_id: std::string::String,
15900
15901 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
15902}
15903
15904impl UpdateVmwareEngineNetworkRequest {
15905 pub fn new() -> Self {
15906 std::default::Default::default()
15907 }
15908
15909 pub fn set_vmware_engine_network<T>(mut self, v: T) -> Self
15911 where
15912 T: std::convert::Into<crate::model::VmwareEngineNetwork>,
15913 {
15914 self.vmware_engine_network = std::option::Option::Some(v.into());
15915 self
15916 }
15917
15918 pub fn set_or_clear_vmware_engine_network<T>(mut self, v: std::option::Option<T>) -> Self
15920 where
15921 T: std::convert::Into<crate::model::VmwareEngineNetwork>,
15922 {
15923 self.vmware_engine_network = v.map(|x| x.into());
15924 self
15925 }
15926
15927 pub fn set_update_mask<T>(mut self, v: T) -> Self
15929 where
15930 T: std::convert::Into<wkt::FieldMask>,
15931 {
15932 self.update_mask = std::option::Option::Some(v.into());
15933 self
15934 }
15935
15936 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
15938 where
15939 T: std::convert::Into<wkt::FieldMask>,
15940 {
15941 self.update_mask = v.map(|x| x.into());
15942 self
15943 }
15944
15945 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
15947 self.request_id = v.into();
15948 self
15949 }
15950}
15951
15952impl wkt::message::Message for UpdateVmwareEngineNetworkRequest {
15953 fn typename() -> &'static str {
15954 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdateVmwareEngineNetworkRequest"
15955 }
15956}
15957
15958#[doc(hidden)]
15959impl<'de> serde::de::Deserialize<'de> for UpdateVmwareEngineNetworkRequest {
15960 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15961 where
15962 D: serde::Deserializer<'de>,
15963 {
15964 #[allow(non_camel_case_types)]
15965 #[doc(hidden)]
15966 #[derive(PartialEq, Eq, Hash)]
15967 enum __FieldTag {
15968 __vmware_engine_network,
15969 __update_mask,
15970 __request_id,
15971 Unknown(std::string::String),
15972 }
15973 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
15974 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
15975 where
15976 D: serde::Deserializer<'de>,
15977 {
15978 struct Visitor;
15979 impl<'de> serde::de::Visitor<'de> for Visitor {
15980 type Value = __FieldTag;
15981 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
15982 formatter.write_str("a field name for UpdateVmwareEngineNetworkRequest")
15983 }
15984 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
15985 where
15986 E: serde::de::Error,
15987 {
15988 use std::result::Result::Ok;
15989 use std::string::ToString;
15990 match value {
15991 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
15992 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
15993 "updateMask" => Ok(__FieldTag::__update_mask),
15994 "update_mask" => Ok(__FieldTag::__update_mask),
15995 "requestId" => Ok(__FieldTag::__request_id),
15996 "request_id" => Ok(__FieldTag::__request_id),
15997 _ => Ok(__FieldTag::Unknown(value.to_string())),
15998 }
15999 }
16000 }
16001 deserializer.deserialize_identifier(Visitor)
16002 }
16003 }
16004 struct Visitor;
16005 impl<'de> serde::de::Visitor<'de> for Visitor {
16006 type Value = UpdateVmwareEngineNetworkRequest;
16007 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16008 formatter.write_str("struct UpdateVmwareEngineNetworkRequest")
16009 }
16010 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
16011 where
16012 A: serde::de::MapAccess<'de>,
16013 {
16014 #[allow(unused_imports)]
16015 use serde::de::Error;
16016 use std::option::Option::Some;
16017 let mut fields = std::collections::HashSet::new();
16018 let mut result = Self::Value::new();
16019 while let Some(tag) = map.next_key::<__FieldTag>()? {
16020 #[allow(clippy::match_single_binding)]
16021 match tag {
16022 __FieldTag::__vmware_engine_network => {
16023 if !fields.insert(__FieldTag::__vmware_engine_network) {
16024 return std::result::Result::Err(A::Error::duplicate_field(
16025 "multiple values for vmware_engine_network",
16026 ));
16027 }
16028 result.vmware_engine_network = map.next_value::<std::option::Option<crate::model::VmwareEngineNetwork>>()?
16029 ;
16030 }
16031 __FieldTag::__update_mask => {
16032 if !fields.insert(__FieldTag::__update_mask) {
16033 return std::result::Result::Err(A::Error::duplicate_field(
16034 "multiple values for update_mask",
16035 ));
16036 }
16037 result.update_mask =
16038 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
16039 }
16040 __FieldTag::__request_id => {
16041 if !fields.insert(__FieldTag::__request_id) {
16042 return std::result::Result::Err(A::Error::duplicate_field(
16043 "multiple values for request_id",
16044 ));
16045 }
16046 result.request_id = map
16047 .next_value::<std::option::Option<std::string::String>>()?
16048 .unwrap_or_default();
16049 }
16050 __FieldTag::Unknown(key) => {
16051 let value = map.next_value::<serde_json::Value>()?;
16052 result._unknown_fields.insert(key, value);
16053 }
16054 }
16055 }
16056 std::result::Result::Ok(result)
16057 }
16058 }
16059 deserializer.deserialize_any(Visitor)
16060 }
16061}
16062
16063#[doc(hidden)]
16064impl serde::ser::Serialize for UpdateVmwareEngineNetworkRequest {
16065 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
16066 where
16067 S: serde::ser::Serializer,
16068 {
16069 use serde::ser::SerializeMap;
16070 #[allow(unused_imports)]
16071 use std::option::Option::Some;
16072 let mut state = serializer.serialize_map(std::option::Option::None)?;
16073 if self.vmware_engine_network.is_some() {
16074 state.serialize_entry("vmwareEngineNetwork", &self.vmware_engine_network)?;
16075 }
16076 if self.update_mask.is_some() {
16077 state.serialize_entry("updateMask", &self.update_mask)?;
16078 }
16079 if !self.request_id.is_empty() {
16080 state.serialize_entry("requestId", &self.request_id)?;
16081 }
16082 if !self._unknown_fields.is_empty() {
16083 for (key, value) in self._unknown_fields.iter() {
16084 state.serialize_entry(key, &value)?;
16085 }
16086 }
16087 state.end()
16088 }
16089}
16090
16091#[derive(Clone, Debug, Default, PartialEq)]
16096#[non_exhaustive]
16097pub struct DeleteVmwareEngineNetworkRequest {
16098 pub name: std::string::String,
16104
16105 pub request_id: std::string::String,
16120
16121 pub etag: std::string::String,
16126
16127 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
16128}
16129
16130impl DeleteVmwareEngineNetworkRequest {
16131 pub fn new() -> Self {
16132 std::default::Default::default()
16133 }
16134
16135 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16137 self.name = v.into();
16138 self
16139 }
16140
16141 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16143 self.request_id = v.into();
16144 self
16145 }
16146
16147 pub fn set_etag<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16149 self.etag = v.into();
16150 self
16151 }
16152}
16153
16154impl wkt::message::Message for DeleteVmwareEngineNetworkRequest {
16155 fn typename() -> &'static str {
16156 "type.googleapis.com/google.cloud.vmwareengine.v1.DeleteVmwareEngineNetworkRequest"
16157 }
16158}
16159
16160#[doc(hidden)]
16161impl<'de> serde::de::Deserialize<'de> for DeleteVmwareEngineNetworkRequest {
16162 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16163 where
16164 D: serde::Deserializer<'de>,
16165 {
16166 #[allow(non_camel_case_types)]
16167 #[doc(hidden)]
16168 #[derive(PartialEq, Eq, Hash)]
16169 enum __FieldTag {
16170 __name,
16171 __request_id,
16172 __etag,
16173 Unknown(std::string::String),
16174 }
16175 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
16176 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16177 where
16178 D: serde::Deserializer<'de>,
16179 {
16180 struct Visitor;
16181 impl<'de> serde::de::Visitor<'de> for Visitor {
16182 type Value = __FieldTag;
16183 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16184 formatter.write_str("a field name for DeleteVmwareEngineNetworkRequest")
16185 }
16186 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
16187 where
16188 E: serde::de::Error,
16189 {
16190 use std::result::Result::Ok;
16191 use std::string::ToString;
16192 match value {
16193 "name" => Ok(__FieldTag::__name),
16194 "requestId" => Ok(__FieldTag::__request_id),
16195 "request_id" => Ok(__FieldTag::__request_id),
16196 "etag" => Ok(__FieldTag::__etag),
16197 _ => Ok(__FieldTag::Unknown(value.to_string())),
16198 }
16199 }
16200 }
16201 deserializer.deserialize_identifier(Visitor)
16202 }
16203 }
16204 struct Visitor;
16205 impl<'de> serde::de::Visitor<'de> for Visitor {
16206 type Value = DeleteVmwareEngineNetworkRequest;
16207 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16208 formatter.write_str("struct DeleteVmwareEngineNetworkRequest")
16209 }
16210 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
16211 where
16212 A: serde::de::MapAccess<'de>,
16213 {
16214 #[allow(unused_imports)]
16215 use serde::de::Error;
16216 use std::option::Option::Some;
16217 let mut fields = std::collections::HashSet::new();
16218 let mut result = Self::Value::new();
16219 while let Some(tag) = map.next_key::<__FieldTag>()? {
16220 #[allow(clippy::match_single_binding)]
16221 match tag {
16222 __FieldTag::__name => {
16223 if !fields.insert(__FieldTag::__name) {
16224 return std::result::Result::Err(A::Error::duplicate_field(
16225 "multiple values for name",
16226 ));
16227 }
16228 result.name = map
16229 .next_value::<std::option::Option<std::string::String>>()?
16230 .unwrap_or_default();
16231 }
16232 __FieldTag::__request_id => {
16233 if !fields.insert(__FieldTag::__request_id) {
16234 return std::result::Result::Err(A::Error::duplicate_field(
16235 "multiple values for request_id",
16236 ));
16237 }
16238 result.request_id = map
16239 .next_value::<std::option::Option<std::string::String>>()?
16240 .unwrap_or_default();
16241 }
16242 __FieldTag::__etag => {
16243 if !fields.insert(__FieldTag::__etag) {
16244 return std::result::Result::Err(A::Error::duplicate_field(
16245 "multiple values for etag",
16246 ));
16247 }
16248 result.etag = map
16249 .next_value::<std::option::Option<std::string::String>>()?
16250 .unwrap_or_default();
16251 }
16252 __FieldTag::Unknown(key) => {
16253 let value = map.next_value::<serde_json::Value>()?;
16254 result._unknown_fields.insert(key, value);
16255 }
16256 }
16257 }
16258 std::result::Result::Ok(result)
16259 }
16260 }
16261 deserializer.deserialize_any(Visitor)
16262 }
16263}
16264
16265#[doc(hidden)]
16266impl serde::ser::Serialize for DeleteVmwareEngineNetworkRequest {
16267 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
16268 where
16269 S: serde::ser::Serializer,
16270 {
16271 use serde::ser::SerializeMap;
16272 #[allow(unused_imports)]
16273 use std::option::Option::Some;
16274 let mut state = serializer.serialize_map(std::option::Option::None)?;
16275 if !self.name.is_empty() {
16276 state.serialize_entry("name", &self.name)?;
16277 }
16278 if !self.request_id.is_empty() {
16279 state.serialize_entry("requestId", &self.request_id)?;
16280 }
16281 if !self.etag.is_empty() {
16282 state.serialize_entry("etag", &self.etag)?;
16283 }
16284 if !self._unknown_fields.is_empty() {
16285 for (key, value) in self._unknown_fields.iter() {
16286 state.serialize_entry(key, &value)?;
16287 }
16288 }
16289 state.end()
16290 }
16291}
16292
16293#[derive(Clone, Debug, Default, PartialEq)]
16298#[non_exhaustive]
16299pub struct GetVmwareEngineNetworkRequest {
16300 pub name: std::string::String,
16306
16307 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
16308}
16309
16310impl GetVmwareEngineNetworkRequest {
16311 pub fn new() -> Self {
16312 std::default::Default::default()
16313 }
16314
16315 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16317 self.name = v.into();
16318 self
16319 }
16320}
16321
16322impl wkt::message::Message for GetVmwareEngineNetworkRequest {
16323 fn typename() -> &'static str {
16324 "type.googleapis.com/google.cloud.vmwareengine.v1.GetVmwareEngineNetworkRequest"
16325 }
16326}
16327
16328#[doc(hidden)]
16329impl<'de> serde::de::Deserialize<'de> for GetVmwareEngineNetworkRequest {
16330 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16331 where
16332 D: serde::Deserializer<'de>,
16333 {
16334 #[allow(non_camel_case_types)]
16335 #[doc(hidden)]
16336 #[derive(PartialEq, Eq, Hash)]
16337 enum __FieldTag {
16338 __name,
16339 Unknown(std::string::String),
16340 }
16341 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
16342 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16343 where
16344 D: serde::Deserializer<'de>,
16345 {
16346 struct Visitor;
16347 impl<'de> serde::de::Visitor<'de> for Visitor {
16348 type Value = __FieldTag;
16349 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16350 formatter.write_str("a field name for GetVmwareEngineNetworkRequest")
16351 }
16352 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
16353 where
16354 E: serde::de::Error,
16355 {
16356 use std::result::Result::Ok;
16357 use std::string::ToString;
16358 match value {
16359 "name" => Ok(__FieldTag::__name),
16360 _ => Ok(__FieldTag::Unknown(value.to_string())),
16361 }
16362 }
16363 }
16364 deserializer.deserialize_identifier(Visitor)
16365 }
16366 }
16367 struct Visitor;
16368 impl<'de> serde::de::Visitor<'de> for Visitor {
16369 type Value = GetVmwareEngineNetworkRequest;
16370 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16371 formatter.write_str("struct GetVmwareEngineNetworkRequest")
16372 }
16373 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
16374 where
16375 A: serde::de::MapAccess<'de>,
16376 {
16377 #[allow(unused_imports)]
16378 use serde::de::Error;
16379 use std::option::Option::Some;
16380 let mut fields = std::collections::HashSet::new();
16381 let mut result = Self::Value::new();
16382 while let Some(tag) = map.next_key::<__FieldTag>()? {
16383 #[allow(clippy::match_single_binding)]
16384 match tag {
16385 __FieldTag::__name => {
16386 if !fields.insert(__FieldTag::__name) {
16387 return std::result::Result::Err(A::Error::duplicate_field(
16388 "multiple values for name",
16389 ));
16390 }
16391 result.name = map
16392 .next_value::<std::option::Option<std::string::String>>()?
16393 .unwrap_or_default();
16394 }
16395 __FieldTag::Unknown(key) => {
16396 let value = map.next_value::<serde_json::Value>()?;
16397 result._unknown_fields.insert(key, value);
16398 }
16399 }
16400 }
16401 std::result::Result::Ok(result)
16402 }
16403 }
16404 deserializer.deserialize_any(Visitor)
16405 }
16406}
16407
16408#[doc(hidden)]
16409impl serde::ser::Serialize for GetVmwareEngineNetworkRequest {
16410 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
16411 where
16412 S: serde::ser::Serializer,
16413 {
16414 use serde::ser::SerializeMap;
16415 #[allow(unused_imports)]
16416 use std::option::Option::Some;
16417 let mut state = serializer.serialize_map(std::option::Option::None)?;
16418 if !self.name.is_empty() {
16419 state.serialize_entry("name", &self.name)?;
16420 }
16421 if !self._unknown_fields.is_empty() {
16422 for (key, value) in self._unknown_fields.iter() {
16423 state.serialize_entry(key, &value)?;
16424 }
16425 }
16426 state.end()
16427 }
16428}
16429
16430#[derive(Clone, Debug, Default, PartialEq)]
16435#[non_exhaustive]
16436pub struct ListVmwareEngineNetworksRequest {
16437 pub parent: std::string::String,
16442
16443 pub page_size: i32,
16447
16448 pub page_token: std::string::String,
16455
16456 pub filter: std::string::String,
16484
16485 pub order_by: std::string::String,
16491
16492 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
16493}
16494
16495impl ListVmwareEngineNetworksRequest {
16496 pub fn new() -> Self {
16497 std::default::Default::default()
16498 }
16499
16500 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16502 self.parent = v.into();
16503 self
16504 }
16505
16506 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
16508 self.page_size = v.into();
16509 self
16510 }
16511
16512 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16514 self.page_token = v.into();
16515 self
16516 }
16517
16518 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16520 self.filter = v.into();
16521 self
16522 }
16523
16524 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16526 self.order_by = v.into();
16527 self
16528 }
16529}
16530
16531impl wkt::message::Message for ListVmwareEngineNetworksRequest {
16532 fn typename() -> &'static str {
16533 "type.googleapis.com/google.cloud.vmwareengine.v1.ListVmwareEngineNetworksRequest"
16534 }
16535}
16536
16537#[doc(hidden)]
16538impl<'de> serde::de::Deserialize<'de> for ListVmwareEngineNetworksRequest {
16539 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16540 where
16541 D: serde::Deserializer<'de>,
16542 {
16543 #[allow(non_camel_case_types)]
16544 #[doc(hidden)]
16545 #[derive(PartialEq, Eq, Hash)]
16546 enum __FieldTag {
16547 __parent,
16548 __page_size,
16549 __page_token,
16550 __filter,
16551 __order_by,
16552 Unknown(std::string::String),
16553 }
16554 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
16555 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16556 where
16557 D: serde::Deserializer<'de>,
16558 {
16559 struct Visitor;
16560 impl<'de> serde::de::Visitor<'de> for Visitor {
16561 type Value = __FieldTag;
16562 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16563 formatter.write_str("a field name for ListVmwareEngineNetworksRequest")
16564 }
16565 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
16566 where
16567 E: serde::de::Error,
16568 {
16569 use std::result::Result::Ok;
16570 use std::string::ToString;
16571 match value {
16572 "parent" => Ok(__FieldTag::__parent),
16573 "pageSize" => Ok(__FieldTag::__page_size),
16574 "page_size" => Ok(__FieldTag::__page_size),
16575 "pageToken" => Ok(__FieldTag::__page_token),
16576 "page_token" => Ok(__FieldTag::__page_token),
16577 "filter" => Ok(__FieldTag::__filter),
16578 "orderBy" => Ok(__FieldTag::__order_by),
16579 "order_by" => Ok(__FieldTag::__order_by),
16580 _ => Ok(__FieldTag::Unknown(value.to_string())),
16581 }
16582 }
16583 }
16584 deserializer.deserialize_identifier(Visitor)
16585 }
16586 }
16587 struct Visitor;
16588 impl<'de> serde::de::Visitor<'de> for Visitor {
16589 type Value = ListVmwareEngineNetworksRequest;
16590 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16591 formatter.write_str("struct ListVmwareEngineNetworksRequest")
16592 }
16593 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
16594 where
16595 A: serde::de::MapAccess<'de>,
16596 {
16597 #[allow(unused_imports)]
16598 use serde::de::Error;
16599 use std::option::Option::Some;
16600 let mut fields = std::collections::HashSet::new();
16601 let mut result = Self::Value::new();
16602 while let Some(tag) = map.next_key::<__FieldTag>()? {
16603 #[allow(clippy::match_single_binding)]
16604 match tag {
16605 __FieldTag::__parent => {
16606 if !fields.insert(__FieldTag::__parent) {
16607 return std::result::Result::Err(A::Error::duplicate_field(
16608 "multiple values for parent",
16609 ));
16610 }
16611 result.parent = map
16612 .next_value::<std::option::Option<std::string::String>>()?
16613 .unwrap_or_default();
16614 }
16615 __FieldTag::__page_size => {
16616 if !fields.insert(__FieldTag::__page_size) {
16617 return std::result::Result::Err(A::Error::duplicate_field(
16618 "multiple values for page_size",
16619 ));
16620 }
16621 struct __With(std::option::Option<i32>);
16622 impl<'de> serde::de::Deserialize<'de> for __With {
16623 fn deserialize<D>(
16624 deserializer: D,
16625 ) -> std::result::Result<Self, D::Error>
16626 where
16627 D: serde::de::Deserializer<'de>,
16628 {
16629 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
16630 }
16631 }
16632 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
16633 }
16634 __FieldTag::__page_token => {
16635 if !fields.insert(__FieldTag::__page_token) {
16636 return std::result::Result::Err(A::Error::duplicate_field(
16637 "multiple values for page_token",
16638 ));
16639 }
16640 result.page_token = map
16641 .next_value::<std::option::Option<std::string::String>>()?
16642 .unwrap_or_default();
16643 }
16644 __FieldTag::__filter => {
16645 if !fields.insert(__FieldTag::__filter) {
16646 return std::result::Result::Err(A::Error::duplicate_field(
16647 "multiple values for filter",
16648 ));
16649 }
16650 result.filter = map
16651 .next_value::<std::option::Option<std::string::String>>()?
16652 .unwrap_or_default();
16653 }
16654 __FieldTag::__order_by => {
16655 if !fields.insert(__FieldTag::__order_by) {
16656 return std::result::Result::Err(A::Error::duplicate_field(
16657 "multiple values for order_by",
16658 ));
16659 }
16660 result.order_by = map
16661 .next_value::<std::option::Option<std::string::String>>()?
16662 .unwrap_or_default();
16663 }
16664 __FieldTag::Unknown(key) => {
16665 let value = map.next_value::<serde_json::Value>()?;
16666 result._unknown_fields.insert(key, value);
16667 }
16668 }
16669 }
16670 std::result::Result::Ok(result)
16671 }
16672 }
16673 deserializer.deserialize_any(Visitor)
16674 }
16675}
16676
16677#[doc(hidden)]
16678impl serde::ser::Serialize for ListVmwareEngineNetworksRequest {
16679 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
16680 where
16681 S: serde::ser::Serializer,
16682 {
16683 use serde::ser::SerializeMap;
16684 #[allow(unused_imports)]
16685 use std::option::Option::Some;
16686 let mut state = serializer.serialize_map(std::option::Option::None)?;
16687 if !self.parent.is_empty() {
16688 state.serialize_entry("parent", &self.parent)?;
16689 }
16690 if !wkt::internal::is_default(&self.page_size) {
16691 struct __With<'a>(&'a i32);
16692 impl<'a> serde::ser::Serialize for __With<'a> {
16693 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
16694 where
16695 S: serde::ser::Serializer,
16696 {
16697 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
16698 }
16699 }
16700 state.serialize_entry("pageSize", &__With(&self.page_size))?;
16701 }
16702 if !self.page_token.is_empty() {
16703 state.serialize_entry("pageToken", &self.page_token)?;
16704 }
16705 if !self.filter.is_empty() {
16706 state.serialize_entry("filter", &self.filter)?;
16707 }
16708 if !self.order_by.is_empty() {
16709 state.serialize_entry("orderBy", &self.order_by)?;
16710 }
16711 if !self._unknown_fields.is_empty() {
16712 for (key, value) in self._unknown_fields.iter() {
16713 state.serialize_entry(key, &value)?;
16714 }
16715 }
16716 state.end()
16717 }
16718}
16719
16720#[derive(Clone, Debug, Default, PartialEq)]
16725#[non_exhaustive]
16726pub struct ListVmwareEngineNetworksResponse {
16727 pub vmware_engine_networks: std::vec::Vec<crate::model::VmwareEngineNetwork>,
16729
16730 pub next_page_token: std::string::String,
16733
16734 pub unreachable: std::vec::Vec<std::string::String>,
16736
16737 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
16738}
16739
16740impl ListVmwareEngineNetworksResponse {
16741 pub fn new() -> Self {
16742 std::default::Default::default()
16743 }
16744
16745 pub fn set_vmware_engine_networks<T, V>(mut self, v: T) -> Self
16747 where
16748 T: std::iter::IntoIterator<Item = V>,
16749 V: std::convert::Into<crate::model::VmwareEngineNetwork>,
16750 {
16751 use std::iter::Iterator;
16752 self.vmware_engine_networks = v.into_iter().map(|i| i.into()).collect();
16753 self
16754 }
16755
16756 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16758 self.next_page_token = v.into();
16759 self
16760 }
16761
16762 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
16764 where
16765 T: std::iter::IntoIterator<Item = V>,
16766 V: std::convert::Into<std::string::String>,
16767 {
16768 use std::iter::Iterator;
16769 self.unreachable = v.into_iter().map(|i| i.into()).collect();
16770 self
16771 }
16772}
16773
16774impl wkt::message::Message for ListVmwareEngineNetworksResponse {
16775 fn typename() -> &'static str {
16776 "type.googleapis.com/google.cloud.vmwareengine.v1.ListVmwareEngineNetworksResponse"
16777 }
16778}
16779
16780#[doc(hidden)]
16781impl gax::paginator::internal::PageableResponse for ListVmwareEngineNetworksResponse {
16782 type PageItem = crate::model::VmwareEngineNetwork;
16783
16784 fn items(self) -> std::vec::Vec<Self::PageItem> {
16785 self.vmware_engine_networks
16786 }
16787
16788 fn next_page_token(&self) -> std::string::String {
16789 use std::clone::Clone;
16790 self.next_page_token.clone()
16791 }
16792}
16793
16794#[doc(hidden)]
16795impl<'de> serde::de::Deserialize<'de> for ListVmwareEngineNetworksResponse {
16796 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16797 where
16798 D: serde::Deserializer<'de>,
16799 {
16800 #[allow(non_camel_case_types)]
16801 #[doc(hidden)]
16802 #[derive(PartialEq, Eq, Hash)]
16803 enum __FieldTag {
16804 __vmware_engine_networks,
16805 __next_page_token,
16806 __unreachable,
16807 Unknown(std::string::String),
16808 }
16809 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
16810 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
16811 where
16812 D: serde::Deserializer<'de>,
16813 {
16814 struct Visitor;
16815 impl<'de> serde::de::Visitor<'de> for Visitor {
16816 type Value = __FieldTag;
16817 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16818 formatter.write_str("a field name for ListVmwareEngineNetworksResponse")
16819 }
16820 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
16821 where
16822 E: serde::de::Error,
16823 {
16824 use std::result::Result::Ok;
16825 use std::string::ToString;
16826 match value {
16827 "vmwareEngineNetworks" => Ok(__FieldTag::__vmware_engine_networks),
16828 "vmware_engine_networks" => Ok(__FieldTag::__vmware_engine_networks),
16829 "nextPageToken" => Ok(__FieldTag::__next_page_token),
16830 "next_page_token" => Ok(__FieldTag::__next_page_token),
16831 "unreachable" => Ok(__FieldTag::__unreachable),
16832 _ => Ok(__FieldTag::Unknown(value.to_string())),
16833 }
16834 }
16835 }
16836 deserializer.deserialize_identifier(Visitor)
16837 }
16838 }
16839 struct Visitor;
16840 impl<'de> serde::de::Visitor<'de> for Visitor {
16841 type Value = ListVmwareEngineNetworksResponse;
16842 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
16843 formatter.write_str("struct ListVmwareEngineNetworksResponse")
16844 }
16845 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
16846 where
16847 A: serde::de::MapAccess<'de>,
16848 {
16849 #[allow(unused_imports)]
16850 use serde::de::Error;
16851 use std::option::Option::Some;
16852 let mut fields = std::collections::HashSet::new();
16853 let mut result = Self::Value::new();
16854 while let Some(tag) = map.next_key::<__FieldTag>()? {
16855 #[allow(clippy::match_single_binding)]
16856 match tag {
16857 __FieldTag::__vmware_engine_networks => {
16858 if !fields.insert(__FieldTag::__vmware_engine_networks) {
16859 return std::result::Result::Err(A::Error::duplicate_field(
16860 "multiple values for vmware_engine_networks",
16861 ));
16862 }
16863 result.vmware_engine_networks = map
16864 .next_value::<std::option::Option<
16865 std::vec::Vec<crate::model::VmwareEngineNetwork>,
16866 >>()?
16867 .unwrap_or_default();
16868 }
16869 __FieldTag::__next_page_token => {
16870 if !fields.insert(__FieldTag::__next_page_token) {
16871 return std::result::Result::Err(A::Error::duplicate_field(
16872 "multiple values for next_page_token",
16873 ));
16874 }
16875 result.next_page_token = map
16876 .next_value::<std::option::Option<std::string::String>>()?
16877 .unwrap_or_default();
16878 }
16879 __FieldTag::__unreachable => {
16880 if !fields.insert(__FieldTag::__unreachable) {
16881 return std::result::Result::Err(A::Error::duplicate_field(
16882 "multiple values for unreachable",
16883 ));
16884 }
16885 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
16886 }
16887 __FieldTag::Unknown(key) => {
16888 let value = map.next_value::<serde_json::Value>()?;
16889 result._unknown_fields.insert(key, value);
16890 }
16891 }
16892 }
16893 std::result::Result::Ok(result)
16894 }
16895 }
16896 deserializer.deserialize_any(Visitor)
16897 }
16898}
16899
16900#[doc(hidden)]
16901impl serde::ser::Serialize for ListVmwareEngineNetworksResponse {
16902 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
16903 where
16904 S: serde::ser::Serializer,
16905 {
16906 use serde::ser::SerializeMap;
16907 #[allow(unused_imports)]
16908 use std::option::Option::Some;
16909 let mut state = serializer.serialize_map(std::option::Option::None)?;
16910 if !self.vmware_engine_networks.is_empty() {
16911 state.serialize_entry("vmwareEngineNetworks", &self.vmware_engine_networks)?;
16912 }
16913 if !self.next_page_token.is_empty() {
16914 state.serialize_entry("nextPageToken", &self.next_page_token)?;
16915 }
16916 if !self.unreachable.is_empty() {
16917 state.serialize_entry("unreachable", &self.unreachable)?;
16918 }
16919 if !self._unknown_fields.is_empty() {
16920 for (key, value) in self._unknown_fields.iter() {
16921 state.serialize_entry(key, &value)?;
16922 }
16923 }
16924 state.end()
16925 }
16926}
16927
16928#[derive(Clone, Debug, Default, PartialEq)]
16933#[non_exhaustive]
16934pub struct CreatePrivateConnectionRequest {
16935 pub parent: std::string::String,
16941
16942 pub private_connection_id: std::string::String,
16954
16955 pub private_connection: std::option::Option<crate::model::PrivateConnection>,
16957
16958 pub request_id: std::string::String,
16973
16974 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
16975}
16976
16977impl CreatePrivateConnectionRequest {
16978 pub fn new() -> Self {
16979 std::default::Default::default()
16980 }
16981
16982 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
16984 self.parent = v.into();
16985 self
16986 }
16987
16988 pub fn set_private_connection_id<T: std::convert::Into<std::string::String>>(
16990 mut self,
16991 v: T,
16992 ) -> Self {
16993 self.private_connection_id = v.into();
16994 self
16995 }
16996
16997 pub fn set_private_connection<T>(mut self, v: T) -> Self
16999 where
17000 T: std::convert::Into<crate::model::PrivateConnection>,
17001 {
17002 self.private_connection = std::option::Option::Some(v.into());
17003 self
17004 }
17005
17006 pub fn set_or_clear_private_connection<T>(mut self, v: std::option::Option<T>) -> Self
17008 where
17009 T: std::convert::Into<crate::model::PrivateConnection>,
17010 {
17011 self.private_connection = v.map(|x| x.into());
17012 self
17013 }
17014
17015 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17017 self.request_id = v.into();
17018 self
17019 }
17020}
17021
17022impl wkt::message::Message for CreatePrivateConnectionRequest {
17023 fn typename() -> &'static str {
17024 "type.googleapis.com/google.cloud.vmwareengine.v1.CreatePrivateConnectionRequest"
17025 }
17026}
17027
17028#[doc(hidden)]
17029impl<'de> serde::de::Deserialize<'de> for CreatePrivateConnectionRequest {
17030 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17031 where
17032 D: serde::Deserializer<'de>,
17033 {
17034 #[allow(non_camel_case_types)]
17035 #[doc(hidden)]
17036 #[derive(PartialEq, Eq, Hash)]
17037 enum __FieldTag {
17038 __parent,
17039 __private_connection_id,
17040 __private_connection,
17041 __request_id,
17042 Unknown(std::string::String),
17043 }
17044 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
17045 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17046 where
17047 D: serde::Deserializer<'de>,
17048 {
17049 struct Visitor;
17050 impl<'de> serde::de::Visitor<'de> for Visitor {
17051 type Value = __FieldTag;
17052 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17053 formatter.write_str("a field name for CreatePrivateConnectionRequest")
17054 }
17055 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
17056 where
17057 E: serde::de::Error,
17058 {
17059 use std::result::Result::Ok;
17060 use std::string::ToString;
17061 match value {
17062 "parent" => Ok(__FieldTag::__parent),
17063 "privateConnectionId" => Ok(__FieldTag::__private_connection_id),
17064 "private_connection_id" => Ok(__FieldTag::__private_connection_id),
17065 "privateConnection" => Ok(__FieldTag::__private_connection),
17066 "private_connection" => Ok(__FieldTag::__private_connection),
17067 "requestId" => Ok(__FieldTag::__request_id),
17068 "request_id" => Ok(__FieldTag::__request_id),
17069 _ => Ok(__FieldTag::Unknown(value.to_string())),
17070 }
17071 }
17072 }
17073 deserializer.deserialize_identifier(Visitor)
17074 }
17075 }
17076 struct Visitor;
17077 impl<'de> serde::de::Visitor<'de> for Visitor {
17078 type Value = CreatePrivateConnectionRequest;
17079 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17080 formatter.write_str("struct CreatePrivateConnectionRequest")
17081 }
17082 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
17083 where
17084 A: serde::de::MapAccess<'de>,
17085 {
17086 #[allow(unused_imports)]
17087 use serde::de::Error;
17088 use std::option::Option::Some;
17089 let mut fields = std::collections::HashSet::new();
17090 let mut result = Self::Value::new();
17091 while let Some(tag) = map.next_key::<__FieldTag>()? {
17092 #[allow(clippy::match_single_binding)]
17093 match tag {
17094 __FieldTag::__parent => {
17095 if !fields.insert(__FieldTag::__parent) {
17096 return std::result::Result::Err(A::Error::duplicate_field(
17097 "multiple values for parent",
17098 ));
17099 }
17100 result.parent = map
17101 .next_value::<std::option::Option<std::string::String>>()?
17102 .unwrap_or_default();
17103 }
17104 __FieldTag::__private_connection_id => {
17105 if !fields.insert(__FieldTag::__private_connection_id) {
17106 return std::result::Result::Err(A::Error::duplicate_field(
17107 "multiple values for private_connection_id",
17108 ));
17109 }
17110 result.private_connection_id = map
17111 .next_value::<std::option::Option<std::string::String>>()?
17112 .unwrap_or_default();
17113 }
17114 __FieldTag::__private_connection => {
17115 if !fields.insert(__FieldTag::__private_connection) {
17116 return std::result::Result::Err(A::Error::duplicate_field(
17117 "multiple values for private_connection",
17118 ));
17119 }
17120 result.private_connection = map
17121 .next_value::<std::option::Option<crate::model::PrivateConnection>>(
17122 )?;
17123 }
17124 __FieldTag::__request_id => {
17125 if !fields.insert(__FieldTag::__request_id) {
17126 return std::result::Result::Err(A::Error::duplicate_field(
17127 "multiple values for request_id",
17128 ));
17129 }
17130 result.request_id = map
17131 .next_value::<std::option::Option<std::string::String>>()?
17132 .unwrap_or_default();
17133 }
17134 __FieldTag::Unknown(key) => {
17135 let value = map.next_value::<serde_json::Value>()?;
17136 result._unknown_fields.insert(key, value);
17137 }
17138 }
17139 }
17140 std::result::Result::Ok(result)
17141 }
17142 }
17143 deserializer.deserialize_any(Visitor)
17144 }
17145}
17146
17147#[doc(hidden)]
17148impl serde::ser::Serialize for CreatePrivateConnectionRequest {
17149 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
17150 where
17151 S: serde::ser::Serializer,
17152 {
17153 use serde::ser::SerializeMap;
17154 #[allow(unused_imports)]
17155 use std::option::Option::Some;
17156 let mut state = serializer.serialize_map(std::option::Option::None)?;
17157 if !self.parent.is_empty() {
17158 state.serialize_entry("parent", &self.parent)?;
17159 }
17160 if !self.private_connection_id.is_empty() {
17161 state.serialize_entry("privateConnectionId", &self.private_connection_id)?;
17162 }
17163 if self.private_connection.is_some() {
17164 state.serialize_entry("privateConnection", &self.private_connection)?;
17165 }
17166 if !self.request_id.is_empty() {
17167 state.serialize_entry("requestId", &self.request_id)?;
17168 }
17169 if !self._unknown_fields.is_empty() {
17170 for (key, value) in self._unknown_fields.iter() {
17171 state.serialize_entry(key, &value)?;
17172 }
17173 }
17174 state.end()
17175 }
17176}
17177
17178#[derive(Clone, Debug, Default, PartialEq)]
17183#[non_exhaustive]
17184pub struct GetPrivateConnectionRequest {
17185 pub name: std::string::String,
17191
17192 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
17193}
17194
17195impl GetPrivateConnectionRequest {
17196 pub fn new() -> Self {
17197 std::default::Default::default()
17198 }
17199
17200 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17202 self.name = v.into();
17203 self
17204 }
17205}
17206
17207impl wkt::message::Message for GetPrivateConnectionRequest {
17208 fn typename() -> &'static str {
17209 "type.googleapis.com/google.cloud.vmwareengine.v1.GetPrivateConnectionRequest"
17210 }
17211}
17212
17213#[doc(hidden)]
17214impl<'de> serde::de::Deserialize<'de> for GetPrivateConnectionRequest {
17215 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17216 where
17217 D: serde::Deserializer<'de>,
17218 {
17219 #[allow(non_camel_case_types)]
17220 #[doc(hidden)]
17221 #[derive(PartialEq, Eq, Hash)]
17222 enum __FieldTag {
17223 __name,
17224 Unknown(std::string::String),
17225 }
17226 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
17227 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17228 where
17229 D: serde::Deserializer<'de>,
17230 {
17231 struct Visitor;
17232 impl<'de> serde::de::Visitor<'de> for Visitor {
17233 type Value = __FieldTag;
17234 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17235 formatter.write_str("a field name for GetPrivateConnectionRequest")
17236 }
17237 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
17238 where
17239 E: serde::de::Error,
17240 {
17241 use std::result::Result::Ok;
17242 use std::string::ToString;
17243 match value {
17244 "name" => Ok(__FieldTag::__name),
17245 _ => Ok(__FieldTag::Unknown(value.to_string())),
17246 }
17247 }
17248 }
17249 deserializer.deserialize_identifier(Visitor)
17250 }
17251 }
17252 struct Visitor;
17253 impl<'de> serde::de::Visitor<'de> for Visitor {
17254 type Value = GetPrivateConnectionRequest;
17255 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17256 formatter.write_str("struct GetPrivateConnectionRequest")
17257 }
17258 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
17259 where
17260 A: serde::de::MapAccess<'de>,
17261 {
17262 #[allow(unused_imports)]
17263 use serde::de::Error;
17264 use std::option::Option::Some;
17265 let mut fields = std::collections::HashSet::new();
17266 let mut result = Self::Value::new();
17267 while let Some(tag) = map.next_key::<__FieldTag>()? {
17268 #[allow(clippy::match_single_binding)]
17269 match tag {
17270 __FieldTag::__name => {
17271 if !fields.insert(__FieldTag::__name) {
17272 return std::result::Result::Err(A::Error::duplicate_field(
17273 "multiple values for name",
17274 ));
17275 }
17276 result.name = map
17277 .next_value::<std::option::Option<std::string::String>>()?
17278 .unwrap_or_default();
17279 }
17280 __FieldTag::Unknown(key) => {
17281 let value = map.next_value::<serde_json::Value>()?;
17282 result._unknown_fields.insert(key, value);
17283 }
17284 }
17285 }
17286 std::result::Result::Ok(result)
17287 }
17288 }
17289 deserializer.deserialize_any(Visitor)
17290 }
17291}
17292
17293#[doc(hidden)]
17294impl serde::ser::Serialize for GetPrivateConnectionRequest {
17295 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
17296 where
17297 S: serde::ser::Serializer,
17298 {
17299 use serde::ser::SerializeMap;
17300 #[allow(unused_imports)]
17301 use std::option::Option::Some;
17302 let mut state = serializer.serialize_map(std::option::Option::None)?;
17303 if !self.name.is_empty() {
17304 state.serialize_entry("name", &self.name)?;
17305 }
17306 if !self._unknown_fields.is_empty() {
17307 for (key, value) in self._unknown_fields.iter() {
17308 state.serialize_entry(key, &value)?;
17309 }
17310 }
17311 state.end()
17312 }
17313}
17314
17315#[derive(Clone, Debug, Default, PartialEq)]
17320#[non_exhaustive]
17321pub struct ListPrivateConnectionsRequest {
17322 pub parent: std::string::String,
17327
17328 pub page_size: i32,
17332
17333 pub page_token: std::string::String,
17340
17341 pub filter: std::string::String,
17369
17370 pub order_by: std::string::String,
17376
17377 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
17378}
17379
17380impl ListPrivateConnectionsRequest {
17381 pub fn new() -> Self {
17382 std::default::Default::default()
17383 }
17384
17385 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17387 self.parent = v.into();
17388 self
17389 }
17390
17391 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
17393 self.page_size = v.into();
17394 self
17395 }
17396
17397 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17399 self.page_token = v.into();
17400 self
17401 }
17402
17403 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17405 self.filter = v.into();
17406 self
17407 }
17408
17409 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17411 self.order_by = v.into();
17412 self
17413 }
17414}
17415
17416impl wkt::message::Message for ListPrivateConnectionsRequest {
17417 fn typename() -> &'static str {
17418 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPrivateConnectionsRequest"
17419 }
17420}
17421
17422#[doc(hidden)]
17423impl<'de> serde::de::Deserialize<'de> for ListPrivateConnectionsRequest {
17424 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17425 where
17426 D: serde::Deserializer<'de>,
17427 {
17428 #[allow(non_camel_case_types)]
17429 #[doc(hidden)]
17430 #[derive(PartialEq, Eq, Hash)]
17431 enum __FieldTag {
17432 __parent,
17433 __page_size,
17434 __page_token,
17435 __filter,
17436 __order_by,
17437 Unknown(std::string::String),
17438 }
17439 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
17440 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17441 where
17442 D: serde::Deserializer<'de>,
17443 {
17444 struct Visitor;
17445 impl<'de> serde::de::Visitor<'de> for Visitor {
17446 type Value = __FieldTag;
17447 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17448 formatter.write_str("a field name for ListPrivateConnectionsRequest")
17449 }
17450 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
17451 where
17452 E: serde::de::Error,
17453 {
17454 use std::result::Result::Ok;
17455 use std::string::ToString;
17456 match value {
17457 "parent" => Ok(__FieldTag::__parent),
17458 "pageSize" => Ok(__FieldTag::__page_size),
17459 "page_size" => Ok(__FieldTag::__page_size),
17460 "pageToken" => Ok(__FieldTag::__page_token),
17461 "page_token" => Ok(__FieldTag::__page_token),
17462 "filter" => Ok(__FieldTag::__filter),
17463 "orderBy" => Ok(__FieldTag::__order_by),
17464 "order_by" => Ok(__FieldTag::__order_by),
17465 _ => Ok(__FieldTag::Unknown(value.to_string())),
17466 }
17467 }
17468 }
17469 deserializer.deserialize_identifier(Visitor)
17470 }
17471 }
17472 struct Visitor;
17473 impl<'de> serde::de::Visitor<'de> for Visitor {
17474 type Value = ListPrivateConnectionsRequest;
17475 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17476 formatter.write_str("struct ListPrivateConnectionsRequest")
17477 }
17478 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
17479 where
17480 A: serde::de::MapAccess<'de>,
17481 {
17482 #[allow(unused_imports)]
17483 use serde::de::Error;
17484 use std::option::Option::Some;
17485 let mut fields = std::collections::HashSet::new();
17486 let mut result = Self::Value::new();
17487 while let Some(tag) = map.next_key::<__FieldTag>()? {
17488 #[allow(clippy::match_single_binding)]
17489 match tag {
17490 __FieldTag::__parent => {
17491 if !fields.insert(__FieldTag::__parent) {
17492 return std::result::Result::Err(A::Error::duplicate_field(
17493 "multiple values for parent",
17494 ));
17495 }
17496 result.parent = map
17497 .next_value::<std::option::Option<std::string::String>>()?
17498 .unwrap_or_default();
17499 }
17500 __FieldTag::__page_size => {
17501 if !fields.insert(__FieldTag::__page_size) {
17502 return std::result::Result::Err(A::Error::duplicate_field(
17503 "multiple values for page_size",
17504 ));
17505 }
17506 struct __With(std::option::Option<i32>);
17507 impl<'de> serde::de::Deserialize<'de> for __With {
17508 fn deserialize<D>(
17509 deserializer: D,
17510 ) -> std::result::Result<Self, D::Error>
17511 where
17512 D: serde::de::Deserializer<'de>,
17513 {
17514 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
17515 }
17516 }
17517 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
17518 }
17519 __FieldTag::__page_token => {
17520 if !fields.insert(__FieldTag::__page_token) {
17521 return std::result::Result::Err(A::Error::duplicate_field(
17522 "multiple values for page_token",
17523 ));
17524 }
17525 result.page_token = map
17526 .next_value::<std::option::Option<std::string::String>>()?
17527 .unwrap_or_default();
17528 }
17529 __FieldTag::__filter => {
17530 if !fields.insert(__FieldTag::__filter) {
17531 return std::result::Result::Err(A::Error::duplicate_field(
17532 "multiple values for filter",
17533 ));
17534 }
17535 result.filter = map
17536 .next_value::<std::option::Option<std::string::String>>()?
17537 .unwrap_or_default();
17538 }
17539 __FieldTag::__order_by => {
17540 if !fields.insert(__FieldTag::__order_by) {
17541 return std::result::Result::Err(A::Error::duplicate_field(
17542 "multiple values for order_by",
17543 ));
17544 }
17545 result.order_by = map
17546 .next_value::<std::option::Option<std::string::String>>()?
17547 .unwrap_or_default();
17548 }
17549 __FieldTag::Unknown(key) => {
17550 let value = map.next_value::<serde_json::Value>()?;
17551 result._unknown_fields.insert(key, value);
17552 }
17553 }
17554 }
17555 std::result::Result::Ok(result)
17556 }
17557 }
17558 deserializer.deserialize_any(Visitor)
17559 }
17560}
17561
17562#[doc(hidden)]
17563impl serde::ser::Serialize for ListPrivateConnectionsRequest {
17564 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
17565 where
17566 S: serde::ser::Serializer,
17567 {
17568 use serde::ser::SerializeMap;
17569 #[allow(unused_imports)]
17570 use std::option::Option::Some;
17571 let mut state = serializer.serialize_map(std::option::Option::None)?;
17572 if !self.parent.is_empty() {
17573 state.serialize_entry("parent", &self.parent)?;
17574 }
17575 if !wkt::internal::is_default(&self.page_size) {
17576 struct __With<'a>(&'a i32);
17577 impl<'a> serde::ser::Serialize for __With<'a> {
17578 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
17579 where
17580 S: serde::ser::Serializer,
17581 {
17582 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
17583 }
17584 }
17585 state.serialize_entry("pageSize", &__With(&self.page_size))?;
17586 }
17587 if !self.page_token.is_empty() {
17588 state.serialize_entry("pageToken", &self.page_token)?;
17589 }
17590 if !self.filter.is_empty() {
17591 state.serialize_entry("filter", &self.filter)?;
17592 }
17593 if !self.order_by.is_empty() {
17594 state.serialize_entry("orderBy", &self.order_by)?;
17595 }
17596 if !self._unknown_fields.is_empty() {
17597 for (key, value) in self._unknown_fields.iter() {
17598 state.serialize_entry(key, &value)?;
17599 }
17600 }
17601 state.end()
17602 }
17603}
17604
17605#[derive(Clone, Debug, Default, PartialEq)]
17610#[non_exhaustive]
17611pub struct ListPrivateConnectionsResponse {
17612 pub private_connections: std::vec::Vec<crate::model::PrivateConnection>,
17614
17615 pub next_page_token: std::string::String,
17618
17619 pub unreachable: std::vec::Vec<std::string::String>,
17621
17622 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
17623}
17624
17625impl ListPrivateConnectionsResponse {
17626 pub fn new() -> Self {
17627 std::default::Default::default()
17628 }
17629
17630 pub fn set_private_connections<T, V>(mut self, v: T) -> Self
17632 where
17633 T: std::iter::IntoIterator<Item = V>,
17634 V: std::convert::Into<crate::model::PrivateConnection>,
17635 {
17636 use std::iter::Iterator;
17637 self.private_connections = v.into_iter().map(|i| i.into()).collect();
17638 self
17639 }
17640
17641 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17643 self.next_page_token = v.into();
17644 self
17645 }
17646
17647 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
17649 where
17650 T: std::iter::IntoIterator<Item = V>,
17651 V: std::convert::Into<std::string::String>,
17652 {
17653 use std::iter::Iterator;
17654 self.unreachable = v.into_iter().map(|i| i.into()).collect();
17655 self
17656 }
17657}
17658
17659impl wkt::message::Message for ListPrivateConnectionsResponse {
17660 fn typename() -> &'static str {
17661 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPrivateConnectionsResponse"
17662 }
17663}
17664
17665#[doc(hidden)]
17666impl gax::paginator::internal::PageableResponse for ListPrivateConnectionsResponse {
17667 type PageItem = crate::model::PrivateConnection;
17668
17669 fn items(self) -> std::vec::Vec<Self::PageItem> {
17670 self.private_connections
17671 }
17672
17673 fn next_page_token(&self) -> std::string::String {
17674 use std::clone::Clone;
17675 self.next_page_token.clone()
17676 }
17677}
17678
17679#[doc(hidden)]
17680impl<'de> serde::de::Deserialize<'de> for ListPrivateConnectionsResponse {
17681 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17682 where
17683 D: serde::Deserializer<'de>,
17684 {
17685 #[allow(non_camel_case_types)]
17686 #[doc(hidden)]
17687 #[derive(PartialEq, Eq, Hash)]
17688 enum __FieldTag {
17689 __private_connections,
17690 __next_page_token,
17691 __unreachable,
17692 Unknown(std::string::String),
17693 }
17694 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
17695 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17696 where
17697 D: serde::Deserializer<'de>,
17698 {
17699 struct Visitor;
17700 impl<'de> serde::de::Visitor<'de> for Visitor {
17701 type Value = __FieldTag;
17702 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17703 formatter.write_str("a field name for ListPrivateConnectionsResponse")
17704 }
17705 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
17706 where
17707 E: serde::de::Error,
17708 {
17709 use std::result::Result::Ok;
17710 use std::string::ToString;
17711 match value {
17712 "privateConnections" => Ok(__FieldTag::__private_connections),
17713 "private_connections" => Ok(__FieldTag::__private_connections),
17714 "nextPageToken" => Ok(__FieldTag::__next_page_token),
17715 "next_page_token" => Ok(__FieldTag::__next_page_token),
17716 "unreachable" => Ok(__FieldTag::__unreachable),
17717 _ => Ok(__FieldTag::Unknown(value.to_string())),
17718 }
17719 }
17720 }
17721 deserializer.deserialize_identifier(Visitor)
17722 }
17723 }
17724 struct Visitor;
17725 impl<'de> serde::de::Visitor<'de> for Visitor {
17726 type Value = ListPrivateConnectionsResponse;
17727 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17728 formatter.write_str("struct ListPrivateConnectionsResponse")
17729 }
17730 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
17731 where
17732 A: serde::de::MapAccess<'de>,
17733 {
17734 #[allow(unused_imports)]
17735 use serde::de::Error;
17736 use std::option::Option::Some;
17737 let mut fields = std::collections::HashSet::new();
17738 let mut result = Self::Value::new();
17739 while let Some(tag) = map.next_key::<__FieldTag>()? {
17740 #[allow(clippy::match_single_binding)]
17741 match tag {
17742 __FieldTag::__private_connections => {
17743 if !fields.insert(__FieldTag::__private_connections) {
17744 return std::result::Result::Err(A::Error::duplicate_field(
17745 "multiple values for private_connections",
17746 ));
17747 }
17748 result.private_connections =
17749 map.next_value::<std::option::Option<
17750 std::vec::Vec<crate::model::PrivateConnection>,
17751 >>()?
17752 .unwrap_or_default();
17753 }
17754 __FieldTag::__next_page_token => {
17755 if !fields.insert(__FieldTag::__next_page_token) {
17756 return std::result::Result::Err(A::Error::duplicate_field(
17757 "multiple values for next_page_token",
17758 ));
17759 }
17760 result.next_page_token = map
17761 .next_value::<std::option::Option<std::string::String>>()?
17762 .unwrap_or_default();
17763 }
17764 __FieldTag::__unreachable => {
17765 if !fields.insert(__FieldTag::__unreachable) {
17766 return std::result::Result::Err(A::Error::duplicate_field(
17767 "multiple values for unreachable",
17768 ));
17769 }
17770 result.unreachable = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
17771 }
17772 __FieldTag::Unknown(key) => {
17773 let value = map.next_value::<serde_json::Value>()?;
17774 result._unknown_fields.insert(key, value);
17775 }
17776 }
17777 }
17778 std::result::Result::Ok(result)
17779 }
17780 }
17781 deserializer.deserialize_any(Visitor)
17782 }
17783}
17784
17785#[doc(hidden)]
17786impl serde::ser::Serialize for ListPrivateConnectionsResponse {
17787 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
17788 where
17789 S: serde::ser::Serializer,
17790 {
17791 use serde::ser::SerializeMap;
17792 #[allow(unused_imports)]
17793 use std::option::Option::Some;
17794 let mut state = serializer.serialize_map(std::option::Option::None)?;
17795 if !self.private_connections.is_empty() {
17796 state.serialize_entry("privateConnections", &self.private_connections)?;
17797 }
17798 if !self.next_page_token.is_empty() {
17799 state.serialize_entry("nextPageToken", &self.next_page_token)?;
17800 }
17801 if !self.unreachable.is_empty() {
17802 state.serialize_entry("unreachable", &self.unreachable)?;
17803 }
17804 if !self._unknown_fields.is_empty() {
17805 for (key, value) in self._unknown_fields.iter() {
17806 state.serialize_entry(key, &value)?;
17807 }
17808 }
17809 state.end()
17810 }
17811}
17812
17813#[derive(Clone, Debug, Default, PartialEq)]
17818#[non_exhaustive]
17819pub struct UpdatePrivateConnectionRequest {
17820 pub private_connection: std::option::Option<crate::model::PrivateConnection>,
17822
17823 pub update_mask: std::option::Option<wkt::FieldMask>,
17829
17830 pub request_id: std::string::String,
17845
17846 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
17847}
17848
17849impl UpdatePrivateConnectionRequest {
17850 pub fn new() -> Self {
17851 std::default::Default::default()
17852 }
17853
17854 pub fn set_private_connection<T>(mut self, v: T) -> Self
17856 where
17857 T: std::convert::Into<crate::model::PrivateConnection>,
17858 {
17859 self.private_connection = std::option::Option::Some(v.into());
17860 self
17861 }
17862
17863 pub fn set_or_clear_private_connection<T>(mut self, v: std::option::Option<T>) -> Self
17865 where
17866 T: std::convert::Into<crate::model::PrivateConnection>,
17867 {
17868 self.private_connection = v.map(|x| x.into());
17869 self
17870 }
17871
17872 pub fn set_update_mask<T>(mut self, v: T) -> Self
17874 where
17875 T: std::convert::Into<wkt::FieldMask>,
17876 {
17877 self.update_mask = std::option::Option::Some(v.into());
17878 self
17879 }
17880
17881 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
17883 where
17884 T: std::convert::Into<wkt::FieldMask>,
17885 {
17886 self.update_mask = v.map(|x| x.into());
17887 self
17888 }
17889
17890 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
17892 self.request_id = v.into();
17893 self
17894 }
17895}
17896
17897impl wkt::message::Message for UpdatePrivateConnectionRequest {
17898 fn typename() -> &'static str {
17899 "type.googleapis.com/google.cloud.vmwareengine.v1.UpdatePrivateConnectionRequest"
17900 }
17901}
17902
17903#[doc(hidden)]
17904impl<'de> serde::de::Deserialize<'de> for UpdatePrivateConnectionRequest {
17905 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17906 where
17907 D: serde::Deserializer<'de>,
17908 {
17909 #[allow(non_camel_case_types)]
17910 #[doc(hidden)]
17911 #[derive(PartialEq, Eq, Hash)]
17912 enum __FieldTag {
17913 __private_connection,
17914 __update_mask,
17915 __request_id,
17916 Unknown(std::string::String),
17917 }
17918 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
17919 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
17920 where
17921 D: serde::Deserializer<'de>,
17922 {
17923 struct Visitor;
17924 impl<'de> serde::de::Visitor<'de> for Visitor {
17925 type Value = __FieldTag;
17926 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17927 formatter.write_str("a field name for UpdatePrivateConnectionRequest")
17928 }
17929 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
17930 where
17931 E: serde::de::Error,
17932 {
17933 use std::result::Result::Ok;
17934 use std::string::ToString;
17935 match value {
17936 "privateConnection" => Ok(__FieldTag::__private_connection),
17937 "private_connection" => Ok(__FieldTag::__private_connection),
17938 "updateMask" => Ok(__FieldTag::__update_mask),
17939 "update_mask" => Ok(__FieldTag::__update_mask),
17940 "requestId" => Ok(__FieldTag::__request_id),
17941 "request_id" => Ok(__FieldTag::__request_id),
17942 _ => Ok(__FieldTag::Unknown(value.to_string())),
17943 }
17944 }
17945 }
17946 deserializer.deserialize_identifier(Visitor)
17947 }
17948 }
17949 struct Visitor;
17950 impl<'de> serde::de::Visitor<'de> for Visitor {
17951 type Value = UpdatePrivateConnectionRequest;
17952 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
17953 formatter.write_str("struct UpdatePrivateConnectionRequest")
17954 }
17955 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
17956 where
17957 A: serde::de::MapAccess<'de>,
17958 {
17959 #[allow(unused_imports)]
17960 use serde::de::Error;
17961 use std::option::Option::Some;
17962 let mut fields = std::collections::HashSet::new();
17963 let mut result = Self::Value::new();
17964 while let Some(tag) = map.next_key::<__FieldTag>()? {
17965 #[allow(clippy::match_single_binding)]
17966 match tag {
17967 __FieldTag::__private_connection => {
17968 if !fields.insert(__FieldTag::__private_connection) {
17969 return std::result::Result::Err(A::Error::duplicate_field(
17970 "multiple values for private_connection",
17971 ));
17972 }
17973 result.private_connection = map
17974 .next_value::<std::option::Option<crate::model::PrivateConnection>>(
17975 )?;
17976 }
17977 __FieldTag::__update_mask => {
17978 if !fields.insert(__FieldTag::__update_mask) {
17979 return std::result::Result::Err(A::Error::duplicate_field(
17980 "multiple values for update_mask",
17981 ));
17982 }
17983 result.update_mask =
17984 map.next_value::<std::option::Option<wkt::FieldMask>>()?;
17985 }
17986 __FieldTag::__request_id => {
17987 if !fields.insert(__FieldTag::__request_id) {
17988 return std::result::Result::Err(A::Error::duplicate_field(
17989 "multiple values for request_id",
17990 ));
17991 }
17992 result.request_id = map
17993 .next_value::<std::option::Option<std::string::String>>()?
17994 .unwrap_or_default();
17995 }
17996 __FieldTag::Unknown(key) => {
17997 let value = map.next_value::<serde_json::Value>()?;
17998 result._unknown_fields.insert(key, value);
17999 }
18000 }
18001 }
18002 std::result::Result::Ok(result)
18003 }
18004 }
18005 deserializer.deserialize_any(Visitor)
18006 }
18007}
18008
18009#[doc(hidden)]
18010impl serde::ser::Serialize for UpdatePrivateConnectionRequest {
18011 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
18012 where
18013 S: serde::ser::Serializer,
18014 {
18015 use serde::ser::SerializeMap;
18016 #[allow(unused_imports)]
18017 use std::option::Option::Some;
18018 let mut state = serializer.serialize_map(std::option::Option::None)?;
18019 if self.private_connection.is_some() {
18020 state.serialize_entry("privateConnection", &self.private_connection)?;
18021 }
18022 if self.update_mask.is_some() {
18023 state.serialize_entry("updateMask", &self.update_mask)?;
18024 }
18025 if !self.request_id.is_empty() {
18026 state.serialize_entry("requestId", &self.request_id)?;
18027 }
18028 if !self._unknown_fields.is_empty() {
18029 for (key, value) in self._unknown_fields.iter() {
18030 state.serialize_entry(key, &value)?;
18031 }
18032 }
18033 state.end()
18034 }
18035}
18036
18037#[derive(Clone, Debug, Default, PartialEq)]
18042#[non_exhaustive]
18043pub struct DeletePrivateConnectionRequest {
18044 pub name: std::string::String,
18050
18051 pub request_id: std::string::String,
18066
18067 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
18068}
18069
18070impl DeletePrivateConnectionRequest {
18071 pub fn new() -> Self {
18072 std::default::Default::default()
18073 }
18074
18075 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18077 self.name = v.into();
18078 self
18079 }
18080
18081 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18083 self.request_id = v.into();
18084 self
18085 }
18086}
18087
18088impl wkt::message::Message for DeletePrivateConnectionRequest {
18089 fn typename() -> &'static str {
18090 "type.googleapis.com/google.cloud.vmwareengine.v1.DeletePrivateConnectionRequest"
18091 }
18092}
18093
18094#[doc(hidden)]
18095impl<'de> serde::de::Deserialize<'de> for DeletePrivateConnectionRequest {
18096 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18097 where
18098 D: serde::Deserializer<'de>,
18099 {
18100 #[allow(non_camel_case_types)]
18101 #[doc(hidden)]
18102 #[derive(PartialEq, Eq, Hash)]
18103 enum __FieldTag {
18104 __name,
18105 __request_id,
18106 Unknown(std::string::String),
18107 }
18108 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
18109 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18110 where
18111 D: serde::Deserializer<'de>,
18112 {
18113 struct Visitor;
18114 impl<'de> serde::de::Visitor<'de> for Visitor {
18115 type Value = __FieldTag;
18116 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18117 formatter.write_str("a field name for DeletePrivateConnectionRequest")
18118 }
18119 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
18120 where
18121 E: serde::de::Error,
18122 {
18123 use std::result::Result::Ok;
18124 use std::string::ToString;
18125 match value {
18126 "name" => Ok(__FieldTag::__name),
18127 "requestId" => Ok(__FieldTag::__request_id),
18128 "request_id" => Ok(__FieldTag::__request_id),
18129 _ => Ok(__FieldTag::Unknown(value.to_string())),
18130 }
18131 }
18132 }
18133 deserializer.deserialize_identifier(Visitor)
18134 }
18135 }
18136 struct Visitor;
18137 impl<'de> serde::de::Visitor<'de> for Visitor {
18138 type Value = DeletePrivateConnectionRequest;
18139 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18140 formatter.write_str("struct DeletePrivateConnectionRequest")
18141 }
18142 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
18143 where
18144 A: serde::de::MapAccess<'de>,
18145 {
18146 #[allow(unused_imports)]
18147 use serde::de::Error;
18148 use std::option::Option::Some;
18149 let mut fields = std::collections::HashSet::new();
18150 let mut result = Self::Value::new();
18151 while let Some(tag) = map.next_key::<__FieldTag>()? {
18152 #[allow(clippy::match_single_binding)]
18153 match tag {
18154 __FieldTag::__name => {
18155 if !fields.insert(__FieldTag::__name) {
18156 return std::result::Result::Err(A::Error::duplicate_field(
18157 "multiple values for name",
18158 ));
18159 }
18160 result.name = map
18161 .next_value::<std::option::Option<std::string::String>>()?
18162 .unwrap_or_default();
18163 }
18164 __FieldTag::__request_id => {
18165 if !fields.insert(__FieldTag::__request_id) {
18166 return std::result::Result::Err(A::Error::duplicate_field(
18167 "multiple values for request_id",
18168 ));
18169 }
18170 result.request_id = map
18171 .next_value::<std::option::Option<std::string::String>>()?
18172 .unwrap_or_default();
18173 }
18174 __FieldTag::Unknown(key) => {
18175 let value = map.next_value::<serde_json::Value>()?;
18176 result._unknown_fields.insert(key, value);
18177 }
18178 }
18179 }
18180 std::result::Result::Ok(result)
18181 }
18182 }
18183 deserializer.deserialize_any(Visitor)
18184 }
18185}
18186
18187#[doc(hidden)]
18188impl serde::ser::Serialize for DeletePrivateConnectionRequest {
18189 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
18190 where
18191 S: serde::ser::Serializer,
18192 {
18193 use serde::ser::SerializeMap;
18194 #[allow(unused_imports)]
18195 use std::option::Option::Some;
18196 let mut state = serializer.serialize_map(std::option::Option::None)?;
18197 if !self.name.is_empty() {
18198 state.serialize_entry("name", &self.name)?;
18199 }
18200 if !self.request_id.is_empty() {
18201 state.serialize_entry("requestId", &self.request_id)?;
18202 }
18203 if !self._unknown_fields.is_empty() {
18204 for (key, value) in self._unknown_fields.iter() {
18205 state.serialize_entry(key, &value)?;
18206 }
18207 }
18208 state.end()
18209 }
18210}
18211
18212#[derive(Clone, Debug, Default, PartialEq)]
18217#[non_exhaustive]
18218pub struct ListPrivateConnectionPeeringRoutesRequest {
18219 pub parent: std::string::String,
18224
18225 pub page_size: i32,
18230
18231 pub page_token: std::string::String,
18236
18237 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
18238}
18239
18240impl ListPrivateConnectionPeeringRoutesRequest {
18241 pub fn new() -> Self {
18242 std::default::Default::default()
18243 }
18244
18245 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18247 self.parent = v.into();
18248 self
18249 }
18250
18251 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
18253 self.page_size = v.into();
18254 self
18255 }
18256
18257 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18259 self.page_token = v.into();
18260 self
18261 }
18262}
18263
18264impl wkt::message::Message for ListPrivateConnectionPeeringRoutesRequest {
18265 fn typename() -> &'static str {
18266 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPrivateConnectionPeeringRoutesRequest"
18267 }
18268}
18269
18270#[doc(hidden)]
18271impl<'de> serde::de::Deserialize<'de> for ListPrivateConnectionPeeringRoutesRequest {
18272 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18273 where
18274 D: serde::Deserializer<'de>,
18275 {
18276 #[allow(non_camel_case_types)]
18277 #[doc(hidden)]
18278 #[derive(PartialEq, Eq, Hash)]
18279 enum __FieldTag {
18280 __parent,
18281 __page_size,
18282 __page_token,
18283 Unknown(std::string::String),
18284 }
18285 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
18286 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18287 where
18288 D: serde::Deserializer<'de>,
18289 {
18290 struct Visitor;
18291 impl<'de> serde::de::Visitor<'de> for Visitor {
18292 type Value = __FieldTag;
18293 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18294 formatter
18295 .write_str("a field name for ListPrivateConnectionPeeringRoutesRequest")
18296 }
18297 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
18298 where
18299 E: serde::de::Error,
18300 {
18301 use std::result::Result::Ok;
18302 use std::string::ToString;
18303 match value {
18304 "parent" => Ok(__FieldTag::__parent),
18305 "pageSize" => Ok(__FieldTag::__page_size),
18306 "page_size" => Ok(__FieldTag::__page_size),
18307 "pageToken" => Ok(__FieldTag::__page_token),
18308 "page_token" => Ok(__FieldTag::__page_token),
18309 _ => Ok(__FieldTag::Unknown(value.to_string())),
18310 }
18311 }
18312 }
18313 deserializer.deserialize_identifier(Visitor)
18314 }
18315 }
18316 struct Visitor;
18317 impl<'de> serde::de::Visitor<'de> for Visitor {
18318 type Value = ListPrivateConnectionPeeringRoutesRequest;
18319 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18320 formatter.write_str("struct ListPrivateConnectionPeeringRoutesRequest")
18321 }
18322 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
18323 where
18324 A: serde::de::MapAccess<'de>,
18325 {
18326 #[allow(unused_imports)]
18327 use serde::de::Error;
18328 use std::option::Option::Some;
18329 let mut fields = std::collections::HashSet::new();
18330 let mut result = Self::Value::new();
18331 while let Some(tag) = map.next_key::<__FieldTag>()? {
18332 #[allow(clippy::match_single_binding)]
18333 match tag {
18334 __FieldTag::__parent => {
18335 if !fields.insert(__FieldTag::__parent) {
18336 return std::result::Result::Err(A::Error::duplicate_field(
18337 "multiple values for parent",
18338 ));
18339 }
18340 result.parent = map
18341 .next_value::<std::option::Option<std::string::String>>()?
18342 .unwrap_or_default();
18343 }
18344 __FieldTag::__page_size => {
18345 if !fields.insert(__FieldTag::__page_size) {
18346 return std::result::Result::Err(A::Error::duplicate_field(
18347 "multiple values for page_size",
18348 ));
18349 }
18350 struct __With(std::option::Option<i32>);
18351 impl<'de> serde::de::Deserialize<'de> for __With {
18352 fn deserialize<D>(
18353 deserializer: D,
18354 ) -> std::result::Result<Self, D::Error>
18355 where
18356 D: serde::de::Deserializer<'de>,
18357 {
18358 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
18359 }
18360 }
18361 result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
18362 }
18363 __FieldTag::__page_token => {
18364 if !fields.insert(__FieldTag::__page_token) {
18365 return std::result::Result::Err(A::Error::duplicate_field(
18366 "multiple values for page_token",
18367 ));
18368 }
18369 result.page_token = map
18370 .next_value::<std::option::Option<std::string::String>>()?
18371 .unwrap_or_default();
18372 }
18373 __FieldTag::Unknown(key) => {
18374 let value = map.next_value::<serde_json::Value>()?;
18375 result._unknown_fields.insert(key, value);
18376 }
18377 }
18378 }
18379 std::result::Result::Ok(result)
18380 }
18381 }
18382 deserializer.deserialize_any(Visitor)
18383 }
18384}
18385
18386#[doc(hidden)]
18387impl serde::ser::Serialize for ListPrivateConnectionPeeringRoutesRequest {
18388 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
18389 where
18390 S: serde::ser::Serializer,
18391 {
18392 use serde::ser::SerializeMap;
18393 #[allow(unused_imports)]
18394 use std::option::Option::Some;
18395 let mut state = serializer.serialize_map(std::option::Option::None)?;
18396 if !self.parent.is_empty() {
18397 state.serialize_entry("parent", &self.parent)?;
18398 }
18399 if !wkt::internal::is_default(&self.page_size) {
18400 struct __With<'a>(&'a i32);
18401 impl<'a> serde::ser::Serialize for __With<'a> {
18402 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
18403 where
18404 S: serde::ser::Serializer,
18405 {
18406 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
18407 }
18408 }
18409 state.serialize_entry("pageSize", &__With(&self.page_size))?;
18410 }
18411 if !self.page_token.is_empty() {
18412 state.serialize_entry("pageToken", &self.page_token)?;
18413 }
18414 if !self._unknown_fields.is_empty() {
18415 for (key, value) in self._unknown_fields.iter() {
18416 state.serialize_entry(key, &value)?;
18417 }
18418 }
18419 state.end()
18420 }
18421}
18422
18423#[derive(Clone, Debug, Default, PartialEq)]
18428#[non_exhaustive]
18429pub struct ListPrivateConnectionPeeringRoutesResponse {
18430 pub peering_routes: std::vec::Vec<crate::model::PeeringRoute>,
18432
18433 pub next_page_token: std::string::String,
18436
18437 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
18438}
18439
18440impl ListPrivateConnectionPeeringRoutesResponse {
18441 pub fn new() -> Self {
18442 std::default::Default::default()
18443 }
18444
18445 pub fn set_peering_routes<T, V>(mut self, v: T) -> Self
18447 where
18448 T: std::iter::IntoIterator<Item = V>,
18449 V: std::convert::Into<crate::model::PeeringRoute>,
18450 {
18451 use std::iter::Iterator;
18452 self.peering_routes = v.into_iter().map(|i| i.into()).collect();
18453 self
18454 }
18455
18456 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18458 self.next_page_token = v.into();
18459 self
18460 }
18461}
18462
18463impl wkt::message::Message for ListPrivateConnectionPeeringRoutesResponse {
18464 fn typename() -> &'static str {
18465 "type.googleapis.com/google.cloud.vmwareengine.v1.ListPrivateConnectionPeeringRoutesResponse"
18466 }
18467}
18468
18469#[doc(hidden)]
18470impl gax::paginator::internal::PageableResponse for ListPrivateConnectionPeeringRoutesResponse {
18471 type PageItem = crate::model::PeeringRoute;
18472
18473 fn items(self) -> std::vec::Vec<Self::PageItem> {
18474 self.peering_routes
18475 }
18476
18477 fn next_page_token(&self) -> std::string::String {
18478 use std::clone::Clone;
18479 self.next_page_token.clone()
18480 }
18481}
18482
18483#[doc(hidden)]
18484impl<'de> serde::de::Deserialize<'de> for ListPrivateConnectionPeeringRoutesResponse {
18485 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18486 where
18487 D: serde::Deserializer<'de>,
18488 {
18489 #[allow(non_camel_case_types)]
18490 #[doc(hidden)]
18491 #[derive(PartialEq, Eq, Hash)]
18492 enum __FieldTag {
18493 __peering_routes,
18494 __next_page_token,
18495 Unknown(std::string::String),
18496 }
18497 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
18498 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18499 where
18500 D: serde::Deserializer<'de>,
18501 {
18502 struct Visitor;
18503 impl<'de> serde::de::Visitor<'de> for Visitor {
18504 type Value = __FieldTag;
18505 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18506 formatter.write_str(
18507 "a field name for ListPrivateConnectionPeeringRoutesResponse",
18508 )
18509 }
18510 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
18511 where
18512 E: serde::de::Error,
18513 {
18514 use std::result::Result::Ok;
18515 use std::string::ToString;
18516 match value {
18517 "peeringRoutes" => Ok(__FieldTag::__peering_routes),
18518 "peering_routes" => Ok(__FieldTag::__peering_routes),
18519 "nextPageToken" => Ok(__FieldTag::__next_page_token),
18520 "next_page_token" => Ok(__FieldTag::__next_page_token),
18521 _ => Ok(__FieldTag::Unknown(value.to_string())),
18522 }
18523 }
18524 }
18525 deserializer.deserialize_identifier(Visitor)
18526 }
18527 }
18528 struct Visitor;
18529 impl<'de> serde::de::Visitor<'de> for Visitor {
18530 type Value = ListPrivateConnectionPeeringRoutesResponse;
18531 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18532 formatter.write_str("struct ListPrivateConnectionPeeringRoutesResponse")
18533 }
18534 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
18535 where
18536 A: serde::de::MapAccess<'de>,
18537 {
18538 #[allow(unused_imports)]
18539 use serde::de::Error;
18540 use std::option::Option::Some;
18541 let mut fields = std::collections::HashSet::new();
18542 let mut result = Self::Value::new();
18543 while let Some(tag) = map.next_key::<__FieldTag>()? {
18544 #[allow(clippy::match_single_binding)]
18545 match tag {
18546 __FieldTag::__peering_routes => {
18547 if !fields.insert(__FieldTag::__peering_routes) {
18548 return std::result::Result::Err(A::Error::duplicate_field(
18549 "multiple values for peering_routes",
18550 ));
18551 }
18552 result.peering_routes = map.next_value::<std::option::Option<std::vec::Vec<crate::model::PeeringRoute>>>()?.unwrap_or_default();
18553 }
18554 __FieldTag::__next_page_token => {
18555 if !fields.insert(__FieldTag::__next_page_token) {
18556 return std::result::Result::Err(A::Error::duplicate_field(
18557 "multiple values for next_page_token",
18558 ));
18559 }
18560 result.next_page_token = map
18561 .next_value::<std::option::Option<std::string::String>>()?
18562 .unwrap_or_default();
18563 }
18564 __FieldTag::Unknown(key) => {
18565 let value = map.next_value::<serde_json::Value>()?;
18566 result._unknown_fields.insert(key, value);
18567 }
18568 }
18569 }
18570 std::result::Result::Ok(result)
18571 }
18572 }
18573 deserializer.deserialize_any(Visitor)
18574 }
18575}
18576
18577#[doc(hidden)]
18578impl serde::ser::Serialize for ListPrivateConnectionPeeringRoutesResponse {
18579 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
18580 where
18581 S: serde::ser::Serializer,
18582 {
18583 use serde::ser::SerializeMap;
18584 #[allow(unused_imports)]
18585 use std::option::Option::Some;
18586 let mut state = serializer.serialize_map(std::option::Option::None)?;
18587 if !self.peering_routes.is_empty() {
18588 state.serialize_entry("peeringRoutes", &self.peering_routes)?;
18589 }
18590 if !self.next_page_token.is_empty() {
18591 state.serialize_entry("nextPageToken", &self.next_page_token)?;
18592 }
18593 if !self._unknown_fields.is_empty() {
18594 for (key, value) in self._unknown_fields.iter() {
18595 state.serialize_entry(key, &value)?;
18596 }
18597 }
18598 state.end()
18599 }
18600}
18601
18602#[derive(Clone, Debug, Default, PartialEq)]
18607#[non_exhaustive]
18608pub struct GrantDnsBindPermissionRequest {
18609 pub name: std::string::String,
18616
18617 pub principal: std::option::Option<crate::model::Principal>,
18621
18622 pub request_id: std::string::String,
18637
18638 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
18639}
18640
18641impl GrantDnsBindPermissionRequest {
18642 pub fn new() -> Self {
18643 std::default::Default::default()
18644 }
18645
18646 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18648 self.name = v.into();
18649 self
18650 }
18651
18652 pub fn set_principal<T>(mut self, v: T) -> Self
18654 where
18655 T: std::convert::Into<crate::model::Principal>,
18656 {
18657 self.principal = std::option::Option::Some(v.into());
18658 self
18659 }
18660
18661 pub fn set_or_clear_principal<T>(mut self, v: std::option::Option<T>) -> Self
18663 where
18664 T: std::convert::Into<crate::model::Principal>,
18665 {
18666 self.principal = v.map(|x| x.into());
18667 self
18668 }
18669
18670 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18672 self.request_id = v.into();
18673 self
18674 }
18675}
18676
18677impl wkt::message::Message for GrantDnsBindPermissionRequest {
18678 fn typename() -> &'static str {
18679 "type.googleapis.com/google.cloud.vmwareengine.v1.GrantDnsBindPermissionRequest"
18680 }
18681}
18682
18683#[doc(hidden)]
18684impl<'de> serde::de::Deserialize<'de> for GrantDnsBindPermissionRequest {
18685 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18686 where
18687 D: serde::Deserializer<'de>,
18688 {
18689 #[allow(non_camel_case_types)]
18690 #[doc(hidden)]
18691 #[derive(PartialEq, Eq, Hash)]
18692 enum __FieldTag {
18693 __name,
18694 __principal,
18695 __request_id,
18696 Unknown(std::string::String),
18697 }
18698 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
18699 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18700 where
18701 D: serde::Deserializer<'de>,
18702 {
18703 struct Visitor;
18704 impl<'de> serde::de::Visitor<'de> for Visitor {
18705 type Value = __FieldTag;
18706 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18707 formatter.write_str("a field name for GrantDnsBindPermissionRequest")
18708 }
18709 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
18710 where
18711 E: serde::de::Error,
18712 {
18713 use std::result::Result::Ok;
18714 use std::string::ToString;
18715 match value {
18716 "name" => Ok(__FieldTag::__name),
18717 "principal" => Ok(__FieldTag::__principal),
18718 "requestId" => Ok(__FieldTag::__request_id),
18719 "request_id" => Ok(__FieldTag::__request_id),
18720 _ => Ok(__FieldTag::Unknown(value.to_string())),
18721 }
18722 }
18723 }
18724 deserializer.deserialize_identifier(Visitor)
18725 }
18726 }
18727 struct Visitor;
18728 impl<'de> serde::de::Visitor<'de> for Visitor {
18729 type Value = GrantDnsBindPermissionRequest;
18730 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18731 formatter.write_str("struct GrantDnsBindPermissionRequest")
18732 }
18733 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
18734 where
18735 A: serde::de::MapAccess<'de>,
18736 {
18737 #[allow(unused_imports)]
18738 use serde::de::Error;
18739 use std::option::Option::Some;
18740 let mut fields = std::collections::HashSet::new();
18741 let mut result = Self::Value::new();
18742 while let Some(tag) = map.next_key::<__FieldTag>()? {
18743 #[allow(clippy::match_single_binding)]
18744 match tag {
18745 __FieldTag::__name => {
18746 if !fields.insert(__FieldTag::__name) {
18747 return std::result::Result::Err(A::Error::duplicate_field(
18748 "multiple values for name",
18749 ));
18750 }
18751 result.name = map
18752 .next_value::<std::option::Option<std::string::String>>()?
18753 .unwrap_or_default();
18754 }
18755 __FieldTag::__principal => {
18756 if !fields.insert(__FieldTag::__principal) {
18757 return std::result::Result::Err(A::Error::duplicate_field(
18758 "multiple values for principal",
18759 ));
18760 }
18761 result.principal =
18762 map.next_value::<std::option::Option<crate::model::Principal>>()?;
18763 }
18764 __FieldTag::__request_id => {
18765 if !fields.insert(__FieldTag::__request_id) {
18766 return std::result::Result::Err(A::Error::duplicate_field(
18767 "multiple values for request_id",
18768 ));
18769 }
18770 result.request_id = map
18771 .next_value::<std::option::Option<std::string::String>>()?
18772 .unwrap_or_default();
18773 }
18774 __FieldTag::Unknown(key) => {
18775 let value = map.next_value::<serde_json::Value>()?;
18776 result._unknown_fields.insert(key, value);
18777 }
18778 }
18779 }
18780 std::result::Result::Ok(result)
18781 }
18782 }
18783 deserializer.deserialize_any(Visitor)
18784 }
18785}
18786
18787#[doc(hidden)]
18788impl serde::ser::Serialize for GrantDnsBindPermissionRequest {
18789 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
18790 where
18791 S: serde::ser::Serializer,
18792 {
18793 use serde::ser::SerializeMap;
18794 #[allow(unused_imports)]
18795 use std::option::Option::Some;
18796 let mut state = serializer.serialize_map(std::option::Option::None)?;
18797 if !self.name.is_empty() {
18798 state.serialize_entry("name", &self.name)?;
18799 }
18800 if self.principal.is_some() {
18801 state.serialize_entry("principal", &self.principal)?;
18802 }
18803 if !self.request_id.is_empty() {
18804 state.serialize_entry("requestId", &self.request_id)?;
18805 }
18806 if !self._unknown_fields.is_empty() {
18807 for (key, value) in self._unknown_fields.iter() {
18808 state.serialize_entry(key, &value)?;
18809 }
18810 }
18811 state.end()
18812 }
18813}
18814
18815#[derive(Clone, Debug, Default, PartialEq)]
18820#[non_exhaustive]
18821pub struct RevokeDnsBindPermissionRequest {
18822 pub name: std::string::String,
18829
18830 pub principal: std::option::Option<crate::model::Principal>,
18834
18835 pub request_id: std::string::String,
18850
18851 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
18852}
18853
18854impl RevokeDnsBindPermissionRequest {
18855 pub fn new() -> Self {
18856 std::default::Default::default()
18857 }
18858
18859 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18861 self.name = v.into();
18862 self
18863 }
18864
18865 pub fn set_principal<T>(mut self, v: T) -> Self
18867 where
18868 T: std::convert::Into<crate::model::Principal>,
18869 {
18870 self.principal = std::option::Option::Some(v.into());
18871 self
18872 }
18873
18874 pub fn set_or_clear_principal<T>(mut self, v: std::option::Option<T>) -> Self
18876 where
18877 T: std::convert::Into<crate::model::Principal>,
18878 {
18879 self.principal = v.map(|x| x.into());
18880 self
18881 }
18882
18883 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
18885 self.request_id = v.into();
18886 self
18887 }
18888}
18889
18890impl wkt::message::Message for RevokeDnsBindPermissionRequest {
18891 fn typename() -> &'static str {
18892 "type.googleapis.com/google.cloud.vmwareengine.v1.RevokeDnsBindPermissionRequest"
18893 }
18894}
18895
18896#[doc(hidden)]
18897impl<'de> serde::de::Deserialize<'de> for RevokeDnsBindPermissionRequest {
18898 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18899 where
18900 D: serde::Deserializer<'de>,
18901 {
18902 #[allow(non_camel_case_types)]
18903 #[doc(hidden)]
18904 #[derive(PartialEq, Eq, Hash)]
18905 enum __FieldTag {
18906 __name,
18907 __principal,
18908 __request_id,
18909 Unknown(std::string::String),
18910 }
18911 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
18912 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
18913 where
18914 D: serde::Deserializer<'de>,
18915 {
18916 struct Visitor;
18917 impl<'de> serde::de::Visitor<'de> for Visitor {
18918 type Value = __FieldTag;
18919 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18920 formatter.write_str("a field name for RevokeDnsBindPermissionRequest")
18921 }
18922 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
18923 where
18924 E: serde::de::Error,
18925 {
18926 use std::result::Result::Ok;
18927 use std::string::ToString;
18928 match value {
18929 "name" => Ok(__FieldTag::__name),
18930 "principal" => Ok(__FieldTag::__principal),
18931 "requestId" => Ok(__FieldTag::__request_id),
18932 "request_id" => Ok(__FieldTag::__request_id),
18933 _ => Ok(__FieldTag::Unknown(value.to_string())),
18934 }
18935 }
18936 }
18937 deserializer.deserialize_identifier(Visitor)
18938 }
18939 }
18940 struct Visitor;
18941 impl<'de> serde::de::Visitor<'de> for Visitor {
18942 type Value = RevokeDnsBindPermissionRequest;
18943 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
18944 formatter.write_str("struct RevokeDnsBindPermissionRequest")
18945 }
18946 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
18947 where
18948 A: serde::de::MapAccess<'de>,
18949 {
18950 #[allow(unused_imports)]
18951 use serde::de::Error;
18952 use std::option::Option::Some;
18953 let mut fields = std::collections::HashSet::new();
18954 let mut result = Self::Value::new();
18955 while let Some(tag) = map.next_key::<__FieldTag>()? {
18956 #[allow(clippy::match_single_binding)]
18957 match tag {
18958 __FieldTag::__name => {
18959 if !fields.insert(__FieldTag::__name) {
18960 return std::result::Result::Err(A::Error::duplicate_field(
18961 "multiple values for name",
18962 ));
18963 }
18964 result.name = map
18965 .next_value::<std::option::Option<std::string::String>>()?
18966 .unwrap_or_default();
18967 }
18968 __FieldTag::__principal => {
18969 if !fields.insert(__FieldTag::__principal) {
18970 return std::result::Result::Err(A::Error::duplicate_field(
18971 "multiple values for principal",
18972 ));
18973 }
18974 result.principal =
18975 map.next_value::<std::option::Option<crate::model::Principal>>()?;
18976 }
18977 __FieldTag::__request_id => {
18978 if !fields.insert(__FieldTag::__request_id) {
18979 return std::result::Result::Err(A::Error::duplicate_field(
18980 "multiple values for request_id",
18981 ));
18982 }
18983 result.request_id = map
18984 .next_value::<std::option::Option<std::string::String>>()?
18985 .unwrap_or_default();
18986 }
18987 __FieldTag::Unknown(key) => {
18988 let value = map.next_value::<serde_json::Value>()?;
18989 result._unknown_fields.insert(key, value);
18990 }
18991 }
18992 }
18993 std::result::Result::Ok(result)
18994 }
18995 }
18996 deserializer.deserialize_any(Visitor)
18997 }
18998}
18999
19000#[doc(hidden)]
19001impl serde::ser::Serialize for RevokeDnsBindPermissionRequest {
19002 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19003 where
19004 S: serde::ser::Serializer,
19005 {
19006 use serde::ser::SerializeMap;
19007 #[allow(unused_imports)]
19008 use std::option::Option::Some;
19009 let mut state = serializer.serialize_map(std::option::Option::None)?;
19010 if !self.name.is_empty() {
19011 state.serialize_entry("name", &self.name)?;
19012 }
19013 if self.principal.is_some() {
19014 state.serialize_entry("principal", &self.principal)?;
19015 }
19016 if !self.request_id.is_empty() {
19017 state.serialize_entry("requestId", &self.request_id)?;
19018 }
19019 if !self._unknown_fields.is_empty() {
19020 for (key, value) in self._unknown_fields.iter() {
19021 state.serialize_entry(key, &value)?;
19022 }
19023 }
19024 state.end()
19025 }
19026}
19027
19028#[derive(Clone, Debug, Default, PartialEq)]
19033#[non_exhaustive]
19034pub struct GetDnsBindPermissionRequest {
19035 pub name: std::string::String,
19042
19043 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
19044}
19045
19046impl GetDnsBindPermissionRequest {
19047 pub fn new() -> Self {
19048 std::default::Default::default()
19049 }
19050
19051 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
19053 self.name = v.into();
19054 self
19055 }
19056}
19057
19058impl wkt::message::Message for GetDnsBindPermissionRequest {
19059 fn typename() -> &'static str {
19060 "type.googleapis.com/google.cloud.vmwareengine.v1.GetDnsBindPermissionRequest"
19061 }
19062}
19063
19064#[doc(hidden)]
19065impl<'de> serde::de::Deserialize<'de> for GetDnsBindPermissionRequest {
19066 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19067 where
19068 D: serde::Deserializer<'de>,
19069 {
19070 #[allow(non_camel_case_types)]
19071 #[doc(hidden)]
19072 #[derive(PartialEq, Eq, Hash)]
19073 enum __FieldTag {
19074 __name,
19075 Unknown(std::string::String),
19076 }
19077 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
19078 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19079 where
19080 D: serde::Deserializer<'de>,
19081 {
19082 struct Visitor;
19083 impl<'de> serde::de::Visitor<'de> for Visitor {
19084 type Value = __FieldTag;
19085 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19086 formatter.write_str("a field name for GetDnsBindPermissionRequest")
19087 }
19088 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
19089 where
19090 E: serde::de::Error,
19091 {
19092 use std::result::Result::Ok;
19093 use std::string::ToString;
19094 match value {
19095 "name" => Ok(__FieldTag::__name),
19096 _ => Ok(__FieldTag::Unknown(value.to_string())),
19097 }
19098 }
19099 }
19100 deserializer.deserialize_identifier(Visitor)
19101 }
19102 }
19103 struct Visitor;
19104 impl<'de> serde::de::Visitor<'de> for Visitor {
19105 type Value = GetDnsBindPermissionRequest;
19106 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19107 formatter.write_str("struct GetDnsBindPermissionRequest")
19108 }
19109 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
19110 where
19111 A: serde::de::MapAccess<'de>,
19112 {
19113 #[allow(unused_imports)]
19114 use serde::de::Error;
19115 use std::option::Option::Some;
19116 let mut fields = std::collections::HashSet::new();
19117 let mut result = Self::Value::new();
19118 while let Some(tag) = map.next_key::<__FieldTag>()? {
19119 #[allow(clippy::match_single_binding)]
19120 match tag {
19121 __FieldTag::__name => {
19122 if !fields.insert(__FieldTag::__name) {
19123 return std::result::Result::Err(A::Error::duplicate_field(
19124 "multiple values for name",
19125 ));
19126 }
19127 result.name = map
19128 .next_value::<std::option::Option<std::string::String>>()?
19129 .unwrap_or_default();
19130 }
19131 __FieldTag::Unknown(key) => {
19132 let value = map.next_value::<serde_json::Value>()?;
19133 result._unknown_fields.insert(key, value);
19134 }
19135 }
19136 }
19137 std::result::Result::Ok(result)
19138 }
19139 }
19140 deserializer.deserialize_any(Visitor)
19141 }
19142}
19143
19144#[doc(hidden)]
19145impl serde::ser::Serialize for GetDnsBindPermissionRequest {
19146 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19147 where
19148 S: serde::ser::Serializer,
19149 {
19150 use serde::ser::SerializeMap;
19151 #[allow(unused_imports)]
19152 use std::option::Option::Some;
19153 let mut state = serializer.serialize_map(std::option::Option::None)?;
19154 if !self.name.is_empty() {
19155 state.serialize_entry("name", &self.name)?;
19156 }
19157 if !self._unknown_fields.is_empty() {
19158 for (key, value) in self._unknown_fields.iter() {
19159 state.serialize_entry(key, &value)?;
19160 }
19161 }
19162 state.end()
19163 }
19164}
19165
19166#[derive(Clone, Debug, Default, PartialEq)]
19169#[non_exhaustive]
19170pub struct NetworkConfig {
19171 pub management_cidr: std::string::String,
19173
19174 pub vmware_engine_network: std::string::String,
19179
19180 pub vmware_engine_network_canonical: std::string::String,
19183
19184 pub management_ip_address_layout_version: i32,
19194
19195 pub dns_server_ip: std::string::String,
19200
19201 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
19202}
19203
19204impl NetworkConfig {
19205 pub fn new() -> Self {
19206 std::default::Default::default()
19207 }
19208
19209 pub fn set_management_cidr<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
19211 self.management_cidr = v.into();
19212 self
19213 }
19214
19215 pub fn set_vmware_engine_network<T: std::convert::Into<std::string::String>>(
19217 mut self,
19218 v: T,
19219 ) -> Self {
19220 self.vmware_engine_network = v.into();
19221 self
19222 }
19223
19224 pub fn set_vmware_engine_network_canonical<T: std::convert::Into<std::string::String>>(
19226 mut self,
19227 v: T,
19228 ) -> Self {
19229 self.vmware_engine_network_canonical = v.into();
19230 self
19231 }
19232
19233 pub fn set_management_ip_address_layout_version<T: std::convert::Into<i32>>(
19235 mut self,
19236 v: T,
19237 ) -> Self {
19238 self.management_ip_address_layout_version = v.into();
19239 self
19240 }
19241
19242 pub fn set_dns_server_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
19244 self.dns_server_ip = v.into();
19245 self
19246 }
19247}
19248
19249impl wkt::message::Message for NetworkConfig {
19250 fn typename() -> &'static str {
19251 "type.googleapis.com/google.cloud.vmwareengine.v1.NetworkConfig"
19252 }
19253}
19254
19255#[doc(hidden)]
19256impl<'de> serde::de::Deserialize<'de> for NetworkConfig {
19257 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19258 where
19259 D: serde::Deserializer<'de>,
19260 {
19261 #[allow(non_camel_case_types)]
19262 #[doc(hidden)]
19263 #[derive(PartialEq, Eq, Hash)]
19264 enum __FieldTag {
19265 __management_cidr,
19266 __vmware_engine_network,
19267 __vmware_engine_network_canonical,
19268 __management_ip_address_layout_version,
19269 __dns_server_ip,
19270 Unknown(std::string::String),
19271 }
19272 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
19273 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19274 where
19275 D: serde::Deserializer<'de>,
19276 {
19277 struct Visitor;
19278 impl<'de> serde::de::Visitor<'de> for Visitor {
19279 type Value = __FieldTag;
19280 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19281 formatter.write_str("a field name for NetworkConfig")
19282 }
19283 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
19284 where
19285 E: serde::de::Error,
19286 {
19287 use std::result::Result::Ok;
19288 use std::string::ToString;
19289 match value {
19290 "managementCidr" => Ok(__FieldTag::__management_cidr),
19291 "management_cidr" => Ok(__FieldTag::__management_cidr),
19292 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
19293 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
19294 "vmwareEngineNetworkCanonical" => {
19295 Ok(__FieldTag::__vmware_engine_network_canonical)
19296 }
19297 "vmware_engine_network_canonical" => {
19298 Ok(__FieldTag::__vmware_engine_network_canonical)
19299 }
19300 "managementIpAddressLayoutVersion" => {
19301 Ok(__FieldTag::__management_ip_address_layout_version)
19302 }
19303 "management_ip_address_layout_version" => {
19304 Ok(__FieldTag::__management_ip_address_layout_version)
19305 }
19306 "dnsServerIp" => Ok(__FieldTag::__dns_server_ip),
19307 "dns_server_ip" => Ok(__FieldTag::__dns_server_ip),
19308 _ => Ok(__FieldTag::Unknown(value.to_string())),
19309 }
19310 }
19311 }
19312 deserializer.deserialize_identifier(Visitor)
19313 }
19314 }
19315 struct Visitor;
19316 impl<'de> serde::de::Visitor<'de> for Visitor {
19317 type Value = NetworkConfig;
19318 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19319 formatter.write_str("struct NetworkConfig")
19320 }
19321 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
19322 where
19323 A: serde::de::MapAccess<'de>,
19324 {
19325 #[allow(unused_imports)]
19326 use serde::de::Error;
19327 use std::option::Option::Some;
19328 let mut fields = std::collections::HashSet::new();
19329 let mut result = Self::Value::new();
19330 while let Some(tag) = map.next_key::<__FieldTag>()? {
19331 #[allow(clippy::match_single_binding)]
19332 match tag {
19333 __FieldTag::__management_cidr => {
19334 if !fields.insert(__FieldTag::__management_cidr) {
19335 return std::result::Result::Err(A::Error::duplicate_field(
19336 "multiple values for management_cidr",
19337 ));
19338 }
19339 result.management_cidr = map
19340 .next_value::<std::option::Option<std::string::String>>()?
19341 .unwrap_or_default();
19342 }
19343 __FieldTag::__vmware_engine_network => {
19344 if !fields.insert(__FieldTag::__vmware_engine_network) {
19345 return std::result::Result::Err(A::Error::duplicate_field(
19346 "multiple values for vmware_engine_network",
19347 ));
19348 }
19349 result.vmware_engine_network = map
19350 .next_value::<std::option::Option<std::string::String>>()?
19351 .unwrap_or_default();
19352 }
19353 __FieldTag::__vmware_engine_network_canonical => {
19354 if !fields.insert(__FieldTag::__vmware_engine_network_canonical) {
19355 return std::result::Result::Err(A::Error::duplicate_field(
19356 "multiple values for vmware_engine_network_canonical",
19357 ));
19358 }
19359 result.vmware_engine_network_canonical = map
19360 .next_value::<std::option::Option<std::string::String>>()?
19361 .unwrap_or_default();
19362 }
19363 __FieldTag::__management_ip_address_layout_version => {
19364 if !fields.insert(__FieldTag::__management_ip_address_layout_version) {
19365 return std::result::Result::Err(A::Error::duplicate_field(
19366 "multiple values for management_ip_address_layout_version",
19367 ));
19368 }
19369 struct __With(std::option::Option<i32>);
19370 impl<'de> serde::de::Deserialize<'de> for __With {
19371 fn deserialize<D>(
19372 deserializer: D,
19373 ) -> std::result::Result<Self, D::Error>
19374 where
19375 D: serde::de::Deserializer<'de>,
19376 {
19377 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
19378 }
19379 }
19380 result.management_ip_address_layout_version =
19381 map.next_value::<__With>()?.0.unwrap_or_default();
19382 }
19383 __FieldTag::__dns_server_ip => {
19384 if !fields.insert(__FieldTag::__dns_server_ip) {
19385 return std::result::Result::Err(A::Error::duplicate_field(
19386 "multiple values for dns_server_ip",
19387 ));
19388 }
19389 result.dns_server_ip = map
19390 .next_value::<std::option::Option<std::string::String>>()?
19391 .unwrap_or_default();
19392 }
19393 __FieldTag::Unknown(key) => {
19394 let value = map.next_value::<serde_json::Value>()?;
19395 result._unknown_fields.insert(key, value);
19396 }
19397 }
19398 }
19399 std::result::Result::Ok(result)
19400 }
19401 }
19402 deserializer.deserialize_any(Visitor)
19403 }
19404}
19405
19406#[doc(hidden)]
19407impl serde::ser::Serialize for NetworkConfig {
19408 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19409 where
19410 S: serde::ser::Serializer,
19411 {
19412 use serde::ser::SerializeMap;
19413 #[allow(unused_imports)]
19414 use std::option::Option::Some;
19415 let mut state = serializer.serialize_map(std::option::Option::None)?;
19416 if !self.management_cidr.is_empty() {
19417 state.serialize_entry("managementCidr", &self.management_cidr)?;
19418 }
19419 if !self.vmware_engine_network.is_empty() {
19420 state.serialize_entry("vmwareEngineNetwork", &self.vmware_engine_network)?;
19421 }
19422 if !self.vmware_engine_network_canonical.is_empty() {
19423 state.serialize_entry(
19424 "vmwareEngineNetworkCanonical",
19425 &self.vmware_engine_network_canonical,
19426 )?;
19427 }
19428 if !wkt::internal::is_default(&self.management_ip_address_layout_version) {
19429 struct __With<'a>(&'a i32);
19430 impl<'a> serde::ser::Serialize for __With<'a> {
19431 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19432 where
19433 S: serde::ser::Serializer,
19434 {
19435 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
19436 }
19437 }
19438 state.serialize_entry(
19439 "managementIpAddressLayoutVersion",
19440 &__With(&self.management_ip_address_layout_version),
19441 )?;
19442 }
19443 if !self.dns_server_ip.is_empty() {
19444 state.serialize_entry("dnsServerIp", &self.dns_server_ip)?;
19445 }
19446 if !self._unknown_fields.is_empty() {
19447 for (key, value) in self._unknown_fields.iter() {
19448 state.serialize_entry(key, &value)?;
19449 }
19450 }
19451 state.end()
19452 }
19453}
19454
19455#[derive(Clone, Debug, Default, PartialEq)]
19457#[non_exhaustive]
19458pub struct NodeTypeConfig {
19459 pub node_count: i32,
19461
19462 pub custom_core_count: i32,
19467
19468 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
19469}
19470
19471impl NodeTypeConfig {
19472 pub fn new() -> Self {
19473 std::default::Default::default()
19474 }
19475
19476 pub fn set_node_count<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
19478 self.node_count = v.into();
19479 self
19480 }
19481
19482 pub fn set_custom_core_count<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
19484 self.custom_core_count = v.into();
19485 self
19486 }
19487}
19488
19489impl wkt::message::Message for NodeTypeConfig {
19490 fn typename() -> &'static str {
19491 "type.googleapis.com/google.cloud.vmwareengine.v1.NodeTypeConfig"
19492 }
19493}
19494
19495#[doc(hidden)]
19496impl<'de> serde::de::Deserialize<'de> for NodeTypeConfig {
19497 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19498 where
19499 D: serde::Deserializer<'de>,
19500 {
19501 #[allow(non_camel_case_types)]
19502 #[doc(hidden)]
19503 #[derive(PartialEq, Eq, Hash)]
19504 enum __FieldTag {
19505 __node_count,
19506 __custom_core_count,
19507 Unknown(std::string::String),
19508 }
19509 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
19510 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19511 where
19512 D: serde::Deserializer<'de>,
19513 {
19514 struct Visitor;
19515 impl<'de> serde::de::Visitor<'de> for Visitor {
19516 type Value = __FieldTag;
19517 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19518 formatter.write_str("a field name for NodeTypeConfig")
19519 }
19520 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
19521 where
19522 E: serde::de::Error,
19523 {
19524 use std::result::Result::Ok;
19525 use std::string::ToString;
19526 match value {
19527 "nodeCount" => Ok(__FieldTag::__node_count),
19528 "node_count" => Ok(__FieldTag::__node_count),
19529 "customCoreCount" => Ok(__FieldTag::__custom_core_count),
19530 "custom_core_count" => Ok(__FieldTag::__custom_core_count),
19531 _ => Ok(__FieldTag::Unknown(value.to_string())),
19532 }
19533 }
19534 }
19535 deserializer.deserialize_identifier(Visitor)
19536 }
19537 }
19538 struct Visitor;
19539 impl<'de> serde::de::Visitor<'de> for Visitor {
19540 type Value = NodeTypeConfig;
19541 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19542 formatter.write_str("struct NodeTypeConfig")
19543 }
19544 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
19545 where
19546 A: serde::de::MapAccess<'de>,
19547 {
19548 #[allow(unused_imports)]
19549 use serde::de::Error;
19550 use std::option::Option::Some;
19551 let mut fields = std::collections::HashSet::new();
19552 let mut result = Self::Value::new();
19553 while let Some(tag) = map.next_key::<__FieldTag>()? {
19554 #[allow(clippy::match_single_binding)]
19555 match tag {
19556 __FieldTag::__node_count => {
19557 if !fields.insert(__FieldTag::__node_count) {
19558 return std::result::Result::Err(A::Error::duplicate_field(
19559 "multiple values for node_count",
19560 ));
19561 }
19562 struct __With(std::option::Option<i32>);
19563 impl<'de> serde::de::Deserialize<'de> for __With {
19564 fn deserialize<D>(
19565 deserializer: D,
19566 ) -> std::result::Result<Self, D::Error>
19567 where
19568 D: serde::de::Deserializer<'de>,
19569 {
19570 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
19571 }
19572 }
19573 result.node_count = map.next_value::<__With>()?.0.unwrap_or_default();
19574 }
19575 __FieldTag::__custom_core_count => {
19576 if !fields.insert(__FieldTag::__custom_core_count) {
19577 return std::result::Result::Err(A::Error::duplicate_field(
19578 "multiple values for custom_core_count",
19579 ));
19580 }
19581 struct __With(std::option::Option<i32>);
19582 impl<'de> serde::de::Deserialize<'de> for __With {
19583 fn deserialize<D>(
19584 deserializer: D,
19585 ) -> std::result::Result<Self, D::Error>
19586 where
19587 D: serde::de::Deserializer<'de>,
19588 {
19589 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
19590 }
19591 }
19592 result.custom_core_count =
19593 map.next_value::<__With>()?.0.unwrap_or_default();
19594 }
19595 __FieldTag::Unknown(key) => {
19596 let value = map.next_value::<serde_json::Value>()?;
19597 result._unknown_fields.insert(key, value);
19598 }
19599 }
19600 }
19601 std::result::Result::Ok(result)
19602 }
19603 }
19604 deserializer.deserialize_any(Visitor)
19605 }
19606}
19607
19608#[doc(hidden)]
19609impl serde::ser::Serialize for NodeTypeConfig {
19610 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19611 where
19612 S: serde::ser::Serializer,
19613 {
19614 use serde::ser::SerializeMap;
19615 #[allow(unused_imports)]
19616 use std::option::Option::Some;
19617 let mut state = serializer.serialize_map(std::option::Option::None)?;
19618 if !wkt::internal::is_default(&self.node_count) {
19619 struct __With<'a>(&'a i32);
19620 impl<'a> serde::ser::Serialize for __With<'a> {
19621 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19622 where
19623 S: serde::ser::Serializer,
19624 {
19625 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
19626 }
19627 }
19628 state.serialize_entry("nodeCount", &__With(&self.node_count))?;
19629 }
19630 if !wkt::internal::is_default(&self.custom_core_count) {
19631 struct __With<'a>(&'a i32);
19632 impl<'a> serde::ser::Serialize for __With<'a> {
19633 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19634 where
19635 S: serde::ser::Serializer,
19636 {
19637 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
19638 }
19639 }
19640 state.serialize_entry("customCoreCount", &__With(&self.custom_core_count))?;
19641 }
19642 if !self._unknown_fields.is_empty() {
19643 for (key, value) in self._unknown_fields.iter() {
19644 state.serialize_entry(key, &value)?;
19645 }
19646 }
19647 state.end()
19648 }
19649}
19650
19651#[derive(Clone, Debug, Default, PartialEq)]
19653#[non_exhaustive]
19654pub struct StretchedClusterConfig {
19655 pub preferred_location: std::string::String,
19661
19662 pub secondary_location: std::string::String,
19668
19669 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
19670}
19671
19672impl StretchedClusterConfig {
19673 pub fn new() -> Self {
19674 std::default::Default::default()
19675 }
19676
19677 pub fn set_preferred_location<T: std::convert::Into<std::string::String>>(
19679 mut self,
19680 v: T,
19681 ) -> Self {
19682 self.preferred_location = v.into();
19683 self
19684 }
19685
19686 pub fn set_secondary_location<T: std::convert::Into<std::string::String>>(
19688 mut self,
19689 v: T,
19690 ) -> Self {
19691 self.secondary_location = v.into();
19692 self
19693 }
19694}
19695
19696impl wkt::message::Message for StretchedClusterConfig {
19697 fn typename() -> &'static str {
19698 "type.googleapis.com/google.cloud.vmwareengine.v1.StretchedClusterConfig"
19699 }
19700}
19701
19702#[doc(hidden)]
19703impl<'de> serde::de::Deserialize<'de> for StretchedClusterConfig {
19704 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19705 where
19706 D: serde::Deserializer<'de>,
19707 {
19708 #[allow(non_camel_case_types)]
19709 #[doc(hidden)]
19710 #[derive(PartialEq, Eq, Hash)]
19711 enum __FieldTag {
19712 __preferred_location,
19713 __secondary_location,
19714 Unknown(std::string::String),
19715 }
19716 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
19717 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
19718 where
19719 D: serde::Deserializer<'de>,
19720 {
19721 struct Visitor;
19722 impl<'de> serde::de::Visitor<'de> for Visitor {
19723 type Value = __FieldTag;
19724 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19725 formatter.write_str("a field name for StretchedClusterConfig")
19726 }
19727 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
19728 where
19729 E: serde::de::Error,
19730 {
19731 use std::result::Result::Ok;
19732 use std::string::ToString;
19733 match value {
19734 "preferredLocation" => Ok(__FieldTag::__preferred_location),
19735 "preferred_location" => Ok(__FieldTag::__preferred_location),
19736 "secondaryLocation" => Ok(__FieldTag::__secondary_location),
19737 "secondary_location" => Ok(__FieldTag::__secondary_location),
19738 _ => Ok(__FieldTag::Unknown(value.to_string())),
19739 }
19740 }
19741 }
19742 deserializer.deserialize_identifier(Visitor)
19743 }
19744 }
19745 struct Visitor;
19746 impl<'de> serde::de::Visitor<'de> for Visitor {
19747 type Value = StretchedClusterConfig;
19748 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
19749 formatter.write_str("struct StretchedClusterConfig")
19750 }
19751 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
19752 where
19753 A: serde::de::MapAccess<'de>,
19754 {
19755 #[allow(unused_imports)]
19756 use serde::de::Error;
19757 use std::option::Option::Some;
19758 let mut fields = std::collections::HashSet::new();
19759 let mut result = Self::Value::new();
19760 while let Some(tag) = map.next_key::<__FieldTag>()? {
19761 #[allow(clippy::match_single_binding)]
19762 match tag {
19763 __FieldTag::__preferred_location => {
19764 if !fields.insert(__FieldTag::__preferred_location) {
19765 return std::result::Result::Err(A::Error::duplicate_field(
19766 "multiple values for preferred_location",
19767 ));
19768 }
19769 result.preferred_location = map
19770 .next_value::<std::option::Option<std::string::String>>()?
19771 .unwrap_or_default();
19772 }
19773 __FieldTag::__secondary_location => {
19774 if !fields.insert(__FieldTag::__secondary_location) {
19775 return std::result::Result::Err(A::Error::duplicate_field(
19776 "multiple values for secondary_location",
19777 ));
19778 }
19779 result.secondary_location = map
19780 .next_value::<std::option::Option<std::string::String>>()?
19781 .unwrap_or_default();
19782 }
19783 __FieldTag::Unknown(key) => {
19784 let value = map.next_value::<serde_json::Value>()?;
19785 result._unknown_fields.insert(key, value);
19786 }
19787 }
19788 }
19789 std::result::Result::Ok(result)
19790 }
19791 }
19792 deserializer.deserialize_any(Visitor)
19793 }
19794}
19795
19796#[doc(hidden)]
19797impl serde::ser::Serialize for StretchedClusterConfig {
19798 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
19799 where
19800 S: serde::ser::Serializer,
19801 {
19802 use serde::ser::SerializeMap;
19803 #[allow(unused_imports)]
19804 use std::option::Option::Some;
19805 let mut state = serializer.serialize_map(std::option::Option::None)?;
19806 if !self.preferred_location.is_empty() {
19807 state.serialize_entry("preferredLocation", &self.preferred_location)?;
19808 }
19809 if !self.secondary_location.is_empty() {
19810 state.serialize_entry("secondaryLocation", &self.secondary_location)?;
19811 }
19812 if !self._unknown_fields.is_empty() {
19813 for (key, value) in self._unknown_fields.iter() {
19814 state.serialize_entry(key, &value)?;
19815 }
19816 }
19817 state.end()
19818 }
19819}
19820
19821#[derive(Clone, Debug, Default, PartialEq)]
19825#[non_exhaustive]
19826pub struct PrivateCloud {
19827 pub name: std::string::String,
19833
19834 pub create_time: std::option::Option<wkt::Timestamp>,
19836
19837 pub update_time: std::option::Option<wkt::Timestamp>,
19839
19840 pub delete_time: std::option::Option<wkt::Timestamp>,
19842
19843 pub expire_time: std::option::Option<wkt::Timestamp>,
19845
19846 pub state: crate::model::private_cloud::State,
19849
19850 pub network_config: std::option::Option<crate::model::NetworkConfig>,
19852
19853 pub management_cluster: std::option::Option<crate::model::private_cloud::ManagementCluster>,
19860
19861 pub description: std::string::String,
19863
19864 pub hcx: std::option::Option<crate::model::Hcx>,
19866
19867 pub nsx: std::option::Option<crate::model::Nsx>,
19869
19870 pub vcenter: std::option::Option<crate::model::Vcenter>,
19872
19873 pub uid: std::string::String,
19875
19876 pub r#type: crate::model::private_cloud::Type,
19878
19879 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
19880}
19881
19882impl PrivateCloud {
19883 pub fn new() -> Self {
19884 std::default::Default::default()
19885 }
19886
19887 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
19889 self.name = v.into();
19890 self
19891 }
19892
19893 pub fn set_create_time<T>(mut self, v: T) -> Self
19895 where
19896 T: std::convert::Into<wkt::Timestamp>,
19897 {
19898 self.create_time = std::option::Option::Some(v.into());
19899 self
19900 }
19901
19902 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
19904 where
19905 T: std::convert::Into<wkt::Timestamp>,
19906 {
19907 self.create_time = v.map(|x| x.into());
19908 self
19909 }
19910
19911 pub fn set_update_time<T>(mut self, v: T) -> Self
19913 where
19914 T: std::convert::Into<wkt::Timestamp>,
19915 {
19916 self.update_time = std::option::Option::Some(v.into());
19917 self
19918 }
19919
19920 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
19922 where
19923 T: std::convert::Into<wkt::Timestamp>,
19924 {
19925 self.update_time = v.map(|x| x.into());
19926 self
19927 }
19928
19929 pub fn set_delete_time<T>(mut self, v: T) -> Self
19931 where
19932 T: std::convert::Into<wkt::Timestamp>,
19933 {
19934 self.delete_time = std::option::Option::Some(v.into());
19935 self
19936 }
19937
19938 pub fn set_or_clear_delete_time<T>(mut self, v: std::option::Option<T>) -> Self
19940 where
19941 T: std::convert::Into<wkt::Timestamp>,
19942 {
19943 self.delete_time = v.map(|x| x.into());
19944 self
19945 }
19946
19947 pub fn set_expire_time<T>(mut self, v: T) -> Self
19949 where
19950 T: std::convert::Into<wkt::Timestamp>,
19951 {
19952 self.expire_time = std::option::Option::Some(v.into());
19953 self
19954 }
19955
19956 pub fn set_or_clear_expire_time<T>(mut self, v: std::option::Option<T>) -> Self
19958 where
19959 T: std::convert::Into<wkt::Timestamp>,
19960 {
19961 self.expire_time = v.map(|x| x.into());
19962 self
19963 }
19964
19965 pub fn set_state<T: std::convert::Into<crate::model::private_cloud::State>>(
19967 mut self,
19968 v: T,
19969 ) -> Self {
19970 self.state = v.into();
19971 self
19972 }
19973
19974 pub fn set_network_config<T>(mut self, v: T) -> Self
19976 where
19977 T: std::convert::Into<crate::model::NetworkConfig>,
19978 {
19979 self.network_config = std::option::Option::Some(v.into());
19980 self
19981 }
19982
19983 pub fn set_or_clear_network_config<T>(mut self, v: std::option::Option<T>) -> Self
19985 where
19986 T: std::convert::Into<crate::model::NetworkConfig>,
19987 {
19988 self.network_config = v.map(|x| x.into());
19989 self
19990 }
19991
19992 pub fn set_management_cluster<T>(mut self, v: T) -> Self
19994 where
19995 T: std::convert::Into<crate::model::private_cloud::ManagementCluster>,
19996 {
19997 self.management_cluster = std::option::Option::Some(v.into());
19998 self
19999 }
20000
20001 pub fn set_or_clear_management_cluster<T>(mut self, v: std::option::Option<T>) -> Self
20003 where
20004 T: std::convert::Into<crate::model::private_cloud::ManagementCluster>,
20005 {
20006 self.management_cluster = v.map(|x| x.into());
20007 self
20008 }
20009
20010 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
20012 self.description = v.into();
20013 self
20014 }
20015
20016 pub fn set_hcx<T>(mut self, v: T) -> Self
20018 where
20019 T: std::convert::Into<crate::model::Hcx>,
20020 {
20021 self.hcx = std::option::Option::Some(v.into());
20022 self
20023 }
20024
20025 pub fn set_or_clear_hcx<T>(mut self, v: std::option::Option<T>) -> Self
20027 where
20028 T: std::convert::Into<crate::model::Hcx>,
20029 {
20030 self.hcx = v.map(|x| x.into());
20031 self
20032 }
20033
20034 pub fn set_nsx<T>(mut self, v: T) -> Self
20036 where
20037 T: std::convert::Into<crate::model::Nsx>,
20038 {
20039 self.nsx = std::option::Option::Some(v.into());
20040 self
20041 }
20042
20043 pub fn set_or_clear_nsx<T>(mut self, v: std::option::Option<T>) -> Self
20045 where
20046 T: std::convert::Into<crate::model::Nsx>,
20047 {
20048 self.nsx = v.map(|x| x.into());
20049 self
20050 }
20051
20052 pub fn set_vcenter<T>(mut self, v: T) -> Self
20054 where
20055 T: std::convert::Into<crate::model::Vcenter>,
20056 {
20057 self.vcenter = std::option::Option::Some(v.into());
20058 self
20059 }
20060
20061 pub fn set_or_clear_vcenter<T>(mut self, v: std::option::Option<T>) -> Self
20063 where
20064 T: std::convert::Into<crate::model::Vcenter>,
20065 {
20066 self.vcenter = v.map(|x| x.into());
20067 self
20068 }
20069
20070 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
20072 self.uid = v.into();
20073 self
20074 }
20075
20076 pub fn set_type<T: std::convert::Into<crate::model::private_cloud::Type>>(
20078 mut self,
20079 v: T,
20080 ) -> Self {
20081 self.r#type = v.into();
20082 self
20083 }
20084}
20085
20086impl wkt::message::Message for PrivateCloud {
20087 fn typename() -> &'static str {
20088 "type.googleapis.com/google.cloud.vmwareengine.v1.PrivateCloud"
20089 }
20090}
20091
20092#[doc(hidden)]
20093impl<'de> serde::de::Deserialize<'de> for PrivateCloud {
20094 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
20095 where
20096 D: serde::Deserializer<'de>,
20097 {
20098 #[allow(non_camel_case_types)]
20099 #[doc(hidden)]
20100 #[derive(PartialEq, Eq, Hash)]
20101 enum __FieldTag {
20102 __name,
20103 __create_time,
20104 __update_time,
20105 __delete_time,
20106 __expire_time,
20107 __state,
20108 __network_config,
20109 __management_cluster,
20110 __description,
20111 __hcx,
20112 __nsx,
20113 __vcenter,
20114 __uid,
20115 __type,
20116 Unknown(std::string::String),
20117 }
20118 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
20119 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
20120 where
20121 D: serde::Deserializer<'de>,
20122 {
20123 struct Visitor;
20124 impl<'de> serde::de::Visitor<'de> for Visitor {
20125 type Value = __FieldTag;
20126 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
20127 formatter.write_str("a field name for PrivateCloud")
20128 }
20129 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
20130 where
20131 E: serde::de::Error,
20132 {
20133 use std::result::Result::Ok;
20134 use std::string::ToString;
20135 match value {
20136 "name" => Ok(__FieldTag::__name),
20137 "createTime" => Ok(__FieldTag::__create_time),
20138 "create_time" => Ok(__FieldTag::__create_time),
20139 "updateTime" => Ok(__FieldTag::__update_time),
20140 "update_time" => Ok(__FieldTag::__update_time),
20141 "deleteTime" => Ok(__FieldTag::__delete_time),
20142 "delete_time" => Ok(__FieldTag::__delete_time),
20143 "expireTime" => Ok(__FieldTag::__expire_time),
20144 "expire_time" => Ok(__FieldTag::__expire_time),
20145 "state" => Ok(__FieldTag::__state),
20146 "networkConfig" => Ok(__FieldTag::__network_config),
20147 "network_config" => Ok(__FieldTag::__network_config),
20148 "managementCluster" => Ok(__FieldTag::__management_cluster),
20149 "management_cluster" => Ok(__FieldTag::__management_cluster),
20150 "description" => Ok(__FieldTag::__description),
20151 "hcx" => Ok(__FieldTag::__hcx),
20152 "nsx" => Ok(__FieldTag::__nsx),
20153 "vcenter" => Ok(__FieldTag::__vcenter),
20154 "uid" => Ok(__FieldTag::__uid),
20155 "type" => Ok(__FieldTag::__type),
20156 _ => Ok(__FieldTag::Unknown(value.to_string())),
20157 }
20158 }
20159 }
20160 deserializer.deserialize_identifier(Visitor)
20161 }
20162 }
20163 struct Visitor;
20164 impl<'de> serde::de::Visitor<'de> for Visitor {
20165 type Value = PrivateCloud;
20166 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
20167 formatter.write_str("struct PrivateCloud")
20168 }
20169 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
20170 where
20171 A: serde::de::MapAccess<'de>,
20172 {
20173 #[allow(unused_imports)]
20174 use serde::de::Error;
20175 use std::option::Option::Some;
20176 let mut fields = std::collections::HashSet::new();
20177 let mut result = Self::Value::new();
20178 while let Some(tag) = map.next_key::<__FieldTag>()? {
20179 #[allow(clippy::match_single_binding)]
20180 match tag {
20181 __FieldTag::__name => {
20182 if !fields.insert(__FieldTag::__name) {
20183 return std::result::Result::Err(A::Error::duplicate_field(
20184 "multiple values for name",
20185 ));
20186 }
20187 result.name = map
20188 .next_value::<std::option::Option<std::string::String>>()?
20189 .unwrap_or_default();
20190 }
20191 __FieldTag::__create_time => {
20192 if !fields.insert(__FieldTag::__create_time) {
20193 return std::result::Result::Err(A::Error::duplicate_field(
20194 "multiple values for create_time",
20195 ));
20196 }
20197 result.create_time =
20198 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
20199 }
20200 __FieldTag::__update_time => {
20201 if !fields.insert(__FieldTag::__update_time) {
20202 return std::result::Result::Err(A::Error::duplicate_field(
20203 "multiple values for update_time",
20204 ));
20205 }
20206 result.update_time =
20207 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
20208 }
20209 __FieldTag::__delete_time => {
20210 if !fields.insert(__FieldTag::__delete_time) {
20211 return std::result::Result::Err(A::Error::duplicate_field(
20212 "multiple values for delete_time",
20213 ));
20214 }
20215 result.delete_time =
20216 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
20217 }
20218 __FieldTag::__expire_time => {
20219 if !fields.insert(__FieldTag::__expire_time) {
20220 return std::result::Result::Err(A::Error::duplicate_field(
20221 "multiple values for expire_time",
20222 ));
20223 }
20224 result.expire_time =
20225 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
20226 }
20227 __FieldTag::__state => {
20228 if !fields.insert(__FieldTag::__state) {
20229 return std::result::Result::Err(A::Error::duplicate_field(
20230 "multiple values for state",
20231 ));
20232 }
20233 result.state = map.next_value::<std::option::Option<crate::model::private_cloud::State>>()?.unwrap_or_default();
20234 }
20235 __FieldTag::__network_config => {
20236 if !fields.insert(__FieldTag::__network_config) {
20237 return std::result::Result::Err(A::Error::duplicate_field(
20238 "multiple values for network_config",
20239 ));
20240 }
20241 result.network_config = map
20242 .next_value::<std::option::Option<crate::model::NetworkConfig>>()?;
20243 }
20244 __FieldTag::__management_cluster => {
20245 if !fields.insert(__FieldTag::__management_cluster) {
20246 return std::result::Result::Err(A::Error::duplicate_field(
20247 "multiple values for management_cluster",
20248 ));
20249 }
20250 result.management_cluster = map.next_value::<std::option::Option<
20251 crate::model::private_cloud::ManagementCluster,
20252 >>()?;
20253 }
20254 __FieldTag::__description => {
20255 if !fields.insert(__FieldTag::__description) {
20256 return std::result::Result::Err(A::Error::duplicate_field(
20257 "multiple values for description",
20258 ));
20259 }
20260 result.description = map
20261 .next_value::<std::option::Option<std::string::String>>()?
20262 .unwrap_or_default();
20263 }
20264 __FieldTag::__hcx => {
20265 if !fields.insert(__FieldTag::__hcx) {
20266 return std::result::Result::Err(A::Error::duplicate_field(
20267 "multiple values for hcx",
20268 ));
20269 }
20270 result.hcx =
20271 map.next_value::<std::option::Option<crate::model::Hcx>>()?;
20272 }
20273 __FieldTag::__nsx => {
20274 if !fields.insert(__FieldTag::__nsx) {
20275 return std::result::Result::Err(A::Error::duplicate_field(
20276 "multiple values for nsx",
20277 ));
20278 }
20279 result.nsx =
20280 map.next_value::<std::option::Option<crate::model::Nsx>>()?;
20281 }
20282 __FieldTag::__vcenter => {
20283 if !fields.insert(__FieldTag::__vcenter) {
20284 return std::result::Result::Err(A::Error::duplicate_field(
20285 "multiple values for vcenter",
20286 ));
20287 }
20288 result.vcenter =
20289 map.next_value::<std::option::Option<crate::model::Vcenter>>()?;
20290 }
20291 __FieldTag::__uid => {
20292 if !fields.insert(__FieldTag::__uid) {
20293 return std::result::Result::Err(A::Error::duplicate_field(
20294 "multiple values for uid",
20295 ));
20296 }
20297 result.uid = map
20298 .next_value::<std::option::Option<std::string::String>>()?
20299 .unwrap_or_default();
20300 }
20301 __FieldTag::__type => {
20302 if !fields.insert(__FieldTag::__type) {
20303 return std::result::Result::Err(A::Error::duplicate_field(
20304 "multiple values for type",
20305 ));
20306 }
20307 result.r#type = map.next_value::<std::option::Option<crate::model::private_cloud::Type>>()?.unwrap_or_default();
20308 }
20309 __FieldTag::Unknown(key) => {
20310 let value = map.next_value::<serde_json::Value>()?;
20311 result._unknown_fields.insert(key, value);
20312 }
20313 }
20314 }
20315 std::result::Result::Ok(result)
20316 }
20317 }
20318 deserializer.deserialize_any(Visitor)
20319 }
20320}
20321
20322#[doc(hidden)]
20323impl serde::ser::Serialize for PrivateCloud {
20324 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
20325 where
20326 S: serde::ser::Serializer,
20327 {
20328 use serde::ser::SerializeMap;
20329 #[allow(unused_imports)]
20330 use std::option::Option::Some;
20331 let mut state = serializer.serialize_map(std::option::Option::None)?;
20332 if !self.name.is_empty() {
20333 state.serialize_entry("name", &self.name)?;
20334 }
20335 if self.create_time.is_some() {
20336 state.serialize_entry("createTime", &self.create_time)?;
20337 }
20338 if self.update_time.is_some() {
20339 state.serialize_entry("updateTime", &self.update_time)?;
20340 }
20341 if self.delete_time.is_some() {
20342 state.serialize_entry("deleteTime", &self.delete_time)?;
20343 }
20344 if self.expire_time.is_some() {
20345 state.serialize_entry("expireTime", &self.expire_time)?;
20346 }
20347 if !wkt::internal::is_default(&self.state) {
20348 state.serialize_entry("state", &self.state)?;
20349 }
20350 if self.network_config.is_some() {
20351 state.serialize_entry("networkConfig", &self.network_config)?;
20352 }
20353 if self.management_cluster.is_some() {
20354 state.serialize_entry("managementCluster", &self.management_cluster)?;
20355 }
20356 if !self.description.is_empty() {
20357 state.serialize_entry("description", &self.description)?;
20358 }
20359 if self.hcx.is_some() {
20360 state.serialize_entry("hcx", &self.hcx)?;
20361 }
20362 if self.nsx.is_some() {
20363 state.serialize_entry("nsx", &self.nsx)?;
20364 }
20365 if self.vcenter.is_some() {
20366 state.serialize_entry("vcenter", &self.vcenter)?;
20367 }
20368 if !self.uid.is_empty() {
20369 state.serialize_entry("uid", &self.uid)?;
20370 }
20371 if !wkt::internal::is_default(&self.r#type) {
20372 state.serialize_entry("type", &self.r#type)?;
20373 }
20374 if !self._unknown_fields.is_empty() {
20375 for (key, value) in self._unknown_fields.iter() {
20376 state.serialize_entry(key, &value)?;
20377 }
20378 }
20379 state.end()
20380 }
20381}
20382
20383pub mod private_cloud {
20385 #[allow(unused_imports)]
20386 use super::*;
20387
20388 #[derive(Clone, Debug, Default, PartialEq)]
20390 #[non_exhaustive]
20391 pub struct ManagementCluster {
20392 pub cluster_id: std::string::String,
20402
20403 pub node_type_configs:
20406 std::collections::HashMap<std::string::String, crate::model::NodeTypeConfig>,
20407
20408 pub stretched_cluster_config: std::option::Option<crate::model::StretchedClusterConfig>,
20411
20412 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
20413 }
20414
20415 impl ManagementCluster {
20416 pub fn new() -> Self {
20417 std::default::Default::default()
20418 }
20419
20420 pub fn set_cluster_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
20422 self.cluster_id = v.into();
20423 self
20424 }
20425
20426 pub fn set_node_type_configs<T, K, V>(mut self, v: T) -> Self
20428 where
20429 T: std::iter::IntoIterator<Item = (K, V)>,
20430 K: std::convert::Into<std::string::String>,
20431 V: std::convert::Into<crate::model::NodeTypeConfig>,
20432 {
20433 use std::iter::Iterator;
20434 self.node_type_configs = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
20435 self
20436 }
20437
20438 pub fn set_stretched_cluster_config<T>(mut self, v: T) -> Self
20440 where
20441 T: std::convert::Into<crate::model::StretchedClusterConfig>,
20442 {
20443 self.stretched_cluster_config = std::option::Option::Some(v.into());
20444 self
20445 }
20446
20447 pub fn set_or_clear_stretched_cluster_config<T>(mut self, v: std::option::Option<T>) -> Self
20449 where
20450 T: std::convert::Into<crate::model::StretchedClusterConfig>,
20451 {
20452 self.stretched_cluster_config = v.map(|x| x.into());
20453 self
20454 }
20455 }
20456
20457 impl wkt::message::Message for ManagementCluster {
20458 fn typename() -> &'static str {
20459 "type.googleapis.com/google.cloud.vmwareengine.v1.PrivateCloud.ManagementCluster"
20460 }
20461 }
20462
20463 #[doc(hidden)]
20464 impl<'de> serde::de::Deserialize<'de> for ManagementCluster {
20465 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
20466 where
20467 D: serde::Deserializer<'de>,
20468 {
20469 #[allow(non_camel_case_types)]
20470 #[doc(hidden)]
20471 #[derive(PartialEq, Eq, Hash)]
20472 enum __FieldTag {
20473 __cluster_id,
20474 __node_type_configs,
20475 __stretched_cluster_config,
20476 Unknown(std::string::String),
20477 }
20478 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
20479 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
20480 where
20481 D: serde::Deserializer<'de>,
20482 {
20483 struct Visitor;
20484 impl<'de> serde::de::Visitor<'de> for Visitor {
20485 type Value = __FieldTag;
20486 fn expecting(
20487 &self,
20488 formatter: &mut std::fmt::Formatter,
20489 ) -> std::fmt::Result {
20490 formatter.write_str("a field name for ManagementCluster")
20491 }
20492 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
20493 where
20494 E: serde::de::Error,
20495 {
20496 use std::result::Result::Ok;
20497 use std::string::ToString;
20498 match value {
20499 "clusterId" => Ok(__FieldTag::__cluster_id),
20500 "cluster_id" => Ok(__FieldTag::__cluster_id),
20501 "nodeTypeConfigs" => Ok(__FieldTag::__node_type_configs),
20502 "node_type_configs" => Ok(__FieldTag::__node_type_configs),
20503 "stretchedClusterConfig" => {
20504 Ok(__FieldTag::__stretched_cluster_config)
20505 }
20506 "stretched_cluster_config" => {
20507 Ok(__FieldTag::__stretched_cluster_config)
20508 }
20509 _ => Ok(__FieldTag::Unknown(value.to_string())),
20510 }
20511 }
20512 }
20513 deserializer.deserialize_identifier(Visitor)
20514 }
20515 }
20516 struct Visitor;
20517 impl<'de> serde::de::Visitor<'de> for Visitor {
20518 type Value = ManagementCluster;
20519 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
20520 formatter.write_str("struct ManagementCluster")
20521 }
20522 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
20523 where
20524 A: serde::de::MapAccess<'de>,
20525 {
20526 #[allow(unused_imports)]
20527 use serde::de::Error;
20528 use std::option::Option::Some;
20529 let mut fields = std::collections::HashSet::new();
20530 let mut result = Self::Value::new();
20531 while let Some(tag) = map.next_key::<__FieldTag>()? {
20532 #[allow(clippy::match_single_binding)]
20533 match tag {
20534 __FieldTag::__cluster_id => {
20535 if !fields.insert(__FieldTag::__cluster_id) {
20536 return std::result::Result::Err(A::Error::duplicate_field(
20537 "multiple values for cluster_id",
20538 ));
20539 }
20540 result.cluster_id = map
20541 .next_value::<std::option::Option<std::string::String>>()?
20542 .unwrap_or_default();
20543 }
20544 __FieldTag::__node_type_configs => {
20545 if !fields.insert(__FieldTag::__node_type_configs) {
20546 return std::result::Result::Err(A::Error::duplicate_field(
20547 "multiple values for node_type_configs",
20548 ));
20549 }
20550 result.node_type_configs = map
20551 .next_value::<std::option::Option<
20552 std::collections::HashMap<
20553 std::string::String,
20554 crate::model::NodeTypeConfig,
20555 >,
20556 >>()?
20557 .unwrap_or_default();
20558 }
20559 __FieldTag::__stretched_cluster_config => {
20560 if !fields.insert(__FieldTag::__stretched_cluster_config) {
20561 return std::result::Result::Err(A::Error::duplicate_field(
20562 "multiple values for stretched_cluster_config",
20563 ));
20564 }
20565 result.stretched_cluster_config = map.next_value::<std::option::Option<crate::model::StretchedClusterConfig>>()?
20566 ;
20567 }
20568 __FieldTag::Unknown(key) => {
20569 let value = map.next_value::<serde_json::Value>()?;
20570 result._unknown_fields.insert(key, value);
20571 }
20572 }
20573 }
20574 std::result::Result::Ok(result)
20575 }
20576 }
20577 deserializer.deserialize_any(Visitor)
20578 }
20579 }
20580
20581 #[doc(hidden)]
20582 impl serde::ser::Serialize for ManagementCluster {
20583 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
20584 where
20585 S: serde::ser::Serializer,
20586 {
20587 use serde::ser::SerializeMap;
20588 #[allow(unused_imports)]
20589 use std::option::Option::Some;
20590 let mut state = serializer.serialize_map(std::option::Option::None)?;
20591 if !self.cluster_id.is_empty() {
20592 state.serialize_entry("clusterId", &self.cluster_id)?;
20593 }
20594 if !self.node_type_configs.is_empty() {
20595 state.serialize_entry("nodeTypeConfigs", &self.node_type_configs)?;
20596 }
20597 if self.stretched_cluster_config.is_some() {
20598 state.serialize_entry("stretchedClusterConfig", &self.stretched_cluster_config)?;
20599 }
20600 if !self._unknown_fields.is_empty() {
20601 for (key, value) in self._unknown_fields.iter() {
20602 state.serialize_entry(key, &value)?;
20603 }
20604 }
20605 state.end()
20606 }
20607 }
20608
20609 #[derive(Clone, Debug, PartialEq)]
20625 #[non_exhaustive]
20626 pub enum State {
20627 Unspecified,
20629 Active,
20631 Creating,
20633 Updating,
20635 Failed,
20637 Deleted,
20640 Purging,
20643 UnknownValue(state::UnknownValue),
20648 }
20649
20650 #[doc(hidden)]
20651 pub mod state {
20652 #[allow(unused_imports)]
20653 use super::*;
20654 #[derive(Clone, Debug, PartialEq)]
20655 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
20656 }
20657
20658 impl State {
20659 pub fn value(&self) -> std::option::Option<i32> {
20664 match self {
20665 Self::Unspecified => std::option::Option::Some(0),
20666 Self::Active => std::option::Option::Some(1),
20667 Self::Creating => std::option::Option::Some(2),
20668 Self::Updating => std::option::Option::Some(3),
20669 Self::Failed => std::option::Option::Some(5),
20670 Self::Deleted => std::option::Option::Some(6),
20671 Self::Purging => std::option::Option::Some(7),
20672 Self::UnknownValue(u) => u.0.value(),
20673 }
20674 }
20675
20676 pub fn name(&self) -> std::option::Option<&str> {
20681 match self {
20682 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
20683 Self::Active => std::option::Option::Some("ACTIVE"),
20684 Self::Creating => std::option::Option::Some("CREATING"),
20685 Self::Updating => std::option::Option::Some("UPDATING"),
20686 Self::Failed => std::option::Option::Some("FAILED"),
20687 Self::Deleted => std::option::Option::Some("DELETED"),
20688 Self::Purging => std::option::Option::Some("PURGING"),
20689 Self::UnknownValue(u) => u.0.name(),
20690 }
20691 }
20692 }
20693
20694 impl std::default::Default for State {
20695 fn default() -> Self {
20696 use std::convert::From;
20697 Self::from(0)
20698 }
20699 }
20700
20701 impl std::fmt::Display for State {
20702 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
20703 wkt::internal::display_enum(f, self.name(), self.value())
20704 }
20705 }
20706
20707 impl std::convert::From<i32> for State {
20708 fn from(value: i32) -> Self {
20709 match value {
20710 0 => Self::Unspecified,
20711 1 => Self::Active,
20712 2 => Self::Creating,
20713 3 => Self::Updating,
20714 5 => Self::Failed,
20715 6 => Self::Deleted,
20716 7 => Self::Purging,
20717 _ => Self::UnknownValue(state::UnknownValue(
20718 wkt::internal::UnknownEnumValue::Integer(value),
20719 )),
20720 }
20721 }
20722 }
20723
20724 impl std::convert::From<&str> for State {
20725 fn from(value: &str) -> Self {
20726 use std::string::ToString;
20727 match value {
20728 "STATE_UNSPECIFIED" => Self::Unspecified,
20729 "ACTIVE" => Self::Active,
20730 "CREATING" => Self::Creating,
20731 "UPDATING" => Self::Updating,
20732 "FAILED" => Self::Failed,
20733 "DELETED" => Self::Deleted,
20734 "PURGING" => Self::Purging,
20735 _ => Self::UnknownValue(state::UnknownValue(
20736 wkt::internal::UnknownEnumValue::String(value.to_string()),
20737 )),
20738 }
20739 }
20740 }
20741
20742 impl serde::ser::Serialize for State {
20743 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
20744 where
20745 S: serde::Serializer,
20746 {
20747 match self {
20748 Self::Unspecified => serializer.serialize_i32(0),
20749 Self::Active => serializer.serialize_i32(1),
20750 Self::Creating => serializer.serialize_i32(2),
20751 Self::Updating => serializer.serialize_i32(3),
20752 Self::Failed => serializer.serialize_i32(5),
20753 Self::Deleted => serializer.serialize_i32(6),
20754 Self::Purging => serializer.serialize_i32(7),
20755 Self::UnknownValue(u) => u.0.serialize(serializer),
20756 }
20757 }
20758 }
20759
20760 impl<'de> serde::de::Deserialize<'de> for State {
20761 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
20762 where
20763 D: serde::Deserializer<'de>,
20764 {
20765 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
20766 ".google.cloud.vmwareengine.v1.PrivateCloud.State",
20767 ))
20768 }
20769 }
20770
20771 #[derive(Clone, Debug, PartialEq)]
20787 #[non_exhaustive]
20788 pub enum Type {
20789 Standard,
20791 TimeLimited,
20796 Stretched,
20799 UnknownValue(r#type::UnknownValue),
20804 }
20805
20806 #[doc(hidden)]
20807 pub mod r#type {
20808 #[allow(unused_imports)]
20809 use super::*;
20810 #[derive(Clone, Debug, PartialEq)]
20811 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
20812 }
20813
20814 impl Type {
20815 pub fn value(&self) -> std::option::Option<i32> {
20820 match self {
20821 Self::Standard => std::option::Option::Some(0),
20822 Self::TimeLimited => std::option::Option::Some(1),
20823 Self::Stretched => std::option::Option::Some(2),
20824 Self::UnknownValue(u) => u.0.value(),
20825 }
20826 }
20827
20828 pub fn name(&self) -> std::option::Option<&str> {
20833 match self {
20834 Self::Standard => std::option::Option::Some("STANDARD"),
20835 Self::TimeLimited => std::option::Option::Some("TIME_LIMITED"),
20836 Self::Stretched => std::option::Option::Some("STRETCHED"),
20837 Self::UnknownValue(u) => u.0.name(),
20838 }
20839 }
20840 }
20841
20842 impl std::default::Default for Type {
20843 fn default() -> Self {
20844 use std::convert::From;
20845 Self::from(0)
20846 }
20847 }
20848
20849 impl std::fmt::Display for Type {
20850 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
20851 wkt::internal::display_enum(f, self.name(), self.value())
20852 }
20853 }
20854
20855 impl std::convert::From<i32> for Type {
20856 fn from(value: i32) -> Self {
20857 match value {
20858 0 => Self::Standard,
20859 1 => Self::TimeLimited,
20860 2 => Self::Stretched,
20861 _ => Self::UnknownValue(r#type::UnknownValue(
20862 wkt::internal::UnknownEnumValue::Integer(value),
20863 )),
20864 }
20865 }
20866 }
20867
20868 impl std::convert::From<&str> for Type {
20869 fn from(value: &str) -> Self {
20870 use std::string::ToString;
20871 match value {
20872 "STANDARD" => Self::Standard,
20873 "TIME_LIMITED" => Self::TimeLimited,
20874 "STRETCHED" => Self::Stretched,
20875 _ => Self::UnknownValue(r#type::UnknownValue(
20876 wkt::internal::UnknownEnumValue::String(value.to_string()),
20877 )),
20878 }
20879 }
20880 }
20881
20882 impl serde::ser::Serialize for Type {
20883 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
20884 where
20885 S: serde::Serializer,
20886 {
20887 match self {
20888 Self::Standard => serializer.serialize_i32(0),
20889 Self::TimeLimited => serializer.serialize_i32(1),
20890 Self::Stretched => serializer.serialize_i32(2),
20891 Self::UnknownValue(u) => u.0.serialize(serializer),
20892 }
20893 }
20894 }
20895
20896 impl<'de> serde::de::Deserialize<'de> for Type {
20897 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
20898 where
20899 D: serde::Deserializer<'de>,
20900 {
20901 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Type>::new(
20902 ".google.cloud.vmwareengine.v1.PrivateCloud.Type",
20903 ))
20904 }
20905 }
20906}
20907
20908#[derive(Clone, Debug, Default, PartialEq)]
20910#[non_exhaustive]
20911pub struct Cluster {
20912 pub name: std::string::String,
20918
20919 pub create_time: std::option::Option<wkt::Timestamp>,
20921
20922 pub update_time: std::option::Option<wkt::Timestamp>,
20924
20925 pub state: crate::model::cluster::State,
20927
20928 pub management: bool,
20932
20933 pub autoscaling_settings: std::option::Option<crate::model::AutoscalingSettings>,
20935
20936 pub uid: std::string::String,
20938
20939 pub node_type_configs:
20942 std::collections::HashMap<std::string::String, crate::model::NodeTypeConfig>,
20943
20944 pub stretched_cluster_config: std::option::Option<crate::model::StretchedClusterConfig>,
20947
20948 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
20949}
20950
20951impl Cluster {
20952 pub fn new() -> Self {
20953 std::default::Default::default()
20954 }
20955
20956 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
20958 self.name = v.into();
20959 self
20960 }
20961
20962 pub fn set_create_time<T>(mut self, v: T) -> Self
20964 where
20965 T: std::convert::Into<wkt::Timestamp>,
20966 {
20967 self.create_time = std::option::Option::Some(v.into());
20968 self
20969 }
20970
20971 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
20973 where
20974 T: std::convert::Into<wkt::Timestamp>,
20975 {
20976 self.create_time = v.map(|x| x.into());
20977 self
20978 }
20979
20980 pub fn set_update_time<T>(mut self, v: T) -> Self
20982 where
20983 T: std::convert::Into<wkt::Timestamp>,
20984 {
20985 self.update_time = std::option::Option::Some(v.into());
20986 self
20987 }
20988
20989 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
20991 where
20992 T: std::convert::Into<wkt::Timestamp>,
20993 {
20994 self.update_time = v.map(|x| x.into());
20995 self
20996 }
20997
20998 pub fn set_state<T: std::convert::Into<crate::model::cluster::State>>(mut self, v: T) -> Self {
21000 self.state = v.into();
21001 self
21002 }
21003
21004 pub fn set_management<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
21006 self.management = v.into();
21007 self
21008 }
21009
21010 pub fn set_autoscaling_settings<T>(mut self, v: T) -> Self
21012 where
21013 T: std::convert::Into<crate::model::AutoscalingSettings>,
21014 {
21015 self.autoscaling_settings = std::option::Option::Some(v.into());
21016 self
21017 }
21018
21019 pub fn set_or_clear_autoscaling_settings<T>(mut self, v: std::option::Option<T>) -> Self
21021 where
21022 T: std::convert::Into<crate::model::AutoscalingSettings>,
21023 {
21024 self.autoscaling_settings = v.map(|x| x.into());
21025 self
21026 }
21027
21028 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21030 self.uid = v.into();
21031 self
21032 }
21033
21034 pub fn set_node_type_configs<T, K, V>(mut self, v: T) -> Self
21036 where
21037 T: std::iter::IntoIterator<Item = (K, V)>,
21038 K: std::convert::Into<std::string::String>,
21039 V: std::convert::Into<crate::model::NodeTypeConfig>,
21040 {
21041 use std::iter::Iterator;
21042 self.node_type_configs = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
21043 self
21044 }
21045
21046 pub fn set_stretched_cluster_config<T>(mut self, v: T) -> Self
21048 where
21049 T: std::convert::Into<crate::model::StretchedClusterConfig>,
21050 {
21051 self.stretched_cluster_config = std::option::Option::Some(v.into());
21052 self
21053 }
21054
21055 pub fn set_or_clear_stretched_cluster_config<T>(mut self, v: std::option::Option<T>) -> Self
21057 where
21058 T: std::convert::Into<crate::model::StretchedClusterConfig>,
21059 {
21060 self.stretched_cluster_config = v.map(|x| x.into());
21061 self
21062 }
21063}
21064
21065impl wkt::message::Message for Cluster {
21066 fn typename() -> &'static str {
21067 "type.googleapis.com/google.cloud.vmwareengine.v1.Cluster"
21068 }
21069}
21070
21071#[doc(hidden)]
21072impl<'de> serde::de::Deserialize<'de> for Cluster {
21073 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
21074 where
21075 D: serde::Deserializer<'de>,
21076 {
21077 #[allow(non_camel_case_types)]
21078 #[doc(hidden)]
21079 #[derive(PartialEq, Eq, Hash)]
21080 enum __FieldTag {
21081 __name,
21082 __create_time,
21083 __update_time,
21084 __state,
21085 __management,
21086 __autoscaling_settings,
21087 __uid,
21088 __node_type_configs,
21089 __stretched_cluster_config,
21090 Unknown(std::string::String),
21091 }
21092 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
21093 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
21094 where
21095 D: serde::Deserializer<'de>,
21096 {
21097 struct Visitor;
21098 impl<'de> serde::de::Visitor<'de> for Visitor {
21099 type Value = __FieldTag;
21100 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
21101 formatter.write_str("a field name for Cluster")
21102 }
21103 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
21104 where
21105 E: serde::de::Error,
21106 {
21107 use std::result::Result::Ok;
21108 use std::string::ToString;
21109 match value {
21110 "name" => Ok(__FieldTag::__name),
21111 "createTime" => Ok(__FieldTag::__create_time),
21112 "create_time" => Ok(__FieldTag::__create_time),
21113 "updateTime" => Ok(__FieldTag::__update_time),
21114 "update_time" => Ok(__FieldTag::__update_time),
21115 "state" => Ok(__FieldTag::__state),
21116 "management" => Ok(__FieldTag::__management),
21117 "autoscalingSettings" => Ok(__FieldTag::__autoscaling_settings),
21118 "autoscaling_settings" => Ok(__FieldTag::__autoscaling_settings),
21119 "uid" => Ok(__FieldTag::__uid),
21120 "nodeTypeConfigs" => Ok(__FieldTag::__node_type_configs),
21121 "node_type_configs" => Ok(__FieldTag::__node_type_configs),
21122 "stretchedClusterConfig" => Ok(__FieldTag::__stretched_cluster_config),
21123 "stretched_cluster_config" => {
21124 Ok(__FieldTag::__stretched_cluster_config)
21125 }
21126 _ => Ok(__FieldTag::Unknown(value.to_string())),
21127 }
21128 }
21129 }
21130 deserializer.deserialize_identifier(Visitor)
21131 }
21132 }
21133 struct Visitor;
21134 impl<'de> serde::de::Visitor<'de> for Visitor {
21135 type Value = Cluster;
21136 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
21137 formatter.write_str("struct Cluster")
21138 }
21139 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
21140 where
21141 A: serde::de::MapAccess<'de>,
21142 {
21143 #[allow(unused_imports)]
21144 use serde::de::Error;
21145 use std::option::Option::Some;
21146 let mut fields = std::collections::HashSet::new();
21147 let mut result = Self::Value::new();
21148 while let Some(tag) = map.next_key::<__FieldTag>()? {
21149 #[allow(clippy::match_single_binding)]
21150 match tag {
21151 __FieldTag::__name => {
21152 if !fields.insert(__FieldTag::__name) {
21153 return std::result::Result::Err(A::Error::duplicate_field(
21154 "multiple values for name",
21155 ));
21156 }
21157 result.name = map
21158 .next_value::<std::option::Option<std::string::String>>()?
21159 .unwrap_or_default();
21160 }
21161 __FieldTag::__create_time => {
21162 if !fields.insert(__FieldTag::__create_time) {
21163 return std::result::Result::Err(A::Error::duplicate_field(
21164 "multiple values for create_time",
21165 ));
21166 }
21167 result.create_time =
21168 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
21169 }
21170 __FieldTag::__update_time => {
21171 if !fields.insert(__FieldTag::__update_time) {
21172 return std::result::Result::Err(A::Error::duplicate_field(
21173 "multiple values for update_time",
21174 ));
21175 }
21176 result.update_time =
21177 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
21178 }
21179 __FieldTag::__state => {
21180 if !fields.insert(__FieldTag::__state) {
21181 return std::result::Result::Err(A::Error::duplicate_field(
21182 "multiple values for state",
21183 ));
21184 }
21185 result.state = map
21186 .next_value::<std::option::Option<crate::model::cluster::State>>()?
21187 .unwrap_or_default();
21188 }
21189 __FieldTag::__management => {
21190 if !fields.insert(__FieldTag::__management) {
21191 return std::result::Result::Err(A::Error::duplicate_field(
21192 "multiple values for management",
21193 ));
21194 }
21195 result.management = map
21196 .next_value::<std::option::Option<bool>>()?
21197 .unwrap_or_default();
21198 }
21199 __FieldTag::__autoscaling_settings => {
21200 if !fields.insert(__FieldTag::__autoscaling_settings) {
21201 return std::result::Result::Err(A::Error::duplicate_field(
21202 "multiple values for autoscaling_settings",
21203 ));
21204 }
21205 result.autoscaling_settings = map.next_value::<std::option::Option<crate::model::AutoscalingSettings>>()?
21206 ;
21207 }
21208 __FieldTag::__uid => {
21209 if !fields.insert(__FieldTag::__uid) {
21210 return std::result::Result::Err(A::Error::duplicate_field(
21211 "multiple values for uid",
21212 ));
21213 }
21214 result.uid = map
21215 .next_value::<std::option::Option<std::string::String>>()?
21216 .unwrap_or_default();
21217 }
21218 __FieldTag::__node_type_configs => {
21219 if !fields.insert(__FieldTag::__node_type_configs) {
21220 return std::result::Result::Err(A::Error::duplicate_field(
21221 "multiple values for node_type_configs",
21222 ));
21223 }
21224 result.node_type_configs = map
21225 .next_value::<std::option::Option<
21226 std::collections::HashMap<
21227 std::string::String,
21228 crate::model::NodeTypeConfig,
21229 >,
21230 >>()?
21231 .unwrap_or_default();
21232 }
21233 __FieldTag::__stretched_cluster_config => {
21234 if !fields.insert(__FieldTag::__stretched_cluster_config) {
21235 return std::result::Result::Err(A::Error::duplicate_field(
21236 "multiple values for stretched_cluster_config",
21237 ));
21238 }
21239 result.stretched_cluster_config = map.next_value::<std::option::Option<crate::model::StretchedClusterConfig>>()?
21240 ;
21241 }
21242 __FieldTag::Unknown(key) => {
21243 let value = map.next_value::<serde_json::Value>()?;
21244 result._unknown_fields.insert(key, value);
21245 }
21246 }
21247 }
21248 std::result::Result::Ok(result)
21249 }
21250 }
21251 deserializer.deserialize_any(Visitor)
21252 }
21253}
21254
21255#[doc(hidden)]
21256impl serde::ser::Serialize for Cluster {
21257 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
21258 where
21259 S: serde::ser::Serializer,
21260 {
21261 use serde::ser::SerializeMap;
21262 #[allow(unused_imports)]
21263 use std::option::Option::Some;
21264 let mut state = serializer.serialize_map(std::option::Option::None)?;
21265 if !self.name.is_empty() {
21266 state.serialize_entry("name", &self.name)?;
21267 }
21268 if self.create_time.is_some() {
21269 state.serialize_entry("createTime", &self.create_time)?;
21270 }
21271 if self.update_time.is_some() {
21272 state.serialize_entry("updateTime", &self.update_time)?;
21273 }
21274 if !wkt::internal::is_default(&self.state) {
21275 state.serialize_entry("state", &self.state)?;
21276 }
21277 if !wkt::internal::is_default(&self.management) {
21278 state.serialize_entry("management", &self.management)?;
21279 }
21280 if self.autoscaling_settings.is_some() {
21281 state.serialize_entry("autoscalingSettings", &self.autoscaling_settings)?;
21282 }
21283 if !self.uid.is_empty() {
21284 state.serialize_entry("uid", &self.uid)?;
21285 }
21286 if !self.node_type_configs.is_empty() {
21287 state.serialize_entry("nodeTypeConfigs", &self.node_type_configs)?;
21288 }
21289 if self.stretched_cluster_config.is_some() {
21290 state.serialize_entry("stretchedClusterConfig", &self.stretched_cluster_config)?;
21291 }
21292 if !self._unknown_fields.is_empty() {
21293 for (key, value) in self._unknown_fields.iter() {
21294 state.serialize_entry(key, &value)?;
21295 }
21296 }
21297 state.end()
21298 }
21299}
21300
21301pub mod cluster {
21303 #[allow(unused_imports)]
21304 use super::*;
21305
21306 #[derive(Clone, Debug, PartialEq)]
21322 #[non_exhaustive]
21323 pub enum State {
21324 Unspecified,
21326 Active,
21328 Creating,
21330 Updating,
21333 Deleting,
21335 Repairing,
21338 UnknownValue(state::UnknownValue),
21343 }
21344
21345 #[doc(hidden)]
21346 pub mod state {
21347 #[allow(unused_imports)]
21348 use super::*;
21349 #[derive(Clone, Debug, PartialEq)]
21350 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
21351 }
21352
21353 impl State {
21354 pub fn value(&self) -> std::option::Option<i32> {
21359 match self {
21360 Self::Unspecified => std::option::Option::Some(0),
21361 Self::Active => std::option::Option::Some(1),
21362 Self::Creating => std::option::Option::Some(2),
21363 Self::Updating => std::option::Option::Some(3),
21364 Self::Deleting => std::option::Option::Some(4),
21365 Self::Repairing => std::option::Option::Some(5),
21366 Self::UnknownValue(u) => u.0.value(),
21367 }
21368 }
21369
21370 pub fn name(&self) -> std::option::Option<&str> {
21375 match self {
21376 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
21377 Self::Active => std::option::Option::Some("ACTIVE"),
21378 Self::Creating => std::option::Option::Some("CREATING"),
21379 Self::Updating => std::option::Option::Some("UPDATING"),
21380 Self::Deleting => std::option::Option::Some("DELETING"),
21381 Self::Repairing => std::option::Option::Some("REPAIRING"),
21382 Self::UnknownValue(u) => u.0.name(),
21383 }
21384 }
21385 }
21386
21387 impl std::default::Default for State {
21388 fn default() -> Self {
21389 use std::convert::From;
21390 Self::from(0)
21391 }
21392 }
21393
21394 impl std::fmt::Display for State {
21395 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
21396 wkt::internal::display_enum(f, self.name(), self.value())
21397 }
21398 }
21399
21400 impl std::convert::From<i32> for State {
21401 fn from(value: i32) -> Self {
21402 match value {
21403 0 => Self::Unspecified,
21404 1 => Self::Active,
21405 2 => Self::Creating,
21406 3 => Self::Updating,
21407 4 => Self::Deleting,
21408 5 => Self::Repairing,
21409 _ => Self::UnknownValue(state::UnknownValue(
21410 wkt::internal::UnknownEnumValue::Integer(value),
21411 )),
21412 }
21413 }
21414 }
21415
21416 impl std::convert::From<&str> for State {
21417 fn from(value: &str) -> Self {
21418 use std::string::ToString;
21419 match value {
21420 "STATE_UNSPECIFIED" => Self::Unspecified,
21421 "ACTIVE" => Self::Active,
21422 "CREATING" => Self::Creating,
21423 "UPDATING" => Self::Updating,
21424 "DELETING" => Self::Deleting,
21425 "REPAIRING" => Self::Repairing,
21426 _ => Self::UnknownValue(state::UnknownValue(
21427 wkt::internal::UnknownEnumValue::String(value.to_string()),
21428 )),
21429 }
21430 }
21431 }
21432
21433 impl serde::ser::Serialize for State {
21434 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
21435 where
21436 S: serde::Serializer,
21437 {
21438 match self {
21439 Self::Unspecified => serializer.serialize_i32(0),
21440 Self::Active => serializer.serialize_i32(1),
21441 Self::Creating => serializer.serialize_i32(2),
21442 Self::Updating => serializer.serialize_i32(3),
21443 Self::Deleting => serializer.serialize_i32(4),
21444 Self::Repairing => serializer.serialize_i32(5),
21445 Self::UnknownValue(u) => u.0.serialize(serializer),
21446 }
21447 }
21448 }
21449
21450 impl<'de> serde::de::Deserialize<'de> for State {
21451 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
21452 where
21453 D: serde::Deserializer<'de>,
21454 {
21455 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
21456 ".google.cloud.vmwareengine.v1.Cluster.State",
21457 ))
21458 }
21459 }
21460}
21461
21462#[derive(Clone, Debug, Default, PartialEq)]
21464#[non_exhaustive]
21465pub struct Node {
21466 pub name: std::string::String,
21472
21473 pub fqdn: std::string::String,
21475
21476 pub internal_ip: std::string::String,
21478
21479 pub node_type_id: std::string::String,
21483
21484 pub version: std::string::String,
21487
21488 pub custom_core_count: i64,
21490
21491 pub state: crate::model::node::State,
21493
21494 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
21495}
21496
21497impl Node {
21498 pub fn new() -> Self {
21499 std::default::Default::default()
21500 }
21501
21502 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21504 self.name = v.into();
21505 self
21506 }
21507
21508 pub fn set_fqdn<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21510 self.fqdn = v.into();
21511 self
21512 }
21513
21514 pub fn set_internal_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21516 self.internal_ip = v.into();
21517 self
21518 }
21519
21520 pub fn set_node_type_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21522 self.node_type_id = v.into();
21523 self
21524 }
21525
21526 pub fn set_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21528 self.version = v.into();
21529 self
21530 }
21531
21532 pub fn set_custom_core_count<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
21534 self.custom_core_count = v.into();
21535 self
21536 }
21537
21538 pub fn set_state<T: std::convert::Into<crate::model::node::State>>(mut self, v: T) -> Self {
21540 self.state = v.into();
21541 self
21542 }
21543}
21544
21545impl wkt::message::Message for Node {
21546 fn typename() -> &'static str {
21547 "type.googleapis.com/google.cloud.vmwareengine.v1.Node"
21548 }
21549}
21550
21551#[doc(hidden)]
21552impl<'de> serde::de::Deserialize<'de> for Node {
21553 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
21554 where
21555 D: serde::Deserializer<'de>,
21556 {
21557 #[allow(non_camel_case_types)]
21558 #[doc(hidden)]
21559 #[derive(PartialEq, Eq, Hash)]
21560 enum __FieldTag {
21561 __name,
21562 __fqdn,
21563 __internal_ip,
21564 __node_type_id,
21565 __version,
21566 __custom_core_count,
21567 __state,
21568 Unknown(std::string::String),
21569 }
21570 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
21571 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
21572 where
21573 D: serde::Deserializer<'de>,
21574 {
21575 struct Visitor;
21576 impl<'de> serde::de::Visitor<'de> for Visitor {
21577 type Value = __FieldTag;
21578 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
21579 formatter.write_str("a field name for Node")
21580 }
21581 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
21582 where
21583 E: serde::de::Error,
21584 {
21585 use std::result::Result::Ok;
21586 use std::string::ToString;
21587 match value {
21588 "name" => Ok(__FieldTag::__name),
21589 "fqdn" => Ok(__FieldTag::__fqdn),
21590 "internalIp" => Ok(__FieldTag::__internal_ip),
21591 "internal_ip" => Ok(__FieldTag::__internal_ip),
21592 "nodeTypeId" => Ok(__FieldTag::__node_type_id),
21593 "node_type_id" => Ok(__FieldTag::__node_type_id),
21594 "version" => Ok(__FieldTag::__version),
21595 "customCoreCount" => Ok(__FieldTag::__custom_core_count),
21596 "custom_core_count" => Ok(__FieldTag::__custom_core_count),
21597 "state" => Ok(__FieldTag::__state),
21598 _ => Ok(__FieldTag::Unknown(value.to_string())),
21599 }
21600 }
21601 }
21602 deserializer.deserialize_identifier(Visitor)
21603 }
21604 }
21605 struct Visitor;
21606 impl<'de> serde::de::Visitor<'de> for Visitor {
21607 type Value = Node;
21608 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
21609 formatter.write_str("struct Node")
21610 }
21611 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
21612 where
21613 A: serde::de::MapAccess<'de>,
21614 {
21615 #[allow(unused_imports)]
21616 use serde::de::Error;
21617 use std::option::Option::Some;
21618 let mut fields = std::collections::HashSet::new();
21619 let mut result = Self::Value::new();
21620 while let Some(tag) = map.next_key::<__FieldTag>()? {
21621 #[allow(clippy::match_single_binding)]
21622 match tag {
21623 __FieldTag::__name => {
21624 if !fields.insert(__FieldTag::__name) {
21625 return std::result::Result::Err(A::Error::duplicate_field(
21626 "multiple values for name",
21627 ));
21628 }
21629 result.name = map
21630 .next_value::<std::option::Option<std::string::String>>()?
21631 .unwrap_or_default();
21632 }
21633 __FieldTag::__fqdn => {
21634 if !fields.insert(__FieldTag::__fqdn) {
21635 return std::result::Result::Err(A::Error::duplicate_field(
21636 "multiple values for fqdn",
21637 ));
21638 }
21639 result.fqdn = map
21640 .next_value::<std::option::Option<std::string::String>>()?
21641 .unwrap_or_default();
21642 }
21643 __FieldTag::__internal_ip => {
21644 if !fields.insert(__FieldTag::__internal_ip) {
21645 return std::result::Result::Err(A::Error::duplicate_field(
21646 "multiple values for internal_ip",
21647 ));
21648 }
21649 result.internal_ip = map
21650 .next_value::<std::option::Option<std::string::String>>()?
21651 .unwrap_or_default();
21652 }
21653 __FieldTag::__node_type_id => {
21654 if !fields.insert(__FieldTag::__node_type_id) {
21655 return std::result::Result::Err(A::Error::duplicate_field(
21656 "multiple values for node_type_id",
21657 ));
21658 }
21659 result.node_type_id = map
21660 .next_value::<std::option::Option<std::string::String>>()?
21661 .unwrap_or_default();
21662 }
21663 __FieldTag::__version => {
21664 if !fields.insert(__FieldTag::__version) {
21665 return std::result::Result::Err(A::Error::duplicate_field(
21666 "multiple values for version",
21667 ));
21668 }
21669 result.version = map
21670 .next_value::<std::option::Option<std::string::String>>()?
21671 .unwrap_or_default();
21672 }
21673 __FieldTag::__custom_core_count => {
21674 if !fields.insert(__FieldTag::__custom_core_count) {
21675 return std::result::Result::Err(A::Error::duplicate_field(
21676 "multiple values for custom_core_count",
21677 ));
21678 }
21679 struct __With(std::option::Option<i64>);
21680 impl<'de> serde::de::Deserialize<'de> for __With {
21681 fn deserialize<D>(
21682 deserializer: D,
21683 ) -> std::result::Result<Self, D::Error>
21684 where
21685 D: serde::de::Deserializer<'de>,
21686 {
21687 serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
21688 }
21689 }
21690 result.custom_core_count =
21691 map.next_value::<__With>()?.0.unwrap_or_default();
21692 }
21693 __FieldTag::__state => {
21694 if !fields.insert(__FieldTag::__state) {
21695 return std::result::Result::Err(A::Error::duplicate_field(
21696 "multiple values for state",
21697 ));
21698 }
21699 result.state = map
21700 .next_value::<std::option::Option<crate::model::node::State>>()?
21701 .unwrap_or_default();
21702 }
21703 __FieldTag::Unknown(key) => {
21704 let value = map.next_value::<serde_json::Value>()?;
21705 result._unknown_fields.insert(key, value);
21706 }
21707 }
21708 }
21709 std::result::Result::Ok(result)
21710 }
21711 }
21712 deserializer.deserialize_any(Visitor)
21713 }
21714}
21715
21716#[doc(hidden)]
21717impl serde::ser::Serialize for Node {
21718 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
21719 where
21720 S: serde::ser::Serializer,
21721 {
21722 use serde::ser::SerializeMap;
21723 #[allow(unused_imports)]
21724 use std::option::Option::Some;
21725 let mut state = serializer.serialize_map(std::option::Option::None)?;
21726 if !self.name.is_empty() {
21727 state.serialize_entry("name", &self.name)?;
21728 }
21729 if !self.fqdn.is_empty() {
21730 state.serialize_entry("fqdn", &self.fqdn)?;
21731 }
21732 if !self.internal_ip.is_empty() {
21733 state.serialize_entry("internalIp", &self.internal_ip)?;
21734 }
21735 if !self.node_type_id.is_empty() {
21736 state.serialize_entry("nodeTypeId", &self.node_type_id)?;
21737 }
21738 if !self.version.is_empty() {
21739 state.serialize_entry("version", &self.version)?;
21740 }
21741 if !wkt::internal::is_default(&self.custom_core_count) {
21742 struct __With<'a>(&'a i64);
21743 impl<'a> serde::ser::Serialize for __With<'a> {
21744 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
21745 where
21746 S: serde::ser::Serializer,
21747 {
21748 serde_with::As::<wkt::internal::I64>::serialize(self.0, serializer)
21749 }
21750 }
21751 state.serialize_entry("customCoreCount", &__With(&self.custom_core_count))?;
21752 }
21753 if !wkt::internal::is_default(&self.state) {
21754 state.serialize_entry("state", &self.state)?;
21755 }
21756 if !self._unknown_fields.is_empty() {
21757 for (key, value) in self._unknown_fields.iter() {
21758 state.serialize_entry(key, &value)?;
21759 }
21760 }
21761 state.end()
21762 }
21763}
21764
21765pub mod node {
21767 #[allow(unused_imports)]
21768 use super::*;
21769
21770 #[derive(Clone, Debug, PartialEq)]
21786 #[non_exhaustive]
21787 pub enum State {
21788 Unspecified,
21790 Active,
21792 Creating,
21794 Failed,
21796 Upgrading,
21798 UnknownValue(state::UnknownValue),
21803 }
21804
21805 #[doc(hidden)]
21806 pub mod state {
21807 #[allow(unused_imports)]
21808 use super::*;
21809 #[derive(Clone, Debug, PartialEq)]
21810 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
21811 }
21812
21813 impl State {
21814 pub fn value(&self) -> std::option::Option<i32> {
21819 match self {
21820 Self::Unspecified => std::option::Option::Some(0),
21821 Self::Active => std::option::Option::Some(1),
21822 Self::Creating => std::option::Option::Some(2),
21823 Self::Failed => std::option::Option::Some(3),
21824 Self::Upgrading => std::option::Option::Some(4),
21825 Self::UnknownValue(u) => u.0.value(),
21826 }
21827 }
21828
21829 pub fn name(&self) -> std::option::Option<&str> {
21834 match self {
21835 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
21836 Self::Active => std::option::Option::Some("ACTIVE"),
21837 Self::Creating => std::option::Option::Some("CREATING"),
21838 Self::Failed => std::option::Option::Some("FAILED"),
21839 Self::Upgrading => std::option::Option::Some("UPGRADING"),
21840 Self::UnknownValue(u) => u.0.name(),
21841 }
21842 }
21843 }
21844
21845 impl std::default::Default for State {
21846 fn default() -> Self {
21847 use std::convert::From;
21848 Self::from(0)
21849 }
21850 }
21851
21852 impl std::fmt::Display for State {
21853 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
21854 wkt::internal::display_enum(f, self.name(), self.value())
21855 }
21856 }
21857
21858 impl std::convert::From<i32> for State {
21859 fn from(value: i32) -> Self {
21860 match value {
21861 0 => Self::Unspecified,
21862 1 => Self::Active,
21863 2 => Self::Creating,
21864 3 => Self::Failed,
21865 4 => Self::Upgrading,
21866 _ => Self::UnknownValue(state::UnknownValue(
21867 wkt::internal::UnknownEnumValue::Integer(value),
21868 )),
21869 }
21870 }
21871 }
21872
21873 impl std::convert::From<&str> for State {
21874 fn from(value: &str) -> Self {
21875 use std::string::ToString;
21876 match value {
21877 "STATE_UNSPECIFIED" => Self::Unspecified,
21878 "ACTIVE" => Self::Active,
21879 "CREATING" => Self::Creating,
21880 "FAILED" => Self::Failed,
21881 "UPGRADING" => Self::Upgrading,
21882 _ => Self::UnknownValue(state::UnknownValue(
21883 wkt::internal::UnknownEnumValue::String(value.to_string()),
21884 )),
21885 }
21886 }
21887 }
21888
21889 impl serde::ser::Serialize for State {
21890 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
21891 where
21892 S: serde::Serializer,
21893 {
21894 match self {
21895 Self::Unspecified => serializer.serialize_i32(0),
21896 Self::Active => serializer.serialize_i32(1),
21897 Self::Creating => serializer.serialize_i32(2),
21898 Self::Failed => serializer.serialize_i32(3),
21899 Self::Upgrading => serializer.serialize_i32(4),
21900 Self::UnknownValue(u) => u.0.serialize(serializer),
21901 }
21902 }
21903 }
21904
21905 impl<'de> serde::de::Deserialize<'de> for State {
21906 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
21907 where
21908 D: serde::Deserializer<'de>,
21909 {
21910 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
21911 ".google.cloud.vmwareengine.v1.Node.State",
21912 ))
21913 }
21914 }
21915}
21916
21917#[derive(Clone, Debug, Default, PartialEq)]
21920#[non_exhaustive]
21921pub struct ExternalAddress {
21922 pub name: std::string::String,
21928
21929 pub create_time: std::option::Option<wkt::Timestamp>,
21931
21932 pub update_time: std::option::Option<wkt::Timestamp>,
21934
21935 pub internal_ip: std::string::String,
21937
21938 pub external_ip: std::string::String,
21940
21941 pub state: crate::model::external_address::State,
21943
21944 pub uid: std::string::String,
21946
21947 pub description: std::string::String,
21949
21950 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
21951}
21952
21953impl ExternalAddress {
21954 pub fn new() -> Self {
21955 std::default::Default::default()
21956 }
21957
21958 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
21960 self.name = v.into();
21961 self
21962 }
21963
21964 pub fn set_create_time<T>(mut self, v: T) -> Self
21966 where
21967 T: std::convert::Into<wkt::Timestamp>,
21968 {
21969 self.create_time = std::option::Option::Some(v.into());
21970 self
21971 }
21972
21973 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
21975 where
21976 T: std::convert::Into<wkt::Timestamp>,
21977 {
21978 self.create_time = v.map(|x| x.into());
21979 self
21980 }
21981
21982 pub fn set_update_time<T>(mut self, v: T) -> Self
21984 where
21985 T: std::convert::Into<wkt::Timestamp>,
21986 {
21987 self.update_time = std::option::Option::Some(v.into());
21988 self
21989 }
21990
21991 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
21993 where
21994 T: std::convert::Into<wkt::Timestamp>,
21995 {
21996 self.update_time = v.map(|x| x.into());
21997 self
21998 }
21999
22000 pub fn set_internal_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22002 self.internal_ip = v.into();
22003 self
22004 }
22005
22006 pub fn set_external_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22008 self.external_ip = v.into();
22009 self
22010 }
22011
22012 pub fn set_state<T: std::convert::Into<crate::model::external_address::State>>(
22014 mut self,
22015 v: T,
22016 ) -> Self {
22017 self.state = v.into();
22018 self
22019 }
22020
22021 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22023 self.uid = v.into();
22024 self
22025 }
22026
22027 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22029 self.description = v.into();
22030 self
22031 }
22032}
22033
22034impl wkt::message::Message for ExternalAddress {
22035 fn typename() -> &'static str {
22036 "type.googleapis.com/google.cloud.vmwareengine.v1.ExternalAddress"
22037 }
22038}
22039
22040#[doc(hidden)]
22041impl<'de> serde::de::Deserialize<'de> for ExternalAddress {
22042 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
22043 where
22044 D: serde::Deserializer<'de>,
22045 {
22046 #[allow(non_camel_case_types)]
22047 #[doc(hidden)]
22048 #[derive(PartialEq, Eq, Hash)]
22049 enum __FieldTag {
22050 __name,
22051 __create_time,
22052 __update_time,
22053 __internal_ip,
22054 __external_ip,
22055 __state,
22056 __uid,
22057 __description,
22058 Unknown(std::string::String),
22059 }
22060 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
22061 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
22062 where
22063 D: serde::Deserializer<'de>,
22064 {
22065 struct Visitor;
22066 impl<'de> serde::de::Visitor<'de> for Visitor {
22067 type Value = __FieldTag;
22068 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
22069 formatter.write_str("a field name for ExternalAddress")
22070 }
22071 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
22072 where
22073 E: serde::de::Error,
22074 {
22075 use std::result::Result::Ok;
22076 use std::string::ToString;
22077 match value {
22078 "name" => Ok(__FieldTag::__name),
22079 "createTime" => Ok(__FieldTag::__create_time),
22080 "create_time" => Ok(__FieldTag::__create_time),
22081 "updateTime" => Ok(__FieldTag::__update_time),
22082 "update_time" => Ok(__FieldTag::__update_time),
22083 "internalIp" => Ok(__FieldTag::__internal_ip),
22084 "internal_ip" => Ok(__FieldTag::__internal_ip),
22085 "externalIp" => Ok(__FieldTag::__external_ip),
22086 "external_ip" => Ok(__FieldTag::__external_ip),
22087 "state" => Ok(__FieldTag::__state),
22088 "uid" => Ok(__FieldTag::__uid),
22089 "description" => Ok(__FieldTag::__description),
22090 _ => Ok(__FieldTag::Unknown(value.to_string())),
22091 }
22092 }
22093 }
22094 deserializer.deserialize_identifier(Visitor)
22095 }
22096 }
22097 struct Visitor;
22098 impl<'de> serde::de::Visitor<'de> for Visitor {
22099 type Value = ExternalAddress;
22100 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
22101 formatter.write_str("struct ExternalAddress")
22102 }
22103 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
22104 where
22105 A: serde::de::MapAccess<'de>,
22106 {
22107 #[allow(unused_imports)]
22108 use serde::de::Error;
22109 use std::option::Option::Some;
22110 let mut fields = std::collections::HashSet::new();
22111 let mut result = Self::Value::new();
22112 while let Some(tag) = map.next_key::<__FieldTag>()? {
22113 #[allow(clippy::match_single_binding)]
22114 match tag {
22115 __FieldTag::__name => {
22116 if !fields.insert(__FieldTag::__name) {
22117 return std::result::Result::Err(A::Error::duplicate_field(
22118 "multiple values for name",
22119 ));
22120 }
22121 result.name = map
22122 .next_value::<std::option::Option<std::string::String>>()?
22123 .unwrap_or_default();
22124 }
22125 __FieldTag::__create_time => {
22126 if !fields.insert(__FieldTag::__create_time) {
22127 return std::result::Result::Err(A::Error::duplicate_field(
22128 "multiple values for create_time",
22129 ));
22130 }
22131 result.create_time =
22132 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
22133 }
22134 __FieldTag::__update_time => {
22135 if !fields.insert(__FieldTag::__update_time) {
22136 return std::result::Result::Err(A::Error::duplicate_field(
22137 "multiple values for update_time",
22138 ));
22139 }
22140 result.update_time =
22141 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
22142 }
22143 __FieldTag::__internal_ip => {
22144 if !fields.insert(__FieldTag::__internal_ip) {
22145 return std::result::Result::Err(A::Error::duplicate_field(
22146 "multiple values for internal_ip",
22147 ));
22148 }
22149 result.internal_ip = map
22150 .next_value::<std::option::Option<std::string::String>>()?
22151 .unwrap_or_default();
22152 }
22153 __FieldTag::__external_ip => {
22154 if !fields.insert(__FieldTag::__external_ip) {
22155 return std::result::Result::Err(A::Error::duplicate_field(
22156 "multiple values for external_ip",
22157 ));
22158 }
22159 result.external_ip = map
22160 .next_value::<std::option::Option<std::string::String>>()?
22161 .unwrap_or_default();
22162 }
22163 __FieldTag::__state => {
22164 if !fields.insert(__FieldTag::__state) {
22165 return std::result::Result::Err(A::Error::duplicate_field(
22166 "multiple values for state",
22167 ));
22168 }
22169 result.state = map.next_value::<std::option::Option<crate::model::external_address::State>>()?.unwrap_or_default();
22170 }
22171 __FieldTag::__uid => {
22172 if !fields.insert(__FieldTag::__uid) {
22173 return std::result::Result::Err(A::Error::duplicate_field(
22174 "multiple values for uid",
22175 ));
22176 }
22177 result.uid = map
22178 .next_value::<std::option::Option<std::string::String>>()?
22179 .unwrap_or_default();
22180 }
22181 __FieldTag::__description => {
22182 if !fields.insert(__FieldTag::__description) {
22183 return std::result::Result::Err(A::Error::duplicate_field(
22184 "multiple values for description",
22185 ));
22186 }
22187 result.description = map
22188 .next_value::<std::option::Option<std::string::String>>()?
22189 .unwrap_or_default();
22190 }
22191 __FieldTag::Unknown(key) => {
22192 let value = map.next_value::<serde_json::Value>()?;
22193 result._unknown_fields.insert(key, value);
22194 }
22195 }
22196 }
22197 std::result::Result::Ok(result)
22198 }
22199 }
22200 deserializer.deserialize_any(Visitor)
22201 }
22202}
22203
22204#[doc(hidden)]
22205impl serde::ser::Serialize for ExternalAddress {
22206 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
22207 where
22208 S: serde::ser::Serializer,
22209 {
22210 use serde::ser::SerializeMap;
22211 #[allow(unused_imports)]
22212 use std::option::Option::Some;
22213 let mut state = serializer.serialize_map(std::option::Option::None)?;
22214 if !self.name.is_empty() {
22215 state.serialize_entry("name", &self.name)?;
22216 }
22217 if self.create_time.is_some() {
22218 state.serialize_entry("createTime", &self.create_time)?;
22219 }
22220 if self.update_time.is_some() {
22221 state.serialize_entry("updateTime", &self.update_time)?;
22222 }
22223 if !self.internal_ip.is_empty() {
22224 state.serialize_entry("internalIp", &self.internal_ip)?;
22225 }
22226 if !self.external_ip.is_empty() {
22227 state.serialize_entry("externalIp", &self.external_ip)?;
22228 }
22229 if !wkt::internal::is_default(&self.state) {
22230 state.serialize_entry("state", &self.state)?;
22231 }
22232 if !self.uid.is_empty() {
22233 state.serialize_entry("uid", &self.uid)?;
22234 }
22235 if !self.description.is_empty() {
22236 state.serialize_entry("description", &self.description)?;
22237 }
22238 if !self._unknown_fields.is_empty() {
22239 for (key, value) in self._unknown_fields.iter() {
22240 state.serialize_entry(key, &value)?;
22241 }
22242 }
22243 state.end()
22244 }
22245}
22246
22247pub mod external_address {
22249 #[allow(unused_imports)]
22250 use super::*;
22251
22252 #[derive(Clone, Debug, PartialEq)]
22268 #[non_exhaustive]
22269 pub enum State {
22270 Unspecified,
22272 Active,
22274 Creating,
22276 Updating,
22278 Deleting,
22280 UnknownValue(state::UnknownValue),
22285 }
22286
22287 #[doc(hidden)]
22288 pub mod state {
22289 #[allow(unused_imports)]
22290 use super::*;
22291 #[derive(Clone, Debug, PartialEq)]
22292 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
22293 }
22294
22295 impl State {
22296 pub fn value(&self) -> std::option::Option<i32> {
22301 match self {
22302 Self::Unspecified => std::option::Option::Some(0),
22303 Self::Active => std::option::Option::Some(1),
22304 Self::Creating => std::option::Option::Some(2),
22305 Self::Updating => std::option::Option::Some(3),
22306 Self::Deleting => std::option::Option::Some(4),
22307 Self::UnknownValue(u) => u.0.value(),
22308 }
22309 }
22310
22311 pub fn name(&self) -> std::option::Option<&str> {
22316 match self {
22317 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
22318 Self::Active => std::option::Option::Some("ACTIVE"),
22319 Self::Creating => std::option::Option::Some("CREATING"),
22320 Self::Updating => std::option::Option::Some("UPDATING"),
22321 Self::Deleting => std::option::Option::Some("DELETING"),
22322 Self::UnknownValue(u) => u.0.name(),
22323 }
22324 }
22325 }
22326
22327 impl std::default::Default for State {
22328 fn default() -> Self {
22329 use std::convert::From;
22330 Self::from(0)
22331 }
22332 }
22333
22334 impl std::fmt::Display for State {
22335 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
22336 wkt::internal::display_enum(f, self.name(), self.value())
22337 }
22338 }
22339
22340 impl std::convert::From<i32> for State {
22341 fn from(value: i32) -> Self {
22342 match value {
22343 0 => Self::Unspecified,
22344 1 => Self::Active,
22345 2 => Self::Creating,
22346 3 => Self::Updating,
22347 4 => Self::Deleting,
22348 _ => Self::UnknownValue(state::UnknownValue(
22349 wkt::internal::UnknownEnumValue::Integer(value),
22350 )),
22351 }
22352 }
22353 }
22354
22355 impl std::convert::From<&str> for State {
22356 fn from(value: &str) -> Self {
22357 use std::string::ToString;
22358 match value {
22359 "STATE_UNSPECIFIED" => Self::Unspecified,
22360 "ACTIVE" => Self::Active,
22361 "CREATING" => Self::Creating,
22362 "UPDATING" => Self::Updating,
22363 "DELETING" => Self::Deleting,
22364 _ => Self::UnknownValue(state::UnknownValue(
22365 wkt::internal::UnknownEnumValue::String(value.to_string()),
22366 )),
22367 }
22368 }
22369 }
22370
22371 impl serde::ser::Serialize for State {
22372 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
22373 where
22374 S: serde::Serializer,
22375 {
22376 match self {
22377 Self::Unspecified => serializer.serialize_i32(0),
22378 Self::Active => serializer.serialize_i32(1),
22379 Self::Creating => serializer.serialize_i32(2),
22380 Self::Updating => serializer.serialize_i32(3),
22381 Self::Deleting => serializer.serialize_i32(4),
22382 Self::UnknownValue(u) => u.0.serialize(serializer),
22383 }
22384 }
22385 }
22386
22387 impl<'de> serde::de::Deserialize<'de> for State {
22388 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
22389 where
22390 D: serde::Deserializer<'de>,
22391 {
22392 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
22393 ".google.cloud.vmwareengine.v1.ExternalAddress.State",
22394 ))
22395 }
22396 }
22397}
22398
22399#[derive(Clone, Debug, Default, PartialEq)]
22402#[non_exhaustive]
22403pub struct Subnet {
22404 pub name: std::string::String,
22410
22411 pub ip_cidr_range: std::string::String,
22413
22414 pub gateway_ip: std::string::String,
22417
22418 pub r#type: std::string::String,
22421
22422 pub state: crate::model::subnet::State,
22424
22425 pub vlan_id: i32,
22427
22428 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
22429}
22430
22431impl Subnet {
22432 pub fn new() -> Self {
22433 std::default::Default::default()
22434 }
22435
22436 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22438 self.name = v.into();
22439 self
22440 }
22441
22442 pub fn set_ip_cidr_range<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22444 self.ip_cidr_range = v.into();
22445 self
22446 }
22447
22448 pub fn set_gateway_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22450 self.gateway_ip = v.into();
22451 self
22452 }
22453
22454 pub fn set_type<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22456 self.r#type = v.into();
22457 self
22458 }
22459
22460 pub fn set_state<T: std::convert::Into<crate::model::subnet::State>>(mut self, v: T) -> Self {
22462 self.state = v.into();
22463 self
22464 }
22465
22466 pub fn set_vlan_id<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
22468 self.vlan_id = v.into();
22469 self
22470 }
22471}
22472
22473impl wkt::message::Message for Subnet {
22474 fn typename() -> &'static str {
22475 "type.googleapis.com/google.cloud.vmwareengine.v1.Subnet"
22476 }
22477}
22478
22479#[doc(hidden)]
22480impl<'de> serde::de::Deserialize<'de> for Subnet {
22481 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
22482 where
22483 D: serde::Deserializer<'de>,
22484 {
22485 #[allow(non_camel_case_types)]
22486 #[doc(hidden)]
22487 #[derive(PartialEq, Eq, Hash)]
22488 enum __FieldTag {
22489 __name,
22490 __ip_cidr_range,
22491 __gateway_ip,
22492 __type,
22493 __state,
22494 __vlan_id,
22495 Unknown(std::string::String),
22496 }
22497 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
22498 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
22499 where
22500 D: serde::Deserializer<'de>,
22501 {
22502 struct Visitor;
22503 impl<'de> serde::de::Visitor<'de> for Visitor {
22504 type Value = __FieldTag;
22505 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
22506 formatter.write_str("a field name for Subnet")
22507 }
22508 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
22509 where
22510 E: serde::de::Error,
22511 {
22512 use std::result::Result::Ok;
22513 use std::string::ToString;
22514 match value {
22515 "name" => Ok(__FieldTag::__name),
22516 "ipCidrRange" => Ok(__FieldTag::__ip_cidr_range),
22517 "ip_cidr_range" => Ok(__FieldTag::__ip_cidr_range),
22518 "gatewayIp" => Ok(__FieldTag::__gateway_ip),
22519 "gateway_ip" => Ok(__FieldTag::__gateway_ip),
22520 "type" => Ok(__FieldTag::__type),
22521 "state" => Ok(__FieldTag::__state),
22522 "vlanId" => Ok(__FieldTag::__vlan_id),
22523 "vlan_id" => Ok(__FieldTag::__vlan_id),
22524 _ => Ok(__FieldTag::Unknown(value.to_string())),
22525 }
22526 }
22527 }
22528 deserializer.deserialize_identifier(Visitor)
22529 }
22530 }
22531 struct Visitor;
22532 impl<'de> serde::de::Visitor<'de> for Visitor {
22533 type Value = Subnet;
22534 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
22535 formatter.write_str("struct Subnet")
22536 }
22537 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
22538 where
22539 A: serde::de::MapAccess<'de>,
22540 {
22541 #[allow(unused_imports)]
22542 use serde::de::Error;
22543 use std::option::Option::Some;
22544 let mut fields = std::collections::HashSet::new();
22545 let mut result = Self::Value::new();
22546 while let Some(tag) = map.next_key::<__FieldTag>()? {
22547 #[allow(clippy::match_single_binding)]
22548 match tag {
22549 __FieldTag::__name => {
22550 if !fields.insert(__FieldTag::__name) {
22551 return std::result::Result::Err(A::Error::duplicate_field(
22552 "multiple values for name",
22553 ));
22554 }
22555 result.name = map
22556 .next_value::<std::option::Option<std::string::String>>()?
22557 .unwrap_or_default();
22558 }
22559 __FieldTag::__ip_cidr_range => {
22560 if !fields.insert(__FieldTag::__ip_cidr_range) {
22561 return std::result::Result::Err(A::Error::duplicate_field(
22562 "multiple values for ip_cidr_range",
22563 ));
22564 }
22565 result.ip_cidr_range = map
22566 .next_value::<std::option::Option<std::string::String>>()?
22567 .unwrap_or_default();
22568 }
22569 __FieldTag::__gateway_ip => {
22570 if !fields.insert(__FieldTag::__gateway_ip) {
22571 return std::result::Result::Err(A::Error::duplicate_field(
22572 "multiple values for gateway_ip",
22573 ));
22574 }
22575 result.gateway_ip = map
22576 .next_value::<std::option::Option<std::string::String>>()?
22577 .unwrap_or_default();
22578 }
22579 __FieldTag::__type => {
22580 if !fields.insert(__FieldTag::__type) {
22581 return std::result::Result::Err(A::Error::duplicate_field(
22582 "multiple values for type",
22583 ));
22584 }
22585 result.r#type = map
22586 .next_value::<std::option::Option<std::string::String>>()?
22587 .unwrap_or_default();
22588 }
22589 __FieldTag::__state => {
22590 if !fields.insert(__FieldTag::__state) {
22591 return std::result::Result::Err(A::Error::duplicate_field(
22592 "multiple values for state",
22593 ));
22594 }
22595 result.state = map
22596 .next_value::<std::option::Option<crate::model::subnet::State>>()?
22597 .unwrap_or_default();
22598 }
22599 __FieldTag::__vlan_id => {
22600 if !fields.insert(__FieldTag::__vlan_id) {
22601 return std::result::Result::Err(A::Error::duplicate_field(
22602 "multiple values for vlan_id",
22603 ));
22604 }
22605 struct __With(std::option::Option<i32>);
22606 impl<'de> serde::de::Deserialize<'de> for __With {
22607 fn deserialize<D>(
22608 deserializer: D,
22609 ) -> std::result::Result<Self, D::Error>
22610 where
22611 D: serde::de::Deserializer<'de>,
22612 {
22613 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
22614 }
22615 }
22616 result.vlan_id = map.next_value::<__With>()?.0.unwrap_or_default();
22617 }
22618 __FieldTag::Unknown(key) => {
22619 let value = map.next_value::<serde_json::Value>()?;
22620 result._unknown_fields.insert(key, value);
22621 }
22622 }
22623 }
22624 std::result::Result::Ok(result)
22625 }
22626 }
22627 deserializer.deserialize_any(Visitor)
22628 }
22629}
22630
22631#[doc(hidden)]
22632impl serde::ser::Serialize for Subnet {
22633 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
22634 where
22635 S: serde::ser::Serializer,
22636 {
22637 use serde::ser::SerializeMap;
22638 #[allow(unused_imports)]
22639 use std::option::Option::Some;
22640 let mut state = serializer.serialize_map(std::option::Option::None)?;
22641 if !self.name.is_empty() {
22642 state.serialize_entry("name", &self.name)?;
22643 }
22644 if !self.ip_cidr_range.is_empty() {
22645 state.serialize_entry("ipCidrRange", &self.ip_cidr_range)?;
22646 }
22647 if !self.gateway_ip.is_empty() {
22648 state.serialize_entry("gatewayIp", &self.gateway_ip)?;
22649 }
22650 if !self.r#type.is_empty() {
22651 state.serialize_entry("type", &self.r#type)?;
22652 }
22653 if !wkt::internal::is_default(&self.state) {
22654 state.serialize_entry("state", &self.state)?;
22655 }
22656 if !wkt::internal::is_default(&self.vlan_id) {
22657 struct __With<'a>(&'a i32);
22658 impl<'a> serde::ser::Serialize for __With<'a> {
22659 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
22660 where
22661 S: serde::ser::Serializer,
22662 {
22663 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
22664 }
22665 }
22666 state.serialize_entry("vlanId", &__With(&self.vlan_id))?;
22667 }
22668 if !self._unknown_fields.is_empty() {
22669 for (key, value) in self._unknown_fields.iter() {
22670 state.serialize_entry(key, &value)?;
22671 }
22672 }
22673 state.end()
22674 }
22675}
22676
22677pub mod subnet {
22679 #[allow(unused_imports)]
22680 use super::*;
22681
22682 #[derive(Clone, Debug, PartialEq)]
22698 #[non_exhaustive]
22699 pub enum State {
22700 Unspecified,
22702 Active,
22704 Creating,
22706 Updating,
22708 Deleting,
22710 Reconciling,
22712 Failed,
22715 UnknownValue(state::UnknownValue),
22720 }
22721
22722 #[doc(hidden)]
22723 pub mod state {
22724 #[allow(unused_imports)]
22725 use super::*;
22726 #[derive(Clone, Debug, PartialEq)]
22727 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
22728 }
22729
22730 impl State {
22731 pub fn value(&self) -> std::option::Option<i32> {
22736 match self {
22737 Self::Unspecified => std::option::Option::Some(0),
22738 Self::Active => std::option::Option::Some(1),
22739 Self::Creating => std::option::Option::Some(2),
22740 Self::Updating => std::option::Option::Some(3),
22741 Self::Deleting => std::option::Option::Some(4),
22742 Self::Reconciling => std::option::Option::Some(5),
22743 Self::Failed => std::option::Option::Some(6),
22744 Self::UnknownValue(u) => u.0.value(),
22745 }
22746 }
22747
22748 pub fn name(&self) -> std::option::Option<&str> {
22753 match self {
22754 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
22755 Self::Active => std::option::Option::Some("ACTIVE"),
22756 Self::Creating => std::option::Option::Some("CREATING"),
22757 Self::Updating => std::option::Option::Some("UPDATING"),
22758 Self::Deleting => std::option::Option::Some("DELETING"),
22759 Self::Reconciling => std::option::Option::Some("RECONCILING"),
22760 Self::Failed => std::option::Option::Some("FAILED"),
22761 Self::UnknownValue(u) => u.0.name(),
22762 }
22763 }
22764 }
22765
22766 impl std::default::Default for State {
22767 fn default() -> Self {
22768 use std::convert::From;
22769 Self::from(0)
22770 }
22771 }
22772
22773 impl std::fmt::Display for State {
22774 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
22775 wkt::internal::display_enum(f, self.name(), self.value())
22776 }
22777 }
22778
22779 impl std::convert::From<i32> for State {
22780 fn from(value: i32) -> Self {
22781 match value {
22782 0 => Self::Unspecified,
22783 1 => Self::Active,
22784 2 => Self::Creating,
22785 3 => Self::Updating,
22786 4 => Self::Deleting,
22787 5 => Self::Reconciling,
22788 6 => Self::Failed,
22789 _ => Self::UnknownValue(state::UnknownValue(
22790 wkt::internal::UnknownEnumValue::Integer(value),
22791 )),
22792 }
22793 }
22794 }
22795
22796 impl std::convert::From<&str> for State {
22797 fn from(value: &str) -> Self {
22798 use std::string::ToString;
22799 match value {
22800 "STATE_UNSPECIFIED" => Self::Unspecified,
22801 "ACTIVE" => Self::Active,
22802 "CREATING" => Self::Creating,
22803 "UPDATING" => Self::Updating,
22804 "DELETING" => Self::Deleting,
22805 "RECONCILING" => Self::Reconciling,
22806 "FAILED" => Self::Failed,
22807 _ => Self::UnknownValue(state::UnknownValue(
22808 wkt::internal::UnknownEnumValue::String(value.to_string()),
22809 )),
22810 }
22811 }
22812 }
22813
22814 impl serde::ser::Serialize for State {
22815 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
22816 where
22817 S: serde::Serializer,
22818 {
22819 match self {
22820 Self::Unspecified => serializer.serialize_i32(0),
22821 Self::Active => serializer.serialize_i32(1),
22822 Self::Creating => serializer.serialize_i32(2),
22823 Self::Updating => serializer.serialize_i32(3),
22824 Self::Deleting => serializer.serialize_i32(4),
22825 Self::Reconciling => serializer.serialize_i32(5),
22826 Self::Failed => serializer.serialize_i32(6),
22827 Self::UnknownValue(u) => u.0.serialize(serializer),
22828 }
22829 }
22830 }
22831
22832 impl<'de> serde::de::Deserialize<'de> for State {
22833 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
22834 where
22835 D: serde::Deserializer<'de>,
22836 {
22837 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
22838 ".google.cloud.vmwareengine.v1.Subnet.State",
22839 ))
22840 }
22841 }
22842}
22843
22844#[derive(Clone, Debug, Default, PartialEq)]
22847#[non_exhaustive]
22848pub struct ExternalAccessRule {
22849 pub name: std::string::String,
22855
22856 pub create_time: std::option::Option<wkt::Timestamp>,
22858
22859 pub update_time: std::option::Option<wkt::Timestamp>,
22861
22862 pub description: std::string::String,
22864
22865 pub priority: i32,
22873
22874 pub action: crate::model::external_access_rule::Action,
22876
22877 pub ip_protocol: std::string::String,
22881
22882 pub source_ip_ranges: std::vec::Vec<crate::model::external_access_rule::IpRange>,
22889
22890 pub source_ports: std::vec::Vec<std::string::String>,
22896
22897 pub destination_ip_ranges: std::vec::Vec<crate::model::external_access_rule::IpRange>,
22905
22906 pub destination_ports: std::vec::Vec<std::string::String>,
22912
22913 pub state: crate::model::external_access_rule::State,
22915
22916 pub uid: std::string::String,
22918
22919 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
22920}
22921
22922impl ExternalAccessRule {
22923 pub fn new() -> Self {
22924 std::default::Default::default()
22925 }
22926
22927 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22929 self.name = v.into();
22930 self
22931 }
22932
22933 pub fn set_create_time<T>(mut self, v: T) -> Self
22935 where
22936 T: std::convert::Into<wkt::Timestamp>,
22937 {
22938 self.create_time = std::option::Option::Some(v.into());
22939 self
22940 }
22941
22942 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
22944 where
22945 T: std::convert::Into<wkt::Timestamp>,
22946 {
22947 self.create_time = v.map(|x| x.into());
22948 self
22949 }
22950
22951 pub fn set_update_time<T>(mut self, v: T) -> Self
22953 where
22954 T: std::convert::Into<wkt::Timestamp>,
22955 {
22956 self.update_time = std::option::Option::Some(v.into());
22957 self
22958 }
22959
22960 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
22962 where
22963 T: std::convert::Into<wkt::Timestamp>,
22964 {
22965 self.update_time = v.map(|x| x.into());
22966 self
22967 }
22968
22969 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22971 self.description = v.into();
22972 self
22973 }
22974
22975 pub fn set_priority<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
22977 self.priority = v.into();
22978 self
22979 }
22980
22981 pub fn set_action<T: std::convert::Into<crate::model::external_access_rule::Action>>(
22983 mut self,
22984 v: T,
22985 ) -> Self {
22986 self.action = v.into();
22987 self
22988 }
22989
22990 pub fn set_ip_protocol<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
22992 self.ip_protocol = v.into();
22993 self
22994 }
22995
22996 pub fn set_source_ip_ranges<T, V>(mut self, v: T) -> Self
22998 where
22999 T: std::iter::IntoIterator<Item = V>,
23000 V: std::convert::Into<crate::model::external_access_rule::IpRange>,
23001 {
23002 use std::iter::Iterator;
23003 self.source_ip_ranges = v.into_iter().map(|i| i.into()).collect();
23004 self
23005 }
23006
23007 pub fn set_source_ports<T, V>(mut self, v: T) -> Self
23009 where
23010 T: std::iter::IntoIterator<Item = V>,
23011 V: std::convert::Into<std::string::String>,
23012 {
23013 use std::iter::Iterator;
23014 self.source_ports = v.into_iter().map(|i| i.into()).collect();
23015 self
23016 }
23017
23018 pub fn set_destination_ip_ranges<T, V>(mut self, v: T) -> Self
23020 where
23021 T: std::iter::IntoIterator<Item = V>,
23022 V: std::convert::Into<crate::model::external_access_rule::IpRange>,
23023 {
23024 use std::iter::Iterator;
23025 self.destination_ip_ranges = v.into_iter().map(|i| i.into()).collect();
23026 self
23027 }
23028
23029 pub fn set_destination_ports<T, V>(mut self, v: T) -> Self
23031 where
23032 T: std::iter::IntoIterator<Item = V>,
23033 V: std::convert::Into<std::string::String>,
23034 {
23035 use std::iter::Iterator;
23036 self.destination_ports = v.into_iter().map(|i| i.into()).collect();
23037 self
23038 }
23039
23040 pub fn set_state<T: std::convert::Into<crate::model::external_access_rule::State>>(
23042 mut self,
23043 v: T,
23044 ) -> Self {
23045 self.state = v.into();
23046 self
23047 }
23048
23049 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
23051 self.uid = v.into();
23052 self
23053 }
23054}
23055
23056impl wkt::message::Message for ExternalAccessRule {
23057 fn typename() -> &'static str {
23058 "type.googleapis.com/google.cloud.vmwareengine.v1.ExternalAccessRule"
23059 }
23060}
23061
23062#[doc(hidden)]
23063impl<'de> serde::de::Deserialize<'de> for ExternalAccessRule {
23064 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
23065 where
23066 D: serde::Deserializer<'de>,
23067 {
23068 #[allow(non_camel_case_types)]
23069 #[doc(hidden)]
23070 #[derive(PartialEq, Eq, Hash)]
23071 enum __FieldTag {
23072 __name,
23073 __create_time,
23074 __update_time,
23075 __description,
23076 __priority,
23077 __action,
23078 __ip_protocol,
23079 __source_ip_ranges,
23080 __source_ports,
23081 __destination_ip_ranges,
23082 __destination_ports,
23083 __state,
23084 __uid,
23085 Unknown(std::string::String),
23086 }
23087 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
23088 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
23089 where
23090 D: serde::Deserializer<'de>,
23091 {
23092 struct Visitor;
23093 impl<'de> serde::de::Visitor<'de> for Visitor {
23094 type Value = __FieldTag;
23095 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
23096 formatter.write_str("a field name for ExternalAccessRule")
23097 }
23098 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
23099 where
23100 E: serde::de::Error,
23101 {
23102 use std::result::Result::Ok;
23103 use std::string::ToString;
23104 match value {
23105 "name" => Ok(__FieldTag::__name),
23106 "createTime" => Ok(__FieldTag::__create_time),
23107 "create_time" => Ok(__FieldTag::__create_time),
23108 "updateTime" => Ok(__FieldTag::__update_time),
23109 "update_time" => Ok(__FieldTag::__update_time),
23110 "description" => Ok(__FieldTag::__description),
23111 "priority" => Ok(__FieldTag::__priority),
23112 "action" => Ok(__FieldTag::__action),
23113 "ipProtocol" => Ok(__FieldTag::__ip_protocol),
23114 "ip_protocol" => Ok(__FieldTag::__ip_protocol),
23115 "sourceIpRanges" => Ok(__FieldTag::__source_ip_ranges),
23116 "source_ip_ranges" => Ok(__FieldTag::__source_ip_ranges),
23117 "sourcePorts" => Ok(__FieldTag::__source_ports),
23118 "source_ports" => Ok(__FieldTag::__source_ports),
23119 "destinationIpRanges" => Ok(__FieldTag::__destination_ip_ranges),
23120 "destination_ip_ranges" => Ok(__FieldTag::__destination_ip_ranges),
23121 "destinationPorts" => Ok(__FieldTag::__destination_ports),
23122 "destination_ports" => Ok(__FieldTag::__destination_ports),
23123 "state" => Ok(__FieldTag::__state),
23124 "uid" => Ok(__FieldTag::__uid),
23125 _ => Ok(__FieldTag::Unknown(value.to_string())),
23126 }
23127 }
23128 }
23129 deserializer.deserialize_identifier(Visitor)
23130 }
23131 }
23132 struct Visitor;
23133 impl<'de> serde::de::Visitor<'de> for Visitor {
23134 type Value = ExternalAccessRule;
23135 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
23136 formatter.write_str("struct ExternalAccessRule")
23137 }
23138 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
23139 where
23140 A: serde::de::MapAccess<'de>,
23141 {
23142 #[allow(unused_imports)]
23143 use serde::de::Error;
23144 use std::option::Option::Some;
23145 let mut fields = std::collections::HashSet::new();
23146 let mut result = Self::Value::new();
23147 while let Some(tag) = map.next_key::<__FieldTag>()? {
23148 #[allow(clippy::match_single_binding)]
23149 match tag {
23150 __FieldTag::__name => {
23151 if !fields.insert(__FieldTag::__name) {
23152 return std::result::Result::Err(A::Error::duplicate_field(
23153 "multiple values for name",
23154 ));
23155 }
23156 result.name = map
23157 .next_value::<std::option::Option<std::string::String>>()?
23158 .unwrap_or_default();
23159 }
23160 __FieldTag::__create_time => {
23161 if !fields.insert(__FieldTag::__create_time) {
23162 return std::result::Result::Err(A::Error::duplicate_field(
23163 "multiple values for create_time",
23164 ));
23165 }
23166 result.create_time =
23167 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
23168 }
23169 __FieldTag::__update_time => {
23170 if !fields.insert(__FieldTag::__update_time) {
23171 return std::result::Result::Err(A::Error::duplicate_field(
23172 "multiple values for update_time",
23173 ));
23174 }
23175 result.update_time =
23176 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
23177 }
23178 __FieldTag::__description => {
23179 if !fields.insert(__FieldTag::__description) {
23180 return std::result::Result::Err(A::Error::duplicate_field(
23181 "multiple values for description",
23182 ));
23183 }
23184 result.description = map
23185 .next_value::<std::option::Option<std::string::String>>()?
23186 .unwrap_or_default();
23187 }
23188 __FieldTag::__priority => {
23189 if !fields.insert(__FieldTag::__priority) {
23190 return std::result::Result::Err(A::Error::duplicate_field(
23191 "multiple values for priority",
23192 ));
23193 }
23194 struct __With(std::option::Option<i32>);
23195 impl<'de> serde::de::Deserialize<'de> for __With {
23196 fn deserialize<D>(
23197 deserializer: D,
23198 ) -> std::result::Result<Self, D::Error>
23199 where
23200 D: serde::de::Deserializer<'de>,
23201 {
23202 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
23203 }
23204 }
23205 result.priority = map.next_value::<__With>()?.0.unwrap_or_default();
23206 }
23207 __FieldTag::__action => {
23208 if !fields.insert(__FieldTag::__action) {
23209 return std::result::Result::Err(A::Error::duplicate_field(
23210 "multiple values for action",
23211 ));
23212 }
23213 result.action = map.next_value::<std::option::Option<crate::model::external_access_rule::Action>>()?.unwrap_or_default();
23214 }
23215 __FieldTag::__ip_protocol => {
23216 if !fields.insert(__FieldTag::__ip_protocol) {
23217 return std::result::Result::Err(A::Error::duplicate_field(
23218 "multiple values for ip_protocol",
23219 ));
23220 }
23221 result.ip_protocol = map
23222 .next_value::<std::option::Option<std::string::String>>()?
23223 .unwrap_or_default();
23224 }
23225 __FieldTag::__source_ip_ranges => {
23226 if !fields.insert(__FieldTag::__source_ip_ranges) {
23227 return std::result::Result::Err(A::Error::duplicate_field(
23228 "multiple values for source_ip_ranges",
23229 ));
23230 }
23231 result.source_ip_ranges = map
23232 .next_value::<std::option::Option<
23233 std::vec::Vec<crate::model::external_access_rule::IpRange>,
23234 >>()?
23235 .unwrap_or_default();
23236 }
23237 __FieldTag::__source_ports => {
23238 if !fields.insert(__FieldTag::__source_ports) {
23239 return std::result::Result::Err(A::Error::duplicate_field(
23240 "multiple values for source_ports",
23241 ));
23242 }
23243 result.source_ports = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
23244 }
23245 __FieldTag::__destination_ip_ranges => {
23246 if !fields.insert(__FieldTag::__destination_ip_ranges) {
23247 return std::result::Result::Err(A::Error::duplicate_field(
23248 "multiple values for destination_ip_ranges",
23249 ));
23250 }
23251 result.destination_ip_ranges = map
23252 .next_value::<std::option::Option<
23253 std::vec::Vec<crate::model::external_access_rule::IpRange>,
23254 >>()?
23255 .unwrap_or_default();
23256 }
23257 __FieldTag::__destination_ports => {
23258 if !fields.insert(__FieldTag::__destination_ports) {
23259 return std::result::Result::Err(A::Error::duplicate_field(
23260 "multiple values for destination_ports",
23261 ));
23262 }
23263 result.destination_ports = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
23264 }
23265 __FieldTag::__state => {
23266 if !fields.insert(__FieldTag::__state) {
23267 return std::result::Result::Err(A::Error::duplicate_field(
23268 "multiple values for state",
23269 ));
23270 }
23271 result.state = map.next_value::<std::option::Option<crate::model::external_access_rule::State>>()?.unwrap_or_default();
23272 }
23273 __FieldTag::__uid => {
23274 if !fields.insert(__FieldTag::__uid) {
23275 return std::result::Result::Err(A::Error::duplicate_field(
23276 "multiple values for uid",
23277 ));
23278 }
23279 result.uid = map
23280 .next_value::<std::option::Option<std::string::String>>()?
23281 .unwrap_or_default();
23282 }
23283 __FieldTag::Unknown(key) => {
23284 let value = map.next_value::<serde_json::Value>()?;
23285 result._unknown_fields.insert(key, value);
23286 }
23287 }
23288 }
23289 std::result::Result::Ok(result)
23290 }
23291 }
23292 deserializer.deserialize_any(Visitor)
23293 }
23294}
23295
23296#[doc(hidden)]
23297impl serde::ser::Serialize for ExternalAccessRule {
23298 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
23299 where
23300 S: serde::ser::Serializer,
23301 {
23302 use serde::ser::SerializeMap;
23303 #[allow(unused_imports)]
23304 use std::option::Option::Some;
23305 let mut state = serializer.serialize_map(std::option::Option::None)?;
23306 if !self.name.is_empty() {
23307 state.serialize_entry("name", &self.name)?;
23308 }
23309 if self.create_time.is_some() {
23310 state.serialize_entry("createTime", &self.create_time)?;
23311 }
23312 if self.update_time.is_some() {
23313 state.serialize_entry("updateTime", &self.update_time)?;
23314 }
23315 if !self.description.is_empty() {
23316 state.serialize_entry("description", &self.description)?;
23317 }
23318 if !wkt::internal::is_default(&self.priority) {
23319 struct __With<'a>(&'a i32);
23320 impl<'a> serde::ser::Serialize for __With<'a> {
23321 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
23322 where
23323 S: serde::ser::Serializer,
23324 {
23325 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
23326 }
23327 }
23328 state.serialize_entry("priority", &__With(&self.priority))?;
23329 }
23330 if !wkt::internal::is_default(&self.action) {
23331 state.serialize_entry("action", &self.action)?;
23332 }
23333 if !self.ip_protocol.is_empty() {
23334 state.serialize_entry("ipProtocol", &self.ip_protocol)?;
23335 }
23336 if !self.source_ip_ranges.is_empty() {
23337 state.serialize_entry("sourceIpRanges", &self.source_ip_ranges)?;
23338 }
23339 if !self.source_ports.is_empty() {
23340 state.serialize_entry("sourcePorts", &self.source_ports)?;
23341 }
23342 if !self.destination_ip_ranges.is_empty() {
23343 state.serialize_entry("destinationIpRanges", &self.destination_ip_ranges)?;
23344 }
23345 if !self.destination_ports.is_empty() {
23346 state.serialize_entry("destinationPorts", &self.destination_ports)?;
23347 }
23348 if !wkt::internal::is_default(&self.state) {
23349 state.serialize_entry("state", &self.state)?;
23350 }
23351 if !self.uid.is_empty() {
23352 state.serialize_entry("uid", &self.uid)?;
23353 }
23354 if !self._unknown_fields.is_empty() {
23355 for (key, value) in self._unknown_fields.iter() {
23356 state.serialize_entry(key, &value)?;
23357 }
23358 }
23359 state.end()
23360 }
23361}
23362
23363pub mod external_access_rule {
23365 #[allow(unused_imports)]
23366 use super::*;
23367
23368 #[derive(Clone, Debug, Default, PartialEq)]
23370 #[non_exhaustive]
23371 pub struct IpRange {
23372 pub ip_range: std::option::Option<crate::model::external_access_rule::ip_range::IpRange>,
23373
23374 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
23375 }
23376
23377 impl IpRange {
23378 pub fn new() -> Self {
23379 std::default::Default::default()
23380 }
23381
23382 pub fn set_ip_range<
23387 T: std::convert::Into<
23388 std::option::Option<crate::model::external_access_rule::ip_range::IpRange>,
23389 >,
23390 >(
23391 mut self,
23392 v: T,
23393 ) -> Self {
23394 self.ip_range = v.into();
23395 self
23396 }
23397
23398 pub fn ip_address(&self) -> std::option::Option<&std::string::String> {
23402 #[allow(unreachable_patterns)]
23403 self.ip_range.as_ref().and_then(|v| match v {
23404 crate::model::external_access_rule::ip_range::IpRange::IpAddress(v) => {
23405 std::option::Option::Some(v)
23406 }
23407 _ => std::option::Option::None,
23408 })
23409 }
23410
23411 pub fn set_ip_address<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
23417 self.ip_range = std::option::Option::Some(
23418 crate::model::external_access_rule::ip_range::IpRange::IpAddress(v.into()),
23419 );
23420 self
23421 }
23422
23423 pub fn ip_address_range(&self) -> std::option::Option<&std::string::String> {
23427 #[allow(unreachable_patterns)]
23428 self.ip_range.as_ref().and_then(|v| match v {
23429 crate::model::external_access_rule::ip_range::IpRange::IpAddressRange(v) => {
23430 std::option::Option::Some(v)
23431 }
23432 _ => std::option::Option::None,
23433 })
23434 }
23435
23436 pub fn set_ip_address_range<T: std::convert::Into<std::string::String>>(
23442 mut self,
23443 v: T,
23444 ) -> Self {
23445 self.ip_range = std::option::Option::Some(
23446 crate::model::external_access_rule::ip_range::IpRange::IpAddressRange(v.into()),
23447 );
23448 self
23449 }
23450
23451 pub fn external_address(&self) -> std::option::Option<&std::string::String> {
23455 #[allow(unreachable_patterns)]
23456 self.ip_range.as_ref().and_then(|v| match v {
23457 crate::model::external_access_rule::ip_range::IpRange::ExternalAddress(v) => {
23458 std::option::Option::Some(v)
23459 }
23460 _ => std::option::Option::None,
23461 })
23462 }
23463
23464 pub fn set_external_address<T: std::convert::Into<std::string::String>>(
23470 mut self,
23471 v: T,
23472 ) -> Self {
23473 self.ip_range = std::option::Option::Some(
23474 crate::model::external_access_rule::ip_range::IpRange::ExternalAddress(v.into()),
23475 );
23476 self
23477 }
23478 }
23479
23480 impl wkt::message::Message for IpRange {
23481 fn typename() -> &'static str {
23482 "type.googleapis.com/google.cloud.vmwareengine.v1.ExternalAccessRule.IpRange"
23483 }
23484 }
23485
23486 #[doc(hidden)]
23487 impl<'de> serde::de::Deserialize<'de> for IpRange {
23488 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
23489 where
23490 D: serde::Deserializer<'de>,
23491 {
23492 #[allow(non_camel_case_types)]
23493 #[doc(hidden)]
23494 #[derive(PartialEq, Eq, Hash)]
23495 enum __FieldTag {
23496 __ip_address,
23497 __ip_address_range,
23498 __external_address,
23499 Unknown(std::string::String),
23500 }
23501 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
23502 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
23503 where
23504 D: serde::Deserializer<'de>,
23505 {
23506 struct Visitor;
23507 impl<'de> serde::de::Visitor<'de> for Visitor {
23508 type Value = __FieldTag;
23509 fn expecting(
23510 &self,
23511 formatter: &mut std::fmt::Formatter,
23512 ) -> std::fmt::Result {
23513 formatter.write_str("a field name for IpRange")
23514 }
23515 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
23516 where
23517 E: serde::de::Error,
23518 {
23519 use std::result::Result::Ok;
23520 use std::string::ToString;
23521 match value {
23522 "ipAddress" => Ok(__FieldTag::__ip_address),
23523 "ip_address" => Ok(__FieldTag::__ip_address),
23524 "ipAddressRange" => Ok(__FieldTag::__ip_address_range),
23525 "ip_address_range" => Ok(__FieldTag::__ip_address_range),
23526 "externalAddress" => Ok(__FieldTag::__external_address),
23527 "external_address" => Ok(__FieldTag::__external_address),
23528 _ => Ok(__FieldTag::Unknown(value.to_string())),
23529 }
23530 }
23531 }
23532 deserializer.deserialize_identifier(Visitor)
23533 }
23534 }
23535 struct Visitor;
23536 impl<'de> serde::de::Visitor<'de> for Visitor {
23537 type Value = IpRange;
23538 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
23539 formatter.write_str("struct IpRange")
23540 }
23541 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
23542 where
23543 A: serde::de::MapAccess<'de>,
23544 {
23545 #[allow(unused_imports)]
23546 use serde::de::Error;
23547 use std::option::Option::Some;
23548 let mut fields = std::collections::HashSet::new();
23549 let mut result = Self::Value::new();
23550 while let Some(tag) = map.next_key::<__FieldTag>()? {
23551 #[allow(clippy::match_single_binding)]
23552 match tag {
23553 __FieldTag::__ip_address => {
23554 if !fields.insert(__FieldTag::__ip_address) {
23555 return std::result::Result::Err(A::Error::duplicate_field(
23556 "multiple values for ip_address",
23557 ));
23558 }
23559 if result.ip_range.is_some() {
23560 return std::result::Result::Err(A::Error::duplicate_field(
23561 "multiple values for `ip_range`, a oneof with full ID .google.cloud.vmwareengine.v1.ExternalAccessRule.IpRange.ip_address, latest field was ipAddress",
23562 ));
23563 }
23564 result.ip_range = std::option::Option::Some(
23565 crate::model::external_access_rule::ip_range::IpRange::IpAddress(
23566 map.next_value::<std::option::Option<std::string::String>>()?.unwrap_or_default()
23567 ),
23568 );
23569 }
23570 __FieldTag::__ip_address_range => {
23571 if !fields.insert(__FieldTag::__ip_address_range) {
23572 return std::result::Result::Err(A::Error::duplicate_field(
23573 "multiple values for ip_address_range",
23574 ));
23575 }
23576 if result.ip_range.is_some() {
23577 return std::result::Result::Err(A::Error::duplicate_field(
23578 "multiple values for `ip_range`, a oneof with full ID .google.cloud.vmwareengine.v1.ExternalAccessRule.IpRange.ip_address_range, latest field was ipAddressRange",
23579 ));
23580 }
23581 result.ip_range = std::option::Option::Some(
23582 crate::model::external_access_rule::ip_range::IpRange::IpAddressRange(
23583 map.next_value::<std::option::Option<std::string::String>>()?.unwrap_or_default()
23584 ),
23585 );
23586 }
23587 __FieldTag::__external_address => {
23588 if !fields.insert(__FieldTag::__external_address) {
23589 return std::result::Result::Err(A::Error::duplicate_field(
23590 "multiple values for external_address",
23591 ));
23592 }
23593 if result.ip_range.is_some() {
23594 return std::result::Result::Err(A::Error::duplicate_field(
23595 "multiple values for `ip_range`, a oneof with full ID .google.cloud.vmwareengine.v1.ExternalAccessRule.IpRange.external_address, latest field was externalAddress",
23596 ));
23597 }
23598 result.ip_range = std::option::Option::Some(
23599 crate::model::external_access_rule::ip_range::IpRange::ExternalAddress(
23600 map.next_value::<std::option::Option<std::string::String>>()?.unwrap_or_default()
23601 ),
23602 );
23603 }
23604 __FieldTag::Unknown(key) => {
23605 let value = map.next_value::<serde_json::Value>()?;
23606 result._unknown_fields.insert(key, value);
23607 }
23608 }
23609 }
23610 std::result::Result::Ok(result)
23611 }
23612 }
23613 deserializer.deserialize_any(Visitor)
23614 }
23615 }
23616
23617 #[doc(hidden)]
23618 impl serde::ser::Serialize for IpRange {
23619 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
23620 where
23621 S: serde::ser::Serializer,
23622 {
23623 use serde::ser::SerializeMap;
23624 #[allow(unused_imports)]
23625 use std::option::Option::Some;
23626 let mut state = serializer.serialize_map(std::option::Option::None)?;
23627 if let Some(value) = self.ip_address() {
23628 state.serialize_entry("ipAddress", value)?;
23629 }
23630 if let Some(value) = self.ip_address_range() {
23631 state.serialize_entry("ipAddressRange", value)?;
23632 }
23633 if let Some(value) = self.external_address() {
23634 state.serialize_entry("externalAddress", value)?;
23635 }
23636 if !self._unknown_fields.is_empty() {
23637 for (key, value) in self._unknown_fields.iter() {
23638 state.serialize_entry(key, &value)?;
23639 }
23640 }
23641 state.end()
23642 }
23643 }
23644
23645 pub mod ip_range {
23647 #[allow(unused_imports)]
23648 use super::*;
23649
23650 #[derive(Clone, Debug, PartialEq)]
23651 #[non_exhaustive]
23652 pub enum IpRange {
23653 IpAddress(std::string::String),
23655 IpAddressRange(std::string::String),
23657 ExternalAddress(std::string::String),
23664 }
23665 }
23666
23667 #[derive(Clone, Debug, PartialEq)]
23684 #[non_exhaustive]
23685 pub enum Action {
23686 Unspecified,
23688 Allow,
23690 Deny,
23692 UnknownValue(action::UnknownValue),
23697 }
23698
23699 #[doc(hidden)]
23700 pub mod action {
23701 #[allow(unused_imports)]
23702 use super::*;
23703 #[derive(Clone, Debug, PartialEq)]
23704 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
23705 }
23706
23707 impl Action {
23708 pub fn value(&self) -> std::option::Option<i32> {
23713 match self {
23714 Self::Unspecified => std::option::Option::Some(0),
23715 Self::Allow => std::option::Option::Some(1),
23716 Self::Deny => std::option::Option::Some(2),
23717 Self::UnknownValue(u) => u.0.value(),
23718 }
23719 }
23720
23721 pub fn name(&self) -> std::option::Option<&str> {
23726 match self {
23727 Self::Unspecified => std::option::Option::Some("ACTION_UNSPECIFIED"),
23728 Self::Allow => std::option::Option::Some("ALLOW"),
23729 Self::Deny => std::option::Option::Some("DENY"),
23730 Self::UnknownValue(u) => u.0.name(),
23731 }
23732 }
23733 }
23734
23735 impl std::default::Default for Action {
23736 fn default() -> Self {
23737 use std::convert::From;
23738 Self::from(0)
23739 }
23740 }
23741
23742 impl std::fmt::Display for Action {
23743 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
23744 wkt::internal::display_enum(f, self.name(), self.value())
23745 }
23746 }
23747
23748 impl std::convert::From<i32> for Action {
23749 fn from(value: i32) -> Self {
23750 match value {
23751 0 => Self::Unspecified,
23752 1 => Self::Allow,
23753 2 => Self::Deny,
23754 _ => Self::UnknownValue(action::UnknownValue(
23755 wkt::internal::UnknownEnumValue::Integer(value),
23756 )),
23757 }
23758 }
23759 }
23760
23761 impl std::convert::From<&str> for Action {
23762 fn from(value: &str) -> Self {
23763 use std::string::ToString;
23764 match value {
23765 "ACTION_UNSPECIFIED" => Self::Unspecified,
23766 "ALLOW" => Self::Allow,
23767 "DENY" => Self::Deny,
23768 _ => Self::UnknownValue(action::UnknownValue(
23769 wkt::internal::UnknownEnumValue::String(value.to_string()),
23770 )),
23771 }
23772 }
23773 }
23774
23775 impl serde::ser::Serialize for Action {
23776 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
23777 where
23778 S: serde::Serializer,
23779 {
23780 match self {
23781 Self::Unspecified => serializer.serialize_i32(0),
23782 Self::Allow => serializer.serialize_i32(1),
23783 Self::Deny => serializer.serialize_i32(2),
23784 Self::UnknownValue(u) => u.0.serialize(serializer),
23785 }
23786 }
23787 }
23788
23789 impl<'de> serde::de::Deserialize<'de> for Action {
23790 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
23791 where
23792 D: serde::Deserializer<'de>,
23793 {
23794 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Action>::new(
23795 ".google.cloud.vmwareengine.v1.ExternalAccessRule.Action",
23796 ))
23797 }
23798 }
23799
23800 #[derive(Clone, Debug, PartialEq)]
23816 #[non_exhaustive]
23817 pub enum State {
23818 Unspecified,
23820 Active,
23822 Creating,
23824 Updating,
23826 Deleting,
23828 UnknownValue(state::UnknownValue),
23833 }
23834
23835 #[doc(hidden)]
23836 pub mod state {
23837 #[allow(unused_imports)]
23838 use super::*;
23839 #[derive(Clone, Debug, PartialEq)]
23840 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
23841 }
23842
23843 impl State {
23844 pub fn value(&self) -> std::option::Option<i32> {
23849 match self {
23850 Self::Unspecified => std::option::Option::Some(0),
23851 Self::Active => std::option::Option::Some(1),
23852 Self::Creating => std::option::Option::Some(2),
23853 Self::Updating => std::option::Option::Some(3),
23854 Self::Deleting => std::option::Option::Some(4),
23855 Self::UnknownValue(u) => u.0.value(),
23856 }
23857 }
23858
23859 pub fn name(&self) -> std::option::Option<&str> {
23864 match self {
23865 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
23866 Self::Active => std::option::Option::Some("ACTIVE"),
23867 Self::Creating => std::option::Option::Some("CREATING"),
23868 Self::Updating => std::option::Option::Some("UPDATING"),
23869 Self::Deleting => std::option::Option::Some("DELETING"),
23870 Self::UnknownValue(u) => u.0.name(),
23871 }
23872 }
23873 }
23874
23875 impl std::default::Default for State {
23876 fn default() -> Self {
23877 use std::convert::From;
23878 Self::from(0)
23879 }
23880 }
23881
23882 impl std::fmt::Display for State {
23883 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
23884 wkt::internal::display_enum(f, self.name(), self.value())
23885 }
23886 }
23887
23888 impl std::convert::From<i32> for State {
23889 fn from(value: i32) -> Self {
23890 match value {
23891 0 => Self::Unspecified,
23892 1 => Self::Active,
23893 2 => Self::Creating,
23894 3 => Self::Updating,
23895 4 => Self::Deleting,
23896 _ => Self::UnknownValue(state::UnknownValue(
23897 wkt::internal::UnknownEnumValue::Integer(value),
23898 )),
23899 }
23900 }
23901 }
23902
23903 impl std::convert::From<&str> for State {
23904 fn from(value: &str) -> Self {
23905 use std::string::ToString;
23906 match value {
23907 "STATE_UNSPECIFIED" => Self::Unspecified,
23908 "ACTIVE" => Self::Active,
23909 "CREATING" => Self::Creating,
23910 "UPDATING" => Self::Updating,
23911 "DELETING" => Self::Deleting,
23912 _ => Self::UnknownValue(state::UnknownValue(
23913 wkt::internal::UnknownEnumValue::String(value.to_string()),
23914 )),
23915 }
23916 }
23917 }
23918
23919 impl serde::ser::Serialize for State {
23920 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
23921 where
23922 S: serde::Serializer,
23923 {
23924 match self {
23925 Self::Unspecified => serializer.serialize_i32(0),
23926 Self::Active => serializer.serialize_i32(1),
23927 Self::Creating => serializer.serialize_i32(2),
23928 Self::Updating => serializer.serialize_i32(3),
23929 Self::Deleting => serializer.serialize_i32(4),
23930 Self::UnknownValue(u) => u.0.serialize(serializer),
23931 }
23932 }
23933 }
23934
23935 impl<'de> serde::de::Deserialize<'de> for State {
23936 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
23937 where
23938 D: serde::Deserializer<'de>,
23939 {
23940 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
23941 ".google.cloud.vmwareengine.v1.ExternalAccessRule.State",
23942 ))
23943 }
23944 }
23945}
23946
23947#[derive(Clone, Debug, Default, PartialEq)]
23949#[non_exhaustive]
23950pub struct LoggingServer {
23951 pub name: std::string::String,
23957
23958 pub create_time: std::option::Option<wkt::Timestamp>,
23960
23961 pub update_time: std::option::Option<wkt::Timestamp>,
23963
23964 pub hostname: std::string::String,
23967
23968 pub port: i32,
23970
23971 pub protocol: crate::model::logging_server::Protocol,
23973
23974 pub source_type: crate::model::logging_server::SourceType,
23977
23978 pub uid: std::string::String,
23980
23981 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
23982}
23983
23984impl LoggingServer {
23985 pub fn new() -> Self {
23986 std::default::Default::default()
23987 }
23988
23989 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
23991 self.name = v.into();
23992 self
23993 }
23994
23995 pub fn set_create_time<T>(mut self, v: T) -> Self
23997 where
23998 T: std::convert::Into<wkt::Timestamp>,
23999 {
24000 self.create_time = std::option::Option::Some(v.into());
24001 self
24002 }
24003
24004 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
24006 where
24007 T: std::convert::Into<wkt::Timestamp>,
24008 {
24009 self.create_time = v.map(|x| x.into());
24010 self
24011 }
24012
24013 pub fn set_update_time<T>(mut self, v: T) -> Self
24015 where
24016 T: std::convert::Into<wkt::Timestamp>,
24017 {
24018 self.update_time = std::option::Option::Some(v.into());
24019 self
24020 }
24021
24022 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
24024 where
24025 T: std::convert::Into<wkt::Timestamp>,
24026 {
24027 self.update_time = v.map(|x| x.into());
24028 self
24029 }
24030
24031 pub fn set_hostname<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
24033 self.hostname = v.into();
24034 self
24035 }
24036
24037 pub fn set_port<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
24039 self.port = v.into();
24040 self
24041 }
24042
24043 pub fn set_protocol<T: std::convert::Into<crate::model::logging_server::Protocol>>(
24045 mut self,
24046 v: T,
24047 ) -> Self {
24048 self.protocol = v.into();
24049 self
24050 }
24051
24052 pub fn set_source_type<T: std::convert::Into<crate::model::logging_server::SourceType>>(
24054 mut self,
24055 v: T,
24056 ) -> Self {
24057 self.source_type = v.into();
24058 self
24059 }
24060
24061 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
24063 self.uid = v.into();
24064 self
24065 }
24066}
24067
24068impl wkt::message::Message for LoggingServer {
24069 fn typename() -> &'static str {
24070 "type.googleapis.com/google.cloud.vmwareengine.v1.LoggingServer"
24071 }
24072}
24073
24074#[doc(hidden)]
24075impl<'de> serde::de::Deserialize<'de> for LoggingServer {
24076 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
24077 where
24078 D: serde::Deserializer<'de>,
24079 {
24080 #[allow(non_camel_case_types)]
24081 #[doc(hidden)]
24082 #[derive(PartialEq, Eq, Hash)]
24083 enum __FieldTag {
24084 __name,
24085 __create_time,
24086 __update_time,
24087 __hostname,
24088 __port,
24089 __protocol,
24090 __source_type,
24091 __uid,
24092 Unknown(std::string::String),
24093 }
24094 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
24095 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
24096 where
24097 D: serde::Deserializer<'de>,
24098 {
24099 struct Visitor;
24100 impl<'de> serde::de::Visitor<'de> for Visitor {
24101 type Value = __FieldTag;
24102 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
24103 formatter.write_str("a field name for LoggingServer")
24104 }
24105 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
24106 where
24107 E: serde::de::Error,
24108 {
24109 use std::result::Result::Ok;
24110 use std::string::ToString;
24111 match value {
24112 "name" => Ok(__FieldTag::__name),
24113 "createTime" => Ok(__FieldTag::__create_time),
24114 "create_time" => Ok(__FieldTag::__create_time),
24115 "updateTime" => Ok(__FieldTag::__update_time),
24116 "update_time" => Ok(__FieldTag::__update_time),
24117 "hostname" => Ok(__FieldTag::__hostname),
24118 "port" => Ok(__FieldTag::__port),
24119 "protocol" => Ok(__FieldTag::__protocol),
24120 "sourceType" => Ok(__FieldTag::__source_type),
24121 "source_type" => Ok(__FieldTag::__source_type),
24122 "uid" => Ok(__FieldTag::__uid),
24123 _ => Ok(__FieldTag::Unknown(value.to_string())),
24124 }
24125 }
24126 }
24127 deserializer.deserialize_identifier(Visitor)
24128 }
24129 }
24130 struct Visitor;
24131 impl<'de> serde::de::Visitor<'de> for Visitor {
24132 type Value = LoggingServer;
24133 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
24134 formatter.write_str("struct LoggingServer")
24135 }
24136 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
24137 where
24138 A: serde::de::MapAccess<'de>,
24139 {
24140 #[allow(unused_imports)]
24141 use serde::de::Error;
24142 use std::option::Option::Some;
24143 let mut fields = std::collections::HashSet::new();
24144 let mut result = Self::Value::new();
24145 while let Some(tag) = map.next_key::<__FieldTag>()? {
24146 #[allow(clippy::match_single_binding)]
24147 match tag {
24148 __FieldTag::__name => {
24149 if !fields.insert(__FieldTag::__name) {
24150 return std::result::Result::Err(A::Error::duplicate_field(
24151 "multiple values for name",
24152 ));
24153 }
24154 result.name = map
24155 .next_value::<std::option::Option<std::string::String>>()?
24156 .unwrap_or_default();
24157 }
24158 __FieldTag::__create_time => {
24159 if !fields.insert(__FieldTag::__create_time) {
24160 return std::result::Result::Err(A::Error::duplicate_field(
24161 "multiple values for create_time",
24162 ));
24163 }
24164 result.create_time =
24165 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
24166 }
24167 __FieldTag::__update_time => {
24168 if !fields.insert(__FieldTag::__update_time) {
24169 return std::result::Result::Err(A::Error::duplicate_field(
24170 "multiple values for update_time",
24171 ));
24172 }
24173 result.update_time =
24174 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
24175 }
24176 __FieldTag::__hostname => {
24177 if !fields.insert(__FieldTag::__hostname) {
24178 return std::result::Result::Err(A::Error::duplicate_field(
24179 "multiple values for hostname",
24180 ));
24181 }
24182 result.hostname = map
24183 .next_value::<std::option::Option<std::string::String>>()?
24184 .unwrap_or_default();
24185 }
24186 __FieldTag::__port => {
24187 if !fields.insert(__FieldTag::__port) {
24188 return std::result::Result::Err(A::Error::duplicate_field(
24189 "multiple values for port",
24190 ));
24191 }
24192 struct __With(std::option::Option<i32>);
24193 impl<'de> serde::de::Deserialize<'de> for __With {
24194 fn deserialize<D>(
24195 deserializer: D,
24196 ) -> std::result::Result<Self, D::Error>
24197 where
24198 D: serde::de::Deserializer<'de>,
24199 {
24200 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
24201 }
24202 }
24203 result.port = map.next_value::<__With>()?.0.unwrap_or_default();
24204 }
24205 __FieldTag::__protocol => {
24206 if !fields.insert(__FieldTag::__protocol) {
24207 return std::result::Result::Err(A::Error::duplicate_field(
24208 "multiple values for protocol",
24209 ));
24210 }
24211 result.protocol = map.next_value::<std::option::Option<crate::model::logging_server::Protocol>>()?.unwrap_or_default();
24212 }
24213 __FieldTag::__source_type => {
24214 if !fields.insert(__FieldTag::__source_type) {
24215 return std::result::Result::Err(A::Error::duplicate_field(
24216 "multiple values for source_type",
24217 ));
24218 }
24219 result.source_type = map.next_value::<std::option::Option<crate::model::logging_server::SourceType>>()?.unwrap_or_default();
24220 }
24221 __FieldTag::__uid => {
24222 if !fields.insert(__FieldTag::__uid) {
24223 return std::result::Result::Err(A::Error::duplicate_field(
24224 "multiple values for uid",
24225 ));
24226 }
24227 result.uid = map
24228 .next_value::<std::option::Option<std::string::String>>()?
24229 .unwrap_or_default();
24230 }
24231 __FieldTag::Unknown(key) => {
24232 let value = map.next_value::<serde_json::Value>()?;
24233 result._unknown_fields.insert(key, value);
24234 }
24235 }
24236 }
24237 std::result::Result::Ok(result)
24238 }
24239 }
24240 deserializer.deserialize_any(Visitor)
24241 }
24242}
24243
24244#[doc(hidden)]
24245impl serde::ser::Serialize for LoggingServer {
24246 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
24247 where
24248 S: serde::ser::Serializer,
24249 {
24250 use serde::ser::SerializeMap;
24251 #[allow(unused_imports)]
24252 use std::option::Option::Some;
24253 let mut state = serializer.serialize_map(std::option::Option::None)?;
24254 if !self.name.is_empty() {
24255 state.serialize_entry("name", &self.name)?;
24256 }
24257 if self.create_time.is_some() {
24258 state.serialize_entry("createTime", &self.create_time)?;
24259 }
24260 if self.update_time.is_some() {
24261 state.serialize_entry("updateTime", &self.update_time)?;
24262 }
24263 if !self.hostname.is_empty() {
24264 state.serialize_entry("hostname", &self.hostname)?;
24265 }
24266 if !wkt::internal::is_default(&self.port) {
24267 struct __With<'a>(&'a i32);
24268 impl<'a> serde::ser::Serialize for __With<'a> {
24269 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
24270 where
24271 S: serde::ser::Serializer,
24272 {
24273 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
24274 }
24275 }
24276 state.serialize_entry("port", &__With(&self.port))?;
24277 }
24278 if !wkt::internal::is_default(&self.protocol) {
24279 state.serialize_entry("protocol", &self.protocol)?;
24280 }
24281 if !wkt::internal::is_default(&self.source_type) {
24282 state.serialize_entry("sourceType", &self.source_type)?;
24283 }
24284 if !self.uid.is_empty() {
24285 state.serialize_entry("uid", &self.uid)?;
24286 }
24287 if !self._unknown_fields.is_empty() {
24288 for (key, value) in self._unknown_fields.iter() {
24289 state.serialize_entry(key, &value)?;
24290 }
24291 }
24292 state.end()
24293 }
24294}
24295
24296pub mod logging_server {
24298 #[allow(unused_imports)]
24299 use super::*;
24300
24301 #[derive(Clone, Debug, PartialEq)]
24318 #[non_exhaustive]
24319 pub enum Protocol {
24320 Unspecified,
24322 Udp,
24324 Tcp,
24326 Tls,
24328 Ssl,
24330 Relp,
24332 UnknownValue(protocol::UnknownValue),
24337 }
24338
24339 #[doc(hidden)]
24340 pub mod protocol {
24341 #[allow(unused_imports)]
24342 use super::*;
24343 #[derive(Clone, Debug, PartialEq)]
24344 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
24345 }
24346
24347 impl Protocol {
24348 pub fn value(&self) -> std::option::Option<i32> {
24353 match self {
24354 Self::Unspecified => std::option::Option::Some(0),
24355 Self::Udp => std::option::Option::Some(1),
24356 Self::Tcp => std::option::Option::Some(2),
24357 Self::Tls => std::option::Option::Some(3),
24358 Self::Ssl => std::option::Option::Some(4),
24359 Self::Relp => std::option::Option::Some(5),
24360 Self::UnknownValue(u) => u.0.value(),
24361 }
24362 }
24363
24364 pub fn name(&self) -> std::option::Option<&str> {
24369 match self {
24370 Self::Unspecified => std::option::Option::Some("PROTOCOL_UNSPECIFIED"),
24371 Self::Udp => std::option::Option::Some("UDP"),
24372 Self::Tcp => std::option::Option::Some("TCP"),
24373 Self::Tls => std::option::Option::Some("TLS"),
24374 Self::Ssl => std::option::Option::Some("SSL"),
24375 Self::Relp => std::option::Option::Some("RELP"),
24376 Self::UnknownValue(u) => u.0.name(),
24377 }
24378 }
24379 }
24380
24381 impl std::default::Default for Protocol {
24382 fn default() -> Self {
24383 use std::convert::From;
24384 Self::from(0)
24385 }
24386 }
24387
24388 impl std::fmt::Display for Protocol {
24389 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
24390 wkt::internal::display_enum(f, self.name(), self.value())
24391 }
24392 }
24393
24394 impl std::convert::From<i32> for Protocol {
24395 fn from(value: i32) -> Self {
24396 match value {
24397 0 => Self::Unspecified,
24398 1 => Self::Udp,
24399 2 => Self::Tcp,
24400 3 => Self::Tls,
24401 4 => Self::Ssl,
24402 5 => Self::Relp,
24403 _ => Self::UnknownValue(protocol::UnknownValue(
24404 wkt::internal::UnknownEnumValue::Integer(value),
24405 )),
24406 }
24407 }
24408 }
24409
24410 impl std::convert::From<&str> for Protocol {
24411 fn from(value: &str) -> Self {
24412 use std::string::ToString;
24413 match value {
24414 "PROTOCOL_UNSPECIFIED" => Self::Unspecified,
24415 "UDP" => Self::Udp,
24416 "TCP" => Self::Tcp,
24417 "TLS" => Self::Tls,
24418 "SSL" => Self::Ssl,
24419 "RELP" => Self::Relp,
24420 _ => Self::UnknownValue(protocol::UnknownValue(
24421 wkt::internal::UnknownEnumValue::String(value.to_string()),
24422 )),
24423 }
24424 }
24425 }
24426
24427 impl serde::ser::Serialize for Protocol {
24428 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
24429 where
24430 S: serde::Serializer,
24431 {
24432 match self {
24433 Self::Unspecified => serializer.serialize_i32(0),
24434 Self::Udp => serializer.serialize_i32(1),
24435 Self::Tcp => serializer.serialize_i32(2),
24436 Self::Tls => serializer.serialize_i32(3),
24437 Self::Ssl => serializer.serialize_i32(4),
24438 Self::Relp => serializer.serialize_i32(5),
24439 Self::UnknownValue(u) => u.0.serialize(serializer),
24440 }
24441 }
24442 }
24443
24444 impl<'de> serde::de::Deserialize<'de> for Protocol {
24445 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
24446 where
24447 D: serde::Deserializer<'de>,
24448 {
24449 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Protocol>::new(
24450 ".google.cloud.vmwareengine.v1.LoggingServer.Protocol",
24451 ))
24452 }
24453 }
24454
24455 #[derive(Clone, Debug, PartialEq)]
24471 #[non_exhaustive]
24472 pub enum SourceType {
24473 Unspecified,
24475 Esxi,
24477 Vcsa,
24479 UnknownValue(source_type::UnknownValue),
24484 }
24485
24486 #[doc(hidden)]
24487 pub mod source_type {
24488 #[allow(unused_imports)]
24489 use super::*;
24490 #[derive(Clone, Debug, PartialEq)]
24491 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
24492 }
24493
24494 impl SourceType {
24495 pub fn value(&self) -> std::option::Option<i32> {
24500 match self {
24501 Self::Unspecified => std::option::Option::Some(0),
24502 Self::Esxi => std::option::Option::Some(1),
24503 Self::Vcsa => std::option::Option::Some(2),
24504 Self::UnknownValue(u) => u.0.value(),
24505 }
24506 }
24507
24508 pub fn name(&self) -> std::option::Option<&str> {
24513 match self {
24514 Self::Unspecified => std::option::Option::Some("SOURCE_TYPE_UNSPECIFIED"),
24515 Self::Esxi => std::option::Option::Some("ESXI"),
24516 Self::Vcsa => std::option::Option::Some("VCSA"),
24517 Self::UnknownValue(u) => u.0.name(),
24518 }
24519 }
24520 }
24521
24522 impl std::default::Default for SourceType {
24523 fn default() -> Self {
24524 use std::convert::From;
24525 Self::from(0)
24526 }
24527 }
24528
24529 impl std::fmt::Display for SourceType {
24530 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
24531 wkt::internal::display_enum(f, self.name(), self.value())
24532 }
24533 }
24534
24535 impl std::convert::From<i32> for SourceType {
24536 fn from(value: i32) -> Self {
24537 match value {
24538 0 => Self::Unspecified,
24539 1 => Self::Esxi,
24540 2 => Self::Vcsa,
24541 _ => Self::UnknownValue(source_type::UnknownValue(
24542 wkt::internal::UnknownEnumValue::Integer(value),
24543 )),
24544 }
24545 }
24546 }
24547
24548 impl std::convert::From<&str> for SourceType {
24549 fn from(value: &str) -> Self {
24550 use std::string::ToString;
24551 match value {
24552 "SOURCE_TYPE_UNSPECIFIED" => Self::Unspecified,
24553 "ESXI" => Self::Esxi,
24554 "VCSA" => Self::Vcsa,
24555 _ => Self::UnknownValue(source_type::UnknownValue(
24556 wkt::internal::UnknownEnumValue::String(value.to_string()),
24557 )),
24558 }
24559 }
24560 }
24561
24562 impl serde::ser::Serialize for SourceType {
24563 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
24564 where
24565 S: serde::Serializer,
24566 {
24567 match self {
24568 Self::Unspecified => serializer.serialize_i32(0),
24569 Self::Esxi => serializer.serialize_i32(1),
24570 Self::Vcsa => serializer.serialize_i32(2),
24571 Self::UnknownValue(u) => u.0.serialize(serializer),
24572 }
24573 }
24574 }
24575
24576 impl<'de> serde::de::Deserialize<'de> for SourceType {
24577 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
24578 where
24579 D: serde::Deserializer<'de>,
24580 {
24581 deserializer.deserialize_any(wkt::internal::EnumVisitor::<SourceType>::new(
24582 ".google.cloud.vmwareengine.v1.LoggingServer.SourceType",
24583 ))
24584 }
24585 }
24586}
24587
24588#[derive(Clone, Debug, Default, PartialEq)]
24590#[non_exhaustive]
24591pub struct NodeType {
24592 pub name: std::string::String,
24598
24599 pub node_type_id: std::string::String,
24602
24603 pub display_name: std::string::String,
24606
24607 pub virtual_cpu_count: i32,
24609
24610 pub total_core_count: i32,
24612
24613 pub memory_gb: i32,
24615
24616 pub disk_size_gb: i32,
24618
24619 pub available_custom_core_counts: std::vec::Vec<i32>,
24621
24622 pub kind: crate::model::node_type::Kind,
24624
24625 pub families: std::vec::Vec<std::string::String>,
24629
24630 pub capabilities: std::vec::Vec<crate::model::node_type::Capability>,
24632
24633 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
24634}
24635
24636impl NodeType {
24637 pub fn new() -> Self {
24638 std::default::Default::default()
24639 }
24640
24641 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
24643 self.name = v.into();
24644 self
24645 }
24646
24647 pub fn set_node_type_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
24649 self.node_type_id = v.into();
24650 self
24651 }
24652
24653 pub fn set_display_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
24655 self.display_name = v.into();
24656 self
24657 }
24658
24659 pub fn set_virtual_cpu_count<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
24661 self.virtual_cpu_count = v.into();
24662 self
24663 }
24664
24665 pub fn set_total_core_count<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
24667 self.total_core_count = v.into();
24668 self
24669 }
24670
24671 pub fn set_memory_gb<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
24673 self.memory_gb = v.into();
24674 self
24675 }
24676
24677 pub fn set_disk_size_gb<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
24679 self.disk_size_gb = v.into();
24680 self
24681 }
24682
24683 pub fn set_available_custom_core_counts<T, V>(mut self, v: T) -> Self
24685 where
24686 T: std::iter::IntoIterator<Item = V>,
24687 V: std::convert::Into<i32>,
24688 {
24689 use std::iter::Iterator;
24690 self.available_custom_core_counts = v.into_iter().map(|i| i.into()).collect();
24691 self
24692 }
24693
24694 pub fn set_kind<T: std::convert::Into<crate::model::node_type::Kind>>(mut self, v: T) -> Self {
24696 self.kind = v.into();
24697 self
24698 }
24699
24700 pub fn set_families<T, V>(mut self, v: T) -> Self
24702 where
24703 T: std::iter::IntoIterator<Item = V>,
24704 V: std::convert::Into<std::string::String>,
24705 {
24706 use std::iter::Iterator;
24707 self.families = v.into_iter().map(|i| i.into()).collect();
24708 self
24709 }
24710
24711 pub fn set_capabilities<T, V>(mut self, v: T) -> Self
24713 where
24714 T: std::iter::IntoIterator<Item = V>,
24715 V: std::convert::Into<crate::model::node_type::Capability>,
24716 {
24717 use std::iter::Iterator;
24718 self.capabilities = v.into_iter().map(|i| i.into()).collect();
24719 self
24720 }
24721}
24722
24723impl wkt::message::Message for NodeType {
24724 fn typename() -> &'static str {
24725 "type.googleapis.com/google.cloud.vmwareengine.v1.NodeType"
24726 }
24727}
24728
24729#[doc(hidden)]
24730impl<'de> serde::de::Deserialize<'de> for NodeType {
24731 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
24732 where
24733 D: serde::Deserializer<'de>,
24734 {
24735 #[allow(non_camel_case_types)]
24736 #[doc(hidden)]
24737 #[derive(PartialEq, Eq, Hash)]
24738 enum __FieldTag {
24739 __name,
24740 __node_type_id,
24741 __display_name,
24742 __virtual_cpu_count,
24743 __total_core_count,
24744 __memory_gb,
24745 __disk_size_gb,
24746 __available_custom_core_counts,
24747 __kind,
24748 __families,
24749 __capabilities,
24750 Unknown(std::string::String),
24751 }
24752 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
24753 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
24754 where
24755 D: serde::Deserializer<'de>,
24756 {
24757 struct Visitor;
24758 impl<'de> serde::de::Visitor<'de> for Visitor {
24759 type Value = __FieldTag;
24760 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
24761 formatter.write_str("a field name for NodeType")
24762 }
24763 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
24764 where
24765 E: serde::de::Error,
24766 {
24767 use std::result::Result::Ok;
24768 use std::string::ToString;
24769 match value {
24770 "name" => Ok(__FieldTag::__name),
24771 "nodeTypeId" => Ok(__FieldTag::__node_type_id),
24772 "node_type_id" => Ok(__FieldTag::__node_type_id),
24773 "displayName" => Ok(__FieldTag::__display_name),
24774 "display_name" => Ok(__FieldTag::__display_name),
24775 "virtualCpuCount" => Ok(__FieldTag::__virtual_cpu_count),
24776 "virtual_cpu_count" => Ok(__FieldTag::__virtual_cpu_count),
24777 "totalCoreCount" => Ok(__FieldTag::__total_core_count),
24778 "total_core_count" => Ok(__FieldTag::__total_core_count),
24779 "memoryGb" => Ok(__FieldTag::__memory_gb),
24780 "memory_gb" => Ok(__FieldTag::__memory_gb),
24781 "diskSizeGb" => Ok(__FieldTag::__disk_size_gb),
24782 "disk_size_gb" => Ok(__FieldTag::__disk_size_gb),
24783 "availableCustomCoreCounts" => {
24784 Ok(__FieldTag::__available_custom_core_counts)
24785 }
24786 "available_custom_core_counts" => {
24787 Ok(__FieldTag::__available_custom_core_counts)
24788 }
24789 "kind" => Ok(__FieldTag::__kind),
24790 "families" => Ok(__FieldTag::__families),
24791 "capabilities" => Ok(__FieldTag::__capabilities),
24792 _ => Ok(__FieldTag::Unknown(value.to_string())),
24793 }
24794 }
24795 }
24796 deserializer.deserialize_identifier(Visitor)
24797 }
24798 }
24799 struct Visitor;
24800 impl<'de> serde::de::Visitor<'de> for Visitor {
24801 type Value = NodeType;
24802 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
24803 formatter.write_str("struct NodeType")
24804 }
24805 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
24806 where
24807 A: serde::de::MapAccess<'de>,
24808 {
24809 #[allow(unused_imports)]
24810 use serde::de::Error;
24811 use std::option::Option::Some;
24812 let mut fields = std::collections::HashSet::new();
24813 let mut result = Self::Value::new();
24814 while let Some(tag) = map.next_key::<__FieldTag>()? {
24815 #[allow(clippy::match_single_binding)]
24816 match tag {
24817 __FieldTag::__name => {
24818 if !fields.insert(__FieldTag::__name) {
24819 return std::result::Result::Err(A::Error::duplicate_field(
24820 "multiple values for name",
24821 ));
24822 }
24823 result.name = map
24824 .next_value::<std::option::Option<std::string::String>>()?
24825 .unwrap_or_default();
24826 }
24827 __FieldTag::__node_type_id => {
24828 if !fields.insert(__FieldTag::__node_type_id) {
24829 return std::result::Result::Err(A::Error::duplicate_field(
24830 "multiple values for node_type_id",
24831 ));
24832 }
24833 result.node_type_id = map
24834 .next_value::<std::option::Option<std::string::String>>()?
24835 .unwrap_or_default();
24836 }
24837 __FieldTag::__display_name => {
24838 if !fields.insert(__FieldTag::__display_name) {
24839 return std::result::Result::Err(A::Error::duplicate_field(
24840 "multiple values for display_name",
24841 ));
24842 }
24843 result.display_name = map
24844 .next_value::<std::option::Option<std::string::String>>()?
24845 .unwrap_or_default();
24846 }
24847 __FieldTag::__virtual_cpu_count => {
24848 if !fields.insert(__FieldTag::__virtual_cpu_count) {
24849 return std::result::Result::Err(A::Error::duplicate_field(
24850 "multiple values for virtual_cpu_count",
24851 ));
24852 }
24853 struct __With(std::option::Option<i32>);
24854 impl<'de> serde::de::Deserialize<'de> for __With {
24855 fn deserialize<D>(
24856 deserializer: D,
24857 ) -> std::result::Result<Self, D::Error>
24858 where
24859 D: serde::de::Deserializer<'de>,
24860 {
24861 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
24862 }
24863 }
24864 result.virtual_cpu_count =
24865 map.next_value::<__With>()?.0.unwrap_or_default();
24866 }
24867 __FieldTag::__total_core_count => {
24868 if !fields.insert(__FieldTag::__total_core_count) {
24869 return std::result::Result::Err(A::Error::duplicate_field(
24870 "multiple values for total_core_count",
24871 ));
24872 }
24873 struct __With(std::option::Option<i32>);
24874 impl<'de> serde::de::Deserialize<'de> for __With {
24875 fn deserialize<D>(
24876 deserializer: D,
24877 ) -> std::result::Result<Self, D::Error>
24878 where
24879 D: serde::de::Deserializer<'de>,
24880 {
24881 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
24882 }
24883 }
24884 result.total_core_count =
24885 map.next_value::<__With>()?.0.unwrap_or_default();
24886 }
24887 __FieldTag::__memory_gb => {
24888 if !fields.insert(__FieldTag::__memory_gb) {
24889 return std::result::Result::Err(A::Error::duplicate_field(
24890 "multiple values for memory_gb",
24891 ));
24892 }
24893 struct __With(std::option::Option<i32>);
24894 impl<'de> serde::de::Deserialize<'de> for __With {
24895 fn deserialize<D>(
24896 deserializer: D,
24897 ) -> std::result::Result<Self, D::Error>
24898 where
24899 D: serde::de::Deserializer<'de>,
24900 {
24901 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
24902 }
24903 }
24904 result.memory_gb = map.next_value::<__With>()?.0.unwrap_or_default();
24905 }
24906 __FieldTag::__disk_size_gb => {
24907 if !fields.insert(__FieldTag::__disk_size_gb) {
24908 return std::result::Result::Err(A::Error::duplicate_field(
24909 "multiple values for disk_size_gb",
24910 ));
24911 }
24912 struct __With(std::option::Option<i32>);
24913 impl<'de> serde::de::Deserialize<'de> for __With {
24914 fn deserialize<D>(
24915 deserializer: D,
24916 ) -> std::result::Result<Self, D::Error>
24917 where
24918 D: serde::de::Deserializer<'de>,
24919 {
24920 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
24921 }
24922 }
24923 result.disk_size_gb = map.next_value::<__With>()?.0.unwrap_or_default();
24924 }
24925 __FieldTag::__available_custom_core_counts => {
24926 if !fields.insert(__FieldTag::__available_custom_core_counts) {
24927 return std::result::Result::Err(A::Error::duplicate_field(
24928 "multiple values for available_custom_core_counts",
24929 ));
24930 }
24931 struct __With(std::option::Option<std::vec::Vec<i32>>);
24932 impl<'de> serde::de::Deserialize<'de> for __With {
24933 fn deserialize<D>(
24934 deserializer: D,
24935 ) -> std::result::Result<Self, D::Error>
24936 where
24937 D: serde::de::Deserializer<'de>,
24938 {
24939 serde_with::As::<
24940 std::option::Option<std::vec::Vec<wkt::internal::I32>>,
24941 >::deserialize(deserializer)
24942 .map(__With)
24943 }
24944 }
24945 result.available_custom_core_counts =
24946 map.next_value::<__With>()?.0.unwrap_or_default();
24947 }
24948 __FieldTag::__kind => {
24949 if !fields.insert(__FieldTag::__kind) {
24950 return std::result::Result::Err(A::Error::duplicate_field(
24951 "multiple values for kind",
24952 ));
24953 }
24954 result.kind = map
24955 .next_value::<std::option::Option<crate::model::node_type::Kind>>()?
24956 .unwrap_or_default();
24957 }
24958 __FieldTag::__families => {
24959 if !fields.insert(__FieldTag::__families) {
24960 return std::result::Result::Err(A::Error::duplicate_field(
24961 "multiple values for families",
24962 ));
24963 }
24964 result.families = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
24965 }
24966 __FieldTag::__capabilities => {
24967 if !fields.insert(__FieldTag::__capabilities) {
24968 return std::result::Result::Err(A::Error::duplicate_field(
24969 "multiple values for capabilities",
24970 ));
24971 }
24972 result.capabilities = map
24973 .next_value::<std::option::Option<
24974 std::vec::Vec<crate::model::node_type::Capability>,
24975 >>()?
24976 .unwrap_or_default();
24977 }
24978 __FieldTag::Unknown(key) => {
24979 let value = map.next_value::<serde_json::Value>()?;
24980 result._unknown_fields.insert(key, value);
24981 }
24982 }
24983 }
24984 std::result::Result::Ok(result)
24985 }
24986 }
24987 deserializer.deserialize_any(Visitor)
24988 }
24989}
24990
24991#[doc(hidden)]
24992impl serde::ser::Serialize for NodeType {
24993 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
24994 where
24995 S: serde::ser::Serializer,
24996 {
24997 use serde::ser::SerializeMap;
24998 #[allow(unused_imports)]
24999 use std::option::Option::Some;
25000 let mut state = serializer.serialize_map(std::option::Option::None)?;
25001 if !self.name.is_empty() {
25002 state.serialize_entry("name", &self.name)?;
25003 }
25004 if !self.node_type_id.is_empty() {
25005 state.serialize_entry("nodeTypeId", &self.node_type_id)?;
25006 }
25007 if !self.display_name.is_empty() {
25008 state.serialize_entry("displayName", &self.display_name)?;
25009 }
25010 if !wkt::internal::is_default(&self.virtual_cpu_count) {
25011 struct __With<'a>(&'a i32);
25012 impl<'a> serde::ser::Serialize for __With<'a> {
25013 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25014 where
25015 S: serde::ser::Serializer,
25016 {
25017 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
25018 }
25019 }
25020 state.serialize_entry("virtualCpuCount", &__With(&self.virtual_cpu_count))?;
25021 }
25022 if !wkt::internal::is_default(&self.total_core_count) {
25023 struct __With<'a>(&'a i32);
25024 impl<'a> serde::ser::Serialize for __With<'a> {
25025 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25026 where
25027 S: serde::ser::Serializer,
25028 {
25029 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
25030 }
25031 }
25032 state.serialize_entry("totalCoreCount", &__With(&self.total_core_count))?;
25033 }
25034 if !wkt::internal::is_default(&self.memory_gb) {
25035 struct __With<'a>(&'a i32);
25036 impl<'a> serde::ser::Serialize for __With<'a> {
25037 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25038 where
25039 S: serde::ser::Serializer,
25040 {
25041 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
25042 }
25043 }
25044 state.serialize_entry("memoryGb", &__With(&self.memory_gb))?;
25045 }
25046 if !wkt::internal::is_default(&self.disk_size_gb) {
25047 struct __With<'a>(&'a i32);
25048 impl<'a> serde::ser::Serialize for __With<'a> {
25049 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25050 where
25051 S: serde::ser::Serializer,
25052 {
25053 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
25054 }
25055 }
25056 state.serialize_entry("diskSizeGb", &__With(&self.disk_size_gb))?;
25057 }
25058 if !self.available_custom_core_counts.is_empty() {
25059 struct __With<'a>(&'a std::vec::Vec<i32>);
25060 impl<'a> serde::ser::Serialize for __With<'a> {
25061 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25062 where
25063 S: serde::ser::Serializer,
25064 {
25065 serde_with::As::<std::vec::Vec<wkt::internal::I32>>::serialize(
25066 self.0, serializer,
25067 )
25068 }
25069 }
25070 state.serialize_entry(
25071 "availableCustomCoreCounts",
25072 &__With(&self.available_custom_core_counts),
25073 )?;
25074 }
25075 if !wkt::internal::is_default(&self.kind) {
25076 state.serialize_entry("kind", &self.kind)?;
25077 }
25078 if !self.families.is_empty() {
25079 state.serialize_entry("families", &self.families)?;
25080 }
25081 if !self.capabilities.is_empty() {
25082 state.serialize_entry("capabilities", &self.capabilities)?;
25083 }
25084 if !self._unknown_fields.is_empty() {
25085 for (key, value) in self._unknown_fields.iter() {
25086 state.serialize_entry(key, &value)?;
25087 }
25088 }
25089 state.end()
25090 }
25091}
25092
25093pub mod node_type {
25095 #[allow(unused_imports)]
25096 use super::*;
25097
25098 #[derive(Clone, Debug, PartialEq)]
25114 #[non_exhaustive]
25115 pub enum Kind {
25116 Unspecified,
25118 Standard,
25120 StorageOnly,
25122 UnknownValue(kind::UnknownValue),
25127 }
25128
25129 #[doc(hidden)]
25130 pub mod kind {
25131 #[allow(unused_imports)]
25132 use super::*;
25133 #[derive(Clone, Debug, PartialEq)]
25134 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
25135 }
25136
25137 impl Kind {
25138 pub fn value(&self) -> std::option::Option<i32> {
25143 match self {
25144 Self::Unspecified => std::option::Option::Some(0),
25145 Self::Standard => std::option::Option::Some(1),
25146 Self::StorageOnly => std::option::Option::Some(2),
25147 Self::UnknownValue(u) => u.0.value(),
25148 }
25149 }
25150
25151 pub fn name(&self) -> std::option::Option<&str> {
25156 match self {
25157 Self::Unspecified => std::option::Option::Some("KIND_UNSPECIFIED"),
25158 Self::Standard => std::option::Option::Some("STANDARD"),
25159 Self::StorageOnly => std::option::Option::Some("STORAGE_ONLY"),
25160 Self::UnknownValue(u) => u.0.name(),
25161 }
25162 }
25163 }
25164
25165 impl std::default::Default for Kind {
25166 fn default() -> Self {
25167 use std::convert::From;
25168 Self::from(0)
25169 }
25170 }
25171
25172 impl std::fmt::Display for Kind {
25173 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
25174 wkt::internal::display_enum(f, self.name(), self.value())
25175 }
25176 }
25177
25178 impl std::convert::From<i32> for Kind {
25179 fn from(value: i32) -> Self {
25180 match value {
25181 0 => Self::Unspecified,
25182 1 => Self::Standard,
25183 2 => Self::StorageOnly,
25184 _ => Self::UnknownValue(kind::UnknownValue(
25185 wkt::internal::UnknownEnumValue::Integer(value),
25186 )),
25187 }
25188 }
25189 }
25190
25191 impl std::convert::From<&str> for Kind {
25192 fn from(value: &str) -> Self {
25193 use std::string::ToString;
25194 match value {
25195 "KIND_UNSPECIFIED" => Self::Unspecified,
25196 "STANDARD" => Self::Standard,
25197 "STORAGE_ONLY" => Self::StorageOnly,
25198 _ => Self::UnknownValue(kind::UnknownValue(
25199 wkt::internal::UnknownEnumValue::String(value.to_string()),
25200 )),
25201 }
25202 }
25203 }
25204
25205 impl serde::ser::Serialize for Kind {
25206 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25207 where
25208 S: serde::Serializer,
25209 {
25210 match self {
25211 Self::Unspecified => serializer.serialize_i32(0),
25212 Self::Standard => serializer.serialize_i32(1),
25213 Self::StorageOnly => serializer.serialize_i32(2),
25214 Self::UnknownValue(u) => u.0.serialize(serializer),
25215 }
25216 }
25217 }
25218
25219 impl<'de> serde::de::Deserialize<'de> for Kind {
25220 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25221 where
25222 D: serde::Deserializer<'de>,
25223 {
25224 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Kind>::new(
25225 ".google.cloud.vmwareengine.v1.NodeType.Kind",
25226 ))
25227 }
25228 }
25229
25230 #[derive(Clone, Debug, PartialEq)]
25246 #[non_exhaustive]
25247 pub enum Capability {
25248 Unspecified,
25251 StretchedClusters,
25253 UnknownValue(capability::UnknownValue),
25258 }
25259
25260 #[doc(hidden)]
25261 pub mod capability {
25262 #[allow(unused_imports)]
25263 use super::*;
25264 #[derive(Clone, Debug, PartialEq)]
25265 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
25266 }
25267
25268 impl Capability {
25269 pub fn value(&self) -> std::option::Option<i32> {
25274 match self {
25275 Self::Unspecified => std::option::Option::Some(0),
25276 Self::StretchedClusters => std::option::Option::Some(1),
25277 Self::UnknownValue(u) => u.0.value(),
25278 }
25279 }
25280
25281 pub fn name(&self) -> std::option::Option<&str> {
25286 match self {
25287 Self::Unspecified => std::option::Option::Some("CAPABILITY_UNSPECIFIED"),
25288 Self::StretchedClusters => std::option::Option::Some("STRETCHED_CLUSTERS"),
25289 Self::UnknownValue(u) => u.0.name(),
25290 }
25291 }
25292 }
25293
25294 impl std::default::Default for Capability {
25295 fn default() -> Self {
25296 use std::convert::From;
25297 Self::from(0)
25298 }
25299 }
25300
25301 impl std::fmt::Display for Capability {
25302 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
25303 wkt::internal::display_enum(f, self.name(), self.value())
25304 }
25305 }
25306
25307 impl std::convert::From<i32> for Capability {
25308 fn from(value: i32) -> Self {
25309 match value {
25310 0 => Self::Unspecified,
25311 1 => Self::StretchedClusters,
25312 _ => Self::UnknownValue(capability::UnknownValue(
25313 wkt::internal::UnknownEnumValue::Integer(value),
25314 )),
25315 }
25316 }
25317 }
25318
25319 impl std::convert::From<&str> for Capability {
25320 fn from(value: &str) -> Self {
25321 use std::string::ToString;
25322 match value {
25323 "CAPABILITY_UNSPECIFIED" => Self::Unspecified,
25324 "STRETCHED_CLUSTERS" => Self::StretchedClusters,
25325 _ => Self::UnknownValue(capability::UnknownValue(
25326 wkt::internal::UnknownEnumValue::String(value.to_string()),
25327 )),
25328 }
25329 }
25330 }
25331
25332 impl serde::ser::Serialize for Capability {
25333 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25334 where
25335 S: serde::Serializer,
25336 {
25337 match self {
25338 Self::Unspecified => serializer.serialize_i32(0),
25339 Self::StretchedClusters => serializer.serialize_i32(1),
25340 Self::UnknownValue(u) => u.0.serialize(serializer),
25341 }
25342 }
25343 }
25344
25345 impl<'de> serde::de::Deserialize<'de> for Capability {
25346 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25347 where
25348 D: serde::Deserializer<'de>,
25349 {
25350 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Capability>::new(
25351 ".google.cloud.vmwareengine.v1.NodeType.Capability",
25352 ))
25353 }
25354 }
25355}
25356
25357#[derive(Clone, Debug, Default, PartialEq)]
25359#[non_exhaustive]
25360pub struct Credentials {
25361 pub username: std::string::String,
25363
25364 pub password: std::string::String,
25366
25367 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
25368}
25369
25370impl Credentials {
25371 pub fn new() -> Self {
25372 std::default::Default::default()
25373 }
25374
25375 pub fn set_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25377 self.username = v.into();
25378 self
25379 }
25380
25381 pub fn set_password<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25383 self.password = v.into();
25384 self
25385 }
25386}
25387
25388impl wkt::message::Message for Credentials {
25389 fn typename() -> &'static str {
25390 "type.googleapis.com/google.cloud.vmwareengine.v1.Credentials"
25391 }
25392}
25393
25394#[doc(hidden)]
25395impl<'de> serde::de::Deserialize<'de> for Credentials {
25396 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25397 where
25398 D: serde::Deserializer<'de>,
25399 {
25400 #[allow(non_camel_case_types)]
25401 #[doc(hidden)]
25402 #[derive(PartialEq, Eq, Hash)]
25403 enum __FieldTag {
25404 __username,
25405 __password,
25406 Unknown(std::string::String),
25407 }
25408 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
25409 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25410 where
25411 D: serde::Deserializer<'de>,
25412 {
25413 struct Visitor;
25414 impl<'de> serde::de::Visitor<'de> for Visitor {
25415 type Value = __FieldTag;
25416 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
25417 formatter.write_str("a field name for Credentials")
25418 }
25419 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
25420 where
25421 E: serde::de::Error,
25422 {
25423 use std::result::Result::Ok;
25424 use std::string::ToString;
25425 match value {
25426 "username" => Ok(__FieldTag::__username),
25427 "password" => Ok(__FieldTag::__password),
25428 _ => Ok(__FieldTag::Unknown(value.to_string())),
25429 }
25430 }
25431 }
25432 deserializer.deserialize_identifier(Visitor)
25433 }
25434 }
25435 struct Visitor;
25436 impl<'de> serde::de::Visitor<'de> for Visitor {
25437 type Value = Credentials;
25438 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
25439 formatter.write_str("struct Credentials")
25440 }
25441 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
25442 where
25443 A: serde::de::MapAccess<'de>,
25444 {
25445 #[allow(unused_imports)]
25446 use serde::de::Error;
25447 use std::option::Option::Some;
25448 let mut fields = std::collections::HashSet::new();
25449 let mut result = Self::Value::new();
25450 while let Some(tag) = map.next_key::<__FieldTag>()? {
25451 #[allow(clippy::match_single_binding)]
25452 match tag {
25453 __FieldTag::__username => {
25454 if !fields.insert(__FieldTag::__username) {
25455 return std::result::Result::Err(A::Error::duplicate_field(
25456 "multiple values for username",
25457 ));
25458 }
25459 result.username = map
25460 .next_value::<std::option::Option<std::string::String>>()?
25461 .unwrap_or_default();
25462 }
25463 __FieldTag::__password => {
25464 if !fields.insert(__FieldTag::__password) {
25465 return std::result::Result::Err(A::Error::duplicate_field(
25466 "multiple values for password",
25467 ));
25468 }
25469 result.password = map
25470 .next_value::<std::option::Option<std::string::String>>()?
25471 .unwrap_or_default();
25472 }
25473 __FieldTag::Unknown(key) => {
25474 let value = map.next_value::<serde_json::Value>()?;
25475 result._unknown_fields.insert(key, value);
25476 }
25477 }
25478 }
25479 std::result::Result::Ok(result)
25480 }
25481 }
25482 deserializer.deserialize_any(Visitor)
25483 }
25484}
25485
25486#[doc(hidden)]
25487impl serde::ser::Serialize for Credentials {
25488 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25489 where
25490 S: serde::ser::Serializer,
25491 {
25492 use serde::ser::SerializeMap;
25493 #[allow(unused_imports)]
25494 use std::option::Option::Some;
25495 let mut state = serializer.serialize_map(std::option::Option::None)?;
25496 if !self.username.is_empty() {
25497 state.serialize_entry("username", &self.username)?;
25498 }
25499 if !self.password.is_empty() {
25500 state.serialize_entry("password", &self.password)?;
25501 }
25502 if !self._unknown_fields.is_empty() {
25503 for (key, value) in self._unknown_fields.iter() {
25504 state.serialize_entry(key, &value)?;
25505 }
25506 }
25507 state.end()
25508 }
25509}
25510
25511#[derive(Clone, Debug, Default, PartialEq)]
25523#[non_exhaustive]
25524pub struct HcxActivationKey {
25525 pub name: std::string::String,
25531
25532 pub create_time: std::option::Option<wkt::Timestamp>,
25534
25535 pub state: crate::model::hcx_activation_key::State,
25537
25538 pub activation_key: std::string::String,
25540
25541 pub uid: std::string::String,
25543
25544 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
25545}
25546
25547impl HcxActivationKey {
25548 pub fn new() -> Self {
25549 std::default::Default::default()
25550 }
25551
25552 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25554 self.name = v.into();
25555 self
25556 }
25557
25558 pub fn set_create_time<T>(mut self, v: T) -> Self
25560 where
25561 T: std::convert::Into<wkt::Timestamp>,
25562 {
25563 self.create_time = std::option::Option::Some(v.into());
25564 self
25565 }
25566
25567 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
25569 where
25570 T: std::convert::Into<wkt::Timestamp>,
25571 {
25572 self.create_time = v.map(|x| x.into());
25573 self
25574 }
25575
25576 pub fn set_state<T: std::convert::Into<crate::model::hcx_activation_key::State>>(
25578 mut self,
25579 v: T,
25580 ) -> Self {
25581 self.state = v.into();
25582 self
25583 }
25584
25585 pub fn set_activation_key<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25587 self.activation_key = v.into();
25588 self
25589 }
25590
25591 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25593 self.uid = v.into();
25594 self
25595 }
25596}
25597
25598impl wkt::message::Message for HcxActivationKey {
25599 fn typename() -> &'static str {
25600 "type.googleapis.com/google.cloud.vmwareengine.v1.HcxActivationKey"
25601 }
25602}
25603
25604#[doc(hidden)]
25605impl<'de> serde::de::Deserialize<'de> for HcxActivationKey {
25606 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25607 where
25608 D: serde::Deserializer<'de>,
25609 {
25610 #[allow(non_camel_case_types)]
25611 #[doc(hidden)]
25612 #[derive(PartialEq, Eq, Hash)]
25613 enum __FieldTag {
25614 __name,
25615 __create_time,
25616 __state,
25617 __activation_key,
25618 __uid,
25619 Unknown(std::string::String),
25620 }
25621 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
25622 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25623 where
25624 D: serde::Deserializer<'de>,
25625 {
25626 struct Visitor;
25627 impl<'de> serde::de::Visitor<'de> for Visitor {
25628 type Value = __FieldTag;
25629 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
25630 formatter.write_str("a field name for HcxActivationKey")
25631 }
25632 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
25633 where
25634 E: serde::de::Error,
25635 {
25636 use std::result::Result::Ok;
25637 use std::string::ToString;
25638 match value {
25639 "name" => Ok(__FieldTag::__name),
25640 "createTime" => Ok(__FieldTag::__create_time),
25641 "create_time" => Ok(__FieldTag::__create_time),
25642 "state" => Ok(__FieldTag::__state),
25643 "activationKey" => Ok(__FieldTag::__activation_key),
25644 "activation_key" => Ok(__FieldTag::__activation_key),
25645 "uid" => Ok(__FieldTag::__uid),
25646 _ => Ok(__FieldTag::Unknown(value.to_string())),
25647 }
25648 }
25649 }
25650 deserializer.deserialize_identifier(Visitor)
25651 }
25652 }
25653 struct Visitor;
25654 impl<'de> serde::de::Visitor<'de> for Visitor {
25655 type Value = HcxActivationKey;
25656 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
25657 formatter.write_str("struct HcxActivationKey")
25658 }
25659 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
25660 where
25661 A: serde::de::MapAccess<'de>,
25662 {
25663 #[allow(unused_imports)]
25664 use serde::de::Error;
25665 use std::option::Option::Some;
25666 let mut fields = std::collections::HashSet::new();
25667 let mut result = Self::Value::new();
25668 while let Some(tag) = map.next_key::<__FieldTag>()? {
25669 #[allow(clippy::match_single_binding)]
25670 match tag {
25671 __FieldTag::__name => {
25672 if !fields.insert(__FieldTag::__name) {
25673 return std::result::Result::Err(A::Error::duplicate_field(
25674 "multiple values for name",
25675 ));
25676 }
25677 result.name = map
25678 .next_value::<std::option::Option<std::string::String>>()?
25679 .unwrap_or_default();
25680 }
25681 __FieldTag::__create_time => {
25682 if !fields.insert(__FieldTag::__create_time) {
25683 return std::result::Result::Err(A::Error::duplicate_field(
25684 "multiple values for create_time",
25685 ));
25686 }
25687 result.create_time =
25688 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
25689 }
25690 __FieldTag::__state => {
25691 if !fields.insert(__FieldTag::__state) {
25692 return std::result::Result::Err(A::Error::duplicate_field(
25693 "multiple values for state",
25694 ));
25695 }
25696 result.state = map.next_value::<std::option::Option<crate::model::hcx_activation_key::State>>()?.unwrap_or_default();
25697 }
25698 __FieldTag::__activation_key => {
25699 if !fields.insert(__FieldTag::__activation_key) {
25700 return std::result::Result::Err(A::Error::duplicate_field(
25701 "multiple values for activation_key",
25702 ));
25703 }
25704 result.activation_key = map
25705 .next_value::<std::option::Option<std::string::String>>()?
25706 .unwrap_or_default();
25707 }
25708 __FieldTag::__uid => {
25709 if !fields.insert(__FieldTag::__uid) {
25710 return std::result::Result::Err(A::Error::duplicate_field(
25711 "multiple values for uid",
25712 ));
25713 }
25714 result.uid = map
25715 .next_value::<std::option::Option<std::string::String>>()?
25716 .unwrap_or_default();
25717 }
25718 __FieldTag::Unknown(key) => {
25719 let value = map.next_value::<serde_json::Value>()?;
25720 result._unknown_fields.insert(key, value);
25721 }
25722 }
25723 }
25724 std::result::Result::Ok(result)
25725 }
25726 }
25727 deserializer.deserialize_any(Visitor)
25728 }
25729}
25730
25731#[doc(hidden)]
25732impl serde::ser::Serialize for HcxActivationKey {
25733 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25734 where
25735 S: serde::ser::Serializer,
25736 {
25737 use serde::ser::SerializeMap;
25738 #[allow(unused_imports)]
25739 use std::option::Option::Some;
25740 let mut state = serializer.serialize_map(std::option::Option::None)?;
25741 if !self.name.is_empty() {
25742 state.serialize_entry("name", &self.name)?;
25743 }
25744 if self.create_time.is_some() {
25745 state.serialize_entry("createTime", &self.create_time)?;
25746 }
25747 if !wkt::internal::is_default(&self.state) {
25748 state.serialize_entry("state", &self.state)?;
25749 }
25750 if !self.activation_key.is_empty() {
25751 state.serialize_entry("activationKey", &self.activation_key)?;
25752 }
25753 if !self.uid.is_empty() {
25754 state.serialize_entry("uid", &self.uid)?;
25755 }
25756 if !self._unknown_fields.is_empty() {
25757 for (key, value) in self._unknown_fields.iter() {
25758 state.serialize_entry(key, &value)?;
25759 }
25760 }
25761 state.end()
25762 }
25763}
25764
25765pub mod hcx_activation_key {
25767 #[allow(unused_imports)]
25768 use super::*;
25769
25770 #[derive(Clone, Debug, PartialEq)]
25786 #[non_exhaustive]
25787 pub enum State {
25788 Unspecified,
25790 Available,
25792 Consumed,
25794 Creating,
25796 UnknownValue(state::UnknownValue),
25801 }
25802
25803 #[doc(hidden)]
25804 pub mod state {
25805 #[allow(unused_imports)]
25806 use super::*;
25807 #[derive(Clone, Debug, PartialEq)]
25808 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
25809 }
25810
25811 impl State {
25812 pub fn value(&self) -> std::option::Option<i32> {
25817 match self {
25818 Self::Unspecified => std::option::Option::Some(0),
25819 Self::Available => std::option::Option::Some(1),
25820 Self::Consumed => std::option::Option::Some(2),
25821 Self::Creating => std::option::Option::Some(3),
25822 Self::UnknownValue(u) => u.0.value(),
25823 }
25824 }
25825
25826 pub fn name(&self) -> std::option::Option<&str> {
25831 match self {
25832 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
25833 Self::Available => std::option::Option::Some("AVAILABLE"),
25834 Self::Consumed => std::option::Option::Some("CONSUMED"),
25835 Self::Creating => std::option::Option::Some("CREATING"),
25836 Self::UnknownValue(u) => u.0.name(),
25837 }
25838 }
25839 }
25840
25841 impl std::default::Default for State {
25842 fn default() -> Self {
25843 use std::convert::From;
25844 Self::from(0)
25845 }
25846 }
25847
25848 impl std::fmt::Display for State {
25849 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
25850 wkt::internal::display_enum(f, self.name(), self.value())
25851 }
25852 }
25853
25854 impl std::convert::From<i32> for State {
25855 fn from(value: i32) -> Self {
25856 match value {
25857 0 => Self::Unspecified,
25858 1 => Self::Available,
25859 2 => Self::Consumed,
25860 3 => Self::Creating,
25861 _ => Self::UnknownValue(state::UnknownValue(
25862 wkt::internal::UnknownEnumValue::Integer(value),
25863 )),
25864 }
25865 }
25866 }
25867
25868 impl std::convert::From<&str> for State {
25869 fn from(value: &str) -> Self {
25870 use std::string::ToString;
25871 match value {
25872 "STATE_UNSPECIFIED" => Self::Unspecified,
25873 "AVAILABLE" => Self::Available,
25874 "CONSUMED" => Self::Consumed,
25875 "CREATING" => Self::Creating,
25876 _ => Self::UnknownValue(state::UnknownValue(
25877 wkt::internal::UnknownEnumValue::String(value.to_string()),
25878 )),
25879 }
25880 }
25881 }
25882
25883 impl serde::ser::Serialize for State {
25884 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
25885 where
25886 S: serde::Serializer,
25887 {
25888 match self {
25889 Self::Unspecified => serializer.serialize_i32(0),
25890 Self::Available => serializer.serialize_i32(1),
25891 Self::Consumed => serializer.serialize_i32(2),
25892 Self::Creating => serializer.serialize_i32(3),
25893 Self::UnknownValue(u) => u.0.serialize(serializer),
25894 }
25895 }
25896 }
25897
25898 impl<'de> serde::de::Deserialize<'de> for State {
25899 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25900 where
25901 D: serde::Deserializer<'de>,
25902 {
25903 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
25904 ".google.cloud.vmwareengine.v1.HcxActivationKey.State",
25905 ))
25906 }
25907 }
25908}
25909
25910#[derive(Clone, Debug, Default, PartialEq)]
25912#[non_exhaustive]
25913pub struct Hcx {
25914 pub internal_ip: std::string::String,
25916
25917 pub version: std::string::String,
25919
25920 pub state: crate::model::hcx::State,
25922
25923 pub fqdn: std::string::String,
25925
25926 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
25927}
25928
25929impl Hcx {
25930 pub fn new() -> Self {
25931 std::default::Default::default()
25932 }
25933
25934 pub fn set_internal_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25936 self.internal_ip = v.into();
25937 self
25938 }
25939
25940 pub fn set_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25942 self.version = v.into();
25943 self
25944 }
25945
25946 pub fn set_state<T: std::convert::Into<crate::model::hcx::State>>(mut self, v: T) -> Self {
25948 self.state = v.into();
25949 self
25950 }
25951
25952 pub fn set_fqdn<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
25954 self.fqdn = v.into();
25955 self
25956 }
25957}
25958
25959impl wkt::message::Message for Hcx {
25960 fn typename() -> &'static str {
25961 "type.googleapis.com/google.cloud.vmwareengine.v1.Hcx"
25962 }
25963}
25964
25965#[doc(hidden)]
25966impl<'de> serde::de::Deserialize<'de> for Hcx {
25967 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25968 where
25969 D: serde::Deserializer<'de>,
25970 {
25971 #[allow(non_camel_case_types)]
25972 #[doc(hidden)]
25973 #[derive(PartialEq, Eq, Hash)]
25974 enum __FieldTag {
25975 __internal_ip,
25976 __version,
25977 __state,
25978 __fqdn,
25979 Unknown(std::string::String),
25980 }
25981 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
25982 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
25983 where
25984 D: serde::Deserializer<'de>,
25985 {
25986 struct Visitor;
25987 impl<'de> serde::de::Visitor<'de> for Visitor {
25988 type Value = __FieldTag;
25989 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
25990 formatter.write_str("a field name for Hcx")
25991 }
25992 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
25993 where
25994 E: serde::de::Error,
25995 {
25996 use std::result::Result::Ok;
25997 use std::string::ToString;
25998 match value {
25999 "internalIp" => Ok(__FieldTag::__internal_ip),
26000 "internal_ip" => Ok(__FieldTag::__internal_ip),
26001 "version" => Ok(__FieldTag::__version),
26002 "state" => Ok(__FieldTag::__state),
26003 "fqdn" => Ok(__FieldTag::__fqdn),
26004 _ => Ok(__FieldTag::Unknown(value.to_string())),
26005 }
26006 }
26007 }
26008 deserializer.deserialize_identifier(Visitor)
26009 }
26010 }
26011 struct Visitor;
26012 impl<'de> serde::de::Visitor<'de> for Visitor {
26013 type Value = Hcx;
26014 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
26015 formatter.write_str("struct Hcx")
26016 }
26017 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
26018 where
26019 A: serde::de::MapAccess<'de>,
26020 {
26021 #[allow(unused_imports)]
26022 use serde::de::Error;
26023 use std::option::Option::Some;
26024 let mut fields = std::collections::HashSet::new();
26025 let mut result = Self::Value::new();
26026 while let Some(tag) = map.next_key::<__FieldTag>()? {
26027 #[allow(clippy::match_single_binding)]
26028 match tag {
26029 __FieldTag::__internal_ip => {
26030 if !fields.insert(__FieldTag::__internal_ip) {
26031 return std::result::Result::Err(A::Error::duplicate_field(
26032 "multiple values for internal_ip",
26033 ));
26034 }
26035 result.internal_ip = map
26036 .next_value::<std::option::Option<std::string::String>>()?
26037 .unwrap_or_default();
26038 }
26039 __FieldTag::__version => {
26040 if !fields.insert(__FieldTag::__version) {
26041 return std::result::Result::Err(A::Error::duplicate_field(
26042 "multiple values for version",
26043 ));
26044 }
26045 result.version = map
26046 .next_value::<std::option::Option<std::string::String>>()?
26047 .unwrap_or_default();
26048 }
26049 __FieldTag::__state => {
26050 if !fields.insert(__FieldTag::__state) {
26051 return std::result::Result::Err(A::Error::duplicate_field(
26052 "multiple values for state",
26053 ));
26054 }
26055 result.state = map
26056 .next_value::<std::option::Option<crate::model::hcx::State>>()?
26057 .unwrap_or_default();
26058 }
26059 __FieldTag::__fqdn => {
26060 if !fields.insert(__FieldTag::__fqdn) {
26061 return std::result::Result::Err(A::Error::duplicate_field(
26062 "multiple values for fqdn",
26063 ));
26064 }
26065 result.fqdn = map
26066 .next_value::<std::option::Option<std::string::String>>()?
26067 .unwrap_or_default();
26068 }
26069 __FieldTag::Unknown(key) => {
26070 let value = map.next_value::<serde_json::Value>()?;
26071 result._unknown_fields.insert(key, value);
26072 }
26073 }
26074 }
26075 std::result::Result::Ok(result)
26076 }
26077 }
26078 deserializer.deserialize_any(Visitor)
26079 }
26080}
26081
26082#[doc(hidden)]
26083impl serde::ser::Serialize for Hcx {
26084 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
26085 where
26086 S: serde::ser::Serializer,
26087 {
26088 use serde::ser::SerializeMap;
26089 #[allow(unused_imports)]
26090 use std::option::Option::Some;
26091 let mut state = serializer.serialize_map(std::option::Option::None)?;
26092 if !self.internal_ip.is_empty() {
26093 state.serialize_entry("internalIp", &self.internal_ip)?;
26094 }
26095 if !self.version.is_empty() {
26096 state.serialize_entry("version", &self.version)?;
26097 }
26098 if !wkt::internal::is_default(&self.state) {
26099 state.serialize_entry("state", &self.state)?;
26100 }
26101 if !self.fqdn.is_empty() {
26102 state.serialize_entry("fqdn", &self.fqdn)?;
26103 }
26104 if !self._unknown_fields.is_empty() {
26105 for (key, value) in self._unknown_fields.iter() {
26106 state.serialize_entry(key, &value)?;
26107 }
26108 }
26109 state.end()
26110 }
26111}
26112
26113pub mod hcx {
26115 #[allow(unused_imports)]
26116 use super::*;
26117
26118 #[derive(Clone, Debug, PartialEq)]
26134 #[non_exhaustive]
26135 pub enum State {
26136 Unspecified,
26138 Active,
26140 Creating,
26142 Activating,
26144 UnknownValue(state::UnknownValue),
26149 }
26150
26151 #[doc(hidden)]
26152 pub mod state {
26153 #[allow(unused_imports)]
26154 use super::*;
26155 #[derive(Clone, Debug, PartialEq)]
26156 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
26157 }
26158
26159 impl State {
26160 pub fn value(&self) -> std::option::Option<i32> {
26165 match self {
26166 Self::Unspecified => std::option::Option::Some(0),
26167 Self::Active => std::option::Option::Some(1),
26168 Self::Creating => std::option::Option::Some(2),
26169 Self::Activating => std::option::Option::Some(3),
26170 Self::UnknownValue(u) => u.0.value(),
26171 }
26172 }
26173
26174 pub fn name(&self) -> std::option::Option<&str> {
26179 match self {
26180 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
26181 Self::Active => std::option::Option::Some("ACTIVE"),
26182 Self::Creating => std::option::Option::Some("CREATING"),
26183 Self::Activating => std::option::Option::Some("ACTIVATING"),
26184 Self::UnknownValue(u) => u.0.name(),
26185 }
26186 }
26187 }
26188
26189 impl std::default::Default for State {
26190 fn default() -> Self {
26191 use std::convert::From;
26192 Self::from(0)
26193 }
26194 }
26195
26196 impl std::fmt::Display for State {
26197 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
26198 wkt::internal::display_enum(f, self.name(), self.value())
26199 }
26200 }
26201
26202 impl std::convert::From<i32> for State {
26203 fn from(value: i32) -> Self {
26204 match value {
26205 0 => Self::Unspecified,
26206 1 => Self::Active,
26207 2 => Self::Creating,
26208 3 => Self::Activating,
26209 _ => Self::UnknownValue(state::UnknownValue(
26210 wkt::internal::UnknownEnumValue::Integer(value),
26211 )),
26212 }
26213 }
26214 }
26215
26216 impl std::convert::From<&str> for State {
26217 fn from(value: &str) -> Self {
26218 use std::string::ToString;
26219 match value {
26220 "STATE_UNSPECIFIED" => Self::Unspecified,
26221 "ACTIVE" => Self::Active,
26222 "CREATING" => Self::Creating,
26223 "ACTIVATING" => Self::Activating,
26224 _ => Self::UnknownValue(state::UnknownValue(
26225 wkt::internal::UnknownEnumValue::String(value.to_string()),
26226 )),
26227 }
26228 }
26229 }
26230
26231 impl serde::ser::Serialize for State {
26232 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
26233 where
26234 S: serde::Serializer,
26235 {
26236 match self {
26237 Self::Unspecified => serializer.serialize_i32(0),
26238 Self::Active => serializer.serialize_i32(1),
26239 Self::Creating => serializer.serialize_i32(2),
26240 Self::Activating => serializer.serialize_i32(3),
26241 Self::UnknownValue(u) => u.0.serialize(serializer),
26242 }
26243 }
26244 }
26245
26246 impl<'de> serde::de::Deserialize<'de> for State {
26247 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26248 where
26249 D: serde::Deserializer<'de>,
26250 {
26251 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
26252 ".google.cloud.vmwareengine.v1.Hcx.State",
26253 ))
26254 }
26255 }
26256}
26257
26258#[derive(Clone, Debug, Default, PartialEq)]
26260#[non_exhaustive]
26261pub struct Nsx {
26262 pub internal_ip: std::string::String,
26264
26265 pub version: std::string::String,
26267
26268 pub state: crate::model::nsx::State,
26270
26271 pub fqdn: std::string::String,
26273
26274 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
26275}
26276
26277impl Nsx {
26278 pub fn new() -> Self {
26279 std::default::Default::default()
26280 }
26281
26282 pub fn set_internal_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
26284 self.internal_ip = v.into();
26285 self
26286 }
26287
26288 pub fn set_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
26290 self.version = v.into();
26291 self
26292 }
26293
26294 pub fn set_state<T: std::convert::Into<crate::model::nsx::State>>(mut self, v: T) -> Self {
26296 self.state = v.into();
26297 self
26298 }
26299
26300 pub fn set_fqdn<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
26302 self.fqdn = v.into();
26303 self
26304 }
26305}
26306
26307impl wkt::message::Message for Nsx {
26308 fn typename() -> &'static str {
26309 "type.googleapis.com/google.cloud.vmwareengine.v1.Nsx"
26310 }
26311}
26312
26313#[doc(hidden)]
26314impl<'de> serde::de::Deserialize<'de> for Nsx {
26315 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26316 where
26317 D: serde::Deserializer<'de>,
26318 {
26319 #[allow(non_camel_case_types)]
26320 #[doc(hidden)]
26321 #[derive(PartialEq, Eq, Hash)]
26322 enum __FieldTag {
26323 __internal_ip,
26324 __version,
26325 __state,
26326 __fqdn,
26327 Unknown(std::string::String),
26328 }
26329 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
26330 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26331 where
26332 D: serde::Deserializer<'de>,
26333 {
26334 struct Visitor;
26335 impl<'de> serde::de::Visitor<'de> for Visitor {
26336 type Value = __FieldTag;
26337 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
26338 formatter.write_str("a field name for Nsx")
26339 }
26340 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
26341 where
26342 E: serde::de::Error,
26343 {
26344 use std::result::Result::Ok;
26345 use std::string::ToString;
26346 match value {
26347 "internalIp" => Ok(__FieldTag::__internal_ip),
26348 "internal_ip" => Ok(__FieldTag::__internal_ip),
26349 "version" => Ok(__FieldTag::__version),
26350 "state" => Ok(__FieldTag::__state),
26351 "fqdn" => Ok(__FieldTag::__fqdn),
26352 _ => Ok(__FieldTag::Unknown(value.to_string())),
26353 }
26354 }
26355 }
26356 deserializer.deserialize_identifier(Visitor)
26357 }
26358 }
26359 struct Visitor;
26360 impl<'de> serde::de::Visitor<'de> for Visitor {
26361 type Value = Nsx;
26362 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
26363 formatter.write_str("struct Nsx")
26364 }
26365 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
26366 where
26367 A: serde::de::MapAccess<'de>,
26368 {
26369 #[allow(unused_imports)]
26370 use serde::de::Error;
26371 use std::option::Option::Some;
26372 let mut fields = std::collections::HashSet::new();
26373 let mut result = Self::Value::new();
26374 while let Some(tag) = map.next_key::<__FieldTag>()? {
26375 #[allow(clippy::match_single_binding)]
26376 match tag {
26377 __FieldTag::__internal_ip => {
26378 if !fields.insert(__FieldTag::__internal_ip) {
26379 return std::result::Result::Err(A::Error::duplicate_field(
26380 "multiple values for internal_ip",
26381 ));
26382 }
26383 result.internal_ip = map
26384 .next_value::<std::option::Option<std::string::String>>()?
26385 .unwrap_or_default();
26386 }
26387 __FieldTag::__version => {
26388 if !fields.insert(__FieldTag::__version) {
26389 return std::result::Result::Err(A::Error::duplicate_field(
26390 "multiple values for version",
26391 ));
26392 }
26393 result.version = map
26394 .next_value::<std::option::Option<std::string::String>>()?
26395 .unwrap_or_default();
26396 }
26397 __FieldTag::__state => {
26398 if !fields.insert(__FieldTag::__state) {
26399 return std::result::Result::Err(A::Error::duplicate_field(
26400 "multiple values for state",
26401 ));
26402 }
26403 result.state = map
26404 .next_value::<std::option::Option<crate::model::nsx::State>>()?
26405 .unwrap_or_default();
26406 }
26407 __FieldTag::__fqdn => {
26408 if !fields.insert(__FieldTag::__fqdn) {
26409 return std::result::Result::Err(A::Error::duplicate_field(
26410 "multiple values for fqdn",
26411 ));
26412 }
26413 result.fqdn = map
26414 .next_value::<std::option::Option<std::string::String>>()?
26415 .unwrap_or_default();
26416 }
26417 __FieldTag::Unknown(key) => {
26418 let value = map.next_value::<serde_json::Value>()?;
26419 result._unknown_fields.insert(key, value);
26420 }
26421 }
26422 }
26423 std::result::Result::Ok(result)
26424 }
26425 }
26426 deserializer.deserialize_any(Visitor)
26427 }
26428}
26429
26430#[doc(hidden)]
26431impl serde::ser::Serialize for Nsx {
26432 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
26433 where
26434 S: serde::ser::Serializer,
26435 {
26436 use serde::ser::SerializeMap;
26437 #[allow(unused_imports)]
26438 use std::option::Option::Some;
26439 let mut state = serializer.serialize_map(std::option::Option::None)?;
26440 if !self.internal_ip.is_empty() {
26441 state.serialize_entry("internalIp", &self.internal_ip)?;
26442 }
26443 if !self.version.is_empty() {
26444 state.serialize_entry("version", &self.version)?;
26445 }
26446 if !wkt::internal::is_default(&self.state) {
26447 state.serialize_entry("state", &self.state)?;
26448 }
26449 if !self.fqdn.is_empty() {
26450 state.serialize_entry("fqdn", &self.fqdn)?;
26451 }
26452 if !self._unknown_fields.is_empty() {
26453 for (key, value) in self._unknown_fields.iter() {
26454 state.serialize_entry(key, &value)?;
26455 }
26456 }
26457 state.end()
26458 }
26459}
26460
26461pub mod nsx {
26463 #[allow(unused_imports)]
26464 use super::*;
26465
26466 #[derive(Clone, Debug, PartialEq)]
26482 #[non_exhaustive]
26483 pub enum State {
26484 Unspecified,
26486 Active,
26488 Creating,
26490 UnknownValue(state::UnknownValue),
26495 }
26496
26497 #[doc(hidden)]
26498 pub mod state {
26499 #[allow(unused_imports)]
26500 use super::*;
26501 #[derive(Clone, Debug, PartialEq)]
26502 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
26503 }
26504
26505 impl State {
26506 pub fn value(&self) -> std::option::Option<i32> {
26511 match self {
26512 Self::Unspecified => std::option::Option::Some(0),
26513 Self::Active => std::option::Option::Some(1),
26514 Self::Creating => std::option::Option::Some(2),
26515 Self::UnknownValue(u) => u.0.value(),
26516 }
26517 }
26518
26519 pub fn name(&self) -> std::option::Option<&str> {
26524 match self {
26525 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
26526 Self::Active => std::option::Option::Some("ACTIVE"),
26527 Self::Creating => std::option::Option::Some("CREATING"),
26528 Self::UnknownValue(u) => u.0.name(),
26529 }
26530 }
26531 }
26532
26533 impl std::default::Default for State {
26534 fn default() -> Self {
26535 use std::convert::From;
26536 Self::from(0)
26537 }
26538 }
26539
26540 impl std::fmt::Display for State {
26541 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
26542 wkt::internal::display_enum(f, self.name(), self.value())
26543 }
26544 }
26545
26546 impl std::convert::From<i32> for State {
26547 fn from(value: i32) -> Self {
26548 match value {
26549 0 => Self::Unspecified,
26550 1 => Self::Active,
26551 2 => Self::Creating,
26552 _ => Self::UnknownValue(state::UnknownValue(
26553 wkt::internal::UnknownEnumValue::Integer(value),
26554 )),
26555 }
26556 }
26557 }
26558
26559 impl std::convert::From<&str> for State {
26560 fn from(value: &str) -> Self {
26561 use std::string::ToString;
26562 match value {
26563 "STATE_UNSPECIFIED" => Self::Unspecified,
26564 "ACTIVE" => Self::Active,
26565 "CREATING" => Self::Creating,
26566 _ => Self::UnknownValue(state::UnknownValue(
26567 wkt::internal::UnknownEnumValue::String(value.to_string()),
26568 )),
26569 }
26570 }
26571 }
26572
26573 impl serde::ser::Serialize for State {
26574 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
26575 where
26576 S: serde::Serializer,
26577 {
26578 match self {
26579 Self::Unspecified => serializer.serialize_i32(0),
26580 Self::Active => serializer.serialize_i32(1),
26581 Self::Creating => serializer.serialize_i32(2),
26582 Self::UnknownValue(u) => u.0.serialize(serializer),
26583 }
26584 }
26585 }
26586
26587 impl<'de> serde::de::Deserialize<'de> for State {
26588 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26589 where
26590 D: serde::Deserializer<'de>,
26591 {
26592 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
26593 ".google.cloud.vmwareengine.v1.Nsx.State",
26594 ))
26595 }
26596 }
26597}
26598
26599#[derive(Clone, Debug, Default, PartialEq)]
26601#[non_exhaustive]
26602pub struct Vcenter {
26603 pub internal_ip: std::string::String,
26605
26606 pub version: std::string::String,
26608
26609 pub state: crate::model::vcenter::State,
26611
26612 pub fqdn: std::string::String,
26614
26615 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
26616}
26617
26618impl Vcenter {
26619 pub fn new() -> Self {
26620 std::default::Default::default()
26621 }
26622
26623 pub fn set_internal_ip<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
26625 self.internal_ip = v.into();
26626 self
26627 }
26628
26629 pub fn set_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
26631 self.version = v.into();
26632 self
26633 }
26634
26635 pub fn set_state<T: std::convert::Into<crate::model::vcenter::State>>(mut self, v: T) -> Self {
26637 self.state = v.into();
26638 self
26639 }
26640
26641 pub fn set_fqdn<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
26643 self.fqdn = v.into();
26644 self
26645 }
26646}
26647
26648impl wkt::message::Message for Vcenter {
26649 fn typename() -> &'static str {
26650 "type.googleapis.com/google.cloud.vmwareengine.v1.Vcenter"
26651 }
26652}
26653
26654#[doc(hidden)]
26655impl<'de> serde::de::Deserialize<'de> for Vcenter {
26656 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26657 where
26658 D: serde::Deserializer<'de>,
26659 {
26660 #[allow(non_camel_case_types)]
26661 #[doc(hidden)]
26662 #[derive(PartialEq, Eq, Hash)]
26663 enum __FieldTag {
26664 __internal_ip,
26665 __version,
26666 __state,
26667 __fqdn,
26668 Unknown(std::string::String),
26669 }
26670 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
26671 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26672 where
26673 D: serde::Deserializer<'de>,
26674 {
26675 struct Visitor;
26676 impl<'de> serde::de::Visitor<'de> for Visitor {
26677 type Value = __FieldTag;
26678 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
26679 formatter.write_str("a field name for Vcenter")
26680 }
26681 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
26682 where
26683 E: serde::de::Error,
26684 {
26685 use std::result::Result::Ok;
26686 use std::string::ToString;
26687 match value {
26688 "internalIp" => Ok(__FieldTag::__internal_ip),
26689 "internal_ip" => Ok(__FieldTag::__internal_ip),
26690 "version" => Ok(__FieldTag::__version),
26691 "state" => Ok(__FieldTag::__state),
26692 "fqdn" => Ok(__FieldTag::__fqdn),
26693 _ => Ok(__FieldTag::Unknown(value.to_string())),
26694 }
26695 }
26696 }
26697 deserializer.deserialize_identifier(Visitor)
26698 }
26699 }
26700 struct Visitor;
26701 impl<'de> serde::de::Visitor<'de> for Visitor {
26702 type Value = Vcenter;
26703 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
26704 formatter.write_str("struct Vcenter")
26705 }
26706 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
26707 where
26708 A: serde::de::MapAccess<'de>,
26709 {
26710 #[allow(unused_imports)]
26711 use serde::de::Error;
26712 use std::option::Option::Some;
26713 let mut fields = std::collections::HashSet::new();
26714 let mut result = Self::Value::new();
26715 while let Some(tag) = map.next_key::<__FieldTag>()? {
26716 #[allow(clippy::match_single_binding)]
26717 match tag {
26718 __FieldTag::__internal_ip => {
26719 if !fields.insert(__FieldTag::__internal_ip) {
26720 return std::result::Result::Err(A::Error::duplicate_field(
26721 "multiple values for internal_ip",
26722 ));
26723 }
26724 result.internal_ip = map
26725 .next_value::<std::option::Option<std::string::String>>()?
26726 .unwrap_or_default();
26727 }
26728 __FieldTag::__version => {
26729 if !fields.insert(__FieldTag::__version) {
26730 return std::result::Result::Err(A::Error::duplicate_field(
26731 "multiple values for version",
26732 ));
26733 }
26734 result.version = map
26735 .next_value::<std::option::Option<std::string::String>>()?
26736 .unwrap_or_default();
26737 }
26738 __FieldTag::__state => {
26739 if !fields.insert(__FieldTag::__state) {
26740 return std::result::Result::Err(A::Error::duplicate_field(
26741 "multiple values for state",
26742 ));
26743 }
26744 result.state = map
26745 .next_value::<std::option::Option<crate::model::vcenter::State>>()?
26746 .unwrap_or_default();
26747 }
26748 __FieldTag::__fqdn => {
26749 if !fields.insert(__FieldTag::__fqdn) {
26750 return std::result::Result::Err(A::Error::duplicate_field(
26751 "multiple values for fqdn",
26752 ));
26753 }
26754 result.fqdn = map
26755 .next_value::<std::option::Option<std::string::String>>()?
26756 .unwrap_or_default();
26757 }
26758 __FieldTag::Unknown(key) => {
26759 let value = map.next_value::<serde_json::Value>()?;
26760 result._unknown_fields.insert(key, value);
26761 }
26762 }
26763 }
26764 std::result::Result::Ok(result)
26765 }
26766 }
26767 deserializer.deserialize_any(Visitor)
26768 }
26769}
26770
26771#[doc(hidden)]
26772impl serde::ser::Serialize for Vcenter {
26773 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
26774 where
26775 S: serde::ser::Serializer,
26776 {
26777 use serde::ser::SerializeMap;
26778 #[allow(unused_imports)]
26779 use std::option::Option::Some;
26780 let mut state = serializer.serialize_map(std::option::Option::None)?;
26781 if !self.internal_ip.is_empty() {
26782 state.serialize_entry("internalIp", &self.internal_ip)?;
26783 }
26784 if !self.version.is_empty() {
26785 state.serialize_entry("version", &self.version)?;
26786 }
26787 if !wkt::internal::is_default(&self.state) {
26788 state.serialize_entry("state", &self.state)?;
26789 }
26790 if !self.fqdn.is_empty() {
26791 state.serialize_entry("fqdn", &self.fqdn)?;
26792 }
26793 if !self._unknown_fields.is_empty() {
26794 for (key, value) in self._unknown_fields.iter() {
26795 state.serialize_entry(key, &value)?;
26796 }
26797 }
26798 state.end()
26799 }
26800}
26801
26802pub mod vcenter {
26804 #[allow(unused_imports)]
26805 use super::*;
26806
26807 #[derive(Clone, Debug, PartialEq)]
26823 #[non_exhaustive]
26824 pub enum State {
26825 Unspecified,
26827 Active,
26829 Creating,
26831 UnknownValue(state::UnknownValue),
26836 }
26837
26838 #[doc(hidden)]
26839 pub mod state {
26840 #[allow(unused_imports)]
26841 use super::*;
26842 #[derive(Clone, Debug, PartialEq)]
26843 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
26844 }
26845
26846 impl State {
26847 pub fn value(&self) -> std::option::Option<i32> {
26852 match self {
26853 Self::Unspecified => std::option::Option::Some(0),
26854 Self::Active => std::option::Option::Some(1),
26855 Self::Creating => std::option::Option::Some(2),
26856 Self::UnknownValue(u) => u.0.value(),
26857 }
26858 }
26859
26860 pub fn name(&self) -> std::option::Option<&str> {
26865 match self {
26866 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
26867 Self::Active => std::option::Option::Some("ACTIVE"),
26868 Self::Creating => std::option::Option::Some("CREATING"),
26869 Self::UnknownValue(u) => u.0.name(),
26870 }
26871 }
26872 }
26873
26874 impl std::default::Default for State {
26875 fn default() -> Self {
26876 use std::convert::From;
26877 Self::from(0)
26878 }
26879 }
26880
26881 impl std::fmt::Display for State {
26882 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
26883 wkt::internal::display_enum(f, self.name(), self.value())
26884 }
26885 }
26886
26887 impl std::convert::From<i32> for State {
26888 fn from(value: i32) -> Self {
26889 match value {
26890 0 => Self::Unspecified,
26891 1 => Self::Active,
26892 2 => Self::Creating,
26893 _ => Self::UnknownValue(state::UnknownValue(
26894 wkt::internal::UnknownEnumValue::Integer(value),
26895 )),
26896 }
26897 }
26898 }
26899
26900 impl std::convert::From<&str> for State {
26901 fn from(value: &str) -> Self {
26902 use std::string::ToString;
26903 match value {
26904 "STATE_UNSPECIFIED" => Self::Unspecified,
26905 "ACTIVE" => Self::Active,
26906 "CREATING" => Self::Creating,
26907 _ => Self::UnknownValue(state::UnknownValue(
26908 wkt::internal::UnknownEnumValue::String(value.to_string()),
26909 )),
26910 }
26911 }
26912 }
26913
26914 impl serde::ser::Serialize for State {
26915 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
26916 where
26917 S: serde::Serializer,
26918 {
26919 match self {
26920 Self::Unspecified => serializer.serialize_i32(0),
26921 Self::Active => serializer.serialize_i32(1),
26922 Self::Creating => serializer.serialize_i32(2),
26923 Self::UnknownValue(u) => u.0.serialize(serializer),
26924 }
26925 }
26926 }
26927
26928 impl<'de> serde::de::Deserialize<'de> for State {
26929 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
26930 where
26931 D: serde::Deserializer<'de>,
26932 {
26933 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
26934 ".google.cloud.vmwareengine.v1.Vcenter.State",
26935 ))
26936 }
26937 }
26938}
26939
26940#[derive(Clone, Debug, Default, PartialEq)]
26943#[non_exhaustive]
26944pub struct AutoscalingSettings {
26945 pub autoscaling_policies: std::collections::HashMap<
26959 std::string::String,
26960 crate::model::autoscaling_settings::AutoscalingPolicy,
26961 >,
26962
26963 pub min_cluster_node_count: i32,
26966
26967 pub max_cluster_node_count: i32,
26970
26971 pub cool_down_period: std::option::Option<wkt::Duration>,
26976
26977 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
26978}
26979
26980impl AutoscalingSettings {
26981 pub fn new() -> Self {
26982 std::default::Default::default()
26983 }
26984
26985 pub fn set_autoscaling_policies<T, K, V>(mut self, v: T) -> Self
26987 where
26988 T: std::iter::IntoIterator<Item = (K, V)>,
26989 K: std::convert::Into<std::string::String>,
26990 V: std::convert::Into<crate::model::autoscaling_settings::AutoscalingPolicy>,
26991 {
26992 use std::iter::Iterator;
26993 self.autoscaling_policies = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
26994 self
26995 }
26996
26997 pub fn set_min_cluster_node_count<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
26999 self.min_cluster_node_count = v.into();
27000 self
27001 }
27002
27003 pub fn set_max_cluster_node_count<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
27005 self.max_cluster_node_count = v.into();
27006 self
27007 }
27008
27009 pub fn set_cool_down_period<T>(mut self, v: T) -> Self
27011 where
27012 T: std::convert::Into<wkt::Duration>,
27013 {
27014 self.cool_down_period = std::option::Option::Some(v.into());
27015 self
27016 }
27017
27018 pub fn set_or_clear_cool_down_period<T>(mut self, v: std::option::Option<T>) -> Self
27020 where
27021 T: std::convert::Into<wkt::Duration>,
27022 {
27023 self.cool_down_period = v.map(|x| x.into());
27024 self
27025 }
27026}
27027
27028impl wkt::message::Message for AutoscalingSettings {
27029 fn typename() -> &'static str {
27030 "type.googleapis.com/google.cloud.vmwareengine.v1.AutoscalingSettings"
27031 }
27032}
27033
27034#[doc(hidden)]
27035impl<'de> serde::de::Deserialize<'de> for AutoscalingSettings {
27036 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27037 where
27038 D: serde::Deserializer<'de>,
27039 {
27040 #[allow(non_camel_case_types)]
27041 #[doc(hidden)]
27042 #[derive(PartialEq, Eq, Hash)]
27043 enum __FieldTag {
27044 __autoscaling_policies,
27045 __min_cluster_node_count,
27046 __max_cluster_node_count,
27047 __cool_down_period,
27048 Unknown(std::string::String),
27049 }
27050 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
27051 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27052 where
27053 D: serde::Deserializer<'de>,
27054 {
27055 struct Visitor;
27056 impl<'de> serde::de::Visitor<'de> for Visitor {
27057 type Value = __FieldTag;
27058 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
27059 formatter.write_str("a field name for AutoscalingSettings")
27060 }
27061 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
27062 where
27063 E: serde::de::Error,
27064 {
27065 use std::result::Result::Ok;
27066 use std::string::ToString;
27067 match value {
27068 "autoscalingPolicies" => Ok(__FieldTag::__autoscaling_policies),
27069 "autoscaling_policies" => Ok(__FieldTag::__autoscaling_policies),
27070 "minClusterNodeCount" => Ok(__FieldTag::__min_cluster_node_count),
27071 "min_cluster_node_count" => Ok(__FieldTag::__min_cluster_node_count),
27072 "maxClusterNodeCount" => Ok(__FieldTag::__max_cluster_node_count),
27073 "max_cluster_node_count" => Ok(__FieldTag::__max_cluster_node_count),
27074 "coolDownPeriod" => Ok(__FieldTag::__cool_down_period),
27075 "cool_down_period" => Ok(__FieldTag::__cool_down_period),
27076 _ => Ok(__FieldTag::Unknown(value.to_string())),
27077 }
27078 }
27079 }
27080 deserializer.deserialize_identifier(Visitor)
27081 }
27082 }
27083 struct Visitor;
27084 impl<'de> serde::de::Visitor<'de> for Visitor {
27085 type Value = AutoscalingSettings;
27086 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
27087 formatter.write_str("struct AutoscalingSettings")
27088 }
27089 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
27090 where
27091 A: serde::de::MapAccess<'de>,
27092 {
27093 #[allow(unused_imports)]
27094 use serde::de::Error;
27095 use std::option::Option::Some;
27096 let mut fields = std::collections::HashSet::new();
27097 let mut result = Self::Value::new();
27098 while let Some(tag) = map.next_key::<__FieldTag>()? {
27099 #[allow(clippy::match_single_binding)]
27100 match tag {
27101 __FieldTag::__autoscaling_policies => {
27102 if !fields.insert(__FieldTag::__autoscaling_policies) {
27103 return std::result::Result::Err(A::Error::duplicate_field(
27104 "multiple values for autoscaling_policies",
27105 ));
27106 }
27107 result.autoscaling_policies = map
27108 .next_value::<std::option::Option<
27109 std::collections::HashMap<
27110 std::string::String,
27111 crate::model::autoscaling_settings::AutoscalingPolicy,
27112 >,
27113 >>()?
27114 .unwrap_or_default();
27115 }
27116 __FieldTag::__min_cluster_node_count => {
27117 if !fields.insert(__FieldTag::__min_cluster_node_count) {
27118 return std::result::Result::Err(A::Error::duplicate_field(
27119 "multiple values for min_cluster_node_count",
27120 ));
27121 }
27122 struct __With(std::option::Option<i32>);
27123 impl<'de> serde::de::Deserialize<'de> for __With {
27124 fn deserialize<D>(
27125 deserializer: D,
27126 ) -> std::result::Result<Self, D::Error>
27127 where
27128 D: serde::de::Deserializer<'de>,
27129 {
27130 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
27131 }
27132 }
27133 result.min_cluster_node_count =
27134 map.next_value::<__With>()?.0.unwrap_or_default();
27135 }
27136 __FieldTag::__max_cluster_node_count => {
27137 if !fields.insert(__FieldTag::__max_cluster_node_count) {
27138 return std::result::Result::Err(A::Error::duplicate_field(
27139 "multiple values for max_cluster_node_count",
27140 ));
27141 }
27142 struct __With(std::option::Option<i32>);
27143 impl<'de> serde::de::Deserialize<'de> for __With {
27144 fn deserialize<D>(
27145 deserializer: D,
27146 ) -> std::result::Result<Self, D::Error>
27147 where
27148 D: serde::de::Deserializer<'de>,
27149 {
27150 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
27151 }
27152 }
27153 result.max_cluster_node_count =
27154 map.next_value::<__With>()?.0.unwrap_or_default();
27155 }
27156 __FieldTag::__cool_down_period => {
27157 if !fields.insert(__FieldTag::__cool_down_period) {
27158 return std::result::Result::Err(A::Error::duplicate_field(
27159 "multiple values for cool_down_period",
27160 ));
27161 }
27162 result.cool_down_period =
27163 map.next_value::<std::option::Option<wkt::Duration>>()?;
27164 }
27165 __FieldTag::Unknown(key) => {
27166 let value = map.next_value::<serde_json::Value>()?;
27167 result._unknown_fields.insert(key, value);
27168 }
27169 }
27170 }
27171 std::result::Result::Ok(result)
27172 }
27173 }
27174 deserializer.deserialize_any(Visitor)
27175 }
27176}
27177
27178#[doc(hidden)]
27179impl serde::ser::Serialize for AutoscalingSettings {
27180 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27181 where
27182 S: serde::ser::Serializer,
27183 {
27184 use serde::ser::SerializeMap;
27185 #[allow(unused_imports)]
27186 use std::option::Option::Some;
27187 let mut state = serializer.serialize_map(std::option::Option::None)?;
27188 if !self.autoscaling_policies.is_empty() {
27189 state.serialize_entry("autoscalingPolicies", &self.autoscaling_policies)?;
27190 }
27191 if !wkt::internal::is_default(&self.min_cluster_node_count) {
27192 struct __With<'a>(&'a i32);
27193 impl<'a> serde::ser::Serialize for __With<'a> {
27194 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27195 where
27196 S: serde::ser::Serializer,
27197 {
27198 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
27199 }
27200 }
27201 state.serialize_entry("minClusterNodeCount", &__With(&self.min_cluster_node_count))?;
27202 }
27203 if !wkt::internal::is_default(&self.max_cluster_node_count) {
27204 struct __With<'a>(&'a i32);
27205 impl<'a> serde::ser::Serialize for __With<'a> {
27206 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27207 where
27208 S: serde::ser::Serializer,
27209 {
27210 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
27211 }
27212 }
27213 state.serialize_entry("maxClusterNodeCount", &__With(&self.max_cluster_node_count))?;
27214 }
27215 if self.cool_down_period.is_some() {
27216 state.serialize_entry("coolDownPeriod", &self.cool_down_period)?;
27217 }
27218 if !self._unknown_fields.is_empty() {
27219 for (key, value) in self._unknown_fields.iter() {
27220 state.serialize_entry(key, &value)?;
27221 }
27222 }
27223 state.end()
27224 }
27225}
27226
27227pub mod autoscaling_settings {
27229 #[allow(unused_imports)]
27230 use super::*;
27231
27232 #[derive(Clone, Debug, Default, PartialEq)]
27235 #[non_exhaustive]
27236 pub struct Thresholds {
27237 pub scale_out: i32,
27239
27240 pub scale_in: i32,
27242
27243 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
27244 }
27245
27246 impl Thresholds {
27247 pub fn new() -> Self {
27248 std::default::Default::default()
27249 }
27250
27251 pub fn set_scale_out<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
27253 self.scale_out = v.into();
27254 self
27255 }
27256
27257 pub fn set_scale_in<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
27259 self.scale_in = v.into();
27260 self
27261 }
27262 }
27263
27264 impl wkt::message::Message for Thresholds {
27265 fn typename() -> &'static str {
27266 "type.googleapis.com/google.cloud.vmwareengine.v1.AutoscalingSettings.Thresholds"
27267 }
27268 }
27269
27270 #[doc(hidden)]
27271 impl<'de> serde::de::Deserialize<'de> for Thresholds {
27272 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27273 where
27274 D: serde::Deserializer<'de>,
27275 {
27276 #[allow(non_camel_case_types)]
27277 #[doc(hidden)]
27278 #[derive(PartialEq, Eq, Hash)]
27279 enum __FieldTag {
27280 __scale_out,
27281 __scale_in,
27282 Unknown(std::string::String),
27283 }
27284 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
27285 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27286 where
27287 D: serde::Deserializer<'de>,
27288 {
27289 struct Visitor;
27290 impl<'de> serde::de::Visitor<'de> for Visitor {
27291 type Value = __FieldTag;
27292 fn expecting(
27293 &self,
27294 formatter: &mut std::fmt::Formatter,
27295 ) -> std::fmt::Result {
27296 formatter.write_str("a field name for Thresholds")
27297 }
27298 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
27299 where
27300 E: serde::de::Error,
27301 {
27302 use std::result::Result::Ok;
27303 use std::string::ToString;
27304 match value {
27305 "scaleOut" => Ok(__FieldTag::__scale_out),
27306 "scale_out" => Ok(__FieldTag::__scale_out),
27307 "scaleIn" => Ok(__FieldTag::__scale_in),
27308 "scale_in" => Ok(__FieldTag::__scale_in),
27309 _ => Ok(__FieldTag::Unknown(value.to_string())),
27310 }
27311 }
27312 }
27313 deserializer.deserialize_identifier(Visitor)
27314 }
27315 }
27316 struct Visitor;
27317 impl<'de> serde::de::Visitor<'de> for Visitor {
27318 type Value = Thresholds;
27319 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
27320 formatter.write_str("struct Thresholds")
27321 }
27322 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
27323 where
27324 A: serde::de::MapAccess<'de>,
27325 {
27326 #[allow(unused_imports)]
27327 use serde::de::Error;
27328 use std::option::Option::Some;
27329 let mut fields = std::collections::HashSet::new();
27330 let mut result = Self::Value::new();
27331 while let Some(tag) = map.next_key::<__FieldTag>()? {
27332 #[allow(clippy::match_single_binding)]
27333 match tag {
27334 __FieldTag::__scale_out => {
27335 if !fields.insert(__FieldTag::__scale_out) {
27336 return std::result::Result::Err(A::Error::duplicate_field(
27337 "multiple values for scale_out",
27338 ));
27339 }
27340 struct __With(std::option::Option<i32>);
27341 impl<'de> serde::de::Deserialize<'de> for __With {
27342 fn deserialize<D>(
27343 deserializer: D,
27344 ) -> std::result::Result<Self, D::Error>
27345 where
27346 D: serde::de::Deserializer<'de>,
27347 {
27348 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
27349 }
27350 }
27351 result.scale_out =
27352 map.next_value::<__With>()?.0.unwrap_or_default();
27353 }
27354 __FieldTag::__scale_in => {
27355 if !fields.insert(__FieldTag::__scale_in) {
27356 return std::result::Result::Err(A::Error::duplicate_field(
27357 "multiple values for scale_in",
27358 ));
27359 }
27360 struct __With(std::option::Option<i32>);
27361 impl<'de> serde::de::Deserialize<'de> for __With {
27362 fn deserialize<D>(
27363 deserializer: D,
27364 ) -> std::result::Result<Self, D::Error>
27365 where
27366 D: serde::de::Deserializer<'de>,
27367 {
27368 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
27369 }
27370 }
27371 result.scale_in = map.next_value::<__With>()?.0.unwrap_or_default();
27372 }
27373 __FieldTag::Unknown(key) => {
27374 let value = map.next_value::<serde_json::Value>()?;
27375 result._unknown_fields.insert(key, value);
27376 }
27377 }
27378 }
27379 std::result::Result::Ok(result)
27380 }
27381 }
27382 deserializer.deserialize_any(Visitor)
27383 }
27384 }
27385
27386 #[doc(hidden)]
27387 impl serde::ser::Serialize for Thresholds {
27388 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27389 where
27390 S: serde::ser::Serializer,
27391 {
27392 use serde::ser::SerializeMap;
27393 #[allow(unused_imports)]
27394 use std::option::Option::Some;
27395 let mut state = serializer.serialize_map(std::option::Option::None)?;
27396 if !wkt::internal::is_default(&self.scale_out) {
27397 struct __With<'a>(&'a i32);
27398 impl<'a> serde::ser::Serialize for __With<'a> {
27399 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27400 where
27401 S: serde::ser::Serializer,
27402 {
27403 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
27404 }
27405 }
27406 state.serialize_entry("scaleOut", &__With(&self.scale_out))?;
27407 }
27408 if !wkt::internal::is_default(&self.scale_in) {
27409 struct __With<'a>(&'a i32);
27410 impl<'a> serde::ser::Serialize for __With<'a> {
27411 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27412 where
27413 S: serde::ser::Serializer,
27414 {
27415 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
27416 }
27417 }
27418 state.serialize_entry("scaleIn", &__With(&self.scale_in))?;
27419 }
27420 if !self._unknown_fields.is_empty() {
27421 for (key, value) in self._unknown_fields.iter() {
27422 state.serialize_entry(key, &value)?;
27423 }
27424 }
27425 state.end()
27426 }
27427 }
27428
27429 #[derive(Clone, Debug, Default, PartialEq)]
27436 #[non_exhaustive]
27437 pub struct AutoscalingPolicy {
27438 pub node_type_id: std::string::String,
27441
27442 pub scale_out_size: i32,
27447
27448 pub cpu_thresholds: std::option::Option<crate::model::autoscaling_settings::Thresholds>,
27450
27451 pub granted_memory_thresholds:
27453 std::option::Option<crate::model::autoscaling_settings::Thresholds>,
27454
27455 pub consumed_memory_thresholds:
27457 std::option::Option<crate::model::autoscaling_settings::Thresholds>,
27458
27459 pub storage_thresholds: std::option::Option<crate::model::autoscaling_settings::Thresholds>,
27462
27463 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
27464 }
27465
27466 impl AutoscalingPolicy {
27467 pub fn new() -> Self {
27468 std::default::Default::default()
27469 }
27470
27471 pub fn set_node_type_id<T: std::convert::Into<std::string::String>>(
27473 mut self,
27474 v: T,
27475 ) -> Self {
27476 self.node_type_id = v.into();
27477 self
27478 }
27479
27480 pub fn set_scale_out_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
27482 self.scale_out_size = v.into();
27483 self
27484 }
27485
27486 pub fn set_cpu_thresholds<T>(mut self, v: T) -> Self
27488 where
27489 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27490 {
27491 self.cpu_thresholds = std::option::Option::Some(v.into());
27492 self
27493 }
27494
27495 pub fn set_or_clear_cpu_thresholds<T>(mut self, v: std::option::Option<T>) -> Self
27497 where
27498 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27499 {
27500 self.cpu_thresholds = v.map(|x| x.into());
27501 self
27502 }
27503
27504 pub fn set_granted_memory_thresholds<T>(mut self, v: T) -> Self
27506 where
27507 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27508 {
27509 self.granted_memory_thresholds = std::option::Option::Some(v.into());
27510 self
27511 }
27512
27513 pub fn set_or_clear_granted_memory_thresholds<T>(
27515 mut self,
27516 v: std::option::Option<T>,
27517 ) -> Self
27518 where
27519 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27520 {
27521 self.granted_memory_thresholds = v.map(|x| x.into());
27522 self
27523 }
27524
27525 pub fn set_consumed_memory_thresholds<T>(mut self, v: T) -> Self
27527 where
27528 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27529 {
27530 self.consumed_memory_thresholds = std::option::Option::Some(v.into());
27531 self
27532 }
27533
27534 pub fn set_or_clear_consumed_memory_thresholds<T>(
27536 mut self,
27537 v: std::option::Option<T>,
27538 ) -> Self
27539 where
27540 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27541 {
27542 self.consumed_memory_thresholds = v.map(|x| x.into());
27543 self
27544 }
27545
27546 pub fn set_storage_thresholds<T>(mut self, v: T) -> Self
27548 where
27549 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27550 {
27551 self.storage_thresholds = std::option::Option::Some(v.into());
27552 self
27553 }
27554
27555 pub fn set_or_clear_storage_thresholds<T>(mut self, v: std::option::Option<T>) -> Self
27557 where
27558 T: std::convert::Into<crate::model::autoscaling_settings::Thresholds>,
27559 {
27560 self.storage_thresholds = v.map(|x| x.into());
27561 self
27562 }
27563 }
27564
27565 impl wkt::message::Message for AutoscalingPolicy {
27566 fn typename() -> &'static str {
27567 "type.googleapis.com/google.cloud.vmwareengine.v1.AutoscalingSettings.AutoscalingPolicy"
27568 }
27569 }
27570
27571 #[doc(hidden)]
27572 impl<'de> serde::de::Deserialize<'de> for AutoscalingPolicy {
27573 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27574 where
27575 D: serde::Deserializer<'de>,
27576 {
27577 #[allow(non_camel_case_types)]
27578 #[doc(hidden)]
27579 #[derive(PartialEq, Eq, Hash)]
27580 enum __FieldTag {
27581 __node_type_id,
27582 __scale_out_size,
27583 __cpu_thresholds,
27584 __granted_memory_thresholds,
27585 __consumed_memory_thresholds,
27586 __storage_thresholds,
27587 Unknown(std::string::String),
27588 }
27589 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
27590 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27591 where
27592 D: serde::Deserializer<'de>,
27593 {
27594 struct Visitor;
27595 impl<'de> serde::de::Visitor<'de> for Visitor {
27596 type Value = __FieldTag;
27597 fn expecting(
27598 &self,
27599 formatter: &mut std::fmt::Formatter,
27600 ) -> std::fmt::Result {
27601 formatter.write_str("a field name for AutoscalingPolicy")
27602 }
27603 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
27604 where
27605 E: serde::de::Error,
27606 {
27607 use std::result::Result::Ok;
27608 use std::string::ToString;
27609 match value {
27610 "nodeTypeId" => Ok(__FieldTag::__node_type_id),
27611 "node_type_id" => Ok(__FieldTag::__node_type_id),
27612 "scaleOutSize" => Ok(__FieldTag::__scale_out_size),
27613 "scale_out_size" => Ok(__FieldTag::__scale_out_size),
27614 "cpuThresholds" => Ok(__FieldTag::__cpu_thresholds),
27615 "cpu_thresholds" => Ok(__FieldTag::__cpu_thresholds),
27616 "grantedMemoryThresholds" => {
27617 Ok(__FieldTag::__granted_memory_thresholds)
27618 }
27619 "granted_memory_thresholds" => {
27620 Ok(__FieldTag::__granted_memory_thresholds)
27621 }
27622 "consumedMemoryThresholds" => {
27623 Ok(__FieldTag::__consumed_memory_thresholds)
27624 }
27625 "consumed_memory_thresholds" => {
27626 Ok(__FieldTag::__consumed_memory_thresholds)
27627 }
27628 "storageThresholds" => Ok(__FieldTag::__storage_thresholds),
27629 "storage_thresholds" => Ok(__FieldTag::__storage_thresholds),
27630 _ => Ok(__FieldTag::Unknown(value.to_string())),
27631 }
27632 }
27633 }
27634 deserializer.deserialize_identifier(Visitor)
27635 }
27636 }
27637 struct Visitor;
27638 impl<'de> serde::de::Visitor<'de> for Visitor {
27639 type Value = AutoscalingPolicy;
27640 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
27641 formatter.write_str("struct AutoscalingPolicy")
27642 }
27643 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
27644 where
27645 A: serde::de::MapAccess<'de>,
27646 {
27647 #[allow(unused_imports)]
27648 use serde::de::Error;
27649 use std::option::Option::Some;
27650 let mut fields = std::collections::HashSet::new();
27651 let mut result = Self::Value::new();
27652 while let Some(tag) = map.next_key::<__FieldTag>()? {
27653 #[allow(clippy::match_single_binding)]
27654 match tag {
27655 __FieldTag::__node_type_id => {
27656 if !fields.insert(__FieldTag::__node_type_id) {
27657 return std::result::Result::Err(A::Error::duplicate_field(
27658 "multiple values for node_type_id",
27659 ));
27660 }
27661 result.node_type_id = map
27662 .next_value::<std::option::Option<std::string::String>>()?
27663 .unwrap_or_default();
27664 }
27665 __FieldTag::__scale_out_size => {
27666 if !fields.insert(__FieldTag::__scale_out_size) {
27667 return std::result::Result::Err(A::Error::duplicate_field(
27668 "multiple values for scale_out_size",
27669 ));
27670 }
27671 struct __With(std::option::Option<i32>);
27672 impl<'de> serde::de::Deserialize<'de> for __With {
27673 fn deserialize<D>(
27674 deserializer: D,
27675 ) -> std::result::Result<Self, D::Error>
27676 where
27677 D: serde::de::Deserializer<'de>,
27678 {
27679 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
27680 }
27681 }
27682 result.scale_out_size =
27683 map.next_value::<__With>()?.0.unwrap_or_default();
27684 }
27685 __FieldTag::__cpu_thresholds => {
27686 if !fields.insert(__FieldTag::__cpu_thresholds) {
27687 return std::result::Result::Err(A::Error::duplicate_field(
27688 "multiple values for cpu_thresholds",
27689 ));
27690 }
27691 result.cpu_thresholds = map.next_value::<std::option::Option<
27692 crate::model::autoscaling_settings::Thresholds,
27693 >>()?;
27694 }
27695 __FieldTag::__granted_memory_thresholds => {
27696 if !fields.insert(__FieldTag::__granted_memory_thresholds) {
27697 return std::result::Result::Err(A::Error::duplicate_field(
27698 "multiple values for granted_memory_thresholds",
27699 ));
27700 }
27701 result.granted_memory_thresholds = map
27702 .next_value::<std::option::Option<
27703 crate::model::autoscaling_settings::Thresholds,
27704 >>()?;
27705 }
27706 __FieldTag::__consumed_memory_thresholds => {
27707 if !fields.insert(__FieldTag::__consumed_memory_thresholds) {
27708 return std::result::Result::Err(A::Error::duplicate_field(
27709 "multiple values for consumed_memory_thresholds",
27710 ));
27711 }
27712 result.consumed_memory_thresholds = map
27713 .next_value::<std::option::Option<
27714 crate::model::autoscaling_settings::Thresholds,
27715 >>()?;
27716 }
27717 __FieldTag::__storage_thresholds => {
27718 if !fields.insert(__FieldTag::__storage_thresholds) {
27719 return std::result::Result::Err(A::Error::duplicate_field(
27720 "multiple values for storage_thresholds",
27721 ));
27722 }
27723 result.storage_thresholds = map
27724 .next_value::<std::option::Option<
27725 crate::model::autoscaling_settings::Thresholds,
27726 >>()?;
27727 }
27728 __FieldTag::Unknown(key) => {
27729 let value = map.next_value::<serde_json::Value>()?;
27730 result._unknown_fields.insert(key, value);
27731 }
27732 }
27733 }
27734 std::result::Result::Ok(result)
27735 }
27736 }
27737 deserializer.deserialize_any(Visitor)
27738 }
27739 }
27740
27741 #[doc(hidden)]
27742 impl serde::ser::Serialize for AutoscalingPolicy {
27743 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27744 where
27745 S: serde::ser::Serializer,
27746 {
27747 use serde::ser::SerializeMap;
27748 #[allow(unused_imports)]
27749 use std::option::Option::Some;
27750 let mut state = serializer.serialize_map(std::option::Option::None)?;
27751 if !self.node_type_id.is_empty() {
27752 state.serialize_entry("nodeTypeId", &self.node_type_id)?;
27753 }
27754 if !wkt::internal::is_default(&self.scale_out_size) {
27755 struct __With<'a>(&'a i32);
27756 impl<'a> serde::ser::Serialize for __With<'a> {
27757 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
27758 where
27759 S: serde::ser::Serializer,
27760 {
27761 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
27762 }
27763 }
27764 state.serialize_entry("scaleOutSize", &__With(&self.scale_out_size))?;
27765 }
27766 if self.cpu_thresholds.is_some() {
27767 state.serialize_entry("cpuThresholds", &self.cpu_thresholds)?;
27768 }
27769 if self.granted_memory_thresholds.is_some() {
27770 state
27771 .serialize_entry("grantedMemoryThresholds", &self.granted_memory_thresholds)?;
27772 }
27773 if self.consumed_memory_thresholds.is_some() {
27774 state.serialize_entry(
27775 "consumedMemoryThresholds",
27776 &self.consumed_memory_thresholds,
27777 )?;
27778 }
27779 if self.storage_thresholds.is_some() {
27780 state.serialize_entry("storageThresholds", &self.storage_thresholds)?;
27781 }
27782 if !self._unknown_fields.is_empty() {
27783 for (key, value) in self._unknown_fields.iter() {
27784 state.serialize_entry(key, &value)?;
27785 }
27786 }
27787 state.end()
27788 }
27789 }
27790}
27791
27792#[derive(Clone, Debug, Default, PartialEq)]
27796#[non_exhaustive]
27797pub struct DnsForwarding {
27798 pub name: std::string::String,
27804
27805 pub create_time: std::option::Option<wkt::Timestamp>,
27807
27808 pub update_time: std::option::Option<wkt::Timestamp>,
27810
27811 pub forwarding_rules: std::vec::Vec<crate::model::dns_forwarding::ForwardingRule>,
27813
27814 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
27815}
27816
27817impl DnsForwarding {
27818 pub fn new() -> Self {
27819 std::default::Default::default()
27820 }
27821
27822 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
27824 self.name = v.into();
27825 self
27826 }
27827
27828 pub fn set_create_time<T>(mut self, v: T) -> Self
27830 where
27831 T: std::convert::Into<wkt::Timestamp>,
27832 {
27833 self.create_time = std::option::Option::Some(v.into());
27834 self
27835 }
27836
27837 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
27839 where
27840 T: std::convert::Into<wkt::Timestamp>,
27841 {
27842 self.create_time = v.map(|x| x.into());
27843 self
27844 }
27845
27846 pub fn set_update_time<T>(mut self, v: T) -> Self
27848 where
27849 T: std::convert::Into<wkt::Timestamp>,
27850 {
27851 self.update_time = std::option::Option::Some(v.into());
27852 self
27853 }
27854
27855 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
27857 where
27858 T: std::convert::Into<wkt::Timestamp>,
27859 {
27860 self.update_time = v.map(|x| x.into());
27861 self
27862 }
27863
27864 pub fn set_forwarding_rules<T, V>(mut self, v: T) -> Self
27866 where
27867 T: std::iter::IntoIterator<Item = V>,
27868 V: std::convert::Into<crate::model::dns_forwarding::ForwardingRule>,
27869 {
27870 use std::iter::Iterator;
27871 self.forwarding_rules = v.into_iter().map(|i| i.into()).collect();
27872 self
27873 }
27874}
27875
27876impl wkt::message::Message for DnsForwarding {
27877 fn typename() -> &'static str {
27878 "type.googleapis.com/google.cloud.vmwareengine.v1.DnsForwarding"
27879 }
27880}
27881
27882#[doc(hidden)]
27883impl<'de> serde::de::Deserialize<'de> for DnsForwarding {
27884 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27885 where
27886 D: serde::Deserializer<'de>,
27887 {
27888 #[allow(non_camel_case_types)]
27889 #[doc(hidden)]
27890 #[derive(PartialEq, Eq, Hash)]
27891 enum __FieldTag {
27892 __name,
27893 __create_time,
27894 __update_time,
27895 __forwarding_rules,
27896 Unknown(std::string::String),
27897 }
27898 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
27899 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
27900 where
27901 D: serde::Deserializer<'de>,
27902 {
27903 struct Visitor;
27904 impl<'de> serde::de::Visitor<'de> for Visitor {
27905 type Value = __FieldTag;
27906 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
27907 formatter.write_str("a field name for DnsForwarding")
27908 }
27909 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
27910 where
27911 E: serde::de::Error,
27912 {
27913 use std::result::Result::Ok;
27914 use std::string::ToString;
27915 match value {
27916 "name" => Ok(__FieldTag::__name),
27917 "createTime" => Ok(__FieldTag::__create_time),
27918 "create_time" => Ok(__FieldTag::__create_time),
27919 "updateTime" => Ok(__FieldTag::__update_time),
27920 "update_time" => Ok(__FieldTag::__update_time),
27921 "forwardingRules" => Ok(__FieldTag::__forwarding_rules),
27922 "forwarding_rules" => Ok(__FieldTag::__forwarding_rules),
27923 _ => Ok(__FieldTag::Unknown(value.to_string())),
27924 }
27925 }
27926 }
27927 deserializer.deserialize_identifier(Visitor)
27928 }
27929 }
27930 struct Visitor;
27931 impl<'de> serde::de::Visitor<'de> for Visitor {
27932 type Value = DnsForwarding;
27933 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
27934 formatter.write_str("struct DnsForwarding")
27935 }
27936 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
27937 where
27938 A: serde::de::MapAccess<'de>,
27939 {
27940 #[allow(unused_imports)]
27941 use serde::de::Error;
27942 use std::option::Option::Some;
27943 let mut fields = std::collections::HashSet::new();
27944 let mut result = Self::Value::new();
27945 while let Some(tag) = map.next_key::<__FieldTag>()? {
27946 #[allow(clippy::match_single_binding)]
27947 match tag {
27948 __FieldTag::__name => {
27949 if !fields.insert(__FieldTag::__name) {
27950 return std::result::Result::Err(A::Error::duplicate_field(
27951 "multiple values for name",
27952 ));
27953 }
27954 result.name = map
27955 .next_value::<std::option::Option<std::string::String>>()?
27956 .unwrap_or_default();
27957 }
27958 __FieldTag::__create_time => {
27959 if !fields.insert(__FieldTag::__create_time) {
27960 return std::result::Result::Err(A::Error::duplicate_field(
27961 "multiple values for create_time",
27962 ));
27963 }
27964 result.create_time =
27965 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
27966 }
27967 __FieldTag::__update_time => {
27968 if !fields.insert(__FieldTag::__update_time) {
27969 return std::result::Result::Err(A::Error::duplicate_field(
27970 "multiple values for update_time",
27971 ));
27972 }
27973 result.update_time =
27974 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
27975 }
27976 __FieldTag::__forwarding_rules => {
27977 if !fields.insert(__FieldTag::__forwarding_rules) {
27978 return std::result::Result::Err(A::Error::duplicate_field(
27979 "multiple values for forwarding_rules",
27980 ));
27981 }
27982 result.forwarding_rules = map
27983 .next_value::<std::option::Option<
27984 std::vec::Vec<crate::model::dns_forwarding::ForwardingRule>,
27985 >>()?
27986 .unwrap_or_default();
27987 }
27988 __FieldTag::Unknown(key) => {
27989 let value = map.next_value::<serde_json::Value>()?;
27990 result._unknown_fields.insert(key, value);
27991 }
27992 }
27993 }
27994 std::result::Result::Ok(result)
27995 }
27996 }
27997 deserializer.deserialize_any(Visitor)
27998 }
27999}
28000
28001#[doc(hidden)]
28002impl serde::ser::Serialize for DnsForwarding {
28003 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
28004 where
28005 S: serde::ser::Serializer,
28006 {
28007 use serde::ser::SerializeMap;
28008 #[allow(unused_imports)]
28009 use std::option::Option::Some;
28010 let mut state = serializer.serialize_map(std::option::Option::None)?;
28011 if !self.name.is_empty() {
28012 state.serialize_entry("name", &self.name)?;
28013 }
28014 if self.create_time.is_some() {
28015 state.serialize_entry("createTime", &self.create_time)?;
28016 }
28017 if self.update_time.is_some() {
28018 state.serialize_entry("updateTime", &self.update_time)?;
28019 }
28020 if !self.forwarding_rules.is_empty() {
28021 state.serialize_entry("forwardingRules", &self.forwarding_rules)?;
28022 }
28023 if !self._unknown_fields.is_empty() {
28024 for (key, value) in self._unknown_fields.iter() {
28025 state.serialize_entry(key, &value)?;
28026 }
28027 }
28028 state.end()
28029 }
28030}
28031
28032pub mod dns_forwarding {
28034 #[allow(unused_imports)]
28035 use super::*;
28036
28037 #[derive(Clone, Debug, Default, PartialEq)]
28042 #[non_exhaustive]
28043 pub struct ForwardingRule {
28044 pub domain: std::string::String,
28046
28047 pub name_servers: std::vec::Vec<std::string::String>,
28049
28050 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
28051 }
28052
28053 impl ForwardingRule {
28054 pub fn new() -> Self {
28055 std::default::Default::default()
28056 }
28057
28058 pub fn set_domain<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
28060 self.domain = v.into();
28061 self
28062 }
28063
28064 pub fn set_name_servers<T, V>(mut self, v: T) -> Self
28066 where
28067 T: std::iter::IntoIterator<Item = V>,
28068 V: std::convert::Into<std::string::String>,
28069 {
28070 use std::iter::Iterator;
28071 self.name_servers = v.into_iter().map(|i| i.into()).collect();
28072 self
28073 }
28074 }
28075
28076 impl wkt::message::Message for ForwardingRule {
28077 fn typename() -> &'static str {
28078 "type.googleapis.com/google.cloud.vmwareengine.v1.DnsForwarding.ForwardingRule"
28079 }
28080 }
28081
28082 #[doc(hidden)]
28083 impl<'de> serde::de::Deserialize<'de> for ForwardingRule {
28084 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
28085 where
28086 D: serde::Deserializer<'de>,
28087 {
28088 #[allow(non_camel_case_types)]
28089 #[doc(hidden)]
28090 #[derive(PartialEq, Eq, Hash)]
28091 enum __FieldTag {
28092 __domain,
28093 __name_servers,
28094 Unknown(std::string::String),
28095 }
28096 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
28097 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
28098 where
28099 D: serde::Deserializer<'de>,
28100 {
28101 struct Visitor;
28102 impl<'de> serde::de::Visitor<'de> for Visitor {
28103 type Value = __FieldTag;
28104 fn expecting(
28105 &self,
28106 formatter: &mut std::fmt::Formatter,
28107 ) -> std::fmt::Result {
28108 formatter.write_str("a field name for ForwardingRule")
28109 }
28110 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
28111 where
28112 E: serde::de::Error,
28113 {
28114 use std::result::Result::Ok;
28115 use std::string::ToString;
28116 match value {
28117 "domain" => Ok(__FieldTag::__domain),
28118 "nameServers" => Ok(__FieldTag::__name_servers),
28119 "name_servers" => Ok(__FieldTag::__name_servers),
28120 _ => Ok(__FieldTag::Unknown(value.to_string())),
28121 }
28122 }
28123 }
28124 deserializer.deserialize_identifier(Visitor)
28125 }
28126 }
28127 struct Visitor;
28128 impl<'de> serde::de::Visitor<'de> for Visitor {
28129 type Value = ForwardingRule;
28130 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
28131 formatter.write_str("struct ForwardingRule")
28132 }
28133 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
28134 where
28135 A: serde::de::MapAccess<'de>,
28136 {
28137 #[allow(unused_imports)]
28138 use serde::de::Error;
28139 use std::option::Option::Some;
28140 let mut fields = std::collections::HashSet::new();
28141 let mut result = Self::Value::new();
28142 while let Some(tag) = map.next_key::<__FieldTag>()? {
28143 #[allow(clippy::match_single_binding)]
28144 match tag {
28145 __FieldTag::__domain => {
28146 if !fields.insert(__FieldTag::__domain) {
28147 return std::result::Result::Err(A::Error::duplicate_field(
28148 "multiple values for domain",
28149 ));
28150 }
28151 result.domain = map
28152 .next_value::<std::option::Option<std::string::String>>()?
28153 .unwrap_or_default();
28154 }
28155 __FieldTag::__name_servers => {
28156 if !fields.insert(__FieldTag::__name_servers) {
28157 return std::result::Result::Err(A::Error::duplicate_field(
28158 "multiple values for name_servers",
28159 ));
28160 }
28161 result.name_servers = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
28162 }
28163 __FieldTag::Unknown(key) => {
28164 let value = map.next_value::<serde_json::Value>()?;
28165 result._unknown_fields.insert(key, value);
28166 }
28167 }
28168 }
28169 std::result::Result::Ok(result)
28170 }
28171 }
28172 deserializer.deserialize_any(Visitor)
28173 }
28174 }
28175
28176 #[doc(hidden)]
28177 impl serde::ser::Serialize for ForwardingRule {
28178 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
28179 where
28180 S: serde::ser::Serializer,
28181 {
28182 use serde::ser::SerializeMap;
28183 #[allow(unused_imports)]
28184 use std::option::Option::Some;
28185 let mut state = serializer.serialize_map(std::option::Option::None)?;
28186 if !self.domain.is_empty() {
28187 state.serialize_entry("domain", &self.domain)?;
28188 }
28189 if !self.name_servers.is_empty() {
28190 state.serialize_entry("nameServers", &self.name_servers)?;
28191 }
28192 if !self._unknown_fields.is_empty() {
28193 for (key, value) in self._unknown_fields.iter() {
28194 state.serialize_entry(key, &value)?;
28195 }
28196 }
28197 state.end()
28198 }
28199 }
28200}
28201
28202#[derive(Clone, Debug, Default, PartialEq)]
28204#[non_exhaustive]
28205pub struct NetworkPeering {
28206 pub name: std::string::String,
28213
28214 pub create_time: std::option::Option<wkt::Timestamp>,
28216
28217 pub update_time: std::option::Option<wkt::Timestamp>,
28219
28220 pub peer_network: std::string::String,
28229
28230 pub export_custom_routes: std::option::Option<bool>,
28233
28234 pub import_custom_routes: std::option::Option<bool>,
28237
28238 pub exchange_subnet_routes: std::option::Option<bool>,
28244
28245 pub export_custom_routes_with_public_ip: std::option::Option<bool>,
28250
28251 pub import_custom_routes_with_public_ip: std::option::Option<bool>,
28256
28257 pub state: crate::model::network_peering::State,
28261
28262 pub state_details: std::string::String,
28265
28266 pub peer_mtu: i32,
28270
28271 pub peer_network_type: crate::model::network_peering::PeerNetworkType,
28273
28274 pub uid: std::string::String,
28276
28277 pub vmware_engine_network: std::string::String,
28282
28283 pub description: std::string::String,
28285
28286 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
28287}
28288
28289impl NetworkPeering {
28290 pub fn new() -> Self {
28291 std::default::Default::default()
28292 }
28293
28294 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
28296 self.name = v.into();
28297 self
28298 }
28299
28300 pub fn set_create_time<T>(mut self, v: T) -> Self
28302 where
28303 T: std::convert::Into<wkt::Timestamp>,
28304 {
28305 self.create_time = std::option::Option::Some(v.into());
28306 self
28307 }
28308
28309 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
28311 where
28312 T: std::convert::Into<wkt::Timestamp>,
28313 {
28314 self.create_time = v.map(|x| x.into());
28315 self
28316 }
28317
28318 pub fn set_update_time<T>(mut self, v: T) -> Self
28320 where
28321 T: std::convert::Into<wkt::Timestamp>,
28322 {
28323 self.update_time = std::option::Option::Some(v.into());
28324 self
28325 }
28326
28327 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
28329 where
28330 T: std::convert::Into<wkt::Timestamp>,
28331 {
28332 self.update_time = v.map(|x| x.into());
28333 self
28334 }
28335
28336 pub fn set_peer_network<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
28338 self.peer_network = v.into();
28339 self
28340 }
28341
28342 pub fn set_export_custom_routes<T>(mut self, v: T) -> Self
28344 where
28345 T: std::convert::Into<bool>,
28346 {
28347 self.export_custom_routes = std::option::Option::Some(v.into());
28348 self
28349 }
28350
28351 pub fn set_or_clear_export_custom_routes<T>(mut self, v: std::option::Option<T>) -> Self
28353 where
28354 T: std::convert::Into<bool>,
28355 {
28356 self.export_custom_routes = v.map(|x| x.into());
28357 self
28358 }
28359
28360 pub fn set_import_custom_routes<T>(mut self, v: T) -> Self
28362 where
28363 T: std::convert::Into<bool>,
28364 {
28365 self.import_custom_routes = std::option::Option::Some(v.into());
28366 self
28367 }
28368
28369 pub fn set_or_clear_import_custom_routes<T>(mut self, v: std::option::Option<T>) -> Self
28371 where
28372 T: std::convert::Into<bool>,
28373 {
28374 self.import_custom_routes = v.map(|x| x.into());
28375 self
28376 }
28377
28378 pub fn set_exchange_subnet_routes<T>(mut self, v: T) -> Self
28380 where
28381 T: std::convert::Into<bool>,
28382 {
28383 self.exchange_subnet_routes = std::option::Option::Some(v.into());
28384 self
28385 }
28386
28387 pub fn set_or_clear_exchange_subnet_routes<T>(mut self, v: std::option::Option<T>) -> Self
28389 where
28390 T: std::convert::Into<bool>,
28391 {
28392 self.exchange_subnet_routes = v.map(|x| x.into());
28393 self
28394 }
28395
28396 pub fn set_export_custom_routes_with_public_ip<T>(mut self, v: T) -> Self
28398 where
28399 T: std::convert::Into<bool>,
28400 {
28401 self.export_custom_routes_with_public_ip = std::option::Option::Some(v.into());
28402 self
28403 }
28404
28405 pub fn set_or_clear_export_custom_routes_with_public_ip<T>(
28407 mut self,
28408 v: std::option::Option<T>,
28409 ) -> Self
28410 where
28411 T: std::convert::Into<bool>,
28412 {
28413 self.export_custom_routes_with_public_ip = v.map(|x| x.into());
28414 self
28415 }
28416
28417 pub fn set_import_custom_routes_with_public_ip<T>(mut self, v: T) -> Self
28419 where
28420 T: std::convert::Into<bool>,
28421 {
28422 self.import_custom_routes_with_public_ip = std::option::Option::Some(v.into());
28423 self
28424 }
28425
28426 pub fn set_or_clear_import_custom_routes_with_public_ip<T>(
28428 mut self,
28429 v: std::option::Option<T>,
28430 ) -> Self
28431 where
28432 T: std::convert::Into<bool>,
28433 {
28434 self.import_custom_routes_with_public_ip = v.map(|x| x.into());
28435 self
28436 }
28437
28438 pub fn set_state<T: std::convert::Into<crate::model::network_peering::State>>(
28440 mut self,
28441 v: T,
28442 ) -> Self {
28443 self.state = v.into();
28444 self
28445 }
28446
28447 pub fn set_state_details<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
28449 self.state_details = v.into();
28450 self
28451 }
28452
28453 pub fn set_peer_mtu<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
28455 self.peer_mtu = v.into();
28456 self
28457 }
28458
28459 pub fn set_peer_network_type<
28461 T: std::convert::Into<crate::model::network_peering::PeerNetworkType>,
28462 >(
28463 mut self,
28464 v: T,
28465 ) -> Self {
28466 self.peer_network_type = v.into();
28467 self
28468 }
28469
28470 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
28472 self.uid = v.into();
28473 self
28474 }
28475
28476 pub fn set_vmware_engine_network<T: std::convert::Into<std::string::String>>(
28478 mut self,
28479 v: T,
28480 ) -> Self {
28481 self.vmware_engine_network = v.into();
28482 self
28483 }
28484
28485 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
28487 self.description = v.into();
28488 self
28489 }
28490}
28491
28492impl wkt::message::Message for NetworkPeering {
28493 fn typename() -> &'static str {
28494 "type.googleapis.com/google.cloud.vmwareengine.v1.NetworkPeering"
28495 }
28496}
28497
28498#[doc(hidden)]
28499impl<'de> serde::de::Deserialize<'de> for NetworkPeering {
28500 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
28501 where
28502 D: serde::Deserializer<'de>,
28503 {
28504 #[allow(non_camel_case_types)]
28505 #[doc(hidden)]
28506 #[derive(PartialEq, Eq, Hash)]
28507 enum __FieldTag {
28508 __name,
28509 __create_time,
28510 __update_time,
28511 __peer_network,
28512 __export_custom_routes,
28513 __import_custom_routes,
28514 __exchange_subnet_routes,
28515 __export_custom_routes_with_public_ip,
28516 __import_custom_routes_with_public_ip,
28517 __state,
28518 __state_details,
28519 __peer_mtu,
28520 __peer_network_type,
28521 __uid,
28522 __vmware_engine_network,
28523 __description,
28524 Unknown(std::string::String),
28525 }
28526 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
28527 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
28528 where
28529 D: serde::Deserializer<'de>,
28530 {
28531 struct Visitor;
28532 impl<'de> serde::de::Visitor<'de> for Visitor {
28533 type Value = __FieldTag;
28534 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
28535 formatter.write_str("a field name for NetworkPeering")
28536 }
28537 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
28538 where
28539 E: serde::de::Error,
28540 {
28541 use std::result::Result::Ok;
28542 use std::string::ToString;
28543 match value {
28544 "name" => Ok(__FieldTag::__name),
28545 "createTime" => Ok(__FieldTag::__create_time),
28546 "create_time" => Ok(__FieldTag::__create_time),
28547 "updateTime" => Ok(__FieldTag::__update_time),
28548 "update_time" => Ok(__FieldTag::__update_time),
28549 "peerNetwork" => Ok(__FieldTag::__peer_network),
28550 "peer_network" => Ok(__FieldTag::__peer_network),
28551 "exportCustomRoutes" => Ok(__FieldTag::__export_custom_routes),
28552 "export_custom_routes" => Ok(__FieldTag::__export_custom_routes),
28553 "importCustomRoutes" => Ok(__FieldTag::__import_custom_routes),
28554 "import_custom_routes" => Ok(__FieldTag::__import_custom_routes),
28555 "exchangeSubnetRoutes" => Ok(__FieldTag::__exchange_subnet_routes),
28556 "exchange_subnet_routes" => Ok(__FieldTag::__exchange_subnet_routes),
28557 "exportCustomRoutesWithPublicIp" => {
28558 Ok(__FieldTag::__export_custom_routes_with_public_ip)
28559 }
28560 "export_custom_routes_with_public_ip" => {
28561 Ok(__FieldTag::__export_custom_routes_with_public_ip)
28562 }
28563 "importCustomRoutesWithPublicIp" => {
28564 Ok(__FieldTag::__import_custom_routes_with_public_ip)
28565 }
28566 "import_custom_routes_with_public_ip" => {
28567 Ok(__FieldTag::__import_custom_routes_with_public_ip)
28568 }
28569 "state" => Ok(__FieldTag::__state),
28570 "stateDetails" => Ok(__FieldTag::__state_details),
28571 "state_details" => Ok(__FieldTag::__state_details),
28572 "peerMtu" => Ok(__FieldTag::__peer_mtu),
28573 "peer_mtu" => Ok(__FieldTag::__peer_mtu),
28574 "peerNetworkType" => Ok(__FieldTag::__peer_network_type),
28575 "peer_network_type" => Ok(__FieldTag::__peer_network_type),
28576 "uid" => Ok(__FieldTag::__uid),
28577 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
28578 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
28579 "description" => Ok(__FieldTag::__description),
28580 _ => Ok(__FieldTag::Unknown(value.to_string())),
28581 }
28582 }
28583 }
28584 deserializer.deserialize_identifier(Visitor)
28585 }
28586 }
28587 struct Visitor;
28588 impl<'de> serde::de::Visitor<'de> for Visitor {
28589 type Value = NetworkPeering;
28590 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
28591 formatter.write_str("struct NetworkPeering")
28592 }
28593 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
28594 where
28595 A: serde::de::MapAccess<'de>,
28596 {
28597 #[allow(unused_imports)]
28598 use serde::de::Error;
28599 use std::option::Option::Some;
28600 let mut fields = std::collections::HashSet::new();
28601 let mut result = Self::Value::new();
28602 while let Some(tag) = map.next_key::<__FieldTag>()? {
28603 #[allow(clippy::match_single_binding)]
28604 match tag {
28605 __FieldTag::__name => {
28606 if !fields.insert(__FieldTag::__name) {
28607 return std::result::Result::Err(A::Error::duplicate_field(
28608 "multiple values for name",
28609 ));
28610 }
28611 result.name = map
28612 .next_value::<std::option::Option<std::string::String>>()?
28613 .unwrap_or_default();
28614 }
28615 __FieldTag::__create_time => {
28616 if !fields.insert(__FieldTag::__create_time) {
28617 return std::result::Result::Err(A::Error::duplicate_field(
28618 "multiple values for create_time",
28619 ));
28620 }
28621 result.create_time =
28622 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
28623 }
28624 __FieldTag::__update_time => {
28625 if !fields.insert(__FieldTag::__update_time) {
28626 return std::result::Result::Err(A::Error::duplicate_field(
28627 "multiple values for update_time",
28628 ));
28629 }
28630 result.update_time =
28631 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
28632 }
28633 __FieldTag::__peer_network => {
28634 if !fields.insert(__FieldTag::__peer_network) {
28635 return std::result::Result::Err(A::Error::duplicate_field(
28636 "multiple values for peer_network",
28637 ));
28638 }
28639 result.peer_network = map
28640 .next_value::<std::option::Option<std::string::String>>()?
28641 .unwrap_or_default();
28642 }
28643 __FieldTag::__export_custom_routes => {
28644 if !fields.insert(__FieldTag::__export_custom_routes) {
28645 return std::result::Result::Err(A::Error::duplicate_field(
28646 "multiple values for export_custom_routes",
28647 ));
28648 }
28649 result.export_custom_routes =
28650 map.next_value::<std::option::Option<bool>>()?;
28651 }
28652 __FieldTag::__import_custom_routes => {
28653 if !fields.insert(__FieldTag::__import_custom_routes) {
28654 return std::result::Result::Err(A::Error::duplicate_field(
28655 "multiple values for import_custom_routes",
28656 ));
28657 }
28658 result.import_custom_routes =
28659 map.next_value::<std::option::Option<bool>>()?;
28660 }
28661 __FieldTag::__exchange_subnet_routes => {
28662 if !fields.insert(__FieldTag::__exchange_subnet_routes) {
28663 return std::result::Result::Err(A::Error::duplicate_field(
28664 "multiple values for exchange_subnet_routes",
28665 ));
28666 }
28667 result.exchange_subnet_routes =
28668 map.next_value::<std::option::Option<bool>>()?;
28669 }
28670 __FieldTag::__export_custom_routes_with_public_ip => {
28671 if !fields.insert(__FieldTag::__export_custom_routes_with_public_ip) {
28672 return std::result::Result::Err(A::Error::duplicate_field(
28673 "multiple values for export_custom_routes_with_public_ip",
28674 ));
28675 }
28676 result.export_custom_routes_with_public_ip =
28677 map.next_value::<std::option::Option<bool>>()?;
28678 }
28679 __FieldTag::__import_custom_routes_with_public_ip => {
28680 if !fields.insert(__FieldTag::__import_custom_routes_with_public_ip) {
28681 return std::result::Result::Err(A::Error::duplicate_field(
28682 "multiple values for import_custom_routes_with_public_ip",
28683 ));
28684 }
28685 result.import_custom_routes_with_public_ip =
28686 map.next_value::<std::option::Option<bool>>()?;
28687 }
28688 __FieldTag::__state => {
28689 if !fields.insert(__FieldTag::__state) {
28690 return std::result::Result::Err(A::Error::duplicate_field(
28691 "multiple values for state",
28692 ));
28693 }
28694 result.state = map.next_value::<std::option::Option<crate::model::network_peering::State>>()?.unwrap_or_default();
28695 }
28696 __FieldTag::__state_details => {
28697 if !fields.insert(__FieldTag::__state_details) {
28698 return std::result::Result::Err(A::Error::duplicate_field(
28699 "multiple values for state_details",
28700 ));
28701 }
28702 result.state_details = map
28703 .next_value::<std::option::Option<std::string::String>>()?
28704 .unwrap_or_default();
28705 }
28706 __FieldTag::__peer_mtu => {
28707 if !fields.insert(__FieldTag::__peer_mtu) {
28708 return std::result::Result::Err(A::Error::duplicate_field(
28709 "multiple values for peer_mtu",
28710 ));
28711 }
28712 struct __With(std::option::Option<i32>);
28713 impl<'de> serde::de::Deserialize<'de> for __With {
28714 fn deserialize<D>(
28715 deserializer: D,
28716 ) -> std::result::Result<Self, D::Error>
28717 where
28718 D: serde::de::Deserializer<'de>,
28719 {
28720 serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
28721 }
28722 }
28723 result.peer_mtu = map.next_value::<__With>()?.0.unwrap_or_default();
28724 }
28725 __FieldTag::__peer_network_type => {
28726 if !fields.insert(__FieldTag::__peer_network_type) {
28727 return std::result::Result::Err(A::Error::duplicate_field(
28728 "multiple values for peer_network_type",
28729 ));
28730 }
28731 result.peer_network_type =
28732 map.next_value::<std::option::Option<
28733 crate::model::network_peering::PeerNetworkType,
28734 >>()?
28735 .unwrap_or_default();
28736 }
28737 __FieldTag::__uid => {
28738 if !fields.insert(__FieldTag::__uid) {
28739 return std::result::Result::Err(A::Error::duplicate_field(
28740 "multiple values for uid",
28741 ));
28742 }
28743 result.uid = map
28744 .next_value::<std::option::Option<std::string::String>>()?
28745 .unwrap_or_default();
28746 }
28747 __FieldTag::__vmware_engine_network => {
28748 if !fields.insert(__FieldTag::__vmware_engine_network) {
28749 return std::result::Result::Err(A::Error::duplicate_field(
28750 "multiple values for vmware_engine_network",
28751 ));
28752 }
28753 result.vmware_engine_network = map
28754 .next_value::<std::option::Option<std::string::String>>()?
28755 .unwrap_or_default();
28756 }
28757 __FieldTag::__description => {
28758 if !fields.insert(__FieldTag::__description) {
28759 return std::result::Result::Err(A::Error::duplicate_field(
28760 "multiple values for description",
28761 ));
28762 }
28763 result.description = map
28764 .next_value::<std::option::Option<std::string::String>>()?
28765 .unwrap_or_default();
28766 }
28767 __FieldTag::Unknown(key) => {
28768 let value = map.next_value::<serde_json::Value>()?;
28769 result._unknown_fields.insert(key, value);
28770 }
28771 }
28772 }
28773 std::result::Result::Ok(result)
28774 }
28775 }
28776 deserializer.deserialize_any(Visitor)
28777 }
28778}
28779
28780#[doc(hidden)]
28781impl serde::ser::Serialize for NetworkPeering {
28782 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
28783 where
28784 S: serde::ser::Serializer,
28785 {
28786 use serde::ser::SerializeMap;
28787 #[allow(unused_imports)]
28788 use std::option::Option::Some;
28789 let mut state = serializer.serialize_map(std::option::Option::None)?;
28790 if !self.name.is_empty() {
28791 state.serialize_entry("name", &self.name)?;
28792 }
28793 if self.create_time.is_some() {
28794 state.serialize_entry("createTime", &self.create_time)?;
28795 }
28796 if self.update_time.is_some() {
28797 state.serialize_entry("updateTime", &self.update_time)?;
28798 }
28799 if !self.peer_network.is_empty() {
28800 state.serialize_entry("peerNetwork", &self.peer_network)?;
28801 }
28802 if self.export_custom_routes.is_some() {
28803 state.serialize_entry("exportCustomRoutes", &self.export_custom_routes)?;
28804 }
28805 if self.import_custom_routes.is_some() {
28806 state.serialize_entry("importCustomRoutes", &self.import_custom_routes)?;
28807 }
28808 if self.exchange_subnet_routes.is_some() {
28809 state.serialize_entry("exchangeSubnetRoutes", &self.exchange_subnet_routes)?;
28810 }
28811 if self.export_custom_routes_with_public_ip.is_some() {
28812 state.serialize_entry(
28813 "exportCustomRoutesWithPublicIp",
28814 &self.export_custom_routes_with_public_ip,
28815 )?;
28816 }
28817 if self.import_custom_routes_with_public_ip.is_some() {
28818 state.serialize_entry(
28819 "importCustomRoutesWithPublicIp",
28820 &self.import_custom_routes_with_public_ip,
28821 )?;
28822 }
28823 if !wkt::internal::is_default(&self.state) {
28824 state.serialize_entry("state", &self.state)?;
28825 }
28826 if !self.state_details.is_empty() {
28827 state.serialize_entry("stateDetails", &self.state_details)?;
28828 }
28829 if !wkt::internal::is_default(&self.peer_mtu) {
28830 struct __With<'a>(&'a i32);
28831 impl<'a> serde::ser::Serialize for __With<'a> {
28832 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
28833 where
28834 S: serde::ser::Serializer,
28835 {
28836 serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
28837 }
28838 }
28839 state.serialize_entry("peerMtu", &__With(&self.peer_mtu))?;
28840 }
28841 if !wkt::internal::is_default(&self.peer_network_type) {
28842 state.serialize_entry("peerNetworkType", &self.peer_network_type)?;
28843 }
28844 if !self.uid.is_empty() {
28845 state.serialize_entry("uid", &self.uid)?;
28846 }
28847 if !self.vmware_engine_network.is_empty() {
28848 state.serialize_entry("vmwareEngineNetwork", &self.vmware_engine_network)?;
28849 }
28850 if !self.description.is_empty() {
28851 state.serialize_entry("description", &self.description)?;
28852 }
28853 if !self._unknown_fields.is_empty() {
28854 for (key, value) in self._unknown_fields.iter() {
28855 state.serialize_entry(key, &value)?;
28856 }
28857 }
28858 state.end()
28859 }
28860}
28861
28862pub mod network_peering {
28864 #[allow(unused_imports)]
28865 use super::*;
28866
28867 #[derive(Clone, Debug, PartialEq)]
28883 #[non_exhaustive]
28884 pub enum State {
28885 Unspecified,
28887 Inactive,
28889 Active,
28891 Creating,
28893 Deleting,
28895 UnknownValue(state::UnknownValue),
28900 }
28901
28902 #[doc(hidden)]
28903 pub mod state {
28904 #[allow(unused_imports)]
28905 use super::*;
28906 #[derive(Clone, Debug, PartialEq)]
28907 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
28908 }
28909
28910 impl State {
28911 pub fn value(&self) -> std::option::Option<i32> {
28916 match self {
28917 Self::Unspecified => std::option::Option::Some(0),
28918 Self::Inactive => std::option::Option::Some(1),
28919 Self::Active => std::option::Option::Some(2),
28920 Self::Creating => std::option::Option::Some(3),
28921 Self::Deleting => std::option::Option::Some(4),
28922 Self::UnknownValue(u) => u.0.value(),
28923 }
28924 }
28925
28926 pub fn name(&self) -> std::option::Option<&str> {
28931 match self {
28932 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
28933 Self::Inactive => std::option::Option::Some("INACTIVE"),
28934 Self::Active => std::option::Option::Some("ACTIVE"),
28935 Self::Creating => std::option::Option::Some("CREATING"),
28936 Self::Deleting => std::option::Option::Some("DELETING"),
28937 Self::UnknownValue(u) => u.0.name(),
28938 }
28939 }
28940 }
28941
28942 impl std::default::Default for State {
28943 fn default() -> Self {
28944 use std::convert::From;
28945 Self::from(0)
28946 }
28947 }
28948
28949 impl std::fmt::Display for State {
28950 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
28951 wkt::internal::display_enum(f, self.name(), self.value())
28952 }
28953 }
28954
28955 impl std::convert::From<i32> for State {
28956 fn from(value: i32) -> Self {
28957 match value {
28958 0 => Self::Unspecified,
28959 1 => Self::Inactive,
28960 2 => Self::Active,
28961 3 => Self::Creating,
28962 4 => Self::Deleting,
28963 _ => Self::UnknownValue(state::UnknownValue(
28964 wkt::internal::UnknownEnumValue::Integer(value),
28965 )),
28966 }
28967 }
28968 }
28969
28970 impl std::convert::From<&str> for State {
28971 fn from(value: &str) -> Self {
28972 use std::string::ToString;
28973 match value {
28974 "STATE_UNSPECIFIED" => Self::Unspecified,
28975 "INACTIVE" => Self::Inactive,
28976 "ACTIVE" => Self::Active,
28977 "CREATING" => Self::Creating,
28978 "DELETING" => Self::Deleting,
28979 _ => Self::UnknownValue(state::UnknownValue(
28980 wkt::internal::UnknownEnumValue::String(value.to_string()),
28981 )),
28982 }
28983 }
28984 }
28985
28986 impl serde::ser::Serialize for State {
28987 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
28988 where
28989 S: serde::Serializer,
28990 {
28991 match self {
28992 Self::Unspecified => serializer.serialize_i32(0),
28993 Self::Inactive => serializer.serialize_i32(1),
28994 Self::Active => serializer.serialize_i32(2),
28995 Self::Creating => serializer.serialize_i32(3),
28996 Self::Deleting => serializer.serialize_i32(4),
28997 Self::UnknownValue(u) => u.0.serialize(serializer),
28998 }
28999 }
29000 }
29001
29002 impl<'de> serde::de::Deserialize<'de> for State {
29003 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29004 where
29005 D: serde::Deserializer<'de>,
29006 {
29007 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
29008 ".google.cloud.vmwareengine.v1.NetworkPeering.State",
29009 ))
29010 }
29011 }
29012
29013 #[derive(Clone, Debug, PartialEq)]
29029 #[non_exhaustive]
29030 pub enum PeerNetworkType {
29031 Unspecified,
29033 Standard,
29037 VmwareEngineNetwork,
29039 PrivateServicesAccess,
29042 NetappCloudVolumes,
29044 ThirdPartyService,
29048 DellPowerscale,
29050 GoogleCloudNetappVolumes,
29052 UnknownValue(peer_network_type::UnknownValue),
29057 }
29058
29059 #[doc(hidden)]
29060 pub mod peer_network_type {
29061 #[allow(unused_imports)]
29062 use super::*;
29063 #[derive(Clone, Debug, PartialEq)]
29064 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
29065 }
29066
29067 impl PeerNetworkType {
29068 pub fn value(&self) -> std::option::Option<i32> {
29073 match self {
29074 Self::Unspecified => std::option::Option::Some(0),
29075 Self::Standard => std::option::Option::Some(1),
29076 Self::VmwareEngineNetwork => std::option::Option::Some(2),
29077 Self::PrivateServicesAccess => std::option::Option::Some(3),
29078 Self::NetappCloudVolumes => std::option::Option::Some(4),
29079 Self::ThirdPartyService => std::option::Option::Some(5),
29080 Self::DellPowerscale => std::option::Option::Some(6),
29081 Self::GoogleCloudNetappVolumes => std::option::Option::Some(7),
29082 Self::UnknownValue(u) => u.0.value(),
29083 }
29084 }
29085
29086 pub fn name(&self) -> std::option::Option<&str> {
29091 match self {
29092 Self::Unspecified => std::option::Option::Some("PEER_NETWORK_TYPE_UNSPECIFIED"),
29093 Self::Standard => std::option::Option::Some("STANDARD"),
29094 Self::VmwareEngineNetwork => std::option::Option::Some("VMWARE_ENGINE_NETWORK"),
29095 Self::PrivateServicesAccess => std::option::Option::Some("PRIVATE_SERVICES_ACCESS"),
29096 Self::NetappCloudVolumes => std::option::Option::Some("NETAPP_CLOUD_VOLUMES"),
29097 Self::ThirdPartyService => std::option::Option::Some("THIRD_PARTY_SERVICE"),
29098 Self::DellPowerscale => std::option::Option::Some("DELL_POWERSCALE"),
29099 Self::GoogleCloudNetappVolumes => {
29100 std::option::Option::Some("GOOGLE_CLOUD_NETAPP_VOLUMES")
29101 }
29102 Self::UnknownValue(u) => u.0.name(),
29103 }
29104 }
29105 }
29106
29107 impl std::default::Default for PeerNetworkType {
29108 fn default() -> Self {
29109 use std::convert::From;
29110 Self::from(0)
29111 }
29112 }
29113
29114 impl std::fmt::Display for PeerNetworkType {
29115 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
29116 wkt::internal::display_enum(f, self.name(), self.value())
29117 }
29118 }
29119
29120 impl std::convert::From<i32> for PeerNetworkType {
29121 fn from(value: i32) -> Self {
29122 match value {
29123 0 => Self::Unspecified,
29124 1 => Self::Standard,
29125 2 => Self::VmwareEngineNetwork,
29126 3 => Self::PrivateServicesAccess,
29127 4 => Self::NetappCloudVolumes,
29128 5 => Self::ThirdPartyService,
29129 6 => Self::DellPowerscale,
29130 7 => Self::GoogleCloudNetappVolumes,
29131 _ => Self::UnknownValue(peer_network_type::UnknownValue(
29132 wkt::internal::UnknownEnumValue::Integer(value),
29133 )),
29134 }
29135 }
29136 }
29137
29138 impl std::convert::From<&str> for PeerNetworkType {
29139 fn from(value: &str) -> Self {
29140 use std::string::ToString;
29141 match value {
29142 "PEER_NETWORK_TYPE_UNSPECIFIED" => Self::Unspecified,
29143 "STANDARD" => Self::Standard,
29144 "VMWARE_ENGINE_NETWORK" => Self::VmwareEngineNetwork,
29145 "PRIVATE_SERVICES_ACCESS" => Self::PrivateServicesAccess,
29146 "NETAPP_CLOUD_VOLUMES" => Self::NetappCloudVolumes,
29147 "THIRD_PARTY_SERVICE" => Self::ThirdPartyService,
29148 "DELL_POWERSCALE" => Self::DellPowerscale,
29149 "GOOGLE_CLOUD_NETAPP_VOLUMES" => Self::GoogleCloudNetappVolumes,
29150 _ => Self::UnknownValue(peer_network_type::UnknownValue(
29151 wkt::internal::UnknownEnumValue::String(value.to_string()),
29152 )),
29153 }
29154 }
29155 }
29156
29157 impl serde::ser::Serialize for PeerNetworkType {
29158 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
29159 where
29160 S: serde::Serializer,
29161 {
29162 match self {
29163 Self::Unspecified => serializer.serialize_i32(0),
29164 Self::Standard => serializer.serialize_i32(1),
29165 Self::VmwareEngineNetwork => serializer.serialize_i32(2),
29166 Self::PrivateServicesAccess => serializer.serialize_i32(3),
29167 Self::NetappCloudVolumes => serializer.serialize_i32(4),
29168 Self::ThirdPartyService => serializer.serialize_i32(5),
29169 Self::DellPowerscale => serializer.serialize_i32(6),
29170 Self::GoogleCloudNetappVolumes => serializer.serialize_i32(7),
29171 Self::UnknownValue(u) => u.0.serialize(serializer),
29172 }
29173 }
29174 }
29175
29176 impl<'de> serde::de::Deserialize<'de> for PeerNetworkType {
29177 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29178 where
29179 D: serde::Deserializer<'de>,
29180 {
29181 deserializer.deserialize_any(wkt::internal::EnumVisitor::<PeerNetworkType>::new(
29182 ".google.cloud.vmwareengine.v1.NetworkPeering.PeerNetworkType",
29183 ))
29184 }
29185 }
29186}
29187
29188#[derive(Clone, Debug, Default, PartialEq)]
29190#[non_exhaustive]
29191pub struct PeeringRoute {
29192 pub dest_range: std::string::String,
29194
29195 pub r#type: crate::model::peering_route::Type,
29197
29198 pub next_hop_region: std::string::String,
29201
29202 pub priority: i64,
29204
29205 pub imported: bool,
29211
29212 pub direction: crate::model::peering_route::Direction,
29219
29220 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
29221}
29222
29223impl PeeringRoute {
29224 pub fn new() -> Self {
29225 std::default::Default::default()
29226 }
29227
29228 pub fn set_dest_range<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
29230 self.dest_range = v.into();
29231 self
29232 }
29233
29234 pub fn set_type<T: std::convert::Into<crate::model::peering_route::Type>>(
29236 mut self,
29237 v: T,
29238 ) -> Self {
29239 self.r#type = v.into();
29240 self
29241 }
29242
29243 pub fn set_next_hop_region<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
29245 self.next_hop_region = v.into();
29246 self
29247 }
29248
29249 pub fn set_priority<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
29251 self.priority = v.into();
29252 self
29253 }
29254
29255 pub fn set_imported<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
29257 self.imported = v.into();
29258 self
29259 }
29260
29261 pub fn set_direction<T: std::convert::Into<crate::model::peering_route::Direction>>(
29263 mut self,
29264 v: T,
29265 ) -> Self {
29266 self.direction = v.into();
29267 self
29268 }
29269}
29270
29271impl wkt::message::Message for PeeringRoute {
29272 fn typename() -> &'static str {
29273 "type.googleapis.com/google.cloud.vmwareengine.v1.PeeringRoute"
29274 }
29275}
29276
29277#[doc(hidden)]
29278impl<'de> serde::de::Deserialize<'de> for PeeringRoute {
29279 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29280 where
29281 D: serde::Deserializer<'de>,
29282 {
29283 #[allow(non_camel_case_types)]
29284 #[doc(hidden)]
29285 #[derive(PartialEq, Eq, Hash)]
29286 enum __FieldTag {
29287 __dest_range,
29288 __type,
29289 __next_hop_region,
29290 __priority,
29291 __imported,
29292 __direction,
29293 Unknown(std::string::String),
29294 }
29295 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
29296 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29297 where
29298 D: serde::Deserializer<'de>,
29299 {
29300 struct Visitor;
29301 impl<'de> serde::de::Visitor<'de> for Visitor {
29302 type Value = __FieldTag;
29303 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
29304 formatter.write_str("a field name for PeeringRoute")
29305 }
29306 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
29307 where
29308 E: serde::de::Error,
29309 {
29310 use std::result::Result::Ok;
29311 use std::string::ToString;
29312 match value {
29313 "destRange" => Ok(__FieldTag::__dest_range),
29314 "dest_range" => Ok(__FieldTag::__dest_range),
29315 "type" => Ok(__FieldTag::__type),
29316 "nextHopRegion" => Ok(__FieldTag::__next_hop_region),
29317 "next_hop_region" => Ok(__FieldTag::__next_hop_region),
29318 "priority" => Ok(__FieldTag::__priority),
29319 "imported" => Ok(__FieldTag::__imported),
29320 "direction" => Ok(__FieldTag::__direction),
29321 _ => Ok(__FieldTag::Unknown(value.to_string())),
29322 }
29323 }
29324 }
29325 deserializer.deserialize_identifier(Visitor)
29326 }
29327 }
29328 struct Visitor;
29329 impl<'de> serde::de::Visitor<'de> for Visitor {
29330 type Value = PeeringRoute;
29331 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
29332 formatter.write_str("struct PeeringRoute")
29333 }
29334 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
29335 where
29336 A: serde::de::MapAccess<'de>,
29337 {
29338 #[allow(unused_imports)]
29339 use serde::de::Error;
29340 use std::option::Option::Some;
29341 let mut fields = std::collections::HashSet::new();
29342 let mut result = Self::Value::new();
29343 while let Some(tag) = map.next_key::<__FieldTag>()? {
29344 #[allow(clippy::match_single_binding)]
29345 match tag {
29346 __FieldTag::__dest_range => {
29347 if !fields.insert(__FieldTag::__dest_range) {
29348 return std::result::Result::Err(A::Error::duplicate_field(
29349 "multiple values for dest_range",
29350 ));
29351 }
29352 result.dest_range = map
29353 .next_value::<std::option::Option<std::string::String>>()?
29354 .unwrap_or_default();
29355 }
29356 __FieldTag::__type => {
29357 if !fields.insert(__FieldTag::__type) {
29358 return std::result::Result::Err(A::Error::duplicate_field(
29359 "multiple values for type",
29360 ));
29361 }
29362 result.r#type = map.next_value::<std::option::Option<crate::model::peering_route::Type>>()?.unwrap_or_default();
29363 }
29364 __FieldTag::__next_hop_region => {
29365 if !fields.insert(__FieldTag::__next_hop_region) {
29366 return std::result::Result::Err(A::Error::duplicate_field(
29367 "multiple values for next_hop_region",
29368 ));
29369 }
29370 result.next_hop_region = map
29371 .next_value::<std::option::Option<std::string::String>>()?
29372 .unwrap_or_default();
29373 }
29374 __FieldTag::__priority => {
29375 if !fields.insert(__FieldTag::__priority) {
29376 return std::result::Result::Err(A::Error::duplicate_field(
29377 "multiple values for priority",
29378 ));
29379 }
29380 struct __With(std::option::Option<i64>);
29381 impl<'de> serde::de::Deserialize<'de> for __With {
29382 fn deserialize<D>(
29383 deserializer: D,
29384 ) -> std::result::Result<Self, D::Error>
29385 where
29386 D: serde::de::Deserializer<'de>,
29387 {
29388 serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
29389 }
29390 }
29391 result.priority = map.next_value::<__With>()?.0.unwrap_or_default();
29392 }
29393 __FieldTag::__imported => {
29394 if !fields.insert(__FieldTag::__imported) {
29395 return std::result::Result::Err(A::Error::duplicate_field(
29396 "multiple values for imported",
29397 ));
29398 }
29399 result.imported = map
29400 .next_value::<std::option::Option<bool>>()?
29401 .unwrap_or_default();
29402 }
29403 __FieldTag::__direction => {
29404 if !fields.insert(__FieldTag::__direction) {
29405 return std::result::Result::Err(A::Error::duplicate_field(
29406 "multiple values for direction",
29407 ));
29408 }
29409 result.direction = map.next_value::<std::option::Option<crate::model::peering_route::Direction>>()?.unwrap_or_default();
29410 }
29411 __FieldTag::Unknown(key) => {
29412 let value = map.next_value::<serde_json::Value>()?;
29413 result._unknown_fields.insert(key, value);
29414 }
29415 }
29416 }
29417 std::result::Result::Ok(result)
29418 }
29419 }
29420 deserializer.deserialize_any(Visitor)
29421 }
29422}
29423
29424#[doc(hidden)]
29425impl serde::ser::Serialize for PeeringRoute {
29426 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
29427 where
29428 S: serde::ser::Serializer,
29429 {
29430 use serde::ser::SerializeMap;
29431 #[allow(unused_imports)]
29432 use std::option::Option::Some;
29433 let mut state = serializer.serialize_map(std::option::Option::None)?;
29434 if !self.dest_range.is_empty() {
29435 state.serialize_entry("destRange", &self.dest_range)?;
29436 }
29437 if !wkt::internal::is_default(&self.r#type) {
29438 state.serialize_entry("type", &self.r#type)?;
29439 }
29440 if !self.next_hop_region.is_empty() {
29441 state.serialize_entry("nextHopRegion", &self.next_hop_region)?;
29442 }
29443 if !wkt::internal::is_default(&self.priority) {
29444 struct __With<'a>(&'a i64);
29445 impl<'a> serde::ser::Serialize for __With<'a> {
29446 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
29447 where
29448 S: serde::ser::Serializer,
29449 {
29450 serde_with::As::<wkt::internal::I64>::serialize(self.0, serializer)
29451 }
29452 }
29453 state.serialize_entry("priority", &__With(&self.priority))?;
29454 }
29455 if !wkt::internal::is_default(&self.imported) {
29456 state.serialize_entry("imported", &self.imported)?;
29457 }
29458 if !wkt::internal::is_default(&self.direction) {
29459 state.serialize_entry("direction", &self.direction)?;
29460 }
29461 if !self._unknown_fields.is_empty() {
29462 for (key, value) in self._unknown_fields.iter() {
29463 state.serialize_entry(key, &value)?;
29464 }
29465 }
29466 state.end()
29467 }
29468}
29469
29470pub mod peering_route {
29472 #[allow(unused_imports)]
29473 use super::*;
29474
29475 #[derive(Clone, Debug, PartialEq)]
29491 #[non_exhaustive]
29492 pub enum Type {
29493 Unspecified,
29495 DynamicPeeringRoute,
29497 StaticPeeringRoute,
29499 SubnetPeeringRoute,
29502 UnknownValue(r#type::UnknownValue),
29507 }
29508
29509 #[doc(hidden)]
29510 pub mod r#type {
29511 #[allow(unused_imports)]
29512 use super::*;
29513 #[derive(Clone, Debug, PartialEq)]
29514 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
29515 }
29516
29517 impl Type {
29518 pub fn value(&self) -> std::option::Option<i32> {
29523 match self {
29524 Self::Unspecified => std::option::Option::Some(0),
29525 Self::DynamicPeeringRoute => std::option::Option::Some(1),
29526 Self::StaticPeeringRoute => std::option::Option::Some(2),
29527 Self::SubnetPeeringRoute => std::option::Option::Some(3),
29528 Self::UnknownValue(u) => u.0.value(),
29529 }
29530 }
29531
29532 pub fn name(&self) -> std::option::Option<&str> {
29537 match self {
29538 Self::Unspecified => std::option::Option::Some("TYPE_UNSPECIFIED"),
29539 Self::DynamicPeeringRoute => std::option::Option::Some("DYNAMIC_PEERING_ROUTE"),
29540 Self::StaticPeeringRoute => std::option::Option::Some("STATIC_PEERING_ROUTE"),
29541 Self::SubnetPeeringRoute => std::option::Option::Some("SUBNET_PEERING_ROUTE"),
29542 Self::UnknownValue(u) => u.0.name(),
29543 }
29544 }
29545 }
29546
29547 impl std::default::Default for Type {
29548 fn default() -> Self {
29549 use std::convert::From;
29550 Self::from(0)
29551 }
29552 }
29553
29554 impl std::fmt::Display for Type {
29555 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
29556 wkt::internal::display_enum(f, self.name(), self.value())
29557 }
29558 }
29559
29560 impl std::convert::From<i32> for Type {
29561 fn from(value: i32) -> Self {
29562 match value {
29563 0 => Self::Unspecified,
29564 1 => Self::DynamicPeeringRoute,
29565 2 => Self::StaticPeeringRoute,
29566 3 => Self::SubnetPeeringRoute,
29567 _ => Self::UnknownValue(r#type::UnknownValue(
29568 wkt::internal::UnknownEnumValue::Integer(value),
29569 )),
29570 }
29571 }
29572 }
29573
29574 impl std::convert::From<&str> for Type {
29575 fn from(value: &str) -> Self {
29576 use std::string::ToString;
29577 match value {
29578 "TYPE_UNSPECIFIED" => Self::Unspecified,
29579 "DYNAMIC_PEERING_ROUTE" => Self::DynamicPeeringRoute,
29580 "STATIC_PEERING_ROUTE" => Self::StaticPeeringRoute,
29581 "SUBNET_PEERING_ROUTE" => Self::SubnetPeeringRoute,
29582 _ => Self::UnknownValue(r#type::UnknownValue(
29583 wkt::internal::UnknownEnumValue::String(value.to_string()),
29584 )),
29585 }
29586 }
29587 }
29588
29589 impl serde::ser::Serialize for Type {
29590 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
29591 where
29592 S: serde::Serializer,
29593 {
29594 match self {
29595 Self::Unspecified => serializer.serialize_i32(0),
29596 Self::DynamicPeeringRoute => serializer.serialize_i32(1),
29597 Self::StaticPeeringRoute => serializer.serialize_i32(2),
29598 Self::SubnetPeeringRoute => serializer.serialize_i32(3),
29599 Self::UnknownValue(u) => u.0.serialize(serializer),
29600 }
29601 }
29602 }
29603
29604 impl<'de> serde::de::Deserialize<'de> for Type {
29605 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29606 where
29607 D: serde::Deserializer<'de>,
29608 {
29609 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Type>::new(
29610 ".google.cloud.vmwareengine.v1.PeeringRoute.Type",
29611 ))
29612 }
29613 }
29614
29615 #[derive(Clone, Debug, PartialEq)]
29631 #[non_exhaustive]
29632 pub enum Direction {
29633 Unspecified,
29635 Incoming,
29637 Outgoing,
29639 UnknownValue(direction::UnknownValue),
29644 }
29645
29646 #[doc(hidden)]
29647 pub mod direction {
29648 #[allow(unused_imports)]
29649 use super::*;
29650 #[derive(Clone, Debug, PartialEq)]
29651 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
29652 }
29653
29654 impl Direction {
29655 pub fn value(&self) -> std::option::Option<i32> {
29660 match self {
29661 Self::Unspecified => std::option::Option::Some(0),
29662 Self::Incoming => std::option::Option::Some(1),
29663 Self::Outgoing => std::option::Option::Some(2),
29664 Self::UnknownValue(u) => u.0.value(),
29665 }
29666 }
29667
29668 pub fn name(&self) -> std::option::Option<&str> {
29673 match self {
29674 Self::Unspecified => std::option::Option::Some("DIRECTION_UNSPECIFIED"),
29675 Self::Incoming => std::option::Option::Some("INCOMING"),
29676 Self::Outgoing => std::option::Option::Some("OUTGOING"),
29677 Self::UnknownValue(u) => u.0.name(),
29678 }
29679 }
29680 }
29681
29682 impl std::default::Default for Direction {
29683 fn default() -> Self {
29684 use std::convert::From;
29685 Self::from(0)
29686 }
29687 }
29688
29689 impl std::fmt::Display for Direction {
29690 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
29691 wkt::internal::display_enum(f, self.name(), self.value())
29692 }
29693 }
29694
29695 impl std::convert::From<i32> for Direction {
29696 fn from(value: i32) -> Self {
29697 match value {
29698 0 => Self::Unspecified,
29699 1 => Self::Incoming,
29700 2 => Self::Outgoing,
29701 _ => Self::UnknownValue(direction::UnknownValue(
29702 wkt::internal::UnknownEnumValue::Integer(value),
29703 )),
29704 }
29705 }
29706 }
29707
29708 impl std::convert::From<&str> for Direction {
29709 fn from(value: &str) -> Self {
29710 use std::string::ToString;
29711 match value {
29712 "DIRECTION_UNSPECIFIED" => Self::Unspecified,
29713 "INCOMING" => Self::Incoming,
29714 "OUTGOING" => Self::Outgoing,
29715 _ => Self::UnknownValue(direction::UnknownValue(
29716 wkt::internal::UnknownEnumValue::String(value.to_string()),
29717 )),
29718 }
29719 }
29720 }
29721
29722 impl serde::ser::Serialize for Direction {
29723 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
29724 where
29725 S: serde::Serializer,
29726 {
29727 match self {
29728 Self::Unspecified => serializer.serialize_i32(0),
29729 Self::Incoming => serializer.serialize_i32(1),
29730 Self::Outgoing => serializer.serialize_i32(2),
29731 Self::UnknownValue(u) => u.0.serialize(serializer),
29732 }
29733 }
29734 }
29735
29736 impl<'de> serde::de::Deserialize<'de> for Direction {
29737 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29738 where
29739 D: serde::Deserializer<'de>,
29740 {
29741 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Direction>::new(
29742 ".google.cloud.vmwareengine.v1.PeeringRoute.Direction",
29743 ))
29744 }
29745 }
29746}
29747
29748#[derive(Clone, Debug, Default, PartialEq)]
29755#[non_exhaustive]
29756pub struct NetworkPolicy {
29757 pub name: std::string::String,
29763
29764 pub create_time: std::option::Option<wkt::Timestamp>,
29766
29767 pub update_time: std::option::Option<wkt::Timestamp>,
29769
29770 pub internet_access: std::option::Option<crate::model::network_policy::NetworkService>,
29772
29773 pub external_ip: std::option::Option<crate::model::network_policy::NetworkService>,
29777
29778 pub edge_services_cidr: std::string::String,
29783
29784 pub uid: std::string::String,
29786
29787 pub vmware_engine_network: std::string::String,
29792
29793 pub description: std::string::String,
29795
29796 pub vmware_engine_network_canonical: std::string::String,
29799
29800 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
29801}
29802
29803impl NetworkPolicy {
29804 pub fn new() -> Self {
29805 std::default::Default::default()
29806 }
29807
29808 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
29810 self.name = v.into();
29811 self
29812 }
29813
29814 pub fn set_create_time<T>(mut self, v: T) -> Self
29816 where
29817 T: std::convert::Into<wkt::Timestamp>,
29818 {
29819 self.create_time = std::option::Option::Some(v.into());
29820 self
29821 }
29822
29823 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
29825 where
29826 T: std::convert::Into<wkt::Timestamp>,
29827 {
29828 self.create_time = v.map(|x| x.into());
29829 self
29830 }
29831
29832 pub fn set_update_time<T>(mut self, v: T) -> Self
29834 where
29835 T: std::convert::Into<wkt::Timestamp>,
29836 {
29837 self.update_time = std::option::Option::Some(v.into());
29838 self
29839 }
29840
29841 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
29843 where
29844 T: std::convert::Into<wkt::Timestamp>,
29845 {
29846 self.update_time = v.map(|x| x.into());
29847 self
29848 }
29849
29850 pub fn set_internet_access<T>(mut self, v: T) -> Self
29852 where
29853 T: std::convert::Into<crate::model::network_policy::NetworkService>,
29854 {
29855 self.internet_access = std::option::Option::Some(v.into());
29856 self
29857 }
29858
29859 pub fn set_or_clear_internet_access<T>(mut self, v: std::option::Option<T>) -> Self
29861 where
29862 T: std::convert::Into<crate::model::network_policy::NetworkService>,
29863 {
29864 self.internet_access = v.map(|x| x.into());
29865 self
29866 }
29867
29868 pub fn set_external_ip<T>(mut self, v: T) -> Self
29870 where
29871 T: std::convert::Into<crate::model::network_policy::NetworkService>,
29872 {
29873 self.external_ip = std::option::Option::Some(v.into());
29874 self
29875 }
29876
29877 pub fn set_or_clear_external_ip<T>(mut self, v: std::option::Option<T>) -> Self
29879 where
29880 T: std::convert::Into<crate::model::network_policy::NetworkService>,
29881 {
29882 self.external_ip = v.map(|x| x.into());
29883 self
29884 }
29885
29886 pub fn set_edge_services_cidr<T: std::convert::Into<std::string::String>>(
29888 mut self,
29889 v: T,
29890 ) -> Self {
29891 self.edge_services_cidr = v.into();
29892 self
29893 }
29894
29895 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
29897 self.uid = v.into();
29898 self
29899 }
29900
29901 pub fn set_vmware_engine_network<T: std::convert::Into<std::string::String>>(
29903 mut self,
29904 v: T,
29905 ) -> Self {
29906 self.vmware_engine_network = v.into();
29907 self
29908 }
29909
29910 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
29912 self.description = v.into();
29913 self
29914 }
29915
29916 pub fn set_vmware_engine_network_canonical<T: std::convert::Into<std::string::String>>(
29918 mut self,
29919 v: T,
29920 ) -> Self {
29921 self.vmware_engine_network_canonical = v.into();
29922 self
29923 }
29924}
29925
29926impl wkt::message::Message for NetworkPolicy {
29927 fn typename() -> &'static str {
29928 "type.googleapis.com/google.cloud.vmwareengine.v1.NetworkPolicy"
29929 }
29930}
29931
29932#[doc(hidden)]
29933impl<'de> serde::de::Deserialize<'de> for NetworkPolicy {
29934 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29935 where
29936 D: serde::Deserializer<'de>,
29937 {
29938 #[allow(non_camel_case_types)]
29939 #[doc(hidden)]
29940 #[derive(PartialEq, Eq, Hash)]
29941 enum __FieldTag {
29942 __name,
29943 __create_time,
29944 __update_time,
29945 __internet_access,
29946 __external_ip,
29947 __edge_services_cidr,
29948 __uid,
29949 __vmware_engine_network,
29950 __description,
29951 __vmware_engine_network_canonical,
29952 Unknown(std::string::String),
29953 }
29954 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
29955 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
29956 where
29957 D: serde::Deserializer<'de>,
29958 {
29959 struct Visitor;
29960 impl<'de> serde::de::Visitor<'de> for Visitor {
29961 type Value = __FieldTag;
29962 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
29963 formatter.write_str("a field name for NetworkPolicy")
29964 }
29965 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
29966 where
29967 E: serde::de::Error,
29968 {
29969 use std::result::Result::Ok;
29970 use std::string::ToString;
29971 match value {
29972 "name" => Ok(__FieldTag::__name),
29973 "createTime" => Ok(__FieldTag::__create_time),
29974 "create_time" => Ok(__FieldTag::__create_time),
29975 "updateTime" => Ok(__FieldTag::__update_time),
29976 "update_time" => Ok(__FieldTag::__update_time),
29977 "internetAccess" => Ok(__FieldTag::__internet_access),
29978 "internet_access" => Ok(__FieldTag::__internet_access),
29979 "externalIp" => Ok(__FieldTag::__external_ip),
29980 "external_ip" => Ok(__FieldTag::__external_ip),
29981 "edgeServicesCidr" => Ok(__FieldTag::__edge_services_cidr),
29982 "edge_services_cidr" => Ok(__FieldTag::__edge_services_cidr),
29983 "uid" => Ok(__FieldTag::__uid),
29984 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
29985 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
29986 "description" => Ok(__FieldTag::__description),
29987 "vmwareEngineNetworkCanonical" => {
29988 Ok(__FieldTag::__vmware_engine_network_canonical)
29989 }
29990 "vmware_engine_network_canonical" => {
29991 Ok(__FieldTag::__vmware_engine_network_canonical)
29992 }
29993 _ => Ok(__FieldTag::Unknown(value.to_string())),
29994 }
29995 }
29996 }
29997 deserializer.deserialize_identifier(Visitor)
29998 }
29999 }
30000 struct Visitor;
30001 impl<'de> serde::de::Visitor<'de> for Visitor {
30002 type Value = NetworkPolicy;
30003 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
30004 formatter.write_str("struct NetworkPolicy")
30005 }
30006 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
30007 where
30008 A: serde::de::MapAccess<'de>,
30009 {
30010 #[allow(unused_imports)]
30011 use serde::de::Error;
30012 use std::option::Option::Some;
30013 let mut fields = std::collections::HashSet::new();
30014 let mut result = Self::Value::new();
30015 while let Some(tag) = map.next_key::<__FieldTag>()? {
30016 #[allow(clippy::match_single_binding)]
30017 match tag {
30018 __FieldTag::__name => {
30019 if !fields.insert(__FieldTag::__name) {
30020 return std::result::Result::Err(A::Error::duplicate_field(
30021 "multiple values for name",
30022 ));
30023 }
30024 result.name = map
30025 .next_value::<std::option::Option<std::string::String>>()?
30026 .unwrap_or_default();
30027 }
30028 __FieldTag::__create_time => {
30029 if !fields.insert(__FieldTag::__create_time) {
30030 return std::result::Result::Err(A::Error::duplicate_field(
30031 "multiple values for create_time",
30032 ));
30033 }
30034 result.create_time =
30035 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
30036 }
30037 __FieldTag::__update_time => {
30038 if !fields.insert(__FieldTag::__update_time) {
30039 return std::result::Result::Err(A::Error::duplicate_field(
30040 "multiple values for update_time",
30041 ));
30042 }
30043 result.update_time =
30044 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
30045 }
30046 __FieldTag::__internet_access => {
30047 if !fields.insert(__FieldTag::__internet_access) {
30048 return std::result::Result::Err(A::Error::duplicate_field(
30049 "multiple values for internet_access",
30050 ));
30051 }
30052 result.internet_access =
30053 map.next_value::<std::option::Option<
30054 crate::model::network_policy::NetworkService,
30055 >>()?;
30056 }
30057 __FieldTag::__external_ip => {
30058 if !fields.insert(__FieldTag::__external_ip) {
30059 return std::result::Result::Err(A::Error::duplicate_field(
30060 "multiple values for external_ip",
30061 ));
30062 }
30063 result.external_ip =
30064 map.next_value::<std::option::Option<
30065 crate::model::network_policy::NetworkService,
30066 >>()?;
30067 }
30068 __FieldTag::__edge_services_cidr => {
30069 if !fields.insert(__FieldTag::__edge_services_cidr) {
30070 return std::result::Result::Err(A::Error::duplicate_field(
30071 "multiple values for edge_services_cidr",
30072 ));
30073 }
30074 result.edge_services_cidr = map
30075 .next_value::<std::option::Option<std::string::String>>()?
30076 .unwrap_or_default();
30077 }
30078 __FieldTag::__uid => {
30079 if !fields.insert(__FieldTag::__uid) {
30080 return std::result::Result::Err(A::Error::duplicate_field(
30081 "multiple values for uid",
30082 ));
30083 }
30084 result.uid = map
30085 .next_value::<std::option::Option<std::string::String>>()?
30086 .unwrap_or_default();
30087 }
30088 __FieldTag::__vmware_engine_network => {
30089 if !fields.insert(__FieldTag::__vmware_engine_network) {
30090 return std::result::Result::Err(A::Error::duplicate_field(
30091 "multiple values for vmware_engine_network",
30092 ));
30093 }
30094 result.vmware_engine_network = map
30095 .next_value::<std::option::Option<std::string::String>>()?
30096 .unwrap_or_default();
30097 }
30098 __FieldTag::__description => {
30099 if !fields.insert(__FieldTag::__description) {
30100 return std::result::Result::Err(A::Error::duplicate_field(
30101 "multiple values for description",
30102 ));
30103 }
30104 result.description = map
30105 .next_value::<std::option::Option<std::string::String>>()?
30106 .unwrap_or_default();
30107 }
30108 __FieldTag::__vmware_engine_network_canonical => {
30109 if !fields.insert(__FieldTag::__vmware_engine_network_canonical) {
30110 return std::result::Result::Err(A::Error::duplicate_field(
30111 "multiple values for vmware_engine_network_canonical",
30112 ));
30113 }
30114 result.vmware_engine_network_canonical = map
30115 .next_value::<std::option::Option<std::string::String>>()?
30116 .unwrap_or_default();
30117 }
30118 __FieldTag::Unknown(key) => {
30119 let value = map.next_value::<serde_json::Value>()?;
30120 result._unknown_fields.insert(key, value);
30121 }
30122 }
30123 }
30124 std::result::Result::Ok(result)
30125 }
30126 }
30127 deserializer.deserialize_any(Visitor)
30128 }
30129}
30130
30131#[doc(hidden)]
30132impl serde::ser::Serialize for NetworkPolicy {
30133 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
30134 where
30135 S: serde::ser::Serializer,
30136 {
30137 use serde::ser::SerializeMap;
30138 #[allow(unused_imports)]
30139 use std::option::Option::Some;
30140 let mut state = serializer.serialize_map(std::option::Option::None)?;
30141 if !self.name.is_empty() {
30142 state.serialize_entry("name", &self.name)?;
30143 }
30144 if self.create_time.is_some() {
30145 state.serialize_entry("createTime", &self.create_time)?;
30146 }
30147 if self.update_time.is_some() {
30148 state.serialize_entry("updateTime", &self.update_time)?;
30149 }
30150 if self.internet_access.is_some() {
30151 state.serialize_entry("internetAccess", &self.internet_access)?;
30152 }
30153 if self.external_ip.is_some() {
30154 state.serialize_entry("externalIp", &self.external_ip)?;
30155 }
30156 if !self.edge_services_cidr.is_empty() {
30157 state.serialize_entry("edgeServicesCidr", &self.edge_services_cidr)?;
30158 }
30159 if !self.uid.is_empty() {
30160 state.serialize_entry("uid", &self.uid)?;
30161 }
30162 if !self.vmware_engine_network.is_empty() {
30163 state.serialize_entry("vmwareEngineNetwork", &self.vmware_engine_network)?;
30164 }
30165 if !self.description.is_empty() {
30166 state.serialize_entry("description", &self.description)?;
30167 }
30168 if !self.vmware_engine_network_canonical.is_empty() {
30169 state.serialize_entry(
30170 "vmwareEngineNetworkCanonical",
30171 &self.vmware_engine_network_canonical,
30172 )?;
30173 }
30174 if !self._unknown_fields.is_empty() {
30175 for (key, value) in self._unknown_fields.iter() {
30176 state.serialize_entry(key, &value)?;
30177 }
30178 }
30179 state.end()
30180 }
30181}
30182
30183pub mod network_policy {
30185 #[allow(unused_imports)]
30186 use super::*;
30187
30188 #[derive(Clone, Debug, Default, PartialEq)]
30194 #[non_exhaustive]
30195 pub struct NetworkService {
30196 pub enabled: bool,
30198
30199 pub state: crate::model::network_policy::network_service::State,
30202
30203 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
30204 }
30205
30206 impl NetworkService {
30207 pub fn new() -> Self {
30208 std::default::Default::default()
30209 }
30210
30211 pub fn set_enabled<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
30213 self.enabled = v.into();
30214 self
30215 }
30216
30217 pub fn set_state<
30219 T: std::convert::Into<crate::model::network_policy::network_service::State>,
30220 >(
30221 mut self,
30222 v: T,
30223 ) -> Self {
30224 self.state = v.into();
30225 self
30226 }
30227 }
30228
30229 impl wkt::message::Message for NetworkService {
30230 fn typename() -> &'static str {
30231 "type.googleapis.com/google.cloud.vmwareengine.v1.NetworkPolicy.NetworkService"
30232 }
30233 }
30234
30235 #[doc(hidden)]
30236 impl<'de> serde::de::Deserialize<'de> for NetworkService {
30237 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
30238 where
30239 D: serde::Deserializer<'de>,
30240 {
30241 #[allow(non_camel_case_types)]
30242 #[doc(hidden)]
30243 #[derive(PartialEq, Eq, Hash)]
30244 enum __FieldTag {
30245 __enabled,
30246 __state,
30247 Unknown(std::string::String),
30248 }
30249 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
30250 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
30251 where
30252 D: serde::Deserializer<'de>,
30253 {
30254 struct Visitor;
30255 impl<'de> serde::de::Visitor<'de> for Visitor {
30256 type Value = __FieldTag;
30257 fn expecting(
30258 &self,
30259 formatter: &mut std::fmt::Formatter,
30260 ) -> std::fmt::Result {
30261 formatter.write_str("a field name for NetworkService")
30262 }
30263 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
30264 where
30265 E: serde::de::Error,
30266 {
30267 use std::result::Result::Ok;
30268 use std::string::ToString;
30269 match value {
30270 "enabled" => Ok(__FieldTag::__enabled),
30271 "state" => Ok(__FieldTag::__state),
30272 _ => Ok(__FieldTag::Unknown(value.to_string())),
30273 }
30274 }
30275 }
30276 deserializer.deserialize_identifier(Visitor)
30277 }
30278 }
30279 struct Visitor;
30280 impl<'de> serde::de::Visitor<'de> for Visitor {
30281 type Value = NetworkService;
30282 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
30283 formatter.write_str("struct NetworkService")
30284 }
30285 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
30286 where
30287 A: serde::de::MapAccess<'de>,
30288 {
30289 #[allow(unused_imports)]
30290 use serde::de::Error;
30291 use std::option::Option::Some;
30292 let mut fields = std::collections::HashSet::new();
30293 let mut result = Self::Value::new();
30294 while let Some(tag) = map.next_key::<__FieldTag>()? {
30295 #[allow(clippy::match_single_binding)]
30296 match tag {
30297 __FieldTag::__enabled => {
30298 if !fields.insert(__FieldTag::__enabled) {
30299 return std::result::Result::Err(A::Error::duplicate_field(
30300 "multiple values for enabled",
30301 ));
30302 }
30303 result.enabled = map
30304 .next_value::<std::option::Option<bool>>()?
30305 .unwrap_or_default();
30306 }
30307 __FieldTag::__state => {
30308 if !fields.insert(__FieldTag::__state) {
30309 return std::result::Result::Err(A::Error::duplicate_field(
30310 "multiple values for state",
30311 ));
30312 }
30313 result.state = map
30314 .next_value::<std::option::Option<
30315 crate::model::network_policy::network_service::State,
30316 >>()?
30317 .unwrap_or_default();
30318 }
30319 __FieldTag::Unknown(key) => {
30320 let value = map.next_value::<serde_json::Value>()?;
30321 result._unknown_fields.insert(key, value);
30322 }
30323 }
30324 }
30325 std::result::Result::Ok(result)
30326 }
30327 }
30328 deserializer.deserialize_any(Visitor)
30329 }
30330 }
30331
30332 #[doc(hidden)]
30333 impl serde::ser::Serialize for NetworkService {
30334 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
30335 where
30336 S: serde::ser::Serializer,
30337 {
30338 use serde::ser::SerializeMap;
30339 #[allow(unused_imports)]
30340 use std::option::Option::Some;
30341 let mut state = serializer.serialize_map(std::option::Option::None)?;
30342 if !wkt::internal::is_default(&self.enabled) {
30343 state.serialize_entry("enabled", &self.enabled)?;
30344 }
30345 if !wkt::internal::is_default(&self.state) {
30346 state.serialize_entry("state", &self.state)?;
30347 }
30348 if !self._unknown_fields.is_empty() {
30349 for (key, value) in self._unknown_fields.iter() {
30350 state.serialize_entry(key, &value)?;
30351 }
30352 }
30353 state.end()
30354 }
30355 }
30356
30357 pub mod network_service {
30359 #[allow(unused_imports)]
30360 use super::*;
30361
30362 #[derive(Clone, Debug, PartialEq)]
30379 #[non_exhaustive]
30380 pub enum State {
30381 Unspecified,
30383 Unprovisioned,
30385 Reconciling,
30387 Active,
30389 UnknownValue(state::UnknownValue),
30394 }
30395
30396 #[doc(hidden)]
30397 pub mod state {
30398 #[allow(unused_imports)]
30399 use super::*;
30400 #[derive(Clone, Debug, PartialEq)]
30401 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
30402 }
30403
30404 impl State {
30405 pub fn value(&self) -> std::option::Option<i32> {
30410 match self {
30411 Self::Unspecified => std::option::Option::Some(0),
30412 Self::Unprovisioned => std::option::Option::Some(1),
30413 Self::Reconciling => std::option::Option::Some(2),
30414 Self::Active => std::option::Option::Some(3),
30415 Self::UnknownValue(u) => u.0.value(),
30416 }
30417 }
30418
30419 pub fn name(&self) -> std::option::Option<&str> {
30424 match self {
30425 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
30426 Self::Unprovisioned => std::option::Option::Some("UNPROVISIONED"),
30427 Self::Reconciling => std::option::Option::Some("RECONCILING"),
30428 Self::Active => std::option::Option::Some("ACTIVE"),
30429 Self::UnknownValue(u) => u.0.name(),
30430 }
30431 }
30432 }
30433
30434 impl std::default::Default for State {
30435 fn default() -> Self {
30436 use std::convert::From;
30437 Self::from(0)
30438 }
30439 }
30440
30441 impl std::fmt::Display for State {
30442 fn fmt(
30443 &self,
30444 f: &mut std::fmt::Formatter<'_>,
30445 ) -> std::result::Result<(), std::fmt::Error> {
30446 wkt::internal::display_enum(f, self.name(), self.value())
30447 }
30448 }
30449
30450 impl std::convert::From<i32> for State {
30451 fn from(value: i32) -> Self {
30452 match value {
30453 0 => Self::Unspecified,
30454 1 => Self::Unprovisioned,
30455 2 => Self::Reconciling,
30456 3 => Self::Active,
30457 _ => Self::UnknownValue(state::UnknownValue(
30458 wkt::internal::UnknownEnumValue::Integer(value),
30459 )),
30460 }
30461 }
30462 }
30463
30464 impl std::convert::From<&str> for State {
30465 fn from(value: &str) -> Self {
30466 use std::string::ToString;
30467 match value {
30468 "STATE_UNSPECIFIED" => Self::Unspecified,
30469 "UNPROVISIONED" => Self::Unprovisioned,
30470 "RECONCILING" => Self::Reconciling,
30471 "ACTIVE" => Self::Active,
30472 _ => Self::UnknownValue(state::UnknownValue(
30473 wkt::internal::UnknownEnumValue::String(value.to_string()),
30474 )),
30475 }
30476 }
30477 }
30478
30479 impl serde::ser::Serialize for State {
30480 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
30481 where
30482 S: serde::Serializer,
30483 {
30484 match self {
30485 Self::Unspecified => serializer.serialize_i32(0),
30486 Self::Unprovisioned => serializer.serialize_i32(1),
30487 Self::Reconciling => serializer.serialize_i32(2),
30488 Self::Active => serializer.serialize_i32(3),
30489 Self::UnknownValue(u) => u.0.serialize(serializer),
30490 }
30491 }
30492 }
30493
30494 impl<'de> serde::de::Deserialize<'de> for State {
30495 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
30496 where
30497 D: serde::Deserializer<'de>,
30498 {
30499 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
30500 ".google.cloud.vmwareengine.v1.NetworkPolicy.NetworkService.State",
30501 ))
30502 }
30503 }
30504 }
30505}
30506
30507#[derive(Clone, Debug, Default, PartialEq)]
30513#[non_exhaustive]
30514pub struct ManagementDnsZoneBinding {
30515 pub name: std::string::String,
30521
30522 pub create_time: std::option::Option<wkt::Timestamp>,
30524
30525 pub update_time: std::option::Option<wkt::Timestamp>,
30527
30528 pub state: crate::model::management_dns_zone_binding::State,
30530
30531 pub description: std::string::String,
30533
30534 pub uid: std::string::String,
30536
30537 pub bind_network: std::option::Option<crate::model::management_dns_zone_binding::BindNetwork>,
30541
30542 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
30543}
30544
30545impl ManagementDnsZoneBinding {
30546 pub fn new() -> Self {
30547 std::default::Default::default()
30548 }
30549
30550 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
30552 self.name = v.into();
30553 self
30554 }
30555
30556 pub fn set_create_time<T>(mut self, v: T) -> Self
30558 where
30559 T: std::convert::Into<wkt::Timestamp>,
30560 {
30561 self.create_time = std::option::Option::Some(v.into());
30562 self
30563 }
30564
30565 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
30567 where
30568 T: std::convert::Into<wkt::Timestamp>,
30569 {
30570 self.create_time = v.map(|x| x.into());
30571 self
30572 }
30573
30574 pub fn set_update_time<T>(mut self, v: T) -> Self
30576 where
30577 T: std::convert::Into<wkt::Timestamp>,
30578 {
30579 self.update_time = std::option::Option::Some(v.into());
30580 self
30581 }
30582
30583 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
30585 where
30586 T: std::convert::Into<wkt::Timestamp>,
30587 {
30588 self.update_time = v.map(|x| x.into());
30589 self
30590 }
30591
30592 pub fn set_state<T: std::convert::Into<crate::model::management_dns_zone_binding::State>>(
30594 mut self,
30595 v: T,
30596 ) -> Self {
30597 self.state = v.into();
30598 self
30599 }
30600
30601 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
30603 self.description = v.into();
30604 self
30605 }
30606
30607 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
30609 self.uid = v.into();
30610 self
30611 }
30612
30613 pub fn set_bind_network<
30618 T: std::convert::Into<
30619 std::option::Option<crate::model::management_dns_zone_binding::BindNetwork>,
30620 >,
30621 >(
30622 mut self,
30623 v: T,
30624 ) -> Self {
30625 self.bind_network = v.into();
30626 self
30627 }
30628
30629 pub fn vpc_network(&self) -> std::option::Option<&std::string::String> {
30633 #[allow(unreachable_patterns)]
30634 self.bind_network.as_ref().and_then(|v| match v {
30635 crate::model::management_dns_zone_binding::BindNetwork::VpcNetwork(v) => {
30636 std::option::Option::Some(v)
30637 }
30638 _ => std::option::Option::None,
30639 })
30640 }
30641
30642 pub fn set_vpc_network<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
30648 self.bind_network = std::option::Option::Some(
30649 crate::model::management_dns_zone_binding::BindNetwork::VpcNetwork(v.into()),
30650 );
30651 self
30652 }
30653
30654 pub fn vmware_engine_network(&self) -> std::option::Option<&std::string::String> {
30658 #[allow(unreachable_patterns)]
30659 self.bind_network.as_ref().and_then(|v| match v {
30660 crate::model::management_dns_zone_binding::BindNetwork::VmwareEngineNetwork(v) => {
30661 std::option::Option::Some(v)
30662 }
30663 _ => std::option::Option::None,
30664 })
30665 }
30666
30667 pub fn set_vmware_engine_network<T: std::convert::Into<std::string::String>>(
30673 mut self,
30674 v: T,
30675 ) -> Self {
30676 self.bind_network = std::option::Option::Some(
30677 crate::model::management_dns_zone_binding::BindNetwork::VmwareEngineNetwork(v.into()),
30678 );
30679 self
30680 }
30681}
30682
30683impl wkt::message::Message for ManagementDnsZoneBinding {
30684 fn typename() -> &'static str {
30685 "type.googleapis.com/google.cloud.vmwareengine.v1.ManagementDnsZoneBinding"
30686 }
30687}
30688
30689#[doc(hidden)]
30690impl<'de> serde::de::Deserialize<'de> for ManagementDnsZoneBinding {
30691 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
30692 where
30693 D: serde::Deserializer<'de>,
30694 {
30695 #[allow(non_camel_case_types)]
30696 #[doc(hidden)]
30697 #[derive(PartialEq, Eq, Hash)]
30698 enum __FieldTag {
30699 __name,
30700 __create_time,
30701 __update_time,
30702 __state,
30703 __description,
30704 __vpc_network,
30705 __vmware_engine_network,
30706 __uid,
30707 Unknown(std::string::String),
30708 }
30709 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
30710 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
30711 where
30712 D: serde::Deserializer<'de>,
30713 {
30714 struct Visitor;
30715 impl<'de> serde::de::Visitor<'de> for Visitor {
30716 type Value = __FieldTag;
30717 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
30718 formatter.write_str("a field name for ManagementDnsZoneBinding")
30719 }
30720 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
30721 where
30722 E: serde::de::Error,
30723 {
30724 use std::result::Result::Ok;
30725 use std::string::ToString;
30726 match value {
30727 "name" => Ok(__FieldTag::__name),
30728 "createTime" => Ok(__FieldTag::__create_time),
30729 "create_time" => Ok(__FieldTag::__create_time),
30730 "updateTime" => Ok(__FieldTag::__update_time),
30731 "update_time" => Ok(__FieldTag::__update_time),
30732 "state" => Ok(__FieldTag::__state),
30733 "description" => Ok(__FieldTag::__description),
30734 "vpcNetwork" => Ok(__FieldTag::__vpc_network),
30735 "vpc_network" => Ok(__FieldTag::__vpc_network),
30736 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
30737 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
30738 "uid" => Ok(__FieldTag::__uid),
30739 _ => Ok(__FieldTag::Unknown(value.to_string())),
30740 }
30741 }
30742 }
30743 deserializer.deserialize_identifier(Visitor)
30744 }
30745 }
30746 struct Visitor;
30747 impl<'de> serde::de::Visitor<'de> for Visitor {
30748 type Value = ManagementDnsZoneBinding;
30749 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
30750 formatter.write_str("struct ManagementDnsZoneBinding")
30751 }
30752 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
30753 where
30754 A: serde::de::MapAccess<'de>,
30755 {
30756 #[allow(unused_imports)]
30757 use serde::de::Error;
30758 use std::option::Option::Some;
30759 let mut fields = std::collections::HashSet::new();
30760 let mut result = Self::Value::new();
30761 while let Some(tag) = map.next_key::<__FieldTag>()? {
30762 #[allow(clippy::match_single_binding)]
30763 match tag {
30764 __FieldTag::__name => {
30765 if !fields.insert(__FieldTag::__name) {
30766 return std::result::Result::Err(A::Error::duplicate_field(
30767 "multiple values for name",
30768 ));
30769 }
30770 result.name = map
30771 .next_value::<std::option::Option<std::string::String>>()?
30772 .unwrap_or_default();
30773 }
30774 __FieldTag::__create_time => {
30775 if !fields.insert(__FieldTag::__create_time) {
30776 return std::result::Result::Err(A::Error::duplicate_field(
30777 "multiple values for create_time",
30778 ));
30779 }
30780 result.create_time =
30781 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
30782 }
30783 __FieldTag::__update_time => {
30784 if !fields.insert(__FieldTag::__update_time) {
30785 return std::result::Result::Err(A::Error::duplicate_field(
30786 "multiple values for update_time",
30787 ));
30788 }
30789 result.update_time =
30790 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
30791 }
30792 __FieldTag::__state => {
30793 if !fields.insert(__FieldTag::__state) {
30794 return std::result::Result::Err(A::Error::duplicate_field(
30795 "multiple values for state",
30796 ));
30797 }
30798 result.state = map
30799 .next_value::<std::option::Option<
30800 crate::model::management_dns_zone_binding::State,
30801 >>()?
30802 .unwrap_or_default();
30803 }
30804 __FieldTag::__description => {
30805 if !fields.insert(__FieldTag::__description) {
30806 return std::result::Result::Err(A::Error::duplicate_field(
30807 "multiple values for description",
30808 ));
30809 }
30810 result.description = map
30811 .next_value::<std::option::Option<std::string::String>>()?
30812 .unwrap_or_default();
30813 }
30814 __FieldTag::__vpc_network => {
30815 if !fields.insert(__FieldTag::__vpc_network) {
30816 return std::result::Result::Err(A::Error::duplicate_field(
30817 "multiple values for vpc_network",
30818 ));
30819 }
30820 if result.bind_network.is_some() {
30821 return std::result::Result::Err(A::Error::duplicate_field(
30822 "multiple values for `bind_network`, a oneof with full ID .google.cloud.vmwareengine.v1.ManagementDnsZoneBinding.vpc_network, latest field was vpcNetwork",
30823 ));
30824 }
30825 result.bind_network = std::option::Option::Some(
30826 crate::model::management_dns_zone_binding::BindNetwork::VpcNetwork(
30827 map.next_value::<std::option::Option<std::string::String>>()?
30828 .unwrap_or_default(),
30829 ),
30830 );
30831 }
30832 __FieldTag::__vmware_engine_network => {
30833 if !fields.insert(__FieldTag::__vmware_engine_network) {
30834 return std::result::Result::Err(A::Error::duplicate_field(
30835 "multiple values for vmware_engine_network",
30836 ));
30837 }
30838 if result.bind_network.is_some() {
30839 return std::result::Result::Err(A::Error::duplicate_field(
30840 "multiple values for `bind_network`, a oneof with full ID .google.cloud.vmwareengine.v1.ManagementDnsZoneBinding.vmware_engine_network, latest field was vmwareEngineNetwork",
30841 ));
30842 }
30843 result.bind_network = std::option::Option::Some(
30844 crate::model::management_dns_zone_binding::BindNetwork::VmwareEngineNetwork(
30845 map.next_value::<std::option::Option<std::string::String>>()?.unwrap_or_default()
30846 ),
30847 );
30848 }
30849 __FieldTag::__uid => {
30850 if !fields.insert(__FieldTag::__uid) {
30851 return std::result::Result::Err(A::Error::duplicate_field(
30852 "multiple values for uid",
30853 ));
30854 }
30855 result.uid = map
30856 .next_value::<std::option::Option<std::string::String>>()?
30857 .unwrap_or_default();
30858 }
30859 __FieldTag::Unknown(key) => {
30860 let value = map.next_value::<serde_json::Value>()?;
30861 result._unknown_fields.insert(key, value);
30862 }
30863 }
30864 }
30865 std::result::Result::Ok(result)
30866 }
30867 }
30868 deserializer.deserialize_any(Visitor)
30869 }
30870}
30871
30872#[doc(hidden)]
30873impl serde::ser::Serialize for ManagementDnsZoneBinding {
30874 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
30875 where
30876 S: serde::ser::Serializer,
30877 {
30878 use serde::ser::SerializeMap;
30879 #[allow(unused_imports)]
30880 use std::option::Option::Some;
30881 let mut state = serializer.serialize_map(std::option::Option::None)?;
30882 if !self.name.is_empty() {
30883 state.serialize_entry("name", &self.name)?;
30884 }
30885 if self.create_time.is_some() {
30886 state.serialize_entry("createTime", &self.create_time)?;
30887 }
30888 if self.update_time.is_some() {
30889 state.serialize_entry("updateTime", &self.update_time)?;
30890 }
30891 if !wkt::internal::is_default(&self.state) {
30892 state.serialize_entry("state", &self.state)?;
30893 }
30894 if !self.description.is_empty() {
30895 state.serialize_entry("description", &self.description)?;
30896 }
30897 if let Some(value) = self.vpc_network() {
30898 state.serialize_entry("vpcNetwork", value)?;
30899 }
30900 if let Some(value) = self.vmware_engine_network() {
30901 state.serialize_entry("vmwareEngineNetwork", value)?;
30902 }
30903 if !self.uid.is_empty() {
30904 state.serialize_entry("uid", &self.uid)?;
30905 }
30906 if !self._unknown_fields.is_empty() {
30907 for (key, value) in self._unknown_fields.iter() {
30908 state.serialize_entry(key, &value)?;
30909 }
30910 }
30911 state.end()
30912 }
30913}
30914
30915pub mod management_dns_zone_binding {
30917 #[allow(unused_imports)]
30918 use super::*;
30919
30920 #[derive(Clone, Debug, PartialEq)]
30937 #[non_exhaustive]
30938 pub enum State {
30939 Unspecified,
30941 Active,
30943 Creating,
30945 Updating,
30947 Deleting,
30949 Failed,
30951 UnknownValue(state::UnknownValue),
30956 }
30957
30958 #[doc(hidden)]
30959 pub mod state {
30960 #[allow(unused_imports)]
30961 use super::*;
30962 #[derive(Clone, Debug, PartialEq)]
30963 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
30964 }
30965
30966 impl State {
30967 pub fn value(&self) -> std::option::Option<i32> {
30972 match self {
30973 Self::Unspecified => std::option::Option::Some(0),
30974 Self::Active => std::option::Option::Some(1),
30975 Self::Creating => std::option::Option::Some(2),
30976 Self::Updating => std::option::Option::Some(3),
30977 Self::Deleting => std::option::Option::Some(4),
30978 Self::Failed => std::option::Option::Some(5),
30979 Self::UnknownValue(u) => u.0.value(),
30980 }
30981 }
30982
30983 pub fn name(&self) -> std::option::Option<&str> {
30988 match self {
30989 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
30990 Self::Active => std::option::Option::Some("ACTIVE"),
30991 Self::Creating => std::option::Option::Some("CREATING"),
30992 Self::Updating => std::option::Option::Some("UPDATING"),
30993 Self::Deleting => std::option::Option::Some("DELETING"),
30994 Self::Failed => std::option::Option::Some("FAILED"),
30995 Self::UnknownValue(u) => u.0.name(),
30996 }
30997 }
30998 }
30999
31000 impl std::default::Default for State {
31001 fn default() -> Self {
31002 use std::convert::From;
31003 Self::from(0)
31004 }
31005 }
31006
31007 impl std::fmt::Display for State {
31008 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
31009 wkt::internal::display_enum(f, self.name(), self.value())
31010 }
31011 }
31012
31013 impl std::convert::From<i32> for State {
31014 fn from(value: i32) -> Self {
31015 match value {
31016 0 => Self::Unspecified,
31017 1 => Self::Active,
31018 2 => Self::Creating,
31019 3 => Self::Updating,
31020 4 => Self::Deleting,
31021 5 => Self::Failed,
31022 _ => Self::UnknownValue(state::UnknownValue(
31023 wkt::internal::UnknownEnumValue::Integer(value),
31024 )),
31025 }
31026 }
31027 }
31028
31029 impl std::convert::From<&str> for State {
31030 fn from(value: &str) -> Self {
31031 use std::string::ToString;
31032 match value {
31033 "STATE_UNSPECIFIED" => Self::Unspecified,
31034 "ACTIVE" => Self::Active,
31035 "CREATING" => Self::Creating,
31036 "UPDATING" => Self::Updating,
31037 "DELETING" => Self::Deleting,
31038 "FAILED" => Self::Failed,
31039 _ => Self::UnknownValue(state::UnknownValue(
31040 wkt::internal::UnknownEnumValue::String(value.to_string()),
31041 )),
31042 }
31043 }
31044 }
31045
31046 impl serde::ser::Serialize for State {
31047 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
31048 where
31049 S: serde::Serializer,
31050 {
31051 match self {
31052 Self::Unspecified => serializer.serialize_i32(0),
31053 Self::Active => serializer.serialize_i32(1),
31054 Self::Creating => serializer.serialize_i32(2),
31055 Self::Updating => serializer.serialize_i32(3),
31056 Self::Deleting => serializer.serialize_i32(4),
31057 Self::Failed => serializer.serialize_i32(5),
31058 Self::UnknownValue(u) => u.0.serialize(serializer),
31059 }
31060 }
31061 }
31062
31063 impl<'de> serde::de::Deserialize<'de> for State {
31064 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31065 where
31066 D: serde::Deserializer<'de>,
31067 {
31068 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
31069 ".google.cloud.vmwareengine.v1.ManagementDnsZoneBinding.State",
31070 ))
31071 }
31072 }
31073
31074 #[derive(Clone, Debug, PartialEq)]
31078 #[non_exhaustive]
31079 pub enum BindNetwork {
31080 VpcNetwork(std::string::String),
31085 VmwareEngineNetwork(std::string::String),
31090 }
31091}
31092
31093#[derive(Clone, Debug, Default, PartialEq)]
31096#[non_exhaustive]
31097pub struct VmwareEngineNetwork {
31098 pub name: std::string::String,
31104
31105 pub create_time: std::option::Option<wkt::Timestamp>,
31107
31108 pub update_time: std::option::Option<wkt::Timestamp>,
31110
31111 pub description: std::string::String,
31113
31114 pub vpc_networks: std::vec::Vec<crate::model::vmware_engine_network::VpcNetwork>,
31118
31119 pub state: crate::model::vmware_engine_network::State,
31121
31122 pub r#type: crate::model::vmware_engine_network::Type,
31124
31125 pub uid: std::string::String,
31127
31128 pub etag: std::string::String,
31133
31134 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
31135}
31136
31137impl VmwareEngineNetwork {
31138 pub fn new() -> Self {
31139 std::default::Default::default()
31140 }
31141
31142 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
31144 self.name = v.into();
31145 self
31146 }
31147
31148 pub fn set_create_time<T>(mut self, v: T) -> Self
31150 where
31151 T: std::convert::Into<wkt::Timestamp>,
31152 {
31153 self.create_time = std::option::Option::Some(v.into());
31154 self
31155 }
31156
31157 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
31159 where
31160 T: std::convert::Into<wkt::Timestamp>,
31161 {
31162 self.create_time = v.map(|x| x.into());
31163 self
31164 }
31165
31166 pub fn set_update_time<T>(mut self, v: T) -> Self
31168 where
31169 T: std::convert::Into<wkt::Timestamp>,
31170 {
31171 self.update_time = std::option::Option::Some(v.into());
31172 self
31173 }
31174
31175 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
31177 where
31178 T: std::convert::Into<wkt::Timestamp>,
31179 {
31180 self.update_time = v.map(|x| x.into());
31181 self
31182 }
31183
31184 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
31186 self.description = v.into();
31187 self
31188 }
31189
31190 pub fn set_vpc_networks<T, V>(mut self, v: T) -> Self
31192 where
31193 T: std::iter::IntoIterator<Item = V>,
31194 V: std::convert::Into<crate::model::vmware_engine_network::VpcNetwork>,
31195 {
31196 use std::iter::Iterator;
31197 self.vpc_networks = v.into_iter().map(|i| i.into()).collect();
31198 self
31199 }
31200
31201 pub fn set_state<T: std::convert::Into<crate::model::vmware_engine_network::State>>(
31203 mut self,
31204 v: T,
31205 ) -> Self {
31206 self.state = v.into();
31207 self
31208 }
31209
31210 pub fn set_type<T: std::convert::Into<crate::model::vmware_engine_network::Type>>(
31212 mut self,
31213 v: T,
31214 ) -> Self {
31215 self.r#type = v.into();
31216 self
31217 }
31218
31219 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
31221 self.uid = v.into();
31222 self
31223 }
31224
31225 pub fn set_etag<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
31227 self.etag = v.into();
31228 self
31229 }
31230}
31231
31232impl wkt::message::Message for VmwareEngineNetwork {
31233 fn typename() -> &'static str {
31234 "type.googleapis.com/google.cloud.vmwareengine.v1.VmwareEngineNetwork"
31235 }
31236}
31237
31238#[doc(hidden)]
31239impl<'de> serde::de::Deserialize<'de> for VmwareEngineNetwork {
31240 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31241 where
31242 D: serde::Deserializer<'de>,
31243 {
31244 #[allow(non_camel_case_types)]
31245 #[doc(hidden)]
31246 #[derive(PartialEq, Eq, Hash)]
31247 enum __FieldTag {
31248 __name,
31249 __create_time,
31250 __update_time,
31251 __description,
31252 __vpc_networks,
31253 __state,
31254 __type,
31255 __uid,
31256 __etag,
31257 Unknown(std::string::String),
31258 }
31259 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
31260 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31261 where
31262 D: serde::Deserializer<'de>,
31263 {
31264 struct Visitor;
31265 impl<'de> serde::de::Visitor<'de> for Visitor {
31266 type Value = __FieldTag;
31267 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
31268 formatter.write_str("a field name for VmwareEngineNetwork")
31269 }
31270 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
31271 where
31272 E: serde::de::Error,
31273 {
31274 use std::result::Result::Ok;
31275 use std::string::ToString;
31276 match value {
31277 "name" => Ok(__FieldTag::__name),
31278 "createTime" => Ok(__FieldTag::__create_time),
31279 "create_time" => Ok(__FieldTag::__create_time),
31280 "updateTime" => Ok(__FieldTag::__update_time),
31281 "update_time" => Ok(__FieldTag::__update_time),
31282 "description" => Ok(__FieldTag::__description),
31283 "vpcNetworks" => Ok(__FieldTag::__vpc_networks),
31284 "vpc_networks" => Ok(__FieldTag::__vpc_networks),
31285 "state" => Ok(__FieldTag::__state),
31286 "type" => Ok(__FieldTag::__type),
31287 "uid" => Ok(__FieldTag::__uid),
31288 "etag" => Ok(__FieldTag::__etag),
31289 _ => Ok(__FieldTag::Unknown(value.to_string())),
31290 }
31291 }
31292 }
31293 deserializer.deserialize_identifier(Visitor)
31294 }
31295 }
31296 struct Visitor;
31297 impl<'de> serde::de::Visitor<'de> for Visitor {
31298 type Value = VmwareEngineNetwork;
31299 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
31300 formatter.write_str("struct VmwareEngineNetwork")
31301 }
31302 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
31303 where
31304 A: serde::de::MapAccess<'de>,
31305 {
31306 #[allow(unused_imports)]
31307 use serde::de::Error;
31308 use std::option::Option::Some;
31309 let mut fields = std::collections::HashSet::new();
31310 let mut result = Self::Value::new();
31311 while let Some(tag) = map.next_key::<__FieldTag>()? {
31312 #[allow(clippy::match_single_binding)]
31313 match tag {
31314 __FieldTag::__name => {
31315 if !fields.insert(__FieldTag::__name) {
31316 return std::result::Result::Err(A::Error::duplicate_field(
31317 "multiple values for name",
31318 ));
31319 }
31320 result.name = map
31321 .next_value::<std::option::Option<std::string::String>>()?
31322 .unwrap_or_default();
31323 }
31324 __FieldTag::__create_time => {
31325 if !fields.insert(__FieldTag::__create_time) {
31326 return std::result::Result::Err(A::Error::duplicate_field(
31327 "multiple values for create_time",
31328 ));
31329 }
31330 result.create_time =
31331 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
31332 }
31333 __FieldTag::__update_time => {
31334 if !fields.insert(__FieldTag::__update_time) {
31335 return std::result::Result::Err(A::Error::duplicate_field(
31336 "multiple values for update_time",
31337 ));
31338 }
31339 result.update_time =
31340 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
31341 }
31342 __FieldTag::__description => {
31343 if !fields.insert(__FieldTag::__description) {
31344 return std::result::Result::Err(A::Error::duplicate_field(
31345 "multiple values for description",
31346 ));
31347 }
31348 result.description = map
31349 .next_value::<std::option::Option<std::string::String>>()?
31350 .unwrap_or_default();
31351 }
31352 __FieldTag::__vpc_networks => {
31353 if !fields.insert(__FieldTag::__vpc_networks) {
31354 return std::result::Result::Err(A::Error::duplicate_field(
31355 "multiple values for vpc_networks",
31356 ));
31357 }
31358 result.vpc_networks = map
31359 .next_value::<std::option::Option<
31360 std::vec::Vec<crate::model::vmware_engine_network::VpcNetwork>,
31361 >>()?
31362 .unwrap_or_default();
31363 }
31364 __FieldTag::__state => {
31365 if !fields.insert(__FieldTag::__state) {
31366 return std::result::Result::Err(A::Error::duplicate_field(
31367 "multiple values for state",
31368 ));
31369 }
31370 result.state = map.next_value::<std::option::Option<crate::model::vmware_engine_network::State>>()?.unwrap_or_default();
31371 }
31372 __FieldTag::__type => {
31373 if !fields.insert(__FieldTag::__type) {
31374 return std::result::Result::Err(A::Error::duplicate_field(
31375 "multiple values for type",
31376 ));
31377 }
31378 result.r#type = map.next_value::<std::option::Option<crate::model::vmware_engine_network::Type>>()?.unwrap_or_default();
31379 }
31380 __FieldTag::__uid => {
31381 if !fields.insert(__FieldTag::__uid) {
31382 return std::result::Result::Err(A::Error::duplicate_field(
31383 "multiple values for uid",
31384 ));
31385 }
31386 result.uid = map
31387 .next_value::<std::option::Option<std::string::String>>()?
31388 .unwrap_or_default();
31389 }
31390 __FieldTag::__etag => {
31391 if !fields.insert(__FieldTag::__etag) {
31392 return std::result::Result::Err(A::Error::duplicate_field(
31393 "multiple values for etag",
31394 ));
31395 }
31396 result.etag = map
31397 .next_value::<std::option::Option<std::string::String>>()?
31398 .unwrap_or_default();
31399 }
31400 __FieldTag::Unknown(key) => {
31401 let value = map.next_value::<serde_json::Value>()?;
31402 result._unknown_fields.insert(key, value);
31403 }
31404 }
31405 }
31406 std::result::Result::Ok(result)
31407 }
31408 }
31409 deserializer.deserialize_any(Visitor)
31410 }
31411}
31412
31413#[doc(hidden)]
31414impl serde::ser::Serialize for VmwareEngineNetwork {
31415 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
31416 where
31417 S: serde::ser::Serializer,
31418 {
31419 use serde::ser::SerializeMap;
31420 #[allow(unused_imports)]
31421 use std::option::Option::Some;
31422 let mut state = serializer.serialize_map(std::option::Option::None)?;
31423 if !self.name.is_empty() {
31424 state.serialize_entry("name", &self.name)?;
31425 }
31426 if self.create_time.is_some() {
31427 state.serialize_entry("createTime", &self.create_time)?;
31428 }
31429 if self.update_time.is_some() {
31430 state.serialize_entry("updateTime", &self.update_time)?;
31431 }
31432 if !self.description.is_empty() {
31433 state.serialize_entry("description", &self.description)?;
31434 }
31435 if !self.vpc_networks.is_empty() {
31436 state.serialize_entry("vpcNetworks", &self.vpc_networks)?;
31437 }
31438 if !wkt::internal::is_default(&self.state) {
31439 state.serialize_entry("state", &self.state)?;
31440 }
31441 if !wkt::internal::is_default(&self.r#type) {
31442 state.serialize_entry("type", &self.r#type)?;
31443 }
31444 if !self.uid.is_empty() {
31445 state.serialize_entry("uid", &self.uid)?;
31446 }
31447 if !self.etag.is_empty() {
31448 state.serialize_entry("etag", &self.etag)?;
31449 }
31450 if !self._unknown_fields.is_empty() {
31451 for (key, value) in self._unknown_fields.iter() {
31452 state.serialize_entry(key, &value)?;
31453 }
31454 }
31455 state.end()
31456 }
31457}
31458
31459pub mod vmware_engine_network {
31461 #[allow(unused_imports)]
31462 use super::*;
31463
31464 #[derive(Clone, Debug, Default, PartialEq)]
31467 #[non_exhaustive]
31468 pub struct VpcNetwork {
31469 pub r#type: crate::model::vmware_engine_network::vpc_network::Type,
31472
31473 pub network: std::string::String,
31477
31478 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
31479 }
31480
31481 impl VpcNetwork {
31482 pub fn new() -> Self {
31483 std::default::Default::default()
31484 }
31485
31486 pub fn set_type<
31488 T: std::convert::Into<crate::model::vmware_engine_network::vpc_network::Type>,
31489 >(
31490 mut self,
31491 v: T,
31492 ) -> Self {
31493 self.r#type = v.into();
31494 self
31495 }
31496
31497 pub fn set_network<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
31499 self.network = v.into();
31500 self
31501 }
31502 }
31503
31504 impl wkt::message::Message for VpcNetwork {
31505 fn typename() -> &'static str {
31506 "type.googleapis.com/google.cloud.vmwareengine.v1.VmwareEngineNetwork.VpcNetwork"
31507 }
31508 }
31509
31510 #[doc(hidden)]
31511 impl<'de> serde::de::Deserialize<'de> for VpcNetwork {
31512 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31513 where
31514 D: serde::Deserializer<'de>,
31515 {
31516 #[allow(non_camel_case_types)]
31517 #[doc(hidden)]
31518 #[derive(PartialEq, Eq, Hash)]
31519 enum __FieldTag {
31520 __type,
31521 __network,
31522 Unknown(std::string::String),
31523 }
31524 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
31525 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31526 where
31527 D: serde::Deserializer<'de>,
31528 {
31529 struct Visitor;
31530 impl<'de> serde::de::Visitor<'de> for Visitor {
31531 type Value = __FieldTag;
31532 fn expecting(
31533 &self,
31534 formatter: &mut std::fmt::Formatter,
31535 ) -> std::fmt::Result {
31536 formatter.write_str("a field name for VpcNetwork")
31537 }
31538 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
31539 where
31540 E: serde::de::Error,
31541 {
31542 use std::result::Result::Ok;
31543 use std::string::ToString;
31544 match value {
31545 "type" => Ok(__FieldTag::__type),
31546 "network" => Ok(__FieldTag::__network),
31547 _ => Ok(__FieldTag::Unknown(value.to_string())),
31548 }
31549 }
31550 }
31551 deserializer.deserialize_identifier(Visitor)
31552 }
31553 }
31554 struct Visitor;
31555 impl<'de> serde::de::Visitor<'de> for Visitor {
31556 type Value = VpcNetwork;
31557 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
31558 formatter.write_str("struct VpcNetwork")
31559 }
31560 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
31561 where
31562 A: serde::de::MapAccess<'de>,
31563 {
31564 #[allow(unused_imports)]
31565 use serde::de::Error;
31566 use std::option::Option::Some;
31567 let mut fields = std::collections::HashSet::new();
31568 let mut result = Self::Value::new();
31569 while let Some(tag) = map.next_key::<__FieldTag>()? {
31570 #[allow(clippy::match_single_binding)]
31571 match tag {
31572 __FieldTag::__type => {
31573 if !fields.insert(__FieldTag::__type) {
31574 return std::result::Result::Err(A::Error::duplicate_field(
31575 "multiple values for type",
31576 ));
31577 }
31578 result.r#type = map
31579 .next_value::<std::option::Option<
31580 crate::model::vmware_engine_network::vpc_network::Type,
31581 >>()?
31582 .unwrap_or_default();
31583 }
31584 __FieldTag::__network => {
31585 if !fields.insert(__FieldTag::__network) {
31586 return std::result::Result::Err(A::Error::duplicate_field(
31587 "multiple values for network",
31588 ));
31589 }
31590 result.network = map
31591 .next_value::<std::option::Option<std::string::String>>()?
31592 .unwrap_or_default();
31593 }
31594 __FieldTag::Unknown(key) => {
31595 let value = map.next_value::<serde_json::Value>()?;
31596 result._unknown_fields.insert(key, value);
31597 }
31598 }
31599 }
31600 std::result::Result::Ok(result)
31601 }
31602 }
31603 deserializer.deserialize_any(Visitor)
31604 }
31605 }
31606
31607 #[doc(hidden)]
31608 impl serde::ser::Serialize for VpcNetwork {
31609 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
31610 where
31611 S: serde::ser::Serializer,
31612 {
31613 use serde::ser::SerializeMap;
31614 #[allow(unused_imports)]
31615 use std::option::Option::Some;
31616 let mut state = serializer.serialize_map(std::option::Option::None)?;
31617 if !wkt::internal::is_default(&self.r#type) {
31618 state.serialize_entry("type", &self.r#type)?;
31619 }
31620 if !self.network.is_empty() {
31621 state.serialize_entry("network", &self.network)?;
31622 }
31623 if !self._unknown_fields.is_empty() {
31624 for (key, value) in self._unknown_fields.iter() {
31625 state.serialize_entry(key, &value)?;
31626 }
31627 }
31628 state.end()
31629 }
31630 }
31631
31632 pub mod vpc_network {
31634 #[allow(unused_imports)]
31635 use super::*;
31636
31637 #[derive(Clone, Debug, PartialEq)]
31654 #[non_exhaustive]
31655 pub enum Type {
31656 Unspecified,
31658 Intranet,
31663 Internet,
31665 GoogleCloud,
31668 UnknownValue(r#type::UnknownValue),
31673 }
31674
31675 #[doc(hidden)]
31676 pub mod r#type {
31677 #[allow(unused_imports)]
31678 use super::*;
31679 #[derive(Clone, Debug, PartialEq)]
31680 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
31681 }
31682
31683 impl Type {
31684 pub fn value(&self) -> std::option::Option<i32> {
31689 match self {
31690 Self::Unspecified => std::option::Option::Some(0),
31691 Self::Intranet => std::option::Option::Some(1),
31692 Self::Internet => std::option::Option::Some(2),
31693 Self::GoogleCloud => std::option::Option::Some(3),
31694 Self::UnknownValue(u) => u.0.value(),
31695 }
31696 }
31697
31698 pub fn name(&self) -> std::option::Option<&str> {
31703 match self {
31704 Self::Unspecified => std::option::Option::Some("TYPE_UNSPECIFIED"),
31705 Self::Intranet => std::option::Option::Some("INTRANET"),
31706 Self::Internet => std::option::Option::Some("INTERNET"),
31707 Self::GoogleCloud => std::option::Option::Some("GOOGLE_CLOUD"),
31708 Self::UnknownValue(u) => u.0.name(),
31709 }
31710 }
31711 }
31712
31713 impl std::default::Default for Type {
31714 fn default() -> Self {
31715 use std::convert::From;
31716 Self::from(0)
31717 }
31718 }
31719
31720 impl std::fmt::Display for Type {
31721 fn fmt(
31722 &self,
31723 f: &mut std::fmt::Formatter<'_>,
31724 ) -> std::result::Result<(), std::fmt::Error> {
31725 wkt::internal::display_enum(f, self.name(), self.value())
31726 }
31727 }
31728
31729 impl std::convert::From<i32> for Type {
31730 fn from(value: i32) -> Self {
31731 match value {
31732 0 => Self::Unspecified,
31733 1 => Self::Intranet,
31734 2 => Self::Internet,
31735 3 => Self::GoogleCloud,
31736 _ => Self::UnknownValue(r#type::UnknownValue(
31737 wkt::internal::UnknownEnumValue::Integer(value),
31738 )),
31739 }
31740 }
31741 }
31742
31743 impl std::convert::From<&str> for Type {
31744 fn from(value: &str) -> Self {
31745 use std::string::ToString;
31746 match value {
31747 "TYPE_UNSPECIFIED" => Self::Unspecified,
31748 "INTRANET" => Self::Intranet,
31749 "INTERNET" => Self::Internet,
31750 "GOOGLE_CLOUD" => Self::GoogleCloud,
31751 _ => Self::UnknownValue(r#type::UnknownValue(
31752 wkt::internal::UnknownEnumValue::String(value.to_string()),
31753 )),
31754 }
31755 }
31756 }
31757
31758 impl serde::ser::Serialize for Type {
31759 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
31760 where
31761 S: serde::Serializer,
31762 {
31763 match self {
31764 Self::Unspecified => serializer.serialize_i32(0),
31765 Self::Intranet => serializer.serialize_i32(1),
31766 Self::Internet => serializer.serialize_i32(2),
31767 Self::GoogleCloud => serializer.serialize_i32(3),
31768 Self::UnknownValue(u) => u.0.serialize(serializer),
31769 }
31770 }
31771 }
31772
31773 impl<'de> serde::de::Deserialize<'de> for Type {
31774 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31775 where
31776 D: serde::Deserializer<'de>,
31777 {
31778 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Type>::new(
31779 ".google.cloud.vmwareengine.v1.VmwareEngineNetwork.VpcNetwork.Type",
31780 ))
31781 }
31782 }
31783 }
31784
31785 #[derive(Clone, Debug, PartialEq)]
31801 #[non_exhaustive]
31802 pub enum State {
31803 Unspecified,
31805 Creating,
31807 Active,
31809 Updating,
31811 Deleting,
31813 UnknownValue(state::UnknownValue),
31818 }
31819
31820 #[doc(hidden)]
31821 pub mod state {
31822 #[allow(unused_imports)]
31823 use super::*;
31824 #[derive(Clone, Debug, PartialEq)]
31825 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
31826 }
31827
31828 impl State {
31829 pub fn value(&self) -> std::option::Option<i32> {
31834 match self {
31835 Self::Unspecified => std::option::Option::Some(0),
31836 Self::Creating => std::option::Option::Some(1),
31837 Self::Active => std::option::Option::Some(2),
31838 Self::Updating => std::option::Option::Some(3),
31839 Self::Deleting => std::option::Option::Some(4),
31840 Self::UnknownValue(u) => u.0.value(),
31841 }
31842 }
31843
31844 pub fn name(&self) -> std::option::Option<&str> {
31849 match self {
31850 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
31851 Self::Creating => std::option::Option::Some("CREATING"),
31852 Self::Active => std::option::Option::Some("ACTIVE"),
31853 Self::Updating => std::option::Option::Some("UPDATING"),
31854 Self::Deleting => std::option::Option::Some("DELETING"),
31855 Self::UnknownValue(u) => u.0.name(),
31856 }
31857 }
31858 }
31859
31860 impl std::default::Default for State {
31861 fn default() -> Self {
31862 use std::convert::From;
31863 Self::from(0)
31864 }
31865 }
31866
31867 impl std::fmt::Display for State {
31868 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
31869 wkt::internal::display_enum(f, self.name(), self.value())
31870 }
31871 }
31872
31873 impl std::convert::From<i32> for State {
31874 fn from(value: i32) -> Self {
31875 match value {
31876 0 => Self::Unspecified,
31877 1 => Self::Creating,
31878 2 => Self::Active,
31879 3 => Self::Updating,
31880 4 => Self::Deleting,
31881 _ => Self::UnknownValue(state::UnknownValue(
31882 wkt::internal::UnknownEnumValue::Integer(value),
31883 )),
31884 }
31885 }
31886 }
31887
31888 impl std::convert::From<&str> for State {
31889 fn from(value: &str) -> Self {
31890 use std::string::ToString;
31891 match value {
31892 "STATE_UNSPECIFIED" => Self::Unspecified,
31893 "CREATING" => Self::Creating,
31894 "ACTIVE" => Self::Active,
31895 "UPDATING" => Self::Updating,
31896 "DELETING" => Self::Deleting,
31897 _ => Self::UnknownValue(state::UnknownValue(
31898 wkt::internal::UnknownEnumValue::String(value.to_string()),
31899 )),
31900 }
31901 }
31902 }
31903
31904 impl serde::ser::Serialize for State {
31905 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
31906 where
31907 S: serde::Serializer,
31908 {
31909 match self {
31910 Self::Unspecified => serializer.serialize_i32(0),
31911 Self::Creating => serializer.serialize_i32(1),
31912 Self::Active => serializer.serialize_i32(2),
31913 Self::Updating => serializer.serialize_i32(3),
31914 Self::Deleting => serializer.serialize_i32(4),
31915 Self::UnknownValue(u) => u.0.serialize(serializer),
31916 }
31917 }
31918 }
31919
31920 impl<'de> serde::de::Deserialize<'de> for State {
31921 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
31922 where
31923 D: serde::Deserializer<'de>,
31924 {
31925 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
31926 ".google.cloud.vmwareengine.v1.VmwareEngineNetwork.State",
31927 ))
31928 }
31929 }
31930
31931 #[derive(Clone, Debug, PartialEq)]
31947 #[non_exhaustive]
31948 pub enum Type {
31949 Unspecified,
31951 Legacy,
31955 Standard,
31957 UnknownValue(r#type::UnknownValue),
31962 }
31963
31964 #[doc(hidden)]
31965 pub mod r#type {
31966 #[allow(unused_imports)]
31967 use super::*;
31968 #[derive(Clone, Debug, PartialEq)]
31969 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
31970 }
31971
31972 impl Type {
31973 pub fn value(&self) -> std::option::Option<i32> {
31978 match self {
31979 Self::Unspecified => std::option::Option::Some(0),
31980 Self::Legacy => std::option::Option::Some(1),
31981 Self::Standard => std::option::Option::Some(2),
31982 Self::UnknownValue(u) => u.0.value(),
31983 }
31984 }
31985
31986 pub fn name(&self) -> std::option::Option<&str> {
31991 match self {
31992 Self::Unspecified => std::option::Option::Some("TYPE_UNSPECIFIED"),
31993 Self::Legacy => std::option::Option::Some("LEGACY"),
31994 Self::Standard => std::option::Option::Some("STANDARD"),
31995 Self::UnknownValue(u) => u.0.name(),
31996 }
31997 }
31998 }
31999
32000 impl std::default::Default for Type {
32001 fn default() -> Self {
32002 use std::convert::From;
32003 Self::from(0)
32004 }
32005 }
32006
32007 impl std::fmt::Display for Type {
32008 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
32009 wkt::internal::display_enum(f, self.name(), self.value())
32010 }
32011 }
32012
32013 impl std::convert::From<i32> for Type {
32014 fn from(value: i32) -> Self {
32015 match value {
32016 0 => Self::Unspecified,
32017 1 => Self::Legacy,
32018 2 => Self::Standard,
32019 _ => Self::UnknownValue(r#type::UnknownValue(
32020 wkt::internal::UnknownEnumValue::Integer(value),
32021 )),
32022 }
32023 }
32024 }
32025
32026 impl std::convert::From<&str> for Type {
32027 fn from(value: &str) -> Self {
32028 use std::string::ToString;
32029 match value {
32030 "TYPE_UNSPECIFIED" => Self::Unspecified,
32031 "LEGACY" => Self::Legacy,
32032 "STANDARD" => Self::Standard,
32033 _ => Self::UnknownValue(r#type::UnknownValue(
32034 wkt::internal::UnknownEnumValue::String(value.to_string()),
32035 )),
32036 }
32037 }
32038 }
32039
32040 impl serde::ser::Serialize for Type {
32041 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
32042 where
32043 S: serde::Serializer,
32044 {
32045 match self {
32046 Self::Unspecified => serializer.serialize_i32(0),
32047 Self::Legacy => serializer.serialize_i32(1),
32048 Self::Standard => serializer.serialize_i32(2),
32049 Self::UnknownValue(u) => u.0.serialize(serializer),
32050 }
32051 }
32052 }
32053
32054 impl<'de> serde::de::Deserialize<'de> for Type {
32055 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
32056 where
32057 D: serde::Deserializer<'de>,
32058 {
32059 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Type>::new(
32060 ".google.cloud.vmwareengine.v1.VmwareEngineNetwork.Type",
32061 ))
32062 }
32063 }
32064}
32065
32066#[derive(Clone, Debug, Default, PartialEq)]
32069#[non_exhaustive]
32070pub struct PrivateConnection {
32071 pub name: std::string::String,
32077
32078 pub create_time: std::option::Option<wkt::Timestamp>,
32080
32081 pub update_time: std::option::Option<wkt::Timestamp>,
32083
32084 pub description: std::string::String,
32086
32087 pub state: crate::model::private_connection::State,
32089
32090 pub vmware_engine_network: std::string::String,
32098
32099 pub vmware_engine_network_canonical: std::string::String,
32102
32103 pub r#type: crate::model::private_connection::Type,
32105
32106 pub peering_id: std::string::String,
32109
32110 pub routing_mode: crate::model::private_connection::RoutingMode,
32115
32116 pub uid: std::string::String,
32118
32119 pub service_network: std::string::String,
32132
32133 pub peering_state: crate::model::private_connection::PeeringState,
32136
32137 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
32138}
32139
32140impl PrivateConnection {
32141 pub fn new() -> Self {
32142 std::default::Default::default()
32143 }
32144
32145 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
32147 self.name = v.into();
32148 self
32149 }
32150
32151 pub fn set_create_time<T>(mut self, v: T) -> Self
32153 where
32154 T: std::convert::Into<wkt::Timestamp>,
32155 {
32156 self.create_time = std::option::Option::Some(v.into());
32157 self
32158 }
32159
32160 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
32162 where
32163 T: std::convert::Into<wkt::Timestamp>,
32164 {
32165 self.create_time = v.map(|x| x.into());
32166 self
32167 }
32168
32169 pub fn set_update_time<T>(mut self, v: T) -> Self
32171 where
32172 T: std::convert::Into<wkt::Timestamp>,
32173 {
32174 self.update_time = std::option::Option::Some(v.into());
32175 self
32176 }
32177
32178 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
32180 where
32181 T: std::convert::Into<wkt::Timestamp>,
32182 {
32183 self.update_time = v.map(|x| x.into());
32184 self
32185 }
32186
32187 pub fn set_description<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
32189 self.description = v.into();
32190 self
32191 }
32192
32193 pub fn set_state<T: std::convert::Into<crate::model::private_connection::State>>(
32195 mut self,
32196 v: T,
32197 ) -> Self {
32198 self.state = v.into();
32199 self
32200 }
32201
32202 pub fn set_vmware_engine_network<T: std::convert::Into<std::string::String>>(
32204 mut self,
32205 v: T,
32206 ) -> Self {
32207 self.vmware_engine_network = v.into();
32208 self
32209 }
32210
32211 pub fn set_vmware_engine_network_canonical<T: std::convert::Into<std::string::String>>(
32213 mut self,
32214 v: T,
32215 ) -> Self {
32216 self.vmware_engine_network_canonical = v.into();
32217 self
32218 }
32219
32220 pub fn set_type<T: std::convert::Into<crate::model::private_connection::Type>>(
32222 mut self,
32223 v: T,
32224 ) -> Self {
32225 self.r#type = v.into();
32226 self
32227 }
32228
32229 pub fn set_peering_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
32231 self.peering_id = v.into();
32232 self
32233 }
32234
32235 pub fn set_routing_mode<
32237 T: std::convert::Into<crate::model::private_connection::RoutingMode>,
32238 >(
32239 mut self,
32240 v: T,
32241 ) -> Self {
32242 self.routing_mode = v.into();
32243 self
32244 }
32245
32246 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
32248 self.uid = v.into();
32249 self
32250 }
32251
32252 pub fn set_service_network<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
32254 self.service_network = v.into();
32255 self
32256 }
32257
32258 pub fn set_peering_state<
32260 T: std::convert::Into<crate::model::private_connection::PeeringState>,
32261 >(
32262 mut self,
32263 v: T,
32264 ) -> Self {
32265 self.peering_state = v.into();
32266 self
32267 }
32268}
32269
32270impl wkt::message::Message for PrivateConnection {
32271 fn typename() -> &'static str {
32272 "type.googleapis.com/google.cloud.vmwareengine.v1.PrivateConnection"
32273 }
32274}
32275
32276#[doc(hidden)]
32277impl<'de> serde::de::Deserialize<'de> for PrivateConnection {
32278 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
32279 where
32280 D: serde::Deserializer<'de>,
32281 {
32282 #[allow(non_camel_case_types)]
32283 #[doc(hidden)]
32284 #[derive(PartialEq, Eq, Hash)]
32285 enum __FieldTag {
32286 __name,
32287 __create_time,
32288 __update_time,
32289 __description,
32290 __state,
32291 __vmware_engine_network,
32292 __vmware_engine_network_canonical,
32293 __type,
32294 __peering_id,
32295 __routing_mode,
32296 __uid,
32297 __service_network,
32298 __peering_state,
32299 Unknown(std::string::String),
32300 }
32301 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
32302 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
32303 where
32304 D: serde::Deserializer<'de>,
32305 {
32306 struct Visitor;
32307 impl<'de> serde::de::Visitor<'de> for Visitor {
32308 type Value = __FieldTag;
32309 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
32310 formatter.write_str("a field name for PrivateConnection")
32311 }
32312 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
32313 where
32314 E: serde::de::Error,
32315 {
32316 use std::result::Result::Ok;
32317 use std::string::ToString;
32318 match value {
32319 "name" => Ok(__FieldTag::__name),
32320 "createTime" => Ok(__FieldTag::__create_time),
32321 "create_time" => Ok(__FieldTag::__create_time),
32322 "updateTime" => Ok(__FieldTag::__update_time),
32323 "update_time" => Ok(__FieldTag::__update_time),
32324 "description" => Ok(__FieldTag::__description),
32325 "state" => Ok(__FieldTag::__state),
32326 "vmwareEngineNetwork" => Ok(__FieldTag::__vmware_engine_network),
32327 "vmware_engine_network" => Ok(__FieldTag::__vmware_engine_network),
32328 "vmwareEngineNetworkCanonical" => {
32329 Ok(__FieldTag::__vmware_engine_network_canonical)
32330 }
32331 "vmware_engine_network_canonical" => {
32332 Ok(__FieldTag::__vmware_engine_network_canonical)
32333 }
32334 "type" => Ok(__FieldTag::__type),
32335 "peeringId" => Ok(__FieldTag::__peering_id),
32336 "peering_id" => Ok(__FieldTag::__peering_id),
32337 "routingMode" => Ok(__FieldTag::__routing_mode),
32338 "routing_mode" => Ok(__FieldTag::__routing_mode),
32339 "uid" => Ok(__FieldTag::__uid),
32340 "serviceNetwork" => Ok(__FieldTag::__service_network),
32341 "service_network" => Ok(__FieldTag::__service_network),
32342 "peeringState" => Ok(__FieldTag::__peering_state),
32343 "peering_state" => Ok(__FieldTag::__peering_state),
32344 _ => Ok(__FieldTag::Unknown(value.to_string())),
32345 }
32346 }
32347 }
32348 deserializer.deserialize_identifier(Visitor)
32349 }
32350 }
32351 struct Visitor;
32352 impl<'de> serde::de::Visitor<'de> for Visitor {
32353 type Value = PrivateConnection;
32354 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
32355 formatter.write_str("struct PrivateConnection")
32356 }
32357 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
32358 where
32359 A: serde::de::MapAccess<'de>,
32360 {
32361 #[allow(unused_imports)]
32362 use serde::de::Error;
32363 use std::option::Option::Some;
32364 let mut fields = std::collections::HashSet::new();
32365 let mut result = Self::Value::new();
32366 while let Some(tag) = map.next_key::<__FieldTag>()? {
32367 #[allow(clippy::match_single_binding)]
32368 match tag {
32369 __FieldTag::__name => {
32370 if !fields.insert(__FieldTag::__name) {
32371 return std::result::Result::Err(A::Error::duplicate_field(
32372 "multiple values for name",
32373 ));
32374 }
32375 result.name = map
32376 .next_value::<std::option::Option<std::string::String>>()?
32377 .unwrap_or_default();
32378 }
32379 __FieldTag::__create_time => {
32380 if !fields.insert(__FieldTag::__create_time) {
32381 return std::result::Result::Err(A::Error::duplicate_field(
32382 "multiple values for create_time",
32383 ));
32384 }
32385 result.create_time =
32386 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
32387 }
32388 __FieldTag::__update_time => {
32389 if !fields.insert(__FieldTag::__update_time) {
32390 return std::result::Result::Err(A::Error::duplicate_field(
32391 "multiple values for update_time",
32392 ));
32393 }
32394 result.update_time =
32395 map.next_value::<std::option::Option<wkt::Timestamp>>()?;
32396 }
32397 __FieldTag::__description => {
32398 if !fields.insert(__FieldTag::__description) {
32399 return std::result::Result::Err(A::Error::duplicate_field(
32400 "multiple values for description",
32401 ));
32402 }
32403 result.description = map
32404 .next_value::<std::option::Option<std::string::String>>()?
32405 .unwrap_or_default();
32406 }
32407 __FieldTag::__state => {
32408 if !fields.insert(__FieldTag::__state) {
32409 return std::result::Result::Err(A::Error::duplicate_field(
32410 "multiple values for state",
32411 ));
32412 }
32413 result.state = map.next_value::<std::option::Option<crate::model::private_connection::State>>()?.unwrap_or_default();
32414 }
32415 __FieldTag::__vmware_engine_network => {
32416 if !fields.insert(__FieldTag::__vmware_engine_network) {
32417 return std::result::Result::Err(A::Error::duplicate_field(
32418 "multiple values for vmware_engine_network",
32419 ));
32420 }
32421 result.vmware_engine_network = map
32422 .next_value::<std::option::Option<std::string::String>>()?
32423 .unwrap_or_default();
32424 }
32425 __FieldTag::__vmware_engine_network_canonical => {
32426 if !fields.insert(__FieldTag::__vmware_engine_network_canonical) {
32427 return std::result::Result::Err(A::Error::duplicate_field(
32428 "multiple values for vmware_engine_network_canonical",
32429 ));
32430 }
32431 result.vmware_engine_network_canonical = map
32432 .next_value::<std::option::Option<std::string::String>>()?
32433 .unwrap_or_default();
32434 }
32435 __FieldTag::__type => {
32436 if !fields.insert(__FieldTag::__type) {
32437 return std::result::Result::Err(A::Error::duplicate_field(
32438 "multiple values for type",
32439 ));
32440 }
32441 result.r#type = map.next_value::<std::option::Option<crate::model::private_connection::Type>>()?.unwrap_or_default();
32442 }
32443 __FieldTag::__peering_id => {
32444 if !fields.insert(__FieldTag::__peering_id) {
32445 return std::result::Result::Err(A::Error::duplicate_field(
32446 "multiple values for peering_id",
32447 ));
32448 }
32449 result.peering_id = map
32450 .next_value::<std::option::Option<std::string::String>>()?
32451 .unwrap_or_default();
32452 }
32453 __FieldTag::__routing_mode => {
32454 if !fields.insert(__FieldTag::__routing_mode) {
32455 return std::result::Result::Err(A::Error::duplicate_field(
32456 "multiple values for routing_mode",
32457 ));
32458 }
32459 result.routing_mode =
32460 map.next_value::<std::option::Option<
32461 crate::model::private_connection::RoutingMode,
32462 >>()?
32463 .unwrap_or_default();
32464 }
32465 __FieldTag::__uid => {
32466 if !fields.insert(__FieldTag::__uid) {
32467 return std::result::Result::Err(A::Error::duplicate_field(
32468 "multiple values for uid",
32469 ));
32470 }
32471 result.uid = map
32472 .next_value::<std::option::Option<std::string::String>>()?
32473 .unwrap_or_default();
32474 }
32475 __FieldTag::__service_network => {
32476 if !fields.insert(__FieldTag::__service_network) {
32477 return std::result::Result::Err(A::Error::duplicate_field(
32478 "multiple values for service_network",
32479 ));
32480 }
32481 result.service_network = map
32482 .next_value::<std::option::Option<std::string::String>>()?
32483 .unwrap_or_default();
32484 }
32485 __FieldTag::__peering_state => {
32486 if !fields.insert(__FieldTag::__peering_state) {
32487 return std::result::Result::Err(A::Error::duplicate_field(
32488 "multiple values for peering_state",
32489 ));
32490 }
32491 result.peering_state =
32492 map.next_value::<std::option::Option<
32493 crate::model::private_connection::PeeringState,
32494 >>()?
32495 .unwrap_or_default();
32496 }
32497 __FieldTag::Unknown(key) => {
32498 let value = map.next_value::<serde_json::Value>()?;
32499 result._unknown_fields.insert(key, value);
32500 }
32501 }
32502 }
32503 std::result::Result::Ok(result)
32504 }
32505 }
32506 deserializer.deserialize_any(Visitor)
32507 }
32508}
32509
32510#[doc(hidden)]
32511impl serde::ser::Serialize for PrivateConnection {
32512 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
32513 where
32514 S: serde::ser::Serializer,
32515 {
32516 use serde::ser::SerializeMap;
32517 #[allow(unused_imports)]
32518 use std::option::Option::Some;
32519 let mut state = serializer.serialize_map(std::option::Option::None)?;
32520 if !self.name.is_empty() {
32521 state.serialize_entry("name", &self.name)?;
32522 }
32523 if self.create_time.is_some() {
32524 state.serialize_entry("createTime", &self.create_time)?;
32525 }
32526 if self.update_time.is_some() {
32527 state.serialize_entry("updateTime", &self.update_time)?;
32528 }
32529 if !self.description.is_empty() {
32530 state.serialize_entry("description", &self.description)?;
32531 }
32532 if !wkt::internal::is_default(&self.state) {
32533 state.serialize_entry("state", &self.state)?;
32534 }
32535 if !self.vmware_engine_network.is_empty() {
32536 state.serialize_entry("vmwareEngineNetwork", &self.vmware_engine_network)?;
32537 }
32538 if !self.vmware_engine_network_canonical.is_empty() {
32539 state.serialize_entry(
32540 "vmwareEngineNetworkCanonical",
32541 &self.vmware_engine_network_canonical,
32542 )?;
32543 }
32544 if !wkt::internal::is_default(&self.r#type) {
32545 state.serialize_entry("type", &self.r#type)?;
32546 }
32547 if !self.peering_id.is_empty() {
32548 state.serialize_entry("peeringId", &self.peering_id)?;
32549 }
32550 if !wkt::internal::is_default(&self.routing_mode) {
32551 state.serialize_entry("routingMode", &self.routing_mode)?;
32552 }
32553 if !self.uid.is_empty() {
32554 state.serialize_entry("uid", &self.uid)?;
32555 }
32556 if !self.service_network.is_empty() {
32557 state.serialize_entry("serviceNetwork", &self.service_network)?;
32558 }
32559 if !wkt::internal::is_default(&self.peering_state) {
32560 state.serialize_entry("peeringState", &self.peering_state)?;
32561 }
32562 if !self._unknown_fields.is_empty() {
32563 for (key, value) in self._unknown_fields.iter() {
32564 state.serialize_entry(key, &value)?;
32565 }
32566 }
32567 state.end()
32568 }
32569}
32570
32571pub mod private_connection {
32573 #[allow(unused_imports)]
32574 use super::*;
32575
32576 #[derive(Clone, Debug, PartialEq)]
32592 #[non_exhaustive]
32593 pub enum State {
32594 Unspecified,
32596 Creating,
32598 Active,
32600 Updating,
32602 Deleting,
32604 Unprovisioned,
32607 Failed,
32609 UnknownValue(state::UnknownValue),
32614 }
32615
32616 #[doc(hidden)]
32617 pub mod state {
32618 #[allow(unused_imports)]
32619 use super::*;
32620 #[derive(Clone, Debug, PartialEq)]
32621 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
32622 }
32623
32624 impl State {
32625 pub fn value(&self) -> std::option::Option<i32> {
32630 match self {
32631 Self::Unspecified => std::option::Option::Some(0),
32632 Self::Creating => std::option::Option::Some(1),
32633 Self::Active => std::option::Option::Some(2),
32634 Self::Updating => std::option::Option::Some(3),
32635 Self::Deleting => std::option::Option::Some(4),
32636 Self::Unprovisioned => std::option::Option::Some(5),
32637 Self::Failed => std::option::Option::Some(6),
32638 Self::UnknownValue(u) => u.0.value(),
32639 }
32640 }
32641
32642 pub fn name(&self) -> std::option::Option<&str> {
32647 match self {
32648 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
32649 Self::Creating => std::option::Option::Some("CREATING"),
32650 Self::Active => std::option::Option::Some("ACTIVE"),
32651 Self::Updating => std::option::Option::Some("UPDATING"),
32652 Self::Deleting => std::option::Option::Some("DELETING"),
32653 Self::Unprovisioned => std::option::Option::Some("UNPROVISIONED"),
32654 Self::Failed => std::option::Option::Some("FAILED"),
32655 Self::UnknownValue(u) => u.0.name(),
32656 }
32657 }
32658 }
32659
32660 impl std::default::Default for State {
32661 fn default() -> Self {
32662 use std::convert::From;
32663 Self::from(0)
32664 }
32665 }
32666
32667 impl std::fmt::Display for State {
32668 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
32669 wkt::internal::display_enum(f, self.name(), self.value())
32670 }
32671 }
32672
32673 impl std::convert::From<i32> for State {
32674 fn from(value: i32) -> Self {
32675 match value {
32676 0 => Self::Unspecified,
32677 1 => Self::Creating,
32678 2 => Self::Active,
32679 3 => Self::Updating,
32680 4 => Self::Deleting,
32681 5 => Self::Unprovisioned,
32682 6 => Self::Failed,
32683 _ => Self::UnknownValue(state::UnknownValue(
32684 wkt::internal::UnknownEnumValue::Integer(value),
32685 )),
32686 }
32687 }
32688 }
32689
32690 impl std::convert::From<&str> for State {
32691 fn from(value: &str) -> Self {
32692 use std::string::ToString;
32693 match value {
32694 "STATE_UNSPECIFIED" => Self::Unspecified,
32695 "CREATING" => Self::Creating,
32696 "ACTIVE" => Self::Active,
32697 "UPDATING" => Self::Updating,
32698 "DELETING" => Self::Deleting,
32699 "UNPROVISIONED" => Self::Unprovisioned,
32700 "FAILED" => Self::Failed,
32701 _ => Self::UnknownValue(state::UnknownValue(
32702 wkt::internal::UnknownEnumValue::String(value.to_string()),
32703 )),
32704 }
32705 }
32706 }
32707
32708 impl serde::ser::Serialize for State {
32709 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
32710 where
32711 S: serde::Serializer,
32712 {
32713 match self {
32714 Self::Unspecified => serializer.serialize_i32(0),
32715 Self::Creating => serializer.serialize_i32(1),
32716 Self::Active => serializer.serialize_i32(2),
32717 Self::Updating => serializer.serialize_i32(3),
32718 Self::Deleting => serializer.serialize_i32(4),
32719 Self::Unprovisioned => serializer.serialize_i32(5),
32720 Self::Failed => serializer.serialize_i32(6),
32721 Self::UnknownValue(u) => u.0.serialize(serializer),
32722 }
32723 }
32724 }
32725
32726 impl<'de> serde::de::Deserialize<'de> for State {
32727 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
32728 where
32729 D: serde::Deserializer<'de>,
32730 {
32731 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
32732 ".google.cloud.vmwareengine.v1.PrivateConnection.State",
32733 ))
32734 }
32735 }
32736
32737 #[derive(Clone, Debug, PartialEq)]
32753 #[non_exhaustive]
32754 pub enum Type {
32755 Unspecified,
32757 PrivateServiceAccess,
32760 NetappCloudVolumes,
32762 DellPowerscale,
32764 ThirdPartyService,
32766 UnknownValue(r#type::UnknownValue),
32771 }
32772
32773 #[doc(hidden)]
32774 pub mod r#type {
32775 #[allow(unused_imports)]
32776 use super::*;
32777 #[derive(Clone, Debug, PartialEq)]
32778 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
32779 }
32780
32781 impl Type {
32782 pub fn value(&self) -> std::option::Option<i32> {
32787 match self {
32788 Self::Unspecified => std::option::Option::Some(0),
32789 Self::PrivateServiceAccess => std::option::Option::Some(1),
32790 Self::NetappCloudVolumes => std::option::Option::Some(2),
32791 Self::DellPowerscale => std::option::Option::Some(3),
32792 Self::ThirdPartyService => std::option::Option::Some(4),
32793 Self::UnknownValue(u) => u.0.value(),
32794 }
32795 }
32796
32797 pub fn name(&self) -> std::option::Option<&str> {
32802 match self {
32803 Self::Unspecified => std::option::Option::Some("TYPE_UNSPECIFIED"),
32804 Self::PrivateServiceAccess => std::option::Option::Some("PRIVATE_SERVICE_ACCESS"),
32805 Self::NetappCloudVolumes => std::option::Option::Some("NETAPP_CLOUD_VOLUMES"),
32806 Self::DellPowerscale => std::option::Option::Some("DELL_POWERSCALE"),
32807 Self::ThirdPartyService => std::option::Option::Some("THIRD_PARTY_SERVICE"),
32808 Self::UnknownValue(u) => u.0.name(),
32809 }
32810 }
32811 }
32812
32813 impl std::default::Default for Type {
32814 fn default() -> Self {
32815 use std::convert::From;
32816 Self::from(0)
32817 }
32818 }
32819
32820 impl std::fmt::Display for Type {
32821 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
32822 wkt::internal::display_enum(f, self.name(), self.value())
32823 }
32824 }
32825
32826 impl std::convert::From<i32> for Type {
32827 fn from(value: i32) -> Self {
32828 match value {
32829 0 => Self::Unspecified,
32830 1 => Self::PrivateServiceAccess,
32831 2 => Self::NetappCloudVolumes,
32832 3 => Self::DellPowerscale,
32833 4 => Self::ThirdPartyService,
32834 _ => Self::UnknownValue(r#type::UnknownValue(
32835 wkt::internal::UnknownEnumValue::Integer(value),
32836 )),
32837 }
32838 }
32839 }
32840
32841 impl std::convert::From<&str> for Type {
32842 fn from(value: &str) -> Self {
32843 use std::string::ToString;
32844 match value {
32845 "TYPE_UNSPECIFIED" => Self::Unspecified,
32846 "PRIVATE_SERVICE_ACCESS" => Self::PrivateServiceAccess,
32847 "NETAPP_CLOUD_VOLUMES" => Self::NetappCloudVolumes,
32848 "DELL_POWERSCALE" => Self::DellPowerscale,
32849 "THIRD_PARTY_SERVICE" => Self::ThirdPartyService,
32850 _ => Self::UnknownValue(r#type::UnknownValue(
32851 wkt::internal::UnknownEnumValue::String(value.to_string()),
32852 )),
32853 }
32854 }
32855 }
32856
32857 impl serde::ser::Serialize for Type {
32858 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
32859 where
32860 S: serde::Serializer,
32861 {
32862 match self {
32863 Self::Unspecified => serializer.serialize_i32(0),
32864 Self::PrivateServiceAccess => serializer.serialize_i32(1),
32865 Self::NetappCloudVolumes => serializer.serialize_i32(2),
32866 Self::DellPowerscale => serializer.serialize_i32(3),
32867 Self::ThirdPartyService => serializer.serialize_i32(4),
32868 Self::UnknownValue(u) => u.0.serialize(serializer),
32869 }
32870 }
32871 }
32872
32873 impl<'de> serde::de::Deserialize<'de> for Type {
32874 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
32875 where
32876 D: serde::Deserializer<'de>,
32877 {
32878 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Type>::new(
32879 ".google.cloud.vmwareengine.v1.PrivateConnection.Type",
32880 ))
32881 }
32882 }
32883
32884 #[derive(Clone, Debug, PartialEq)]
32900 #[non_exhaustive]
32901 pub enum RoutingMode {
32902 Unspecified,
32904 Global,
32906 Regional,
32908 UnknownValue(routing_mode::UnknownValue),
32913 }
32914
32915 #[doc(hidden)]
32916 pub mod routing_mode {
32917 #[allow(unused_imports)]
32918 use super::*;
32919 #[derive(Clone, Debug, PartialEq)]
32920 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
32921 }
32922
32923 impl RoutingMode {
32924 pub fn value(&self) -> std::option::Option<i32> {
32929 match self {
32930 Self::Unspecified => std::option::Option::Some(0),
32931 Self::Global => std::option::Option::Some(1),
32932 Self::Regional => std::option::Option::Some(2),
32933 Self::UnknownValue(u) => u.0.value(),
32934 }
32935 }
32936
32937 pub fn name(&self) -> std::option::Option<&str> {
32942 match self {
32943 Self::Unspecified => std::option::Option::Some("ROUTING_MODE_UNSPECIFIED"),
32944 Self::Global => std::option::Option::Some("GLOBAL"),
32945 Self::Regional => std::option::Option::Some("REGIONAL"),
32946 Self::UnknownValue(u) => u.0.name(),
32947 }
32948 }
32949 }
32950
32951 impl std::default::Default for RoutingMode {
32952 fn default() -> Self {
32953 use std::convert::From;
32954 Self::from(0)
32955 }
32956 }
32957
32958 impl std::fmt::Display for RoutingMode {
32959 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
32960 wkt::internal::display_enum(f, self.name(), self.value())
32961 }
32962 }
32963
32964 impl std::convert::From<i32> for RoutingMode {
32965 fn from(value: i32) -> Self {
32966 match value {
32967 0 => Self::Unspecified,
32968 1 => Self::Global,
32969 2 => Self::Regional,
32970 _ => Self::UnknownValue(routing_mode::UnknownValue(
32971 wkt::internal::UnknownEnumValue::Integer(value),
32972 )),
32973 }
32974 }
32975 }
32976
32977 impl std::convert::From<&str> for RoutingMode {
32978 fn from(value: &str) -> Self {
32979 use std::string::ToString;
32980 match value {
32981 "ROUTING_MODE_UNSPECIFIED" => Self::Unspecified,
32982 "GLOBAL" => Self::Global,
32983 "REGIONAL" => Self::Regional,
32984 _ => Self::UnknownValue(routing_mode::UnknownValue(
32985 wkt::internal::UnknownEnumValue::String(value.to_string()),
32986 )),
32987 }
32988 }
32989 }
32990
32991 impl serde::ser::Serialize for RoutingMode {
32992 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
32993 where
32994 S: serde::Serializer,
32995 {
32996 match self {
32997 Self::Unspecified => serializer.serialize_i32(0),
32998 Self::Global => serializer.serialize_i32(1),
32999 Self::Regional => serializer.serialize_i32(2),
33000 Self::UnknownValue(u) => u.0.serialize(serializer),
33001 }
33002 }
33003 }
33004
33005 impl<'de> serde::de::Deserialize<'de> for RoutingMode {
33006 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33007 where
33008 D: serde::Deserializer<'de>,
33009 {
33010 deserializer.deserialize_any(wkt::internal::EnumVisitor::<RoutingMode>::new(
33011 ".google.cloud.vmwareengine.v1.PrivateConnection.RoutingMode",
33012 ))
33013 }
33014 }
33015
33016 #[derive(Clone, Debug, PartialEq)]
33033 #[non_exhaustive]
33034 pub enum PeeringState {
33035 Unspecified,
33038 PeeringActive,
33040 PeeringInactive,
33042 UnknownValue(peering_state::UnknownValue),
33047 }
33048
33049 #[doc(hidden)]
33050 pub mod peering_state {
33051 #[allow(unused_imports)]
33052 use super::*;
33053 #[derive(Clone, Debug, PartialEq)]
33054 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
33055 }
33056
33057 impl PeeringState {
33058 pub fn value(&self) -> std::option::Option<i32> {
33063 match self {
33064 Self::Unspecified => std::option::Option::Some(0),
33065 Self::PeeringActive => std::option::Option::Some(1),
33066 Self::PeeringInactive => std::option::Option::Some(2),
33067 Self::UnknownValue(u) => u.0.value(),
33068 }
33069 }
33070
33071 pub fn name(&self) -> std::option::Option<&str> {
33076 match self {
33077 Self::Unspecified => std::option::Option::Some("PEERING_STATE_UNSPECIFIED"),
33078 Self::PeeringActive => std::option::Option::Some("PEERING_ACTIVE"),
33079 Self::PeeringInactive => std::option::Option::Some("PEERING_INACTIVE"),
33080 Self::UnknownValue(u) => u.0.name(),
33081 }
33082 }
33083 }
33084
33085 impl std::default::Default for PeeringState {
33086 fn default() -> Self {
33087 use std::convert::From;
33088 Self::from(0)
33089 }
33090 }
33091
33092 impl std::fmt::Display for PeeringState {
33093 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
33094 wkt::internal::display_enum(f, self.name(), self.value())
33095 }
33096 }
33097
33098 impl std::convert::From<i32> for PeeringState {
33099 fn from(value: i32) -> Self {
33100 match value {
33101 0 => Self::Unspecified,
33102 1 => Self::PeeringActive,
33103 2 => Self::PeeringInactive,
33104 _ => Self::UnknownValue(peering_state::UnknownValue(
33105 wkt::internal::UnknownEnumValue::Integer(value),
33106 )),
33107 }
33108 }
33109 }
33110
33111 impl std::convert::From<&str> for PeeringState {
33112 fn from(value: &str) -> Self {
33113 use std::string::ToString;
33114 match value {
33115 "PEERING_STATE_UNSPECIFIED" => Self::Unspecified,
33116 "PEERING_ACTIVE" => Self::PeeringActive,
33117 "PEERING_INACTIVE" => Self::PeeringInactive,
33118 _ => Self::UnknownValue(peering_state::UnknownValue(
33119 wkt::internal::UnknownEnumValue::String(value.to_string()),
33120 )),
33121 }
33122 }
33123 }
33124
33125 impl serde::ser::Serialize for PeeringState {
33126 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
33127 where
33128 S: serde::Serializer,
33129 {
33130 match self {
33131 Self::Unspecified => serializer.serialize_i32(0),
33132 Self::PeeringActive => serializer.serialize_i32(1),
33133 Self::PeeringInactive => serializer.serialize_i32(2),
33134 Self::UnknownValue(u) => u.0.serialize(serializer),
33135 }
33136 }
33137 }
33138
33139 impl<'de> serde::de::Deserialize<'de> for PeeringState {
33140 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33141 where
33142 D: serde::Deserializer<'de>,
33143 {
33144 deserializer.deserialize_any(wkt::internal::EnumVisitor::<PeeringState>::new(
33145 ".google.cloud.vmwareengine.v1.PrivateConnection.PeeringState",
33146 ))
33147 }
33148 }
33149}
33150
33151#[derive(Clone, Debug, Default, PartialEq)]
33157#[non_exhaustive]
33158pub struct LocationMetadata {
33159 pub capabilities: std::vec::Vec<crate::model::location_metadata::Capability>,
33161
33162 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
33163}
33164
33165impl LocationMetadata {
33166 pub fn new() -> Self {
33167 std::default::Default::default()
33168 }
33169
33170 pub fn set_capabilities<T, V>(mut self, v: T) -> Self
33172 where
33173 T: std::iter::IntoIterator<Item = V>,
33174 V: std::convert::Into<crate::model::location_metadata::Capability>,
33175 {
33176 use std::iter::Iterator;
33177 self.capabilities = v.into_iter().map(|i| i.into()).collect();
33178 self
33179 }
33180}
33181
33182impl wkt::message::Message for LocationMetadata {
33183 fn typename() -> &'static str {
33184 "type.googleapis.com/google.cloud.vmwareengine.v1.LocationMetadata"
33185 }
33186}
33187
33188#[doc(hidden)]
33189impl<'de> serde::de::Deserialize<'de> for LocationMetadata {
33190 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33191 where
33192 D: serde::Deserializer<'de>,
33193 {
33194 #[allow(non_camel_case_types)]
33195 #[doc(hidden)]
33196 #[derive(PartialEq, Eq, Hash)]
33197 enum __FieldTag {
33198 __capabilities,
33199 Unknown(std::string::String),
33200 }
33201 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
33202 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33203 where
33204 D: serde::Deserializer<'de>,
33205 {
33206 struct Visitor;
33207 impl<'de> serde::de::Visitor<'de> for Visitor {
33208 type Value = __FieldTag;
33209 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
33210 formatter.write_str("a field name for LocationMetadata")
33211 }
33212 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
33213 where
33214 E: serde::de::Error,
33215 {
33216 use std::result::Result::Ok;
33217 use std::string::ToString;
33218 match value {
33219 "capabilities" => Ok(__FieldTag::__capabilities),
33220 _ => Ok(__FieldTag::Unknown(value.to_string())),
33221 }
33222 }
33223 }
33224 deserializer.deserialize_identifier(Visitor)
33225 }
33226 }
33227 struct Visitor;
33228 impl<'de> serde::de::Visitor<'de> for Visitor {
33229 type Value = LocationMetadata;
33230 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
33231 formatter.write_str("struct LocationMetadata")
33232 }
33233 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
33234 where
33235 A: serde::de::MapAccess<'de>,
33236 {
33237 #[allow(unused_imports)]
33238 use serde::de::Error;
33239 use std::option::Option::Some;
33240 let mut fields = std::collections::HashSet::new();
33241 let mut result = Self::Value::new();
33242 while let Some(tag) = map.next_key::<__FieldTag>()? {
33243 #[allow(clippy::match_single_binding)]
33244 match tag {
33245 __FieldTag::__capabilities => {
33246 if !fields.insert(__FieldTag::__capabilities) {
33247 return std::result::Result::Err(A::Error::duplicate_field(
33248 "multiple values for capabilities",
33249 ));
33250 }
33251 result.capabilities = map
33252 .next_value::<std::option::Option<
33253 std::vec::Vec<crate::model::location_metadata::Capability>,
33254 >>()?
33255 .unwrap_or_default();
33256 }
33257 __FieldTag::Unknown(key) => {
33258 let value = map.next_value::<serde_json::Value>()?;
33259 result._unknown_fields.insert(key, value);
33260 }
33261 }
33262 }
33263 std::result::Result::Ok(result)
33264 }
33265 }
33266 deserializer.deserialize_any(Visitor)
33267 }
33268}
33269
33270#[doc(hidden)]
33271impl serde::ser::Serialize for LocationMetadata {
33272 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
33273 where
33274 S: serde::ser::Serializer,
33275 {
33276 use serde::ser::SerializeMap;
33277 #[allow(unused_imports)]
33278 use std::option::Option::Some;
33279 let mut state = serializer.serialize_map(std::option::Option::None)?;
33280 if !self.capabilities.is_empty() {
33281 state.serialize_entry("capabilities", &self.capabilities)?;
33282 }
33283 if !self._unknown_fields.is_empty() {
33284 for (key, value) in self._unknown_fields.iter() {
33285 state.serialize_entry(key, &value)?;
33286 }
33287 }
33288 state.end()
33289 }
33290}
33291
33292pub mod location_metadata {
33294 #[allow(unused_imports)]
33295 use super::*;
33296
33297 #[derive(Clone, Debug, PartialEq)]
33313 #[non_exhaustive]
33314 pub enum Capability {
33315 Unspecified,
33318 StretchedClusters,
33320 UnknownValue(capability::UnknownValue),
33325 }
33326
33327 #[doc(hidden)]
33328 pub mod capability {
33329 #[allow(unused_imports)]
33330 use super::*;
33331 #[derive(Clone, Debug, PartialEq)]
33332 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
33333 }
33334
33335 impl Capability {
33336 pub fn value(&self) -> std::option::Option<i32> {
33341 match self {
33342 Self::Unspecified => std::option::Option::Some(0),
33343 Self::StretchedClusters => std::option::Option::Some(1),
33344 Self::UnknownValue(u) => u.0.value(),
33345 }
33346 }
33347
33348 pub fn name(&self) -> std::option::Option<&str> {
33353 match self {
33354 Self::Unspecified => std::option::Option::Some("CAPABILITY_UNSPECIFIED"),
33355 Self::StretchedClusters => std::option::Option::Some("STRETCHED_CLUSTERS"),
33356 Self::UnknownValue(u) => u.0.name(),
33357 }
33358 }
33359 }
33360
33361 impl std::default::Default for Capability {
33362 fn default() -> Self {
33363 use std::convert::From;
33364 Self::from(0)
33365 }
33366 }
33367
33368 impl std::fmt::Display for Capability {
33369 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
33370 wkt::internal::display_enum(f, self.name(), self.value())
33371 }
33372 }
33373
33374 impl std::convert::From<i32> for Capability {
33375 fn from(value: i32) -> Self {
33376 match value {
33377 0 => Self::Unspecified,
33378 1 => Self::StretchedClusters,
33379 _ => Self::UnknownValue(capability::UnknownValue(
33380 wkt::internal::UnknownEnumValue::Integer(value),
33381 )),
33382 }
33383 }
33384 }
33385
33386 impl std::convert::From<&str> for Capability {
33387 fn from(value: &str) -> Self {
33388 use std::string::ToString;
33389 match value {
33390 "CAPABILITY_UNSPECIFIED" => Self::Unspecified,
33391 "STRETCHED_CLUSTERS" => Self::StretchedClusters,
33392 _ => Self::UnknownValue(capability::UnknownValue(
33393 wkt::internal::UnknownEnumValue::String(value.to_string()),
33394 )),
33395 }
33396 }
33397 }
33398
33399 impl serde::ser::Serialize for Capability {
33400 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
33401 where
33402 S: serde::Serializer,
33403 {
33404 match self {
33405 Self::Unspecified => serializer.serialize_i32(0),
33406 Self::StretchedClusters => serializer.serialize_i32(1),
33407 Self::UnknownValue(u) => u.0.serialize(serializer),
33408 }
33409 }
33410 }
33411
33412 impl<'de> serde::de::Deserialize<'de> for Capability {
33413 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33414 where
33415 D: serde::Deserializer<'de>,
33416 {
33417 deserializer.deserialize_any(wkt::internal::EnumVisitor::<Capability>::new(
33418 ".google.cloud.vmwareengine.v1.LocationMetadata.Capability",
33419 ))
33420 }
33421 }
33422}
33423
33424#[derive(Clone, Debug, Default, PartialEq)]
33427#[non_exhaustive]
33428pub struct DnsBindPermission {
33429 pub name: std::string::String,
33437
33438 pub principals: std::vec::Vec<crate::model::Principal>,
33441
33442 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
33443}
33444
33445impl DnsBindPermission {
33446 pub fn new() -> Self {
33447 std::default::Default::default()
33448 }
33449
33450 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
33452 self.name = v.into();
33453 self
33454 }
33455
33456 pub fn set_principals<T, V>(mut self, v: T) -> Self
33458 where
33459 T: std::iter::IntoIterator<Item = V>,
33460 V: std::convert::Into<crate::model::Principal>,
33461 {
33462 use std::iter::Iterator;
33463 self.principals = v.into_iter().map(|i| i.into()).collect();
33464 self
33465 }
33466}
33467
33468impl wkt::message::Message for DnsBindPermission {
33469 fn typename() -> &'static str {
33470 "type.googleapis.com/google.cloud.vmwareengine.v1.DnsBindPermission"
33471 }
33472}
33473
33474#[doc(hidden)]
33475impl<'de> serde::de::Deserialize<'de> for DnsBindPermission {
33476 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33477 where
33478 D: serde::Deserializer<'de>,
33479 {
33480 #[allow(non_camel_case_types)]
33481 #[doc(hidden)]
33482 #[derive(PartialEq, Eq, Hash)]
33483 enum __FieldTag {
33484 __name,
33485 __principals,
33486 Unknown(std::string::String),
33487 }
33488 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
33489 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33490 where
33491 D: serde::Deserializer<'de>,
33492 {
33493 struct Visitor;
33494 impl<'de> serde::de::Visitor<'de> for Visitor {
33495 type Value = __FieldTag;
33496 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
33497 formatter.write_str("a field name for DnsBindPermission")
33498 }
33499 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
33500 where
33501 E: serde::de::Error,
33502 {
33503 use std::result::Result::Ok;
33504 use std::string::ToString;
33505 match value {
33506 "name" => Ok(__FieldTag::__name),
33507 "principals" => Ok(__FieldTag::__principals),
33508 _ => Ok(__FieldTag::Unknown(value.to_string())),
33509 }
33510 }
33511 }
33512 deserializer.deserialize_identifier(Visitor)
33513 }
33514 }
33515 struct Visitor;
33516 impl<'de> serde::de::Visitor<'de> for Visitor {
33517 type Value = DnsBindPermission;
33518 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
33519 formatter.write_str("struct DnsBindPermission")
33520 }
33521 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
33522 where
33523 A: serde::de::MapAccess<'de>,
33524 {
33525 #[allow(unused_imports)]
33526 use serde::de::Error;
33527 use std::option::Option::Some;
33528 let mut fields = std::collections::HashSet::new();
33529 let mut result = Self::Value::new();
33530 while let Some(tag) = map.next_key::<__FieldTag>()? {
33531 #[allow(clippy::match_single_binding)]
33532 match tag {
33533 __FieldTag::__name => {
33534 if !fields.insert(__FieldTag::__name) {
33535 return std::result::Result::Err(A::Error::duplicate_field(
33536 "multiple values for name",
33537 ));
33538 }
33539 result.name = map
33540 .next_value::<std::option::Option<std::string::String>>()?
33541 .unwrap_or_default();
33542 }
33543 __FieldTag::__principals => {
33544 if !fields.insert(__FieldTag::__principals) {
33545 return std::result::Result::Err(A::Error::duplicate_field(
33546 "multiple values for principals",
33547 ));
33548 }
33549 result.principals = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Principal>>>()?.unwrap_or_default();
33550 }
33551 __FieldTag::Unknown(key) => {
33552 let value = map.next_value::<serde_json::Value>()?;
33553 result._unknown_fields.insert(key, value);
33554 }
33555 }
33556 }
33557 std::result::Result::Ok(result)
33558 }
33559 }
33560 deserializer.deserialize_any(Visitor)
33561 }
33562}
33563
33564#[doc(hidden)]
33565impl serde::ser::Serialize for DnsBindPermission {
33566 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
33567 where
33568 S: serde::ser::Serializer,
33569 {
33570 use serde::ser::SerializeMap;
33571 #[allow(unused_imports)]
33572 use std::option::Option::Some;
33573 let mut state = serializer.serialize_map(std::option::Option::None)?;
33574 if !self.name.is_empty() {
33575 state.serialize_entry("name", &self.name)?;
33576 }
33577 if !self.principals.is_empty() {
33578 state.serialize_entry("principals", &self.principals)?;
33579 }
33580 if !self._unknown_fields.is_empty() {
33581 for (key, value) in self._unknown_fields.iter() {
33582 state.serialize_entry(key, &value)?;
33583 }
33584 }
33585 state.end()
33586 }
33587}
33588
33589#[derive(Clone, Debug, Default, PartialEq)]
33592#[non_exhaustive]
33593pub struct Principal {
33594 pub principal: std::option::Option<crate::model::principal::Principal>,
33598
33599 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
33600}
33601
33602impl Principal {
33603 pub fn new() -> Self {
33604 std::default::Default::default()
33605 }
33606
33607 pub fn set_principal<
33612 T: std::convert::Into<std::option::Option<crate::model::principal::Principal>>,
33613 >(
33614 mut self,
33615 v: T,
33616 ) -> Self {
33617 self.principal = v.into();
33618 self
33619 }
33620
33621 pub fn user(&self) -> std::option::Option<&std::string::String> {
33625 #[allow(unreachable_patterns)]
33626 self.principal.as_ref().and_then(|v| match v {
33627 crate::model::principal::Principal::User(v) => std::option::Option::Some(v),
33628 _ => std::option::Option::None,
33629 })
33630 }
33631
33632 pub fn set_user<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
33638 self.principal =
33639 std::option::Option::Some(crate::model::principal::Principal::User(v.into()));
33640 self
33641 }
33642
33643 pub fn service_account(&self) -> std::option::Option<&std::string::String> {
33647 #[allow(unreachable_patterns)]
33648 self.principal.as_ref().and_then(|v| match v {
33649 crate::model::principal::Principal::ServiceAccount(v) => std::option::Option::Some(v),
33650 _ => std::option::Option::None,
33651 })
33652 }
33653
33654 pub fn set_service_account<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
33660 self.principal =
33661 std::option::Option::Some(crate::model::principal::Principal::ServiceAccount(v.into()));
33662 self
33663 }
33664}
33665
33666impl wkt::message::Message for Principal {
33667 fn typename() -> &'static str {
33668 "type.googleapis.com/google.cloud.vmwareengine.v1.Principal"
33669 }
33670}
33671
33672#[doc(hidden)]
33673impl<'de> serde::de::Deserialize<'de> for Principal {
33674 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33675 where
33676 D: serde::Deserializer<'de>,
33677 {
33678 #[allow(non_camel_case_types)]
33679 #[doc(hidden)]
33680 #[derive(PartialEq, Eq, Hash)]
33681 enum __FieldTag {
33682 __user,
33683 __service_account,
33684 Unknown(std::string::String),
33685 }
33686 impl<'de> serde::de::Deserialize<'de> for __FieldTag {
33687 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
33688 where
33689 D: serde::Deserializer<'de>,
33690 {
33691 struct Visitor;
33692 impl<'de> serde::de::Visitor<'de> for Visitor {
33693 type Value = __FieldTag;
33694 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
33695 formatter.write_str("a field name for Principal")
33696 }
33697 fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
33698 where
33699 E: serde::de::Error,
33700 {
33701 use std::result::Result::Ok;
33702 use std::string::ToString;
33703 match value {
33704 "user" => Ok(__FieldTag::__user),
33705 "serviceAccount" => Ok(__FieldTag::__service_account),
33706 "service_account" => Ok(__FieldTag::__service_account),
33707 _ => Ok(__FieldTag::Unknown(value.to_string())),
33708 }
33709 }
33710 }
33711 deserializer.deserialize_identifier(Visitor)
33712 }
33713 }
33714 struct Visitor;
33715 impl<'de> serde::de::Visitor<'de> for Visitor {
33716 type Value = Principal;
33717 fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
33718 formatter.write_str("struct Principal")
33719 }
33720 fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
33721 where
33722 A: serde::de::MapAccess<'de>,
33723 {
33724 #[allow(unused_imports)]
33725 use serde::de::Error;
33726 use std::option::Option::Some;
33727 let mut fields = std::collections::HashSet::new();
33728 let mut result = Self::Value::new();
33729 while let Some(tag) = map.next_key::<__FieldTag>()? {
33730 #[allow(clippy::match_single_binding)]
33731 match tag {
33732 __FieldTag::__user => {
33733 if !fields.insert(__FieldTag::__user) {
33734 return std::result::Result::Err(A::Error::duplicate_field(
33735 "multiple values for user",
33736 ));
33737 }
33738 if result.principal.is_some() {
33739 return std::result::Result::Err(A::Error::duplicate_field(
33740 "multiple values for `principal`, a oneof with full ID .google.cloud.vmwareengine.v1.Principal.user, latest field was user",
33741 ));
33742 }
33743 result.principal = std::option::Option::Some(
33744 crate::model::principal::Principal::User(
33745 map.next_value::<std::option::Option<std::string::String>>()?
33746 .unwrap_or_default(),
33747 ),
33748 );
33749 }
33750 __FieldTag::__service_account => {
33751 if !fields.insert(__FieldTag::__service_account) {
33752 return std::result::Result::Err(A::Error::duplicate_field(
33753 "multiple values for service_account",
33754 ));
33755 }
33756 if result.principal.is_some() {
33757 return std::result::Result::Err(A::Error::duplicate_field(
33758 "multiple values for `principal`, a oneof with full ID .google.cloud.vmwareengine.v1.Principal.service_account, latest field was serviceAccount",
33759 ));
33760 }
33761 result.principal = std::option::Option::Some(
33762 crate::model::principal::Principal::ServiceAccount(
33763 map.next_value::<std::option::Option<std::string::String>>()?
33764 .unwrap_or_default(),
33765 ),
33766 );
33767 }
33768 __FieldTag::Unknown(key) => {
33769 let value = map.next_value::<serde_json::Value>()?;
33770 result._unknown_fields.insert(key, value);
33771 }
33772 }
33773 }
33774 std::result::Result::Ok(result)
33775 }
33776 }
33777 deserializer.deserialize_any(Visitor)
33778 }
33779}
33780
33781#[doc(hidden)]
33782impl serde::ser::Serialize for Principal {
33783 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
33784 where
33785 S: serde::ser::Serializer,
33786 {
33787 use serde::ser::SerializeMap;
33788 #[allow(unused_imports)]
33789 use std::option::Option::Some;
33790 let mut state = serializer.serialize_map(std::option::Option::None)?;
33791 if let Some(value) = self.user() {
33792 state.serialize_entry("user", value)?;
33793 }
33794 if let Some(value) = self.service_account() {
33795 state.serialize_entry("serviceAccount", value)?;
33796 }
33797 if !self._unknown_fields.is_empty() {
33798 for (key, value) in self._unknown_fields.iter() {
33799 state.serialize_entry(key, &value)?;
33800 }
33801 }
33802 state.end()
33803 }
33804}
33805
33806pub mod principal {
33808 #[allow(unused_imports)]
33809 use super::*;
33810
33811 #[derive(Clone, Debug, PartialEq)]
33815 #[non_exhaustive]
33816 pub enum Principal {
33817 User(std::string::String),
33819 ServiceAccount(std::string::String),
33821 }
33822}