Skip to main content

google_cloud_parametermanager_v1/
builder.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
17pub mod parameter_manager {
18    use crate::Result;
19
20    /// A builder for [ParameterManager][crate::client::ParameterManager].
21    ///
22    /// ```
23    /// # async fn sample() -> google_cloud_gax::client_builder::Result<()> {
24    /// # use google_cloud_parametermanager_v1::*;
25    /// # use builder::parameter_manager::ClientBuilder;
26    /// # use client::ParameterManager;
27    /// let builder : ClientBuilder = ParameterManager::builder();
28    /// let client = builder
29    ///     .with_endpoint("https://parametermanager.googleapis.com")
30    ///     .build().await?;
31    /// # Ok(()) }
32    /// ```
33    pub type ClientBuilder = crate::ClientBuilder<client::Factory, gaxi::options::Credentials>;
34
35    pub(crate) mod client {
36        use super::super::super::client::ParameterManager;
37        pub struct Factory;
38        impl crate::ClientFactory for Factory {
39            type Client = ParameterManager;
40            type Credentials = gaxi::options::Credentials;
41            async fn build(
42                self,
43                config: gaxi::options::ClientConfig,
44            ) -> crate::ClientBuilderResult<Self::Client> {
45                Self::Client::new(config).await
46            }
47        }
48    }
49
50    /// Common implementation for [crate::client::ParameterManager] request builders.
51    #[derive(Clone, Debug)]
52    pub(crate) struct RequestBuilder<R: std::default::Default> {
53        stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
54        request: R,
55        options: crate::RequestOptions,
56    }
57
58    impl<R> RequestBuilder<R>
59    where
60        R: std::default::Default,
61    {
62        pub(crate) fn new(
63            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
64        ) -> Self {
65            Self {
66                stub,
67                request: R::default(),
68                options: crate::RequestOptions::default(),
69            }
70        }
71    }
72
73    /// The request builder for [ParameterManager::list_parameters][crate::client::ParameterManager::list_parameters] calls.
74    ///
75    /// # Example
76    /// ```
77    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::ListParameters;
78    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
79    /// use google_cloud_gax::paginator::ItemPaginator;
80    ///
81    /// let builder = prepare_request_builder();
82    /// let mut items = builder.by_item();
83    /// while let Some(result) = items.next().await {
84    ///   let item = result?;
85    /// }
86    /// # Ok(()) }
87    ///
88    /// fn prepare_request_builder() -> ListParameters {
89    ///   # panic!();
90    ///   // ... details omitted ...
91    /// }
92    /// ```
93    #[derive(Clone, Debug)]
94    pub struct ListParameters(RequestBuilder<crate::model::ListParametersRequest>);
95
96    impl ListParameters {
97        pub(crate) fn new(
98            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
99        ) -> Self {
100            Self(RequestBuilder::new(stub))
101        }
102
103        /// Sets the full request, replacing any prior values.
104        pub fn with_request<V: Into<crate::model::ListParametersRequest>>(mut self, v: V) -> Self {
105            self.0.request = v.into();
106            self
107        }
108
109        /// Sets all the options, replacing any prior values.
110        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
111            self.0.options = v.into();
112            self
113        }
114
115        /// Sends the request.
116        pub async fn send(self) -> Result<crate::model::ListParametersResponse> {
117            (*self.0.stub)
118                .list_parameters(self.0.request, self.0.options)
119                .await
120                .map(crate::Response::into_body)
121        }
122
123        /// Streams each page in the collection.
124        pub fn by_page(
125            self,
126        ) -> impl google_cloud_gax::paginator::Paginator<
127            crate::model::ListParametersResponse,
128            crate::Error,
129        > {
130            use std::clone::Clone;
131            let token = self.0.request.page_token.clone();
132            let execute = move |token: String| {
133                let mut builder = self.clone();
134                builder.0.request = builder.0.request.set_page_token(token);
135                builder.send()
136            };
137            google_cloud_gax::paginator::internal::new_paginator(token, execute)
138        }
139
140        /// Streams each item in the collection.
141        pub fn by_item(
142            self,
143        ) -> impl google_cloud_gax::paginator::ItemPaginator<
144            crate::model::ListParametersResponse,
145            crate::Error,
146        > {
147            use google_cloud_gax::paginator::Paginator;
148            self.by_page().items()
149        }
150
151        /// Sets the value of [parent][crate::model::ListParametersRequest::parent].
152        ///
153        /// This is a **required** field for requests.
154        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
155            self.0.request.parent = v.into();
156            self
157        }
158
159        /// Sets the value of [page_size][crate::model::ListParametersRequest::page_size].
160        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
161            self.0.request.page_size = v.into();
162            self
163        }
164
165        /// Sets the value of [page_token][crate::model::ListParametersRequest::page_token].
166        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
167            self.0.request.page_token = v.into();
168            self
169        }
170
171        /// Sets the value of [filter][crate::model::ListParametersRequest::filter].
172        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
173            self.0.request.filter = v.into();
174            self
175        }
176
177        /// Sets the value of [order_by][crate::model::ListParametersRequest::order_by].
178        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
179            self.0.request.order_by = v.into();
180            self
181        }
182    }
183
184    #[doc(hidden)]
185    impl crate::RequestBuilder for ListParameters {
186        fn request_options(&mut self) -> &mut crate::RequestOptions {
187            &mut self.0.options
188        }
189    }
190
191    /// The request builder for [ParameterManager::get_parameter][crate::client::ParameterManager::get_parameter] calls.
192    ///
193    /// # Example
194    /// ```
195    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::GetParameter;
196    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
197    ///
198    /// let builder = prepare_request_builder();
199    /// let response = builder.send().await?;
200    /// # Ok(()) }
201    ///
202    /// fn prepare_request_builder() -> GetParameter {
203    ///   # panic!();
204    ///   // ... details omitted ...
205    /// }
206    /// ```
207    #[derive(Clone, Debug)]
208    pub struct GetParameter(RequestBuilder<crate::model::GetParameterRequest>);
209
210    impl GetParameter {
211        pub(crate) fn new(
212            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
213        ) -> Self {
214            Self(RequestBuilder::new(stub))
215        }
216
217        /// Sets the full request, replacing any prior values.
218        pub fn with_request<V: Into<crate::model::GetParameterRequest>>(mut self, v: V) -> Self {
219            self.0.request = v.into();
220            self
221        }
222
223        /// Sets all the options, replacing any prior values.
224        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
225            self.0.options = v.into();
226            self
227        }
228
229        /// Sends the request.
230        pub async fn send(self) -> Result<crate::model::Parameter> {
231            (*self.0.stub)
232                .get_parameter(self.0.request, self.0.options)
233                .await
234                .map(crate::Response::into_body)
235        }
236
237        /// Sets the value of [name][crate::model::GetParameterRequest::name].
238        ///
239        /// This is a **required** field for requests.
240        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
241            self.0.request.name = v.into();
242            self
243        }
244    }
245
246    #[doc(hidden)]
247    impl crate::RequestBuilder for GetParameter {
248        fn request_options(&mut self) -> &mut crate::RequestOptions {
249            &mut self.0.options
250        }
251    }
252
253    /// The request builder for [ParameterManager::create_parameter][crate::client::ParameterManager::create_parameter] calls.
254    ///
255    /// # Example
256    /// ```
257    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::CreateParameter;
258    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
259    ///
260    /// let builder = prepare_request_builder();
261    /// let response = builder.send().await?;
262    /// # Ok(()) }
263    ///
264    /// fn prepare_request_builder() -> CreateParameter {
265    ///   # panic!();
266    ///   // ... details omitted ...
267    /// }
268    /// ```
269    #[derive(Clone, Debug)]
270    pub struct CreateParameter(RequestBuilder<crate::model::CreateParameterRequest>);
271
272    impl CreateParameter {
273        pub(crate) fn new(
274            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
275        ) -> Self {
276            Self(RequestBuilder::new(stub))
277        }
278
279        /// Sets the full request, replacing any prior values.
280        pub fn with_request<V: Into<crate::model::CreateParameterRequest>>(mut self, v: V) -> Self {
281            self.0.request = v.into();
282            self
283        }
284
285        /// Sets all the options, replacing any prior values.
286        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
287            self.0.options = v.into();
288            self
289        }
290
291        /// Sends the request.
292        pub async fn send(self) -> Result<crate::model::Parameter> {
293            (*self.0.stub)
294                .create_parameter(self.0.request, self.0.options)
295                .await
296                .map(crate::Response::into_body)
297        }
298
299        /// Sets the value of [parent][crate::model::CreateParameterRequest::parent].
300        ///
301        /// This is a **required** field for requests.
302        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
303            self.0.request.parent = v.into();
304            self
305        }
306
307        /// Sets the value of [parameter_id][crate::model::CreateParameterRequest::parameter_id].
308        ///
309        /// This is a **required** field for requests.
310        pub fn set_parameter_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
311            self.0.request.parameter_id = v.into();
312            self
313        }
314
315        /// Sets the value of [parameter][crate::model::CreateParameterRequest::parameter].
316        ///
317        /// This is a **required** field for requests.
318        pub fn set_parameter<T>(mut self, v: T) -> Self
319        where
320            T: std::convert::Into<crate::model::Parameter>,
321        {
322            self.0.request.parameter = std::option::Option::Some(v.into());
323            self
324        }
325
326        /// Sets or clears the value of [parameter][crate::model::CreateParameterRequest::parameter].
327        ///
328        /// This is a **required** field for requests.
329        pub fn set_or_clear_parameter<T>(mut self, v: std::option::Option<T>) -> Self
330        where
331            T: std::convert::Into<crate::model::Parameter>,
332        {
333            self.0.request.parameter = v.map(|x| x.into());
334            self
335        }
336
337        /// Sets the value of [request_id][crate::model::CreateParameterRequest::request_id].
338        pub fn set_request_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
339            self.0.request.request_id = v.into();
340            self
341        }
342    }
343
344    #[doc(hidden)]
345    impl crate::RequestBuilder for CreateParameter {
346        fn request_options(&mut self) -> &mut crate::RequestOptions {
347            &mut self.0.options
348        }
349    }
350
351    /// The request builder for [ParameterManager::update_parameter][crate::client::ParameterManager::update_parameter] calls.
352    ///
353    /// # Example
354    /// ```
355    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::UpdateParameter;
356    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
357    ///
358    /// let builder = prepare_request_builder();
359    /// let response = builder.send().await?;
360    /// # Ok(()) }
361    ///
362    /// fn prepare_request_builder() -> UpdateParameter {
363    ///   # panic!();
364    ///   // ... details omitted ...
365    /// }
366    /// ```
367    #[derive(Clone, Debug)]
368    pub struct UpdateParameter(RequestBuilder<crate::model::UpdateParameterRequest>);
369
370    impl UpdateParameter {
371        pub(crate) fn new(
372            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
373        ) -> Self {
374            Self(RequestBuilder::new(stub))
375        }
376
377        /// Sets the full request, replacing any prior values.
378        pub fn with_request<V: Into<crate::model::UpdateParameterRequest>>(mut self, v: V) -> Self {
379            self.0.request = v.into();
380            self
381        }
382
383        /// Sets all the options, replacing any prior values.
384        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
385            self.0.options = v.into();
386            self
387        }
388
389        /// Sends the request.
390        pub async fn send(self) -> Result<crate::model::Parameter> {
391            (*self.0.stub)
392                .update_parameter(self.0.request, self.0.options)
393                .await
394                .map(crate::Response::into_body)
395        }
396
397        /// Sets the value of [update_mask][crate::model::UpdateParameterRequest::update_mask].
398        pub fn set_update_mask<T>(mut self, v: T) -> Self
399        where
400            T: std::convert::Into<wkt::FieldMask>,
401        {
402            self.0.request.update_mask = std::option::Option::Some(v.into());
403            self
404        }
405
406        /// Sets or clears the value of [update_mask][crate::model::UpdateParameterRequest::update_mask].
407        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
408        where
409            T: std::convert::Into<wkt::FieldMask>,
410        {
411            self.0.request.update_mask = v.map(|x| x.into());
412            self
413        }
414
415        /// Sets the value of [parameter][crate::model::UpdateParameterRequest::parameter].
416        ///
417        /// This is a **required** field for requests.
418        pub fn set_parameter<T>(mut self, v: T) -> Self
419        where
420            T: std::convert::Into<crate::model::Parameter>,
421        {
422            self.0.request.parameter = std::option::Option::Some(v.into());
423            self
424        }
425
426        /// Sets or clears the value of [parameter][crate::model::UpdateParameterRequest::parameter].
427        ///
428        /// This is a **required** field for requests.
429        pub fn set_or_clear_parameter<T>(mut self, v: std::option::Option<T>) -> Self
430        where
431            T: std::convert::Into<crate::model::Parameter>,
432        {
433            self.0.request.parameter = v.map(|x| x.into());
434            self
435        }
436
437        /// Sets the value of [request_id][crate::model::UpdateParameterRequest::request_id].
438        pub fn set_request_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
439            self.0.request.request_id = v.into();
440            self
441        }
442    }
443
444    #[doc(hidden)]
445    impl crate::RequestBuilder for UpdateParameter {
446        fn request_options(&mut self) -> &mut crate::RequestOptions {
447            &mut self.0.options
448        }
449    }
450
451    /// The request builder for [ParameterManager::delete_parameter][crate::client::ParameterManager::delete_parameter] calls.
452    ///
453    /// # Example
454    /// ```
455    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::DeleteParameter;
456    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
457    ///
458    /// let builder = prepare_request_builder();
459    /// let response = builder.send().await?;
460    /// # Ok(()) }
461    ///
462    /// fn prepare_request_builder() -> DeleteParameter {
463    ///   # panic!();
464    ///   // ... details omitted ...
465    /// }
466    /// ```
467    #[derive(Clone, Debug)]
468    pub struct DeleteParameter(RequestBuilder<crate::model::DeleteParameterRequest>);
469
470    impl DeleteParameter {
471        pub(crate) fn new(
472            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
473        ) -> Self {
474            Self(RequestBuilder::new(stub))
475        }
476
477        /// Sets the full request, replacing any prior values.
478        pub fn with_request<V: Into<crate::model::DeleteParameterRequest>>(mut self, v: V) -> Self {
479            self.0.request = v.into();
480            self
481        }
482
483        /// Sets all the options, replacing any prior values.
484        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
485            self.0.options = v.into();
486            self
487        }
488
489        /// Sends the request.
490        pub async fn send(self) -> Result<()> {
491            (*self.0.stub)
492                .delete_parameter(self.0.request, self.0.options)
493                .await
494                .map(crate::Response::into_body)
495        }
496
497        /// Sets the value of [name][crate::model::DeleteParameterRequest::name].
498        ///
499        /// This is a **required** field for requests.
500        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
501            self.0.request.name = v.into();
502            self
503        }
504
505        /// Sets the value of [request_id][crate::model::DeleteParameterRequest::request_id].
506        pub fn set_request_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
507            self.0.request.request_id = v.into();
508            self
509        }
510    }
511
512    #[doc(hidden)]
513    impl crate::RequestBuilder for DeleteParameter {
514        fn request_options(&mut self) -> &mut crate::RequestOptions {
515            &mut self.0.options
516        }
517    }
518
519    /// The request builder for [ParameterManager::list_parameter_versions][crate::client::ParameterManager::list_parameter_versions] calls.
520    ///
521    /// # Example
522    /// ```
523    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::ListParameterVersions;
524    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
525    /// use google_cloud_gax::paginator::ItemPaginator;
526    ///
527    /// let builder = prepare_request_builder();
528    /// let mut items = builder.by_item();
529    /// while let Some(result) = items.next().await {
530    ///   let item = result?;
531    /// }
532    /// # Ok(()) }
533    ///
534    /// fn prepare_request_builder() -> ListParameterVersions {
535    ///   # panic!();
536    ///   // ... details omitted ...
537    /// }
538    /// ```
539    #[derive(Clone, Debug)]
540    pub struct ListParameterVersions(RequestBuilder<crate::model::ListParameterVersionsRequest>);
541
542    impl ListParameterVersions {
543        pub(crate) fn new(
544            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
545        ) -> Self {
546            Self(RequestBuilder::new(stub))
547        }
548
549        /// Sets the full request, replacing any prior values.
550        pub fn with_request<V: Into<crate::model::ListParameterVersionsRequest>>(
551            mut self,
552            v: V,
553        ) -> Self {
554            self.0.request = v.into();
555            self
556        }
557
558        /// Sets all the options, replacing any prior values.
559        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
560            self.0.options = v.into();
561            self
562        }
563
564        /// Sends the request.
565        pub async fn send(self) -> Result<crate::model::ListParameterVersionsResponse> {
566            (*self.0.stub)
567                .list_parameter_versions(self.0.request, self.0.options)
568                .await
569                .map(crate::Response::into_body)
570        }
571
572        /// Streams each page in the collection.
573        pub fn by_page(
574            self,
575        ) -> impl google_cloud_gax::paginator::Paginator<
576            crate::model::ListParameterVersionsResponse,
577            crate::Error,
578        > {
579            use std::clone::Clone;
580            let token = self.0.request.page_token.clone();
581            let execute = move |token: String| {
582                let mut builder = self.clone();
583                builder.0.request = builder.0.request.set_page_token(token);
584                builder.send()
585            };
586            google_cloud_gax::paginator::internal::new_paginator(token, execute)
587        }
588
589        /// Streams each item in the collection.
590        pub fn by_item(
591            self,
592        ) -> impl google_cloud_gax::paginator::ItemPaginator<
593            crate::model::ListParameterVersionsResponse,
594            crate::Error,
595        > {
596            use google_cloud_gax::paginator::Paginator;
597            self.by_page().items()
598        }
599
600        /// Sets the value of [parent][crate::model::ListParameterVersionsRequest::parent].
601        ///
602        /// This is a **required** field for requests.
603        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
604            self.0.request.parent = v.into();
605            self
606        }
607
608        /// Sets the value of [page_size][crate::model::ListParameterVersionsRequest::page_size].
609        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
610            self.0.request.page_size = v.into();
611            self
612        }
613
614        /// Sets the value of [page_token][crate::model::ListParameterVersionsRequest::page_token].
615        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
616            self.0.request.page_token = v.into();
617            self
618        }
619
620        /// Sets the value of [filter][crate::model::ListParameterVersionsRequest::filter].
621        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
622            self.0.request.filter = v.into();
623            self
624        }
625
626        /// Sets the value of [order_by][crate::model::ListParameterVersionsRequest::order_by].
627        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
628            self.0.request.order_by = v.into();
629            self
630        }
631    }
632
633    #[doc(hidden)]
634    impl crate::RequestBuilder for ListParameterVersions {
635        fn request_options(&mut self) -> &mut crate::RequestOptions {
636            &mut self.0.options
637        }
638    }
639
640    /// The request builder for [ParameterManager::get_parameter_version][crate::client::ParameterManager::get_parameter_version] calls.
641    ///
642    /// # Example
643    /// ```
644    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::GetParameterVersion;
645    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
646    ///
647    /// let builder = prepare_request_builder();
648    /// let response = builder.send().await?;
649    /// # Ok(()) }
650    ///
651    /// fn prepare_request_builder() -> GetParameterVersion {
652    ///   # panic!();
653    ///   // ... details omitted ...
654    /// }
655    /// ```
656    #[derive(Clone, Debug)]
657    pub struct GetParameterVersion(RequestBuilder<crate::model::GetParameterVersionRequest>);
658
659    impl GetParameterVersion {
660        pub(crate) fn new(
661            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
662        ) -> Self {
663            Self(RequestBuilder::new(stub))
664        }
665
666        /// Sets the full request, replacing any prior values.
667        pub fn with_request<V: Into<crate::model::GetParameterVersionRequest>>(
668            mut self,
669            v: V,
670        ) -> Self {
671            self.0.request = v.into();
672            self
673        }
674
675        /// Sets all the options, replacing any prior values.
676        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
677            self.0.options = v.into();
678            self
679        }
680
681        /// Sends the request.
682        pub async fn send(self) -> Result<crate::model::ParameterVersion> {
683            (*self.0.stub)
684                .get_parameter_version(self.0.request, self.0.options)
685                .await
686                .map(crate::Response::into_body)
687        }
688
689        /// Sets the value of [name][crate::model::GetParameterVersionRequest::name].
690        ///
691        /// This is a **required** field for requests.
692        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
693            self.0.request.name = v.into();
694            self
695        }
696
697        /// Sets the value of [view][crate::model::GetParameterVersionRequest::view].
698        pub fn set_view<T: Into<crate::model::View>>(mut self, v: T) -> Self {
699            self.0.request.view = v.into();
700            self
701        }
702    }
703
704    #[doc(hidden)]
705    impl crate::RequestBuilder for GetParameterVersion {
706        fn request_options(&mut self) -> &mut crate::RequestOptions {
707            &mut self.0.options
708        }
709    }
710
711    /// The request builder for [ParameterManager::render_parameter_version][crate::client::ParameterManager::render_parameter_version] calls.
712    ///
713    /// # Example
714    /// ```
715    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::RenderParameterVersion;
716    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
717    ///
718    /// let builder = prepare_request_builder();
719    /// let response = builder.send().await?;
720    /// # Ok(()) }
721    ///
722    /// fn prepare_request_builder() -> RenderParameterVersion {
723    ///   # panic!();
724    ///   // ... details omitted ...
725    /// }
726    /// ```
727    #[derive(Clone, Debug)]
728    pub struct RenderParameterVersion(RequestBuilder<crate::model::RenderParameterVersionRequest>);
729
730    impl RenderParameterVersion {
731        pub(crate) fn new(
732            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
733        ) -> Self {
734            Self(RequestBuilder::new(stub))
735        }
736
737        /// Sets the full request, replacing any prior values.
738        pub fn with_request<V: Into<crate::model::RenderParameterVersionRequest>>(
739            mut self,
740            v: V,
741        ) -> Self {
742            self.0.request = v.into();
743            self
744        }
745
746        /// Sets all the options, replacing any prior values.
747        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
748            self.0.options = v.into();
749            self
750        }
751
752        /// Sends the request.
753        pub async fn send(self) -> Result<crate::model::RenderParameterVersionResponse> {
754            (*self.0.stub)
755                .render_parameter_version(self.0.request, self.0.options)
756                .await
757                .map(crate::Response::into_body)
758        }
759
760        /// Sets the value of [name][crate::model::RenderParameterVersionRequest::name].
761        ///
762        /// This is a **required** field for requests.
763        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
764            self.0.request.name = v.into();
765            self
766        }
767    }
768
769    #[doc(hidden)]
770    impl crate::RequestBuilder for RenderParameterVersion {
771        fn request_options(&mut self) -> &mut crate::RequestOptions {
772            &mut self.0.options
773        }
774    }
775
776    /// The request builder for [ParameterManager::create_parameter_version][crate::client::ParameterManager::create_parameter_version] calls.
777    ///
778    /// # Example
779    /// ```
780    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::CreateParameterVersion;
781    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
782    ///
783    /// let builder = prepare_request_builder();
784    /// let response = builder.send().await?;
785    /// # Ok(()) }
786    ///
787    /// fn prepare_request_builder() -> CreateParameterVersion {
788    ///   # panic!();
789    ///   // ... details omitted ...
790    /// }
791    /// ```
792    #[derive(Clone, Debug)]
793    pub struct CreateParameterVersion(RequestBuilder<crate::model::CreateParameterVersionRequest>);
794
795    impl CreateParameterVersion {
796        pub(crate) fn new(
797            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
798        ) -> Self {
799            Self(RequestBuilder::new(stub))
800        }
801
802        /// Sets the full request, replacing any prior values.
803        pub fn with_request<V: Into<crate::model::CreateParameterVersionRequest>>(
804            mut self,
805            v: V,
806        ) -> Self {
807            self.0.request = v.into();
808            self
809        }
810
811        /// Sets all the options, replacing any prior values.
812        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
813            self.0.options = v.into();
814            self
815        }
816
817        /// Sends the request.
818        pub async fn send(self) -> Result<crate::model::ParameterVersion> {
819            (*self.0.stub)
820                .create_parameter_version(self.0.request, self.0.options)
821                .await
822                .map(crate::Response::into_body)
823        }
824
825        /// Sets the value of [parent][crate::model::CreateParameterVersionRequest::parent].
826        ///
827        /// This is a **required** field for requests.
828        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
829            self.0.request.parent = v.into();
830            self
831        }
832
833        /// Sets the value of [parameter_version_id][crate::model::CreateParameterVersionRequest::parameter_version_id].
834        ///
835        /// This is a **required** field for requests.
836        pub fn set_parameter_version_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
837            self.0.request.parameter_version_id = v.into();
838            self
839        }
840
841        /// Sets the value of [parameter_version][crate::model::CreateParameterVersionRequest::parameter_version].
842        ///
843        /// This is a **required** field for requests.
844        pub fn set_parameter_version<T>(mut self, v: T) -> Self
845        where
846            T: std::convert::Into<crate::model::ParameterVersion>,
847        {
848            self.0.request.parameter_version = std::option::Option::Some(v.into());
849            self
850        }
851
852        /// Sets or clears the value of [parameter_version][crate::model::CreateParameterVersionRequest::parameter_version].
853        ///
854        /// This is a **required** field for requests.
855        pub fn set_or_clear_parameter_version<T>(mut self, v: std::option::Option<T>) -> Self
856        where
857            T: std::convert::Into<crate::model::ParameterVersion>,
858        {
859            self.0.request.parameter_version = v.map(|x| x.into());
860            self
861        }
862
863        /// Sets the value of [request_id][crate::model::CreateParameterVersionRequest::request_id].
864        pub fn set_request_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
865            self.0.request.request_id = v.into();
866            self
867        }
868    }
869
870    #[doc(hidden)]
871    impl crate::RequestBuilder for CreateParameterVersion {
872        fn request_options(&mut self) -> &mut crate::RequestOptions {
873            &mut self.0.options
874        }
875    }
876
877    /// The request builder for [ParameterManager::update_parameter_version][crate::client::ParameterManager::update_parameter_version] calls.
878    ///
879    /// # Example
880    /// ```
881    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::UpdateParameterVersion;
882    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
883    ///
884    /// let builder = prepare_request_builder();
885    /// let response = builder.send().await?;
886    /// # Ok(()) }
887    ///
888    /// fn prepare_request_builder() -> UpdateParameterVersion {
889    ///   # panic!();
890    ///   // ... details omitted ...
891    /// }
892    /// ```
893    #[derive(Clone, Debug)]
894    pub struct UpdateParameterVersion(RequestBuilder<crate::model::UpdateParameterVersionRequest>);
895
896    impl UpdateParameterVersion {
897        pub(crate) fn new(
898            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
899        ) -> Self {
900            Self(RequestBuilder::new(stub))
901        }
902
903        /// Sets the full request, replacing any prior values.
904        pub fn with_request<V: Into<crate::model::UpdateParameterVersionRequest>>(
905            mut self,
906            v: V,
907        ) -> Self {
908            self.0.request = v.into();
909            self
910        }
911
912        /// Sets all the options, replacing any prior values.
913        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
914            self.0.options = v.into();
915            self
916        }
917
918        /// Sends the request.
919        pub async fn send(self) -> Result<crate::model::ParameterVersion> {
920            (*self.0.stub)
921                .update_parameter_version(self.0.request, self.0.options)
922                .await
923                .map(crate::Response::into_body)
924        }
925
926        /// Sets the value of [update_mask][crate::model::UpdateParameterVersionRequest::update_mask].
927        pub fn set_update_mask<T>(mut self, v: T) -> Self
928        where
929            T: std::convert::Into<wkt::FieldMask>,
930        {
931            self.0.request.update_mask = std::option::Option::Some(v.into());
932            self
933        }
934
935        /// Sets or clears the value of [update_mask][crate::model::UpdateParameterVersionRequest::update_mask].
936        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
937        where
938            T: std::convert::Into<wkt::FieldMask>,
939        {
940            self.0.request.update_mask = v.map(|x| x.into());
941            self
942        }
943
944        /// Sets the value of [parameter_version][crate::model::UpdateParameterVersionRequest::parameter_version].
945        ///
946        /// This is a **required** field for requests.
947        pub fn set_parameter_version<T>(mut self, v: T) -> Self
948        where
949            T: std::convert::Into<crate::model::ParameterVersion>,
950        {
951            self.0.request.parameter_version = std::option::Option::Some(v.into());
952            self
953        }
954
955        /// Sets or clears the value of [parameter_version][crate::model::UpdateParameterVersionRequest::parameter_version].
956        ///
957        /// This is a **required** field for requests.
958        pub fn set_or_clear_parameter_version<T>(mut self, v: std::option::Option<T>) -> Self
959        where
960            T: std::convert::Into<crate::model::ParameterVersion>,
961        {
962            self.0.request.parameter_version = v.map(|x| x.into());
963            self
964        }
965
966        /// Sets the value of [request_id][crate::model::UpdateParameterVersionRequest::request_id].
967        pub fn set_request_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
968            self.0.request.request_id = v.into();
969            self
970        }
971    }
972
973    #[doc(hidden)]
974    impl crate::RequestBuilder for UpdateParameterVersion {
975        fn request_options(&mut self) -> &mut crate::RequestOptions {
976            &mut self.0.options
977        }
978    }
979
980    /// The request builder for [ParameterManager::delete_parameter_version][crate::client::ParameterManager::delete_parameter_version] calls.
981    ///
982    /// # Example
983    /// ```
984    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::DeleteParameterVersion;
985    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
986    ///
987    /// let builder = prepare_request_builder();
988    /// let response = builder.send().await?;
989    /// # Ok(()) }
990    ///
991    /// fn prepare_request_builder() -> DeleteParameterVersion {
992    ///   # panic!();
993    ///   // ... details omitted ...
994    /// }
995    /// ```
996    #[derive(Clone, Debug)]
997    pub struct DeleteParameterVersion(RequestBuilder<crate::model::DeleteParameterVersionRequest>);
998
999    impl DeleteParameterVersion {
1000        pub(crate) fn new(
1001            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
1002        ) -> Self {
1003            Self(RequestBuilder::new(stub))
1004        }
1005
1006        /// Sets the full request, replacing any prior values.
1007        pub fn with_request<V: Into<crate::model::DeleteParameterVersionRequest>>(
1008            mut self,
1009            v: V,
1010        ) -> Self {
1011            self.0.request = v.into();
1012            self
1013        }
1014
1015        /// Sets all the options, replacing any prior values.
1016        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1017            self.0.options = v.into();
1018            self
1019        }
1020
1021        /// Sends the request.
1022        pub async fn send(self) -> Result<()> {
1023            (*self.0.stub)
1024                .delete_parameter_version(self.0.request, self.0.options)
1025                .await
1026                .map(crate::Response::into_body)
1027        }
1028
1029        /// Sets the value of [name][crate::model::DeleteParameterVersionRequest::name].
1030        ///
1031        /// This is a **required** field for requests.
1032        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1033            self.0.request.name = v.into();
1034            self
1035        }
1036
1037        /// Sets the value of [request_id][crate::model::DeleteParameterVersionRequest::request_id].
1038        pub fn set_request_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
1039            self.0.request.request_id = v.into();
1040            self
1041        }
1042    }
1043
1044    #[doc(hidden)]
1045    impl crate::RequestBuilder for DeleteParameterVersion {
1046        fn request_options(&mut self) -> &mut crate::RequestOptions {
1047            &mut self.0.options
1048        }
1049    }
1050
1051    /// The request builder for [ParameterManager::list_locations][crate::client::ParameterManager::list_locations] calls.
1052    ///
1053    /// # Example
1054    /// ```
1055    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::ListLocations;
1056    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
1057    /// use google_cloud_gax::paginator::ItemPaginator;
1058    ///
1059    /// let builder = prepare_request_builder();
1060    /// let mut items = builder.by_item();
1061    /// while let Some(result) = items.next().await {
1062    ///   let item = result?;
1063    /// }
1064    /// # Ok(()) }
1065    ///
1066    /// fn prepare_request_builder() -> ListLocations {
1067    ///   # panic!();
1068    ///   // ... details omitted ...
1069    /// }
1070    /// ```
1071    #[derive(Clone, Debug)]
1072    pub struct ListLocations(RequestBuilder<google_cloud_location::model::ListLocationsRequest>);
1073
1074    impl ListLocations {
1075        pub(crate) fn new(
1076            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
1077        ) -> Self {
1078            Self(RequestBuilder::new(stub))
1079        }
1080
1081        /// Sets the full request, replacing any prior values.
1082        pub fn with_request<V: Into<google_cloud_location::model::ListLocationsRequest>>(
1083            mut self,
1084            v: V,
1085        ) -> Self {
1086            self.0.request = v.into();
1087            self
1088        }
1089
1090        /// Sets all the options, replacing any prior values.
1091        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1092            self.0.options = v.into();
1093            self
1094        }
1095
1096        /// Sends the request.
1097        pub async fn send(self) -> Result<google_cloud_location::model::ListLocationsResponse> {
1098            (*self.0.stub)
1099                .list_locations(self.0.request, self.0.options)
1100                .await
1101                .map(crate::Response::into_body)
1102        }
1103
1104        /// Streams each page in the collection.
1105        pub fn by_page(
1106            self,
1107        ) -> impl google_cloud_gax::paginator::Paginator<
1108            google_cloud_location::model::ListLocationsResponse,
1109            crate::Error,
1110        > {
1111            use std::clone::Clone;
1112            let token = self.0.request.page_token.clone();
1113            let execute = move |token: String| {
1114                let mut builder = self.clone();
1115                builder.0.request = builder.0.request.set_page_token(token);
1116                builder.send()
1117            };
1118            google_cloud_gax::paginator::internal::new_paginator(token, execute)
1119        }
1120
1121        /// Streams each item in the collection.
1122        pub fn by_item(
1123            self,
1124        ) -> impl google_cloud_gax::paginator::ItemPaginator<
1125            google_cloud_location::model::ListLocationsResponse,
1126            crate::Error,
1127        > {
1128            use google_cloud_gax::paginator::Paginator;
1129            self.by_page().items()
1130        }
1131
1132        /// Sets the value of [name][google_cloud_location::model::ListLocationsRequest::name].
1133        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1134            self.0.request.name = v.into();
1135            self
1136        }
1137
1138        /// Sets the value of [filter][google_cloud_location::model::ListLocationsRequest::filter].
1139        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
1140            self.0.request.filter = v.into();
1141            self
1142        }
1143
1144        /// Sets the value of [page_size][google_cloud_location::model::ListLocationsRequest::page_size].
1145        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
1146            self.0.request.page_size = v.into();
1147            self
1148        }
1149
1150        /// Sets the value of [page_token][google_cloud_location::model::ListLocationsRequest::page_token].
1151        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
1152            self.0.request.page_token = v.into();
1153            self
1154        }
1155    }
1156
1157    #[doc(hidden)]
1158    impl crate::RequestBuilder for ListLocations {
1159        fn request_options(&mut self) -> &mut crate::RequestOptions {
1160            &mut self.0.options
1161        }
1162    }
1163
1164    /// The request builder for [ParameterManager::get_location][crate::client::ParameterManager::get_location] calls.
1165    ///
1166    /// # Example
1167    /// ```
1168    /// # use google_cloud_parametermanager_v1::builder::parameter_manager::GetLocation;
1169    /// # async fn sample() -> google_cloud_parametermanager_v1::Result<()> {
1170    ///
1171    /// let builder = prepare_request_builder();
1172    /// let response = builder.send().await?;
1173    /// # Ok(()) }
1174    ///
1175    /// fn prepare_request_builder() -> GetLocation {
1176    ///   # panic!();
1177    ///   // ... details omitted ...
1178    /// }
1179    /// ```
1180    #[derive(Clone, Debug)]
1181    pub struct GetLocation(RequestBuilder<google_cloud_location::model::GetLocationRequest>);
1182
1183    impl GetLocation {
1184        pub(crate) fn new(
1185            stub: std::sync::Arc<dyn super::super::stub::dynamic::ParameterManager>,
1186        ) -> Self {
1187            Self(RequestBuilder::new(stub))
1188        }
1189
1190        /// Sets the full request, replacing any prior values.
1191        pub fn with_request<V: Into<google_cloud_location::model::GetLocationRequest>>(
1192            mut self,
1193            v: V,
1194        ) -> Self {
1195            self.0.request = v.into();
1196            self
1197        }
1198
1199        /// Sets all the options, replacing any prior values.
1200        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1201            self.0.options = v.into();
1202            self
1203        }
1204
1205        /// Sends the request.
1206        pub async fn send(self) -> Result<google_cloud_location::model::Location> {
1207            (*self.0.stub)
1208                .get_location(self.0.request, self.0.options)
1209                .await
1210                .map(crate::Response::into_body)
1211        }
1212
1213        /// Sets the value of [name][google_cloud_location::model::GetLocationRequest::name].
1214        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1215            self.0.request.name = v.into();
1216            self
1217        }
1218    }
1219
1220    #[doc(hidden)]
1221    impl crate::RequestBuilder for GetLocation {
1222        fn request_options(&mut self) -> &mut crate::RequestOptions {
1223            &mut self.0.options
1224        }
1225    }
1226}