google_cloud_parametermanager_v1/model.rs
1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Code generated by sidekick. DO NOT EDIT.
16
17#![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 reqwest;
28extern crate serde;
29extern crate serde_json;
30extern crate serde_with;
31extern crate std;
32extern crate tracing;
33extern crate wkt;
34
35mod debug;
36mod deserialize;
37mod serialize;
38
39/// Message describing Parameter resource
40#[derive(Clone, Default, PartialEq)]
41#[non_exhaustive]
42pub struct Parameter {
43 /// Identifier. [Output only] The resource name of the Parameter in the format
44 /// `projects/*/locations/*/parameters/*`.
45 pub name: std::string::String,
46
47 /// Output only. [Output only] Create time stamp
48 pub create_time: std::option::Option<wkt::Timestamp>,
49
50 /// Output only. [Output only] Update time stamp
51 pub update_time: std::option::Option<wkt::Timestamp>,
52
53 /// Optional. Labels as key value pairs
54 pub labels: std::collections::HashMap<std::string::String, std::string::String>,
55
56 /// Optional. Specifies the format of a Parameter.
57 pub format: crate::model::ParameterFormat,
58
59 /// Output only. [Output-only] policy member strings of a Google Cloud
60 /// resource.
61 pub policy_member: std::option::Option<iam_v1::model::ResourcePolicyMember>,
62
63 /// Optional. Customer managed encryption key (CMEK) to use for encrypting the
64 /// Parameter Versions. If not set, the default Google-managed encryption key
65 /// will be used. Cloud KMS CryptoKeys must reside in the same location as the
66 /// Parameter. The expected format is
67 /// `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
68 pub kms_key: std::option::Option<std::string::String>,
69
70 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
71}
72
73impl Parameter {
74 pub fn new() -> Self {
75 std::default::Default::default()
76 }
77
78 /// Sets the value of [name][crate::model::Parameter::name].
79 ///
80 /// # Example
81 /// ```ignore,no_run
82 /// # use google_cloud_parametermanager_v1::model::Parameter;
83 /// let x = Parameter::new().set_name("example");
84 /// ```
85 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
86 self.name = v.into();
87 self
88 }
89
90 /// Sets the value of [create_time][crate::model::Parameter::create_time].
91 ///
92 /// # Example
93 /// ```ignore,no_run
94 /// # use google_cloud_parametermanager_v1::model::Parameter;
95 /// use wkt::Timestamp;
96 /// let x = Parameter::new().set_create_time(Timestamp::default()/* use setters */);
97 /// ```
98 pub fn set_create_time<T>(mut self, v: T) -> Self
99 where
100 T: std::convert::Into<wkt::Timestamp>,
101 {
102 self.create_time = std::option::Option::Some(v.into());
103 self
104 }
105
106 /// Sets or clears the value of [create_time][crate::model::Parameter::create_time].
107 ///
108 /// # Example
109 /// ```ignore,no_run
110 /// # use google_cloud_parametermanager_v1::model::Parameter;
111 /// use wkt::Timestamp;
112 /// let x = Parameter::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
113 /// let x = Parameter::new().set_or_clear_create_time(None::<Timestamp>);
114 /// ```
115 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
116 where
117 T: std::convert::Into<wkt::Timestamp>,
118 {
119 self.create_time = v.map(|x| x.into());
120 self
121 }
122
123 /// Sets the value of [update_time][crate::model::Parameter::update_time].
124 ///
125 /// # Example
126 /// ```ignore,no_run
127 /// # use google_cloud_parametermanager_v1::model::Parameter;
128 /// use wkt::Timestamp;
129 /// let x = Parameter::new().set_update_time(Timestamp::default()/* use setters */);
130 /// ```
131 pub fn set_update_time<T>(mut self, v: T) -> Self
132 where
133 T: std::convert::Into<wkt::Timestamp>,
134 {
135 self.update_time = std::option::Option::Some(v.into());
136 self
137 }
138
139 /// Sets or clears the value of [update_time][crate::model::Parameter::update_time].
140 ///
141 /// # Example
142 /// ```ignore,no_run
143 /// # use google_cloud_parametermanager_v1::model::Parameter;
144 /// use wkt::Timestamp;
145 /// let x = Parameter::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
146 /// let x = Parameter::new().set_or_clear_update_time(None::<Timestamp>);
147 /// ```
148 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
149 where
150 T: std::convert::Into<wkt::Timestamp>,
151 {
152 self.update_time = v.map(|x| x.into());
153 self
154 }
155
156 /// Sets the value of [labels][crate::model::Parameter::labels].
157 ///
158 /// # Example
159 /// ```ignore,no_run
160 /// # use google_cloud_parametermanager_v1::model::Parameter;
161 /// let x = Parameter::new().set_labels([
162 /// ("key0", "abc"),
163 /// ("key1", "xyz"),
164 /// ]);
165 /// ```
166 pub fn set_labels<T, K, V>(mut self, v: T) -> Self
167 where
168 T: std::iter::IntoIterator<Item = (K, V)>,
169 K: std::convert::Into<std::string::String>,
170 V: std::convert::Into<std::string::String>,
171 {
172 use std::iter::Iterator;
173 self.labels = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
174 self
175 }
176
177 /// Sets the value of [format][crate::model::Parameter::format].
178 ///
179 /// # Example
180 /// ```ignore,no_run
181 /// # use google_cloud_parametermanager_v1::model::Parameter;
182 /// use google_cloud_parametermanager_v1::model::ParameterFormat;
183 /// let x0 = Parameter::new().set_format(ParameterFormat::Unformatted);
184 /// let x1 = Parameter::new().set_format(ParameterFormat::Yaml);
185 /// let x2 = Parameter::new().set_format(ParameterFormat::Json);
186 /// ```
187 pub fn set_format<T: std::convert::Into<crate::model::ParameterFormat>>(
188 mut self,
189 v: T,
190 ) -> Self {
191 self.format = v.into();
192 self
193 }
194
195 /// Sets the value of [policy_member][crate::model::Parameter::policy_member].
196 ///
197 /// # Example
198 /// ```ignore,no_run
199 /// # use google_cloud_parametermanager_v1::model::Parameter;
200 /// use iam_v1::model::ResourcePolicyMember;
201 /// let x = Parameter::new().set_policy_member(ResourcePolicyMember::default()/* use setters */);
202 /// ```
203 pub fn set_policy_member<T>(mut self, v: T) -> Self
204 where
205 T: std::convert::Into<iam_v1::model::ResourcePolicyMember>,
206 {
207 self.policy_member = std::option::Option::Some(v.into());
208 self
209 }
210
211 /// Sets or clears the value of [policy_member][crate::model::Parameter::policy_member].
212 ///
213 /// # Example
214 /// ```ignore,no_run
215 /// # use google_cloud_parametermanager_v1::model::Parameter;
216 /// use iam_v1::model::ResourcePolicyMember;
217 /// let x = Parameter::new().set_or_clear_policy_member(Some(ResourcePolicyMember::default()/* use setters */));
218 /// let x = Parameter::new().set_or_clear_policy_member(None::<ResourcePolicyMember>);
219 /// ```
220 pub fn set_or_clear_policy_member<T>(mut self, v: std::option::Option<T>) -> Self
221 where
222 T: std::convert::Into<iam_v1::model::ResourcePolicyMember>,
223 {
224 self.policy_member = v.map(|x| x.into());
225 self
226 }
227
228 /// Sets the value of [kms_key][crate::model::Parameter::kms_key].
229 ///
230 /// # Example
231 /// ```ignore,no_run
232 /// # use google_cloud_parametermanager_v1::model::Parameter;
233 /// let x = Parameter::new().set_kms_key("example");
234 /// ```
235 pub fn set_kms_key<T>(mut self, v: T) -> Self
236 where
237 T: std::convert::Into<std::string::String>,
238 {
239 self.kms_key = std::option::Option::Some(v.into());
240 self
241 }
242
243 /// Sets or clears the value of [kms_key][crate::model::Parameter::kms_key].
244 ///
245 /// # Example
246 /// ```ignore,no_run
247 /// # use google_cloud_parametermanager_v1::model::Parameter;
248 /// let x = Parameter::new().set_or_clear_kms_key(Some("example"));
249 /// let x = Parameter::new().set_or_clear_kms_key(None::<String>);
250 /// ```
251 pub fn set_or_clear_kms_key<T>(mut self, v: std::option::Option<T>) -> Self
252 where
253 T: std::convert::Into<std::string::String>,
254 {
255 self.kms_key = v.map(|x| x.into());
256 self
257 }
258}
259
260impl wkt::message::Message for Parameter {
261 fn typename() -> &'static str {
262 "type.googleapis.com/google.cloud.parametermanager.v1.Parameter"
263 }
264}
265
266/// Message for requesting list of Parameters
267#[derive(Clone, Default, PartialEq)]
268#[non_exhaustive]
269pub struct ListParametersRequest {
270 /// Required. Parent value for ListParametersRequest in the format
271 /// `projects/*/locations/*`.
272 pub parent: std::string::String,
273
274 /// Optional. Requested page size. Server may return fewer items than
275 /// requested. If unspecified, server will pick an appropriate default.
276 pub page_size: i32,
277
278 /// Optional. A token identifying a page of results the server should return.
279 pub page_token: std::string::String,
280
281 /// Optional. Filtering results
282 pub filter: std::string::String,
283
284 /// Optional. Hint for how to order the results
285 pub order_by: std::string::String,
286
287 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
288}
289
290impl ListParametersRequest {
291 pub fn new() -> Self {
292 std::default::Default::default()
293 }
294
295 /// Sets the value of [parent][crate::model::ListParametersRequest::parent].
296 ///
297 /// # Example
298 /// ```ignore,no_run
299 /// # use google_cloud_parametermanager_v1::model::ListParametersRequest;
300 /// let x = ListParametersRequest::new().set_parent("example");
301 /// ```
302 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
303 self.parent = v.into();
304 self
305 }
306
307 /// Sets the value of [page_size][crate::model::ListParametersRequest::page_size].
308 ///
309 /// # Example
310 /// ```ignore,no_run
311 /// # use google_cloud_parametermanager_v1::model::ListParametersRequest;
312 /// let x = ListParametersRequest::new().set_page_size(42);
313 /// ```
314 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
315 self.page_size = v.into();
316 self
317 }
318
319 /// Sets the value of [page_token][crate::model::ListParametersRequest::page_token].
320 ///
321 /// # Example
322 /// ```ignore,no_run
323 /// # use google_cloud_parametermanager_v1::model::ListParametersRequest;
324 /// let x = ListParametersRequest::new().set_page_token("example");
325 /// ```
326 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
327 self.page_token = v.into();
328 self
329 }
330
331 /// Sets the value of [filter][crate::model::ListParametersRequest::filter].
332 ///
333 /// # Example
334 /// ```ignore,no_run
335 /// # use google_cloud_parametermanager_v1::model::ListParametersRequest;
336 /// let x = ListParametersRequest::new().set_filter("example");
337 /// ```
338 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
339 self.filter = v.into();
340 self
341 }
342
343 /// Sets the value of [order_by][crate::model::ListParametersRequest::order_by].
344 ///
345 /// # Example
346 /// ```ignore,no_run
347 /// # use google_cloud_parametermanager_v1::model::ListParametersRequest;
348 /// let x = ListParametersRequest::new().set_order_by("example");
349 /// ```
350 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
351 self.order_by = v.into();
352 self
353 }
354}
355
356impl wkt::message::Message for ListParametersRequest {
357 fn typename() -> &'static str {
358 "type.googleapis.com/google.cloud.parametermanager.v1.ListParametersRequest"
359 }
360}
361
362/// Message for response to listing Parameters
363#[derive(Clone, Default, PartialEq)]
364#[non_exhaustive]
365pub struct ListParametersResponse {
366 /// The list of Parameters
367 pub parameters: std::vec::Vec<crate::model::Parameter>,
368
369 /// A token identifying a page of results the server should return.
370 pub next_page_token: std::string::String,
371
372 /// Unordered list. Locations that could not be reached.
373 pub unreachable: std::vec::Vec<std::string::String>,
374
375 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
376}
377
378impl ListParametersResponse {
379 pub fn new() -> Self {
380 std::default::Default::default()
381 }
382
383 /// Sets the value of [parameters][crate::model::ListParametersResponse::parameters].
384 ///
385 /// # Example
386 /// ```ignore,no_run
387 /// # use google_cloud_parametermanager_v1::model::ListParametersResponse;
388 /// use google_cloud_parametermanager_v1::model::Parameter;
389 /// let x = ListParametersResponse::new()
390 /// .set_parameters([
391 /// Parameter::default()/* use setters */,
392 /// Parameter::default()/* use (different) setters */,
393 /// ]);
394 /// ```
395 pub fn set_parameters<T, V>(mut self, v: T) -> Self
396 where
397 T: std::iter::IntoIterator<Item = V>,
398 V: std::convert::Into<crate::model::Parameter>,
399 {
400 use std::iter::Iterator;
401 self.parameters = v.into_iter().map(|i| i.into()).collect();
402 self
403 }
404
405 /// Sets the value of [next_page_token][crate::model::ListParametersResponse::next_page_token].
406 ///
407 /// # Example
408 /// ```ignore,no_run
409 /// # use google_cloud_parametermanager_v1::model::ListParametersResponse;
410 /// let x = ListParametersResponse::new().set_next_page_token("example");
411 /// ```
412 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
413 self.next_page_token = v.into();
414 self
415 }
416
417 /// Sets the value of [unreachable][crate::model::ListParametersResponse::unreachable].
418 ///
419 /// # Example
420 /// ```ignore,no_run
421 /// # use google_cloud_parametermanager_v1::model::ListParametersResponse;
422 /// let x = ListParametersResponse::new().set_unreachable(["a", "b", "c"]);
423 /// ```
424 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
425 where
426 T: std::iter::IntoIterator<Item = V>,
427 V: std::convert::Into<std::string::String>,
428 {
429 use std::iter::Iterator;
430 self.unreachable = v.into_iter().map(|i| i.into()).collect();
431 self
432 }
433}
434
435impl wkt::message::Message for ListParametersResponse {
436 fn typename() -> &'static str {
437 "type.googleapis.com/google.cloud.parametermanager.v1.ListParametersResponse"
438 }
439}
440
441#[doc(hidden)]
442impl gax::paginator::internal::PageableResponse for ListParametersResponse {
443 type PageItem = crate::model::Parameter;
444
445 fn items(self) -> std::vec::Vec<Self::PageItem> {
446 self.parameters
447 }
448
449 fn next_page_token(&self) -> std::string::String {
450 use std::clone::Clone;
451 self.next_page_token.clone()
452 }
453}
454
455/// Message for getting a Parameter
456#[derive(Clone, Default, PartialEq)]
457#[non_exhaustive]
458pub struct GetParameterRequest {
459 /// Required. Name of the resource in the format
460 /// `projects/*/locations/*/parameters/*`.
461 pub name: std::string::String,
462
463 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
464}
465
466impl GetParameterRequest {
467 pub fn new() -> Self {
468 std::default::Default::default()
469 }
470
471 /// Sets the value of [name][crate::model::GetParameterRequest::name].
472 ///
473 /// # Example
474 /// ```ignore,no_run
475 /// # use google_cloud_parametermanager_v1::model::GetParameterRequest;
476 /// let x = GetParameterRequest::new().set_name("example");
477 /// ```
478 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
479 self.name = v.into();
480 self
481 }
482}
483
484impl wkt::message::Message for GetParameterRequest {
485 fn typename() -> &'static str {
486 "type.googleapis.com/google.cloud.parametermanager.v1.GetParameterRequest"
487 }
488}
489
490/// Message for creating a Parameter
491#[derive(Clone, Default, PartialEq)]
492#[non_exhaustive]
493pub struct CreateParameterRequest {
494 /// Required. Value for parent in the format
495 /// `projects/*/locations/*`.
496 pub parent: std::string::String,
497
498 /// Required. Id of the Parameter resource
499 pub parameter_id: std::string::String,
500
501 /// Required. The Parameter resource being created
502 pub parameter: std::option::Option<crate::model::Parameter>,
503
504 /// Optional. An optional request ID to identify requests. Specify a unique
505 /// request ID so that if you must retry your request, the server will know to
506 /// ignore the request if it has already been completed. The server will
507 /// guarantee that for at least 60 minutes since the first request.
508 ///
509 /// For example, consider a situation where you make an initial request and the
510 /// request times out. If you make the request again with the same request
511 /// ID, the server can check if original operation with the same request ID
512 /// was received, and if so, will ignore the second request. This prevents
513 /// clients from accidentally creating duplicate commitments.
514 ///
515 /// The request ID must be a valid UUID with the exception that zero UUID is
516 /// not supported (00000000-0000-0000-0000-000000000000).
517 pub request_id: std::string::String,
518
519 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
520}
521
522impl CreateParameterRequest {
523 pub fn new() -> Self {
524 std::default::Default::default()
525 }
526
527 /// Sets the value of [parent][crate::model::CreateParameterRequest::parent].
528 ///
529 /// # Example
530 /// ```ignore,no_run
531 /// # use google_cloud_parametermanager_v1::model::CreateParameterRequest;
532 /// let x = CreateParameterRequest::new().set_parent("example");
533 /// ```
534 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
535 self.parent = v.into();
536 self
537 }
538
539 /// Sets the value of [parameter_id][crate::model::CreateParameterRequest::parameter_id].
540 ///
541 /// # Example
542 /// ```ignore,no_run
543 /// # use google_cloud_parametermanager_v1::model::CreateParameterRequest;
544 /// let x = CreateParameterRequest::new().set_parameter_id("example");
545 /// ```
546 pub fn set_parameter_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
547 self.parameter_id = v.into();
548 self
549 }
550
551 /// Sets the value of [parameter][crate::model::CreateParameterRequest::parameter].
552 ///
553 /// # Example
554 /// ```ignore,no_run
555 /// # use google_cloud_parametermanager_v1::model::CreateParameterRequest;
556 /// use google_cloud_parametermanager_v1::model::Parameter;
557 /// let x = CreateParameterRequest::new().set_parameter(Parameter::default()/* use setters */);
558 /// ```
559 pub fn set_parameter<T>(mut self, v: T) -> Self
560 where
561 T: std::convert::Into<crate::model::Parameter>,
562 {
563 self.parameter = std::option::Option::Some(v.into());
564 self
565 }
566
567 /// Sets or clears the value of [parameter][crate::model::CreateParameterRequest::parameter].
568 ///
569 /// # Example
570 /// ```ignore,no_run
571 /// # use google_cloud_parametermanager_v1::model::CreateParameterRequest;
572 /// use google_cloud_parametermanager_v1::model::Parameter;
573 /// let x = CreateParameterRequest::new().set_or_clear_parameter(Some(Parameter::default()/* use setters */));
574 /// let x = CreateParameterRequest::new().set_or_clear_parameter(None::<Parameter>);
575 /// ```
576 pub fn set_or_clear_parameter<T>(mut self, v: std::option::Option<T>) -> Self
577 where
578 T: std::convert::Into<crate::model::Parameter>,
579 {
580 self.parameter = v.map(|x| x.into());
581 self
582 }
583
584 /// Sets the value of [request_id][crate::model::CreateParameterRequest::request_id].
585 ///
586 /// # Example
587 /// ```ignore,no_run
588 /// # use google_cloud_parametermanager_v1::model::CreateParameterRequest;
589 /// let x = CreateParameterRequest::new().set_request_id("example");
590 /// ```
591 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
592 self.request_id = v.into();
593 self
594 }
595}
596
597impl wkt::message::Message for CreateParameterRequest {
598 fn typename() -> &'static str {
599 "type.googleapis.com/google.cloud.parametermanager.v1.CreateParameterRequest"
600 }
601}
602
603/// Message for updating a Parameter
604#[derive(Clone, Default, PartialEq)]
605#[non_exhaustive]
606pub struct UpdateParameterRequest {
607 /// Optional. Field mask is used to specify the fields to be overwritten in the
608 /// Parameter resource by the update.
609 /// The fields specified in the update_mask are relative to the resource, not
610 /// the full request. A mutable field will be overwritten if it is in the
611 /// mask. If the user does not provide a mask then all mutable fields present
612 /// in the request will be overwritten.
613 pub update_mask: std::option::Option<wkt::FieldMask>,
614
615 /// Required. The Parameter resource being updated
616 pub parameter: std::option::Option<crate::model::Parameter>,
617
618 /// Optional. An optional request ID to identify requests. Specify a unique
619 /// request ID so that if you must retry your request, the server will know to
620 /// ignore the request if it has already been completed. The server will
621 /// guarantee that for at least 60 minutes since the first request.
622 ///
623 /// For example, consider a situation where you make an initial request and the
624 /// request times out. If you make the request again with the same request
625 /// ID, the server can check if original operation with the same request ID
626 /// was received, and if so, will ignore the second request. This prevents
627 /// clients from accidentally creating duplicate commitments.
628 ///
629 /// The request ID must be a valid UUID with the exception that zero UUID is
630 /// not supported (00000000-0000-0000-0000-000000000000).
631 pub request_id: std::string::String,
632
633 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
634}
635
636impl UpdateParameterRequest {
637 pub fn new() -> Self {
638 std::default::Default::default()
639 }
640
641 /// Sets the value of [update_mask][crate::model::UpdateParameterRequest::update_mask].
642 ///
643 /// # Example
644 /// ```ignore,no_run
645 /// # use google_cloud_parametermanager_v1::model::UpdateParameterRequest;
646 /// use wkt::FieldMask;
647 /// let x = UpdateParameterRequest::new().set_update_mask(FieldMask::default()/* use setters */);
648 /// ```
649 pub fn set_update_mask<T>(mut self, v: T) -> Self
650 where
651 T: std::convert::Into<wkt::FieldMask>,
652 {
653 self.update_mask = std::option::Option::Some(v.into());
654 self
655 }
656
657 /// Sets or clears the value of [update_mask][crate::model::UpdateParameterRequest::update_mask].
658 ///
659 /// # Example
660 /// ```ignore,no_run
661 /// # use google_cloud_parametermanager_v1::model::UpdateParameterRequest;
662 /// use wkt::FieldMask;
663 /// let x = UpdateParameterRequest::new().set_or_clear_update_mask(Some(FieldMask::default()/* use setters */));
664 /// let x = UpdateParameterRequest::new().set_or_clear_update_mask(None::<FieldMask>);
665 /// ```
666 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
667 where
668 T: std::convert::Into<wkt::FieldMask>,
669 {
670 self.update_mask = v.map(|x| x.into());
671 self
672 }
673
674 /// Sets the value of [parameter][crate::model::UpdateParameterRequest::parameter].
675 ///
676 /// # Example
677 /// ```ignore,no_run
678 /// # use google_cloud_parametermanager_v1::model::UpdateParameterRequest;
679 /// use google_cloud_parametermanager_v1::model::Parameter;
680 /// let x = UpdateParameterRequest::new().set_parameter(Parameter::default()/* use setters */);
681 /// ```
682 pub fn set_parameter<T>(mut self, v: T) -> Self
683 where
684 T: std::convert::Into<crate::model::Parameter>,
685 {
686 self.parameter = std::option::Option::Some(v.into());
687 self
688 }
689
690 /// Sets or clears the value of [parameter][crate::model::UpdateParameterRequest::parameter].
691 ///
692 /// # Example
693 /// ```ignore,no_run
694 /// # use google_cloud_parametermanager_v1::model::UpdateParameterRequest;
695 /// use google_cloud_parametermanager_v1::model::Parameter;
696 /// let x = UpdateParameterRequest::new().set_or_clear_parameter(Some(Parameter::default()/* use setters */));
697 /// let x = UpdateParameterRequest::new().set_or_clear_parameter(None::<Parameter>);
698 /// ```
699 pub fn set_or_clear_parameter<T>(mut self, v: std::option::Option<T>) -> Self
700 where
701 T: std::convert::Into<crate::model::Parameter>,
702 {
703 self.parameter = v.map(|x| x.into());
704 self
705 }
706
707 /// Sets the value of [request_id][crate::model::UpdateParameterRequest::request_id].
708 ///
709 /// # Example
710 /// ```ignore,no_run
711 /// # use google_cloud_parametermanager_v1::model::UpdateParameterRequest;
712 /// let x = UpdateParameterRequest::new().set_request_id("example");
713 /// ```
714 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
715 self.request_id = v.into();
716 self
717 }
718}
719
720impl wkt::message::Message for UpdateParameterRequest {
721 fn typename() -> &'static str {
722 "type.googleapis.com/google.cloud.parametermanager.v1.UpdateParameterRequest"
723 }
724}
725
726/// Message for deleting a Parameter
727#[derive(Clone, Default, PartialEq)]
728#[non_exhaustive]
729pub struct DeleteParameterRequest {
730 /// Required. Name of the resource in the format
731 /// `projects/*/locations/*/parameters/*`.
732 pub name: std::string::String,
733
734 /// Optional. An optional request ID to identify requests. Specify a unique
735 /// request ID so that if you must retry your request, the server will know to
736 /// ignore the request if it has already been completed. The server will
737 /// guarantee that for at least 60 minutes after the first request.
738 ///
739 /// For example, consider a situation where you make an initial request and the
740 /// request times out. If you make the request again with the same request
741 /// ID, the server can check if original operation with the same request ID
742 /// was received, and if so, will ignore the second request. This prevents
743 /// clients from accidentally creating duplicate commitments.
744 ///
745 /// The request ID must be a valid UUID with the exception that zero UUID is
746 /// not supported (00000000-0000-0000-0000-000000000000).
747 pub request_id: std::string::String,
748
749 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
750}
751
752impl DeleteParameterRequest {
753 pub fn new() -> Self {
754 std::default::Default::default()
755 }
756
757 /// Sets the value of [name][crate::model::DeleteParameterRequest::name].
758 ///
759 /// # Example
760 /// ```ignore,no_run
761 /// # use google_cloud_parametermanager_v1::model::DeleteParameterRequest;
762 /// let x = DeleteParameterRequest::new().set_name("example");
763 /// ```
764 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
765 self.name = v.into();
766 self
767 }
768
769 /// Sets the value of [request_id][crate::model::DeleteParameterRequest::request_id].
770 ///
771 /// # Example
772 /// ```ignore,no_run
773 /// # use google_cloud_parametermanager_v1::model::DeleteParameterRequest;
774 /// let x = DeleteParameterRequest::new().set_request_id("example");
775 /// ```
776 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
777 self.request_id = v.into();
778 self
779 }
780}
781
782impl wkt::message::Message for DeleteParameterRequest {
783 fn typename() -> &'static str {
784 "type.googleapis.com/google.cloud.parametermanager.v1.DeleteParameterRequest"
785 }
786}
787
788/// Message describing ParameterVersion resource
789#[derive(Clone, Default, PartialEq)]
790#[non_exhaustive]
791pub struct ParameterVersion {
792 /// Identifier. [Output only] The resource name of the ParameterVersion in the
793 /// format `projects/*/locations/*/parameters/*/versions/*`.
794 pub name: std::string::String,
795
796 /// Output only. [Output only] Create time stamp
797 pub create_time: std::option::Option<wkt::Timestamp>,
798
799 /// Output only. [Output only] Update time stamp
800 pub update_time: std::option::Option<wkt::Timestamp>,
801
802 /// Optional. Disabled boolean to determine if a ParameterVersion acts as a
803 /// metadata only resource (payload is never returned if disabled is true). If
804 /// true any calls will always default to BASIC view even if the user
805 /// explicitly passes FULL view as part of the request. A render call on a
806 /// disabled resource fails with an error. Default value is False.
807 pub disabled: bool,
808
809 /// Required. Immutable. Payload content of a ParameterVersion resource. This
810 /// is only returned when the request provides the View value of FULL (default
811 /// for GET request).
812 pub payload: std::option::Option<crate::model::ParameterVersionPayload>,
813
814 /// Optional. Output only. [Output only] The resource name of the KMS key
815 /// version used to encrypt the ParameterVersion payload. This field is
816 /// populated only if the Parameter resource has customer managed encryption
817 /// key (CMEK) configured.
818 pub kms_key_version: std::option::Option<std::string::String>,
819
820 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
821}
822
823impl ParameterVersion {
824 pub fn new() -> Self {
825 std::default::Default::default()
826 }
827
828 /// Sets the value of [name][crate::model::ParameterVersion::name].
829 ///
830 /// # Example
831 /// ```ignore,no_run
832 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
833 /// let x = ParameterVersion::new().set_name("example");
834 /// ```
835 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
836 self.name = v.into();
837 self
838 }
839
840 /// Sets the value of [create_time][crate::model::ParameterVersion::create_time].
841 ///
842 /// # Example
843 /// ```ignore,no_run
844 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
845 /// use wkt::Timestamp;
846 /// let x = ParameterVersion::new().set_create_time(Timestamp::default()/* use setters */);
847 /// ```
848 pub fn set_create_time<T>(mut self, v: T) -> Self
849 where
850 T: std::convert::Into<wkt::Timestamp>,
851 {
852 self.create_time = std::option::Option::Some(v.into());
853 self
854 }
855
856 /// Sets or clears the value of [create_time][crate::model::ParameterVersion::create_time].
857 ///
858 /// # Example
859 /// ```ignore,no_run
860 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
861 /// use wkt::Timestamp;
862 /// let x = ParameterVersion::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
863 /// let x = ParameterVersion::new().set_or_clear_create_time(None::<Timestamp>);
864 /// ```
865 pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
866 where
867 T: std::convert::Into<wkt::Timestamp>,
868 {
869 self.create_time = v.map(|x| x.into());
870 self
871 }
872
873 /// Sets the value of [update_time][crate::model::ParameterVersion::update_time].
874 ///
875 /// # Example
876 /// ```ignore,no_run
877 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
878 /// use wkt::Timestamp;
879 /// let x = ParameterVersion::new().set_update_time(Timestamp::default()/* use setters */);
880 /// ```
881 pub fn set_update_time<T>(mut self, v: T) -> Self
882 where
883 T: std::convert::Into<wkt::Timestamp>,
884 {
885 self.update_time = std::option::Option::Some(v.into());
886 self
887 }
888
889 /// Sets or clears the value of [update_time][crate::model::ParameterVersion::update_time].
890 ///
891 /// # Example
892 /// ```ignore,no_run
893 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
894 /// use wkt::Timestamp;
895 /// let x = ParameterVersion::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
896 /// let x = ParameterVersion::new().set_or_clear_update_time(None::<Timestamp>);
897 /// ```
898 pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
899 where
900 T: std::convert::Into<wkt::Timestamp>,
901 {
902 self.update_time = v.map(|x| x.into());
903 self
904 }
905
906 /// Sets the value of [disabled][crate::model::ParameterVersion::disabled].
907 ///
908 /// # Example
909 /// ```ignore,no_run
910 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
911 /// let x = ParameterVersion::new().set_disabled(true);
912 /// ```
913 pub fn set_disabled<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
914 self.disabled = v.into();
915 self
916 }
917
918 /// Sets the value of [payload][crate::model::ParameterVersion::payload].
919 ///
920 /// # Example
921 /// ```ignore,no_run
922 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
923 /// use google_cloud_parametermanager_v1::model::ParameterVersionPayload;
924 /// let x = ParameterVersion::new().set_payload(ParameterVersionPayload::default()/* use setters */);
925 /// ```
926 pub fn set_payload<T>(mut self, v: T) -> Self
927 where
928 T: std::convert::Into<crate::model::ParameterVersionPayload>,
929 {
930 self.payload = std::option::Option::Some(v.into());
931 self
932 }
933
934 /// Sets or clears the value of [payload][crate::model::ParameterVersion::payload].
935 ///
936 /// # Example
937 /// ```ignore,no_run
938 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
939 /// use google_cloud_parametermanager_v1::model::ParameterVersionPayload;
940 /// let x = ParameterVersion::new().set_or_clear_payload(Some(ParameterVersionPayload::default()/* use setters */));
941 /// let x = ParameterVersion::new().set_or_clear_payload(None::<ParameterVersionPayload>);
942 /// ```
943 pub fn set_or_clear_payload<T>(mut self, v: std::option::Option<T>) -> Self
944 where
945 T: std::convert::Into<crate::model::ParameterVersionPayload>,
946 {
947 self.payload = v.map(|x| x.into());
948 self
949 }
950
951 /// Sets the value of [kms_key_version][crate::model::ParameterVersion::kms_key_version].
952 ///
953 /// # Example
954 /// ```ignore,no_run
955 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
956 /// let x = ParameterVersion::new().set_kms_key_version("example");
957 /// ```
958 pub fn set_kms_key_version<T>(mut self, v: T) -> Self
959 where
960 T: std::convert::Into<std::string::String>,
961 {
962 self.kms_key_version = std::option::Option::Some(v.into());
963 self
964 }
965
966 /// Sets or clears the value of [kms_key_version][crate::model::ParameterVersion::kms_key_version].
967 ///
968 /// # Example
969 /// ```ignore,no_run
970 /// # use google_cloud_parametermanager_v1::model::ParameterVersion;
971 /// let x = ParameterVersion::new().set_or_clear_kms_key_version(Some("example"));
972 /// let x = ParameterVersion::new().set_or_clear_kms_key_version(None::<String>);
973 /// ```
974 pub fn set_or_clear_kms_key_version<T>(mut self, v: std::option::Option<T>) -> Self
975 where
976 T: std::convert::Into<std::string::String>,
977 {
978 self.kms_key_version = v.map(|x| x.into());
979 self
980 }
981}
982
983impl wkt::message::Message for ParameterVersion {
984 fn typename() -> &'static str {
985 "type.googleapis.com/google.cloud.parametermanager.v1.ParameterVersion"
986 }
987}
988
989/// Message for storing a ParameterVersion resource's payload data
990#[derive(Clone, Default, PartialEq)]
991#[non_exhaustive]
992pub struct ParameterVersionPayload {
993 /// Required. bytes data for storing payload.
994 pub data: ::bytes::Bytes,
995
996 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
997}
998
999impl ParameterVersionPayload {
1000 pub fn new() -> Self {
1001 std::default::Default::default()
1002 }
1003
1004 /// Sets the value of [data][crate::model::ParameterVersionPayload::data].
1005 ///
1006 /// # Example
1007 /// ```ignore,no_run
1008 /// # use google_cloud_parametermanager_v1::model::ParameterVersionPayload;
1009 /// let x = ParameterVersionPayload::new().set_data(bytes::Bytes::from_static(b"example"));
1010 /// ```
1011 pub fn set_data<T: std::convert::Into<::bytes::Bytes>>(mut self, v: T) -> Self {
1012 self.data = v.into();
1013 self
1014 }
1015}
1016
1017impl wkt::message::Message for ParameterVersionPayload {
1018 fn typename() -> &'static str {
1019 "type.googleapis.com/google.cloud.parametermanager.v1.ParameterVersionPayload"
1020 }
1021}
1022
1023/// Message for requesting list of ParameterVersions
1024#[derive(Clone, Default, PartialEq)]
1025#[non_exhaustive]
1026pub struct ListParameterVersionsRequest {
1027 /// Required. Parent value for ListParameterVersionsRequest in the format
1028 /// `projects/*/locations/*/parameters/*`.
1029 pub parent: std::string::String,
1030
1031 /// Optional. Requested page size. Server may return fewer items than
1032 /// requested. If unspecified, server will pick an appropriate default.
1033 pub page_size: i32,
1034
1035 /// Optional. A token identifying a page of results the server should return.
1036 pub page_token: std::string::String,
1037
1038 /// Optional. Filtering results
1039 pub filter: std::string::String,
1040
1041 /// Optional. Hint for how to order the results
1042 pub order_by: std::string::String,
1043
1044 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1045}
1046
1047impl ListParameterVersionsRequest {
1048 pub fn new() -> Self {
1049 std::default::Default::default()
1050 }
1051
1052 /// Sets the value of [parent][crate::model::ListParameterVersionsRequest::parent].
1053 ///
1054 /// # Example
1055 /// ```ignore,no_run
1056 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsRequest;
1057 /// let x = ListParameterVersionsRequest::new().set_parent("example");
1058 /// ```
1059 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1060 self.parent = v.into();
1061 self
1062 }
1063
1064 /// Sets the value of [page_size][crate::model::ListParameterVersionsRequest::page_size].
1065 ///
1066 /// # Example
1067 /// ```ignore,no_run
1068 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsRequest;
1069 /// let x = ListParameterVersionsRequest::new().set_page_size(42);
1070 /// ```
1071 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
1072 self.page_size = v.into();
1073 self
1074 }
1075
1076 /// Sets the value of [page_token][crate::model::ListParameterVersionsRequest::page_token].
1077 ///
1078 /// # Example
1079 /// ```ignore,no_run
1080 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsRequest;
1081 /// let x = ListParameterVersionsRequest::new().set_page_token("example");
1082 /// ```
1083 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1084 self.page_token = v.into();
1085 self
1086 }
1087
1088 /// Sets the value of [filter][crate::model::ListParameterVersionsRequest::filter].
1089 ///
1090 /// # Example
1091 /// ```ignore,no_run
1092 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsRequest;
1093 /// let x = ListParameterVersionsRequest::new().set_filter("example");
1094 /// ```
1095 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1096 self.filter = v.into();
1097 self
1098 }
1099
1100 /// Sets the value of [order_by][crate::model::ListParameterVersionsRequest::order_by].
1101 ///
1102 /// # Example
1103 /// ```ignore,no_run
1104 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsRequest;
1105 /// let x = ListParameterVersionsRequest::new().set_order_by("example");
1106 /// ```
1107 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1108 self.order_by = v.into();
1109 self
1110 }
1111}
1112
1113impl wkt::message::Message for ListParameterVersionsRequest {
1114 fn typename() -> &'static str {
1115 "type.googleapis.com/google.cloud.parametermanager.v1.ListParameterVersionsRequest"
1116 }
1117}
1118
1119/// Message for response to listing ParameterVersions
1120#[derive(Clone, Default, PartialEq)]
1121#[non_exhaustive]
1122pub struct ListParameterVersionsResponse {
1123 /// The list of ParameterVersions
1124 pub parameter_versions: std::vec::Vec<crate::model::ParameterVersion>,
1125
1126 /// A token identifying a page of results the server should return.
1127 pub next_page_token: std::string::String,
1128
1129 /// Unordered list. Locations that could not be reached.
1130 pub unreachable: std::vec::Vec<std::string::String>,
1131
1132 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1133}
1134
1135impl ListParameterVersionsResponse {
1136 pub fn new() -> Self {
1137 std::default::Default::default()
1138 }
1139
1140 /// Sets the value of [parameter_versions][crate::model::ListParameterVersionsResponse::parameter_versions].
1141 ///
1142 /// # Example
1143 /// ```ignore,no_run
1144 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsResponse;
1145 /// use google_cloud_parametermanager_v1::model::ParameterVersion;
1146 /// let x = ListParameterVersionsResponse::new()
1147 /// .set_parameter_versions([
1148 /// ParameterVersion::default()/* use setters */,
1149 /// ParameterVersion::default()/* use (different) setters */,
1150 /// ]);
1151 /// ```
1152 pub fn set_parameter_versions<T, V>(mut self, v: T) -> Self
1153 where
1154 T: std::iter::IntoIterator<Item = V>,
1155 V: std::convert::Into<crate::model::ParameterVersion>,
1156 {
1157 use std::iter::Iterator;
1158 self.parameter_versions = v.into_iter().map(|i| i.into()).collect();
1159 self
1160 }
1161
1162 /// Sets the value of [next_page_token][crate::model::ListParameterVersionsResponse::next_page_token].
1163 ///
1164 /// # Example
1165 /// ```ignore,no_run
1166 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsResponse;
1167 /// let x = ListParameterVersionsResponse::new().set_next_page_token("example");
1168 /// ```
1169 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1170 self.next_page_token = v.into();
1171 self
1172 }
1173
1174 /// Sets the value of [unreachable][crate::model::ListParameterVersionsResponse::unreachable].
1175 ///
1176 /// # Example
1177 /// ```ignore,no_run
1178 /// # use google_cloud_parametermanager_v1::model::ListParameterVersionsResponse;
1179 /// let x = ListParameterVersionsResponse::new().set_unreachable(["a", "b", "c"]);
1180 /// ```
1181 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
1182 where
1183 T: std::iter::IntoIterator<Item = V>,
1184 V: std::convert::Into<std::string::String>,
1185 {
1186 use std::iter::Iterator;
1187 self.unreachable = v.into_iter().map(|i| i.into()).collect();
1188 self
1189 }
1190}
1191
1192impl wkt::message::Message for ListParameterVersionsResponse {
1193 fn typename() -> &'static str {
1194 "type.googleapis.com/google.cloud.parametermanager.v1.ListParameterVersionsResponse"
1195 }
1196}
1197
1198#[doc(hidden)]
1199impl gax::paginator::internal::PageableResponse for ListParameterVersionsResponse {
1200 type PageItem = crate::model::ParameterVersion;
1201
1202 fn items(self) -> std::vec::Vec<Self::PageItem> {
1203 self.parameter_versions
1204 }
1205
1206 fn next_page_token(&self) -> std::string::String {
1207 use std::clone::Clone;
1208 self.next_page_token.clone()
1209 }
1210}
1211
1212/// Message for getting a ParameterVersion
1213#[derive(Clone, Default, PartialEq)]
1214#[non_exhaustive]
1215pub struct GetParameterVersionRequest {
1216 /// Required. Name of the resource in the format
1217 /// `projects/*/locations/*/parameters/*/versions/*`.
1218 pub name: std::string::String,
1219
1220 /// Optional. View of the ParameterVersion.
1221 /// In the default FULL view, all metadata & payload associated with the
1222 /// ParameterVersion will be returned.
1223 pub view: crate::model::View,
1224
1225 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1226}
1227
1228impl GetParameterVersionRequest {
1229 pub fn new() -> Self {
1230 std::default::Default::default()
1231 }
1232
1233 /// Sets the value of [name][crate::model::GetParameterVersionRequest::name].
1234 ///
1235 /// # Example
1236 /// ```ignore,no_run
1237 /// # use google_cloud_parametermanager_v1::model::GetParameterVersionRequest;
1238 /// let x = GetParameterVersionRequest::new().set_name("example");
1239 /// ```
1240 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1241 self.name = v.into();
1242 self
1243 }
1244
1245 /// Sets the value of [view][crate::model::GetParameterVersionRequest::view].
1246 ///
1247 /// # Example
1248 /// ```ignore,no_run
1249 /// # use google_cloud_parametermanager_v1::model::GetParameterVersionRequest;
1250 /// use google_cloud_parametermanager_v1::model::View;
1251 /// let x0 = GetParameterVersionRequest::new().set_view(View::Basic);
1252 /// let x1 = GetParameterVersionRequest::new().set_view(View::Full);
1253 /// ```
1254 pub fn set_view<T: std::convert::Into<crate::model::View>>(mut self, v: T) -> Self {
1255 self.view = v.into();
1256 self
1257 }
1258}
1259
1260impl wkt::message::Message for GetParameterVersionRequest {
1261 fn typename() -> &'static str {
1262 "type.googleapis.com/google.cloud.parametermanager.v1.GetParameterVersionRequest"
1263 }
1264}
1265
1266/// Message for getting a ParameterVersionRender
1267#[derive(Clone, Default, PartialEq)]
1268#[non_exhaustive]
1269pub struct RenderParameterVersionRequest {
1270 /// Required. Name of the resource
1271 pub name: std::string::String,
1272
1273 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1274}
1275
1276impl RenderParameterVersionRequest {
1277 pub fn new() -> Self {
1278 std::default::Default::default()
1279 }
1280
1281 /// Sets the value of [name][crate::model::RenderParameterVersionRequest::name].
1282 ///
1283 /// # Example
1284 /// ```ignore,no_run
1285 /// # use google_cloud_parametermanager_v1::model::RenderParameterVersionRequest;
1286 /// let x = RenderParameterVersionRequest::new().set_name("example");
1287 /// ```
1288 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1289 self.name = v.into();
1290 self
1291 }
1292}
1293
1294impl wkt::message::Message for RenderParameterVersionRequest {
1295 fn typename() -> &'static str {
1296 "type.googleapis.com/google.cloud.parametermanager.v1.RenderParameterVersionRequest"
1297 }
1298}
1299
1300/// Message describing RenderParameterVersionResponse resource
1301#[derive(Clone, Default, PartialEq)]
1302#[non_exhaustive]
1303pub struct RenderParameterVersionResponse {
1304 /// Output only. Resource identifier of a ParameterVersion in the format
1305 /// `projects/*/locations/*/parameters/*/versions/*`.
1306 pub parameter_version: std::string::String,
1307
1308 /// Payload content of a ParameterVersion resource.
1309 pub payload: std::option::Option<crate::model::ParameterVersionPayload>,
1310
1311 /// Output only. Server generated rendered version of the user provided payload
1312 /// data (ParameterVersionPayload) which has substitutions of all (if any)
1313 /// references to a SecretManager SecretVersion resources. This substitution
1314 /// only works for a Parameter which is in JSON or YAML format.
1315 pub rendered_payload: ::bytes::Bytes,
1316
1317 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1318}
1319
1320impl RenderParameterVersionResponse {
1321 pub fn new() -> Self {
1322 std::default::Default::default()
1323 }
1324
1325 /// Sets the value of [parameter_version][crate::model::RenderParameterVersionResponse::parameter_version].
1326 ///
1327 /// # Example
1328 /// ```ignore,no_run
1329 /// # use google_cloud_parametermanager_v1::model::RenderParameterVersionResponse;
1330 /// let x = RenderParameterVersionResponse::new().set_parameter_version("example");
1331 /// ```
1332 pub fn set_parameter_version<T: std::convert::Into<std::string::String>>(
1333 mut self,
1334 v: T,
1335 ) -> Self {
1336 self.parameter_version = v.into();
1337 self
1338 }
1339
1340 /// Sets the value of [payload][crate::model::RenderParameterVersionResponse::payload].
1341 ///
1342 /// # Example
1343 /// ```ignore,no_run
1344 /// # use google_cloud_parametermanager_v1::model::RenderParameterVersionResponse;
1345 /// use google_cloud_parametermanager_v1::model::ParameterVersionPayload;
1346 /// let x = RenderParameterVersionResponse::new().set_payload(ParameterVersionPayload::default()/* use setters */);
1347 /// ```
1348 pub fn set_payload<T>(mut self, v: T) -> Self
1349 where
1350 T: std::convert::Into<crate::model::ParameterVersionPayload>,
1351 {
1352 self.payload = std::option::Option::Some(v.into());
1353 self
1354 }
1355
1356 /// Sets or clears the value of [payload][crate::model::RenderParameterVersionResponse::payload].
1357 ///
1358 /// # Example
1359 /// ```ignore,no_run
1360 /// # use google_cloud_parametermanager_v1::model::RenderParameterVersionResponse;
1361 /// use google_cloud_parametermanager_v1::model::ParameterVersionPayload;
1362 /// let x = RenderParameterVersionResponse::new().set_or_clear_payload(Some(ParameterVersionPayload::default()/* use setters */));
1363 /// let x = RenderParameterVersionResponse::new().set_or_clear_payload(None::<ParameterVersionPayload>);
1364 /// ```
1365 pub fn set_or_clear_payload<T>(mut self, v: std::option::Option<T>) -> Self
1366 where
1367 T: std::convert::Into<crate::model::ParameterVersionPayload>,
1368 {
1369 self.payload = v.map(|x| x.into());
1370 self
1371 }
1372
1373 /// Sets the value of [rendered_payload][crate::model::RenderParameterVersionResponse::rendered_payload].
1374 ///
1375 /// # Example
1376 /// ```ignore,no_run
1377 /// # use google_cloud_parametermanager_v1::model::RenderParameterVersionResponse;
1378 /// let x = RenderParameterVersionResponse::new().set_rendered_payload(bytes::Bytes::from_static(b"example"));
1379 /// ```
1380 pub fn set_rendered_payload<T: std::convert::Into<::bytes::Bytes>>(mut self, v: T) -> Self {
1381 self.rendered_payload = v.into();
1382 self
1383 }
1384}
1385
1386impl wkt::message::Message for RenderParameterVersionResponse {
1387 fn typename() -> &'static str {
1388 "type.googleapis.com/google.cloud.parametermanager.v1.RenderParameterVersionResponse"
1389 }
1390}
1391
1392/// Message for creating a ParameterVersion
1393#[derive(Clone, Default, PartialEq)]
1394#[non_exhaustive]
1395pub struct CreateParameterVersionRequest {
1396 /// Required. Value for parent in the format
1397 /// `projects/*/locations/*/parameters/*`.
1398 pub parent: std::string::String,
1399
1400 /// Required. Id of the ParameterVersion resource
1401 pub parameter_version_id: std::string::String,
1402
1403 /// Required. The ParameterVersion resource being created
1404 pub parameter_version: std::option::Option<crate::model::ParameterVersion>,
1405
1406 /// Optional. An optional request ID to identify requests. Specify a unique
1407 /// request ID so that if you must retry your request, the server will know to
1408 /// ignore the request if it has already been completed. The server will
1409 /// guarantee that for at least 60 minutes since the first request.
1410 ///
1411 /// For example, consider a situation where you make an initial request and the
1412 /// request times out. If you make the request again with the same request
1413 /// ID, the server can check if original operation with the same request ID
1414 /// was received, and if so, will ignore the second request. This prevents
1415 /// clients from accidentally creating duplicate commitments.
1416 ///
1417 /// The request ID must be a valid UUID with the exception that zero UUID is
1418 /// not supported (00000000-0000-0000-0000-000000000000).
1419 pub request_id: std::string::String,
1420
1421 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1422}
1423
1424impl CreateParameterVersionRequest {
1425 pub fn new() -> Self {
1426 std::default::Default::default()
1427 }
1428
1429 /// Sets the value of [parent][crate::model::CreateParameterVersionRequest::parent].
1430 ///
1431 /// # Example
1432 /// ```ignore,no_run
1433 /// # use google_cloud_parametermanager_v1::model::CreateParameterVersionRequest;
1434 /// let x = CreateParameterVersionRequest::new().set_parent("example");
1435 /// ```
1436 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1437 self.parent = v.into();
1438 self
1439 }
1440
1441 /// Sets the value of [parameter_version_id][crate::model::CreateParameterVersionRequest::parameter_version_id].
1442 ///
1443 /// # Example
1444 /// ```ignore,no_run
1445 /// # use google_cloud_parametermanager_v1::model::CreateParameterVersionRequest;
1446 /// let x = CreateParameterVersionRequest::new().set_parameter_version_id("example");
1447 /// ```
1448 pub fn set_parameter_version_id<T: std::convert::Into<std::string::String>>(
1449 mut self,
1450 v: T,
1451 ) -> Self {
1452 self.parameter_version_id = v.into();
1453 self
1454 }
1455
1456 /// Sets the value of [parameter_version][crate::model::CreateParameterVersionRequest::parameter_version].
1457 ///
1458 /// # Example
1459 /// ```ignore,no_run
1460 /// # use google_cloud_parametermanager_v1::model::CreateParameterVersionRequest;
1461 /// use google_cloud_parametermanager_v1::model::ParameterVersion;
1462 /// let x = CreateParameterVersionRequest::new().set_parameter_version(ParameterVersion::default()/* use setters */);
1463 /// ```
1464 pub fn set_parameter_version<T>(mut self, v: T) -> Self
1465 where
1466 T: std::convert::Into<crate::model::ParameterVersion>,
1467 {
1468 self.parameter_version = std::option::Option::Some(v.into());
1469 self
1470 }
1471
1472 /// Sets or clears the value of [parameter_version][crate::model::CreateParameterVersionRequest::parameter_version].
1473 ///
1474 /// # Example
1475 /// ```ignore,no_run
1476 /// # use google_cloud_parametermanager_v1::model::CreateParameterVersionRequest;
1477 /// use google_cloud_parametermanager_v1::model::ParameterVersion;
1478 /// let x = CreateParameterVersionRequest::new().set_or_clear_parameter_version(Some(ParameterVersion::default()/* use setters */));
1479 /// let x = CreateParameterVersionRequest::new().set_or_clear_parameter_version(None::<ParameterVersion>);
1480 /// ```
1481 pub fn set_or_clear_parameter_version<T>(mut self, v: std::option::Option<T>) -> Self
1482 where
1483 T: std::convert::Into<crate::model::ParameterVersion>,
1484 {
1485 self.parameter_version = v.map(|x| x.into());
1486 self
1487 }
1488
1489 /// Sets the value of [request_id][crate::model::CreateParameterVersionRequest::request_id].
1490 ///
1491 /// # Example
1492 /// ```ignore,no_run
1493 /// # use google_cloud_parametermanager_v1::model::CreateParameterVersionRequest;
1494 /// let x = CreateParameterVersionRequest::new().set_request_id("example");
1495 /// ```
1496 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1497 self.request_id = v.into();
1498 self
1499 }
1500}
1501
1502impl wkt::message::Message for CreateParameterVersionRequest {
1503 fn typename() -> &'static str {
1504 "type.googleapis.com/google.cloud.parametermanager.v1.CreateParameterVersionRequest"
1505 }
1506}
1507
1508/// Message for updating a ParameterVersion
1509#[derive(Clone, Default, PartialEq)]
1510#[non_exhaustive]
1511pub struct UpdateParameterVersionRequest {
1512 /// Optional. Field mask is used to specify the fields to be overwritten in the
1513 /// ParameterVersion resource by the update.
1514 /// The fields specified in the update_mask are relative to the resource, not
1515 /// the full request. A mutable field will be overwritten if it is in the
1516 /// mask. If the user does not provide a mask then all mutable fields present
1517 /// in the request will be overwritten.
1518 pub update_mask: std::option::Option<wkt::FieldMask>,
1519
1520 /// Required. The ParameterVersion resource being updated
1521 pub parameter_version: std::option::Option<crate::model::ParameterVersion>,
1522
1523 /// Optional. An optional request ID to identify requests. Specify a unique
1524 /// request ID so that if you must retry your request, the server will know to
1525 /// ignore the request if it has already been completed. The server will
1526 /// guarantee that for at least 60 minutes since the first request.
1527 ///
1528 /// For example, consider a situation where you make an initial request and the
1529 /// request times out. If you make the request again with the same request
1530 /// ID, the server can check if original operation with the same request ID
1531 /// was received, and if so, will ignore the second request. This prevents
1532 /// clients from accidentally creating duplicate commitments.
1533 ///
1534 /// The request ID must be a valid UUID with the exception that zero UUID is
1535 /// not supported (00000000-0000-0000-0000-000000000000).
1536 pub request_id: std::string::String,
1537
1538 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1539}
1540
1541impl UpdateParameterVersionRequest {
1542 pub fn new() -> Self {
1543 std::default::Default::default()
1544 }
1545
1546 /// Sets the value of [update_mask][crate::model::UpdateParameterVersionRequest::update_mask].
1547 ///
1548 /// # Example
1549 /// ```ignore,no_run
1550 /// # use google_cloud_parametermanager_v1::model::UpdateParameterVersionRequest;
1551 /// use wkt::FieldMask;
1552 /// let x = UpdateParameterVersionRequest::new().set_update_mask(FieldMask::default()/* use setters */);
1553 /// ```
1554 pub fn set_update_mask<T>(mut self, v: T) -> Self
1555 where
1556 T: std::convert::Into<wkt::FieldMask>,
1557 {
1558 self.update_mask = std::option::Option::Some(v.into());
1559 self
1560 }
1561
1562 /// Sets or clears the value of [update_mask][crate::model::UpdateParameterVersionRequest::update_mask].
1563 ///
1564 /// # Example
1565 /// ```ignore,no_run
1566 /// # use google_cloud_parametermanager_v1::model::UpdateParameterVersionRequest;
1567 /// use wkt::FieldMask;
1568 /// let x = UpdateParameterVersionRequest::new().set_or_clear_update_mask(Some(FieldMask::default()/* use setters */));
1569 /// let x = UpdateParameterVersionRequest::new().set_or_clear_update_mask(None::<FieldMask>);
1570 /// ```
1571 pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
1572 where
1573 T: std::convert::Into<wkt::FieldMask>,
1574 {
1575 self.update_mask = v.map(|x| x.into());
1576 self
1577 }
1578
1579 /// Sets the value of [parameter_version][crate::model::UpdateParameterVersionRequest::parameter_version].
1580 ///
1581 /// # Example
1582 /// ```ignore,no_run
1583 /// # use google_cloud_parametermanager_v1::model::UpdateParameterVersionRequest;
1584 /// use google_cloud_parametermanager_v1::model::ParameterVersion;
1585 /// let x = UpdateParameterVersionRequest::new().set_parameter_version(ParameterVersion::default()/* use setters */);
1586 /// ```
1587 pub fn set_parameter_version<T>(mut self, v: T) -> Self
1588 where
1589 T: std::convert::Into<crate::model::ParameterVersion>,
1590 {
1591 self.parameter_version = std::option::Option::Some(v.into());
1592 self
1593 }
1594
1595 /// Sets or clears the value of [parameter_version][crate::model::UpdateParameterVersionRequest::parameter_version].
1596 ///
1597 /// # Example
1598 /// ```ignore,no_run
1599 /// # use google_cloud_parametermanager_v1::model::UpdateParameterVersionRequest;
1600 /// use google_cloud_parametermanager_v1::model::ParameterVersion;
1601 /// let x = UpdateParameterVersionRequest::new().set_or_clear_parameter_version(Some(ParameterVersion::default()/* use setters */));
1602 /// let x = UpdateParameterVersionRequest::new().set_or_clear_parameter_version(None::<ParameterVersion>);
1603 /// ```
1604 pub fn set_or_clear_parameter_version<T>(mut self, v: std::option::Option<T>) -> Self
1605 where
1606 T: std::convert::Into<crate::model::ParameterVersion>,
1607 {
1608 self.parameter_version = v.map(|x| x.into());
1609 self
1610 }
1611
1612 /// Sets the value of [request_id][crate::model::UpdateParameterVersionRequest::request_id].
1613 ///
1614 /// # Example
1615 /// ```ignore,no_run
1616 /// # use google_cloud_parametermanager_v1::model::UpdateParameterVersionRequest;
1617 /// let x = UpdateParameterVersionRequest::new().set_request_id("example");
1618 /// ```
1619 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1620 self.request_id = v.into();
1621 self
1622 }
1623}
1624
1625impl wkt::message::Message for UpdateParameterVersionRequest {
1626 fn typename() -> &'static str {
1627 "type.googleapis.com/google.cloud.parametermanager.v1.UpdateParameterVersionRequest"
1628 }
1629}
1630
1631/// Message for deleting a ParameterVersion
1632#[derive(Clone, Default, PartialEq)]
1633#[non_exhaustive]
1634pub struct DeleteParameterVersionRequest {
1635 /// Required. Name of the resource in the format
1636 /// `projects/*/locations/*/parameters/*/versions/*`.
1637 pub name: std::string::String,
1638
1639 /// Optional. An optional request ID to identify requests. Specify a unique
1640 /// request ID so that if you must retry your request, the server will know to
1641 /// ignore the request if it has already been completed. The server will
1642 /// guarantee that for at least 60 minutes after the first request.
1643 ///
1644 /// For example, consider a situation where you make an initial request and the
1645 /// request times out. If you make the request again with the same request
1646 /// ID, the server can check if original operation with the same request ID
1647 /// was received, and if so, will ignore the second request. This prevents
1648 /// clients from accidentally creating duplicate commitments.
1649 ///
1650 /// The request ID must be a valid UUID with the exception that zero UUID is
1651 /// not supported (00000000-0000-0000-0000-000000000000).
1652 pub request_id: std::string::String,
1653
1654 pub(crate) _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1655}
1656
1657impl DeleteParameterVersionRequest {
1658 pub fn new() -> Self {
1659 std::default::Default::default()
1660 }
1661
1662 /// Sets the value of [name][crate::model::DeleteParameterVersionRequest::name].
1663 ///
1664 /// # Example
1665 /// ```ignore,no_run
1666 /// # use google_cloud_parametermanager_v1::model::DeleteParameterVersionRequest;
1667 /// let x = DeleteParameterVersionRequest::new().set_name("example");
1668 /// ```
1669 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1670 self.name = v.into();
1671 self
1672 }
1673
1674 /// Sets the value of [request_id][crate::model::DeleteParameterVersionRequest::request_id].
1675 ///
1676 /// # Example
1677 /// ```ignore,no_run
1678 /// # use google_cloud_parametermanager_v1::model::DeleteParameterVersionRequest;
1679 /// let x = DeleteParameterVersionRequest::new().set_request_id("example");
1680 /// ```
1681 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1682 self.request_id = v.into();
1683 self
1684 }
1685}
1686
1687impl wkt::message::Message for DeleteParameterVersionRequest {
1688 fn typename() -> &'static str {
1689 "type.googleapis.com/google.cloud.parametermanager.v1.DeleteParameterVersionRequest"
1690 }
1691}
1692
1693/// Option to specify the format of a Parameter resource (UNFORMATTED / YAML /
1694/// JSON). This option is user specified at the time of creation of the resource
1695/// and is immutable.
1696///
1697/// # Working with unknown values
1698///
1699/// This enum is defined as `#[non_exhaustive]` because Google Cloud may add
1700/// additional enum variants at any time. Adding new variants is not considered
1701/// a breaking change. Applications should write their code in anticipation of:
1702///
1703/// - New values appearing in future releases of the client library, **and**
1704/// - New values received dynamically, without application changes.
1705///
1706/// Please consult the [Working with enums] section in the user guide for some
1707/// guidelines.
1708///
1709/// [Working with enums]: https://google-cloud-rust.github.io/working_with_enums.html
1710#[derive(Clone, Debug, PartialEq)]
1711#[non_exhaustive]
1712pub enum ParameterFormat {
1713 /// The default / unset value.
1714 /// The API will default to the UNFORMATTED format.
1715 Unspecified,
1716 /// Unformatted.
1717 Unformatted,
1718 /// YAML format.
1719 Yaml,
1720 /// JSON format.
1721 Json,
1722 /// If set, the enum was initialized with an unknown value.
1723 ///
1724 /// Applications can examine the value using [ParameterFormat::value] or
1725 /// [ParameterFormat::name].
1726 UnknownValue(parameter_format::UnknownValue),
1727}
1728
1729#[doc(hidden)]
1730pub mod parameter_format {
1731 #[allow(unused_imports)]
1732 use super::*;
1733 #[derive(Clone, Debug, PartialEq)]
1734 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
1735}
1736
1737impl ParameterFormat {
1738 /// Gets the enum value.
1739 ///
1740 /// Returns `None` if the enum contains an unknown value deserialized from
1741 /// the string representation of enums.
1742 pub fn value(&self) -> std::option::Option<i32> {
1743 match self {
1744 Self::Unspecified => std::option::Option::Some(0),
1745 Self::Unformatted => std::option::Option::Some(1),
1746 Self::Yaml => std::option::Option::Some(2),
1747 Self::Json => std::option::Option::Some(3),
1748 Self::UnknownValue(u) => u.0.value(),
1749 }
1750 }
1751
1752 /// Gets the enum value as a string.
1753 ///
1754 /// Returns `None` if the enum contains an unknown value deserialized from
1755 /// the integer representation of enums.
1756 pub fn name(&self) -> std::option::Option<&str> {
1757 match self {
1758 Self::Unspecified => std::option::Option::Some("PARAMETER_FORMAT_UNSPECIFIED"),
1759 Self::Unformatted => std::option::Option::Some("UNFORMATTED"),
1760 Self::Yaml => std::option::Option::Some("YAML"),
1761 Self::Json => std::option::Option::Some("JSON"),
1762 Self::UnknownValue(u) => u.0.name(),
1763 }
1764 }
1765}
1766
1767impl std::default::Default for ParameterFormat {
1768 fn default() -> Self {
1769 use std::convert::From;
1770 Self::from(0)
1771 }
1772}
1773
1774impl std::fmt::Display for ParameterFormat {
1775 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
1776 wkt::internal::display_enum(f, self.name(), self.value())
1777 }
1778}
1779
1780impl std::convert::From<i32> for ParameterFormat {
1781 fn from(value: i32) -> Self {
1782 match value {
1783 0 => Self::Unspecified,
1784 1 => Self::Unformatted,
1785 2 => Self::Yaml,
1786 3 => Self::Json,
1787 _ => Self::UnknownValue(parameter_format::UnknownValue(
1788 wkt::internal::UnknownEnumValue::Integer(value),
1789 )),
1790 }
1791 }
1792}
1793
1794impl std::convert::From<&str> for ParameterFormat {
1795 fn from(value: &str) -> Self {
1796 use std::string::ToString;
1797 match value {
1798 "PARAMETER_FORMAT_UNSPECIFIED" => Self::Unspecified,
1799 "UNFORMATTED" => Self::Unformatted,
1800 "YAML" => Self::Yaml,
1801 "JSON" => Self::Json,
1802 _ => Self::UnknownValue(parameter_format::UnknownValue(
1803 wkt::internal::UnknownEnumValue::String(value.to_string()),
1804 )),
1805 }
1806 }
1807}
1808
1809impl serde::ser::Serialize for ParameterFormat {
1810 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1811 where
1812 S: serde::Serializer,
1813 {
1814 match self {
1815 Self::Unspecified => serializer.serialize_i32(0),
1816 Self::Unformatted => serializer.serialize_i32(1),
1817 Self::Yaml => serializer.serialize_i32(2),
1818 Self::Json => serializer.serialize_i32(3),
1819 Self::UnknownValue(u) => u.0.serialize(serializer),
1820 }
1821 }
1822}
1823
1824impl<'de> serde::de::Deserialize<'de> for ParameterFormat {
1825 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1826 where
1827 D: serde::Deserializer<'de>,
1828 {
1829 deserializer.deserialize_any(wkt::internal::EnumVisitor::<ParameterFormat>::new(
1830 ".google.cloud.parametermanager.v1.ParameterFormat",
1831 ))
1832 }
1833}
1834
1835/// Option for requesting only metadata, or user provided payload
1836/// of a ParameterVersion resource.
1837///
1838/// # Working with unknown values
1839///
1840/// This enum is defined as `#[non_exhaustive]` because Google Cloud may add
1841/// additional enum variants at any time. Adding new variants is not considered
1842/// a breaking change. Applications should write their code in anticipation of:
1843///
1844/// - New values appearing in future releases of the client library, **and**
1845/// - New values received dynamically, without application changes.
1846///
1847/// Please consult the [Working with enums] section in the user guide for some
1848/// guidelines.
1849///
1850/// [Working with enums]: https://google-cloud-rust.github.io/working_with_enums.html
1851#[derive(Clone, Debug, PartialEq)]
1852#[non_exhaustive]
1853pub enum View {
1854 /// The default / unset value.
1855 /// The API will default to the FULL view..
1856 Unspecified,
1857 /// Include only the metadata for the resource.
1858 Basic,
1859 /// Include metadata & other relevant payload data as well.
1860 /// This is the default view.
1861 Full,
1862 /// If set, the enum was initialized with an unknown value.
1863 ///
1864 /// Applications can examine the value using [View::value] or
1865 /// [View::name].
1866 UnknownValue(view::UnknownValue),
1867}
1868
1869#[doc(hidden)]
1870pub mod view {
1871 #[allow(unused_imports)]
1872 use super::*;
1873 #[derive(Clone, Debug, PartialEq)]
1874 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
1875}
1876
1877impl View {
1878 /// Gets the enum value.
1879 ///
1880 /// Returns `None` if the enum contains an unknown value deserialized from
1881 /// the string representation of enums.
1882 pub fn value(&self) -> std::option::Option<i32> {
1883 match self {
1884 Self::Unspecified => std::option::Option::Some(0),
1885 Self::Basic => std::option::Option::Some(1),
1886 Self::Full => std::option::Option::Some(2),
1887 Self::UnknownValue(u) => u.0.value(),
1888 }
1889 }
1890
1891 /// Gets the enum value as a string.
1892 ///
1893 /// Returns `None` if the enum contains an unknown value deserialized from
1894 /// the integer representation of enums.
1895 pub fn name(&self) -> std::option::Option<&str> {
1896 match self {
1897 Self::Unspecified => std::option::Option::Some("VIEW_UNSPECIFIED"),
1898 Self::Basic => std::option::Option::Some("BASIC"),
1899 Self::Full => std::option::Option::Some("FULL"),
1900 Self::UnknownValue(u) => u.0.name(),
1901 }
1902 }
1903}
1904
1905impl std::default::Default for View {
1906 fn default() -> Self {
1907 use std::convert::From;
1908 Self::from(0)
1909 }
1910}
1911
1912impl std::fmt::Display for View {
1913 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
1914 wkt::internal::display_enum(f, self.name(), self.value())
1915 }
1916}
1917
1918impl std::convert::From<i32> for View {
1919 fn from(value: i32) -> Self {
1920 match value {
1921 0 => Self::Unspecified,
1922 1 => Self::Basic,
1923 2 => Self::Full,
1924 _ => Self::UnknownValue(view::UnknownValue(
1925 wkt::internal::UnknownEnumValue::Integer(value),
1926 )),
1927 }
1928 }
1929}
1930
1931impl std::convert::From<&str> for View {
1932 fn from(value: &str) -> Self {
1933 use std::string::ToString;
1934 match value {
1935 "VIEW_UNSPECIFIED" => Self::Unspecified,
1936 "BASIC" => Self::Basic,
1937 "FULL" => Self::Full,
1938 _ => Self::UnknownValue(view::UnknownValue(wkt::internal::UnknownEnumValue::String(
1939 value.to_string(),
1940 ))),
1941 }
1942 }
1943}
1944
1945impl serde::ser::Serialize for View {
1946 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1947 where
1948 S: serde::Serializer,
1949 {
1950 match self {
1951 Self::Unspecified => serializer.serialize_i32(0),
1952 Self::Basic => serializer.serialize_i32(1),
1953 Self::Full => serializer.serialize_i32(2),
1954 Self::UnknownValue(u) => u.0.serialize(serializer),
1955 }
1956 }
1957}
1958
1959impl<'de> serde::de::Deserialize<'de> for View {
1960 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1961 where
1962 D: serde::Deserializer<'de>,
1963 {
1964 deserializer.deserialize_any(wkt::internal::EnumVisitor::<View>::new(
1965 ".google.cloud.parametermanager.v1.View",
1966 ))
1967 }
1968}