Skip to main content

google_cloud_dataform_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
17/// Request and client builders for [Dataform][crate::client::Dataform].
18pub mod dataform {
19    use crate::Result;
20
21    /// A builder for [Dataform][crate::client::Dataform].
22    ///
23    /// ```
24    /// # async fn sample() -> google_cloud_gax::client_builder::Result<()> {
25    /// # use google_cloud_dataform_v1::*;
26    /// # use builder::dataform::ClientBuilder;
27    /// # use client::Dataform;
28    /// let builder : ClientBuilder = Dataform::builder();
29    /// let client = builder
30    ///     .with_endpoint("https://dataform.googleapis.com")
31    ///     .build().await?;
32    /// # Ok(()) }
33    /// ```
34    pub type ClientBuilder = crate::ClientBuilder<client::Factory, gaxi::options::Credentials>;
35
36    pub(crate) mod client {
37        use super::super::super::client::Dataform;
38        pub struct Factory;
39        impl crate::ClientFactory for Factory {
40            type Client = Dataform;
41            type Credentials = gaxi::options::Credentials;
42            async fn build(
43                self,
44                config: gaxi::options::ClientConfig,
45            ) -> crate::ClientBuilderResult<Self::Client> {
46                Self::Client::new(config).await
47            }
48        }
49    }
50
51    /// Common implementation for [crate::client::Dataform] request builders.
52    #[derive(Clone, Debug)]
53    pub(crate) struct RequestBuilder<R: std::default::Default> {
54        stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>,
55        request: R,
56        options: crate::RequestOptions,
57    }
58
59    impl<R> RequestBuilder<R>
60    where
61        R: std::default::Default,
62    {
63        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
64            Self {
65                stub,
66                request: R::default(),
67                options: crate::RequestOptions::default(),
68            }
69        }
70    }
71
72    /// The request builder for [Dataform::get_team_folder][crate::client::Dataform::get_team_folder] calls.
73    ///
74    /// # Example
75    /// ```
76    /// # use google_cloud_dataform_v1::builder::dataform::GetTeamFolder;
77    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
78    ///
79    /// let builder = prepare_request_builder();
80    /// let response = builder.send().await?;
81    /// # Ok(()) }
82    ///
83    /// fn prepare_request_builder() -> GetTeamFolder {
84    ///   # panic!();
85    ///   // ... details omitted ...
86    /// }
87    /// ```
88    #[derive(Clone, Debug)]
89    pub struct GetTeamFolder(RequestBuilder<crate::model::GetTeamFolderRequest>);
90
91    impl GetTeamFolder {
92        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
93            Self(RequestBuilder::new(stub))
94        }
95
96        /// Sets the full request, replacing any prior values.
97        pub fn with_request<V: Into<crate::model::GetTeamFolderRequest>>(mut self, v: V) -> Self {
98            self.0.request = v.into();
99            self
100        }
101
102        /// Sets all the options, replacing any prior values.
103        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
104            self.0.options = v.into();
105            self
106        }
107
108        /// Sends the request.
109        pub async fn send(self) -> Result<crate::model::TeamFolder> {
110            (*self.0.stub)
111                .get_team_folder(self.0.request, self.0.options)
112                .await
113                .map(crate::Response::into_body)
114        }
115
116        /// Sets the value of [name][crate::model::GetTeamFolderRequest::name].
117        ///
118        /// This is a **required** field for requests.
119        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
120            self.0.request.name = v.into();
121            self
122        }
123    }
124
125    #[doc(hidden)]
126    impl crate::RequestBuilder for GetTeamFolder {
127        fn request_options(&mut self) -> &mut crate::RequestOptions {
128            &mut self.0.options
129        }
130    }
131
132    /// The request builder for [Dataform::create_team_folder][crate::client::Dataform::create_team_folder] calls.
133    ///
134    /// # Example
135    /// ```
136    /// # use google_cloud_dataform_v1::builder::dataform::CreateTeamFolder;
137    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
138    ///
139    /// let builder = prepare_request_builder();
140    /// let response = builder.send().await?;
141    /// # Ok(()) }
142    ///
143    /// fn prepare_request_builder() -> CreateTeamFolder {
144    ///   # panic!();
145    ///   // ... details omitted ...
146    /// }
147    /// ```
148    #[derive(Clone, Debug)]
149    pub struct CreateTeamFolder(RequestBuilder<crate::model::CreateTeamFolderRequest>);
150
151    impl CreateTeamFolder {
152        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
153            Self(RequestBuilder::new(stub))
154        }
155
156        /// Sets the full request, replacing any prior values.
157        pub fn with_request<V: Into<crate::model::CreateTeamFolderRequest>>(
158            mut self,
159            v: V,
160        ) -> Self {
161            self.0.request = v.into();
162            self
163        }
164
165        /// Sets all the options, replacing any prior values.
166        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
167            self.0.options = v.into();
168            self
169        }
170
171        /// Sends the request.
172        pub async fn send(self) -> Result<crate::model::TeamFolder> {
173            (*self.0.stub)
174                .create_team_folder(self.0.request, self.0.options)
175                .await
176                .map(crate::Response::into_body)
177        }
178
179        /// Sets the value of [parent][crate::model::CreateTeamFolderRequest::parent].
180        ///
181        /// This is a **required** field for requests.
182        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
183            self.0.request.parent = v.into();
184            self
185        }
186
187        /// Sets the value of [team_folder][crate::model::CreateTeamFolderRequest::team_folder].
188        ///
189        /// This is a **required** field for requests.
190        pub fn set_team_folder<T>(mut self, v: T) -> Self
191        where
192            T: std::convert::Into<crate::model::TeamFolder>,
193        {
194            self.0.request.team_folder = std::option::Option::Some(v.into());
195            self
196        }
197
198        /// Sets or clears the value of [team_folder][crate::model::CreateTeamFolderRequest::team_folder].
199        ///
200        /// This is a **required** field for requests.
201        pub fn set_or_clear_team_folder<T>(mut self, v: std::option::Option<T>) -> Self
202        where
203            T: std::convert::Into<crate::model::TeamFolder>,
204        {
205            self.0.request.team_folder = v.map(|x| x.into());
206            self
207        }
208    }
209
210    #[doc(hidden)]
211    impl crate::RequestBuilder for CreateTeamFolder {
212        fn request_options(&mut self) -> &mut crate::RequestOptions {
213            &mut self.0.options
214        }
215    }
216
217    /// The request builder for [Dataform::update_team_folder][crate::client::Dataform::update_team_folder] calls.
218    ///
219    /// # Example
220    /// ```
221    /// # use google_cloud_dataform_v1::builder::dataform::UpdateTeamFolder;
222    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
223    ///
224    /// let builder = prepare_request_builder();
225    /// let response = builder.send().await?;
226    /// # Ok(()) }
227    ///
228    /// fn prepare_request_builder() -> UpdateTeamFolder {
229    ///   # panic!();
230    ///   // ... details omitted ...
231    /// }
232    /// ```
233    #[derive(Clone, Debug)]
234    pub struct UpdateTeamFolder(RequestBuilder<crate::model::UpdateTeamFolderRequest>);
235
236    impl UpdateTeamFolder {
237        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
238            Self(RequestBuilder::new(stub))
239        }
240
241        /// Sets the full request, replacing any prior values.
242        pub fn with_request<V: Into<crate::model::UpdateTeamFolderRequest>>(
243            mut self,
244            v: V,
245        ) -> Self {
246            self.0.request = v.into();
247            self
248        }
249
250        /// Sets all the options, replacing any prior values.
251        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
252            self.0.options = v.into();
253            self
254        }
255
256        /// Sends the request.
257        pub async fn send(self) -> Result<crate::model::TeamFolder> {
258            (*self.0.stub)
259                .update_team_folder(self.0.request, self.0.options)
260                .await
261                .map(crate::Response::into_body)
262        }
263
264        /// Sets the value of [update_mask][crate::model::UpdateTeamFolderRequest::update_mask].
265        pub fn set_update_mask<T>(mut self, v: T) -> Self
266        where
267            T: std::convert::Into<wkt::FieldMask>,
268        {
269            self.0.request.update_mask = std::option::Option::Some(v.into());
270            self
271        }
272
273        /// Sets or clears the value of [update_mask][crate::model::UpdateTeamFolderRequest::update_mask].
274        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
275        where
276            T: std::convert::Into<wkt::FieldMask>,
277        {
278            self.0.request.update_mask = v.map(|x| x.into());
279            self
280        }
281
282        /// Sets the value of [team_folder][crate::model::UpdateTeamFolderRequest::team_folder].
283        ///
284        /// This is a **required** field for requests.
285        pub fn set_team_folder<T>(mut self, v: T) -> Self
286        where
287            T: std::convert::Into<crate::model::TeamFolder>,
288        {
289            self.0.request.team_folder = std::option::Option::Some(v.into());
290            self
291        }
292
293        /// Sets or clears the value of [team_folder][crate::model::UpdateTeamFolderRequest::team_folder].
294        ///
295        /// This is a **required** field for requests.
296        pub fn set_or_clear_team_folder<T>(mut self, v: std::option::Option<T>) -> Self
297        where
298            T: std::convert::Into<crate::model::TeamFolder>,
299        {
300            self.0.request.team_folder = v.map(|x| x.into());
301            self
302        }
303    }
304
305    #[doc(hidden)]
306    impl crate::RequestBuilder for UpdateTeamFolder {
307        fn request_options(&mut self) -> &mut crate::RequestOptions {
308            &mut self.0.options
309        }
310    }
311
312    /// The request builder for [Dataform::delete_team_folder][crate::client::Dataform::delete_team_folder] calls.
313    ///
314    /// # Example
315    /// ```
316    /// # use google_cloud_dataform_v1::builder::dataform::DeleteTeamFolder;
317    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
318    ///
319    /// let builder = prepare_request_builder();
320    /// let response = builder.send().await?;
321    /// # Ok(()) }
322    ///
323    /// fn prepare_request_builder() -> DeleteTeamFolder {
324    ///   # panic!();
325    ///   // ... details omitted ...
326    /// }
327    /// ```
328    #[derive(Clone, Debug)]
329    pub struct DeleteTeamFolder(RequestBuilder<crate::model::DeleteTeamFolderRequest>);
330
331    impl DeleteTeamFolder {
332        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
333            Self(RequestBuilder::new(stub))
334        }
335
336        /// Sets the full request, replacing any prior values.
337        pub fn with_request<V: Into<crate::model::DeleteTeamFolderRequest>>(
338            mut self,
339            v: V,
340        ) -> Self {
341            self.0.request = v.into();
342            self
343        }
344
345        /// Sets all the options, replacing any prior values.
346        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
347            self.0.options = v.into();
348            self
349        }
350
351        /// Sends the request.
352        pub async fn send(self) -> Result<()> {
353            (*self.0.stub)
354                .delete_team_folder(self.0.request, self.0.options)
355                .await
356                .map(crate::Response::into_body)
357        }
358
359        /// Sets the value of [name][crate::model::DeleteTeamFolderRequest::name].
360        ///
361        /// This is a **required** field for requests.
362        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
363            self.0.request.name = v.into();
364            self
365        }
366    }
367
368    #[doc(hidden)]
369    impl crate::RequestBuilder for DeleteTeamFolder {
370        fn request_options(&mut self) -> &mut crate::RequestOptions {
371            &mut self.0.options
372        }
373    }
374
375    /// The request builder for [Dataform::delete_team_folder_tree][crate::client::Dataform::delete_team_folder_tree] calls.
376    ///
377    /// # Example
378    /// ```
379    /// # use google_cloud_dataform_v1::builder::dataform::DeleteTeamFolderTree;
380    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
381    /// use google_cloud_lro::Poller;
382    ///
383    /// let builder = prepare_request_builder();
384    /// let response = builder.poller().until_done().await?;
385    /// # Ok(()) }
386    ///
387    /// fn prepare_request_builder() -> DeleteTeamFolderTree {
388    ///   # panic!();
389    ///   // ... details omitted ...
390    /// }
391    /// ```
392    #[derive(Clone, Debug)]
393    pub struct DeleteTeamFolderTree(RequestBuilder<crate::model::DeleteTeamFolderTreeRequest>);
394
395    impl DeleteTeamFolderTree {
396        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
397            Self(RequestBuilder::new(stub))
398        }
399
400        /// Sets the full request, replacing any prior values.
401        pub fn with_request<V: Into<crate::model::DeleteTeamFolderTreeRequest>>(
402            mut self,
403            v: V,
404        ) -> Self {
405            self.0.request = v.into();
406            self
407        }
408
409        /// Sets all the options, replacing any prior values.
410        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
411            self.0.options = v.into();
412            self
413        }
414
415        /// Sends the request.
416        ///
417        /// # Long running operations
418        ///
419        /// This starts, but does not poll, a longrunning operation. More information
420        /// on [delete_team_folder_tree][crate::client::Dataform::delete_team_folder_tree].
421        pub async fn send(self) -> Result<google_cloud_longrunning::model::Operation> {
422            (*self.0.stub)
423                .delete_team_folder_tree(self.0.request, self.0.options)
424                .await
425                .map(crate::Response::into_body)
426        }
427
428        /// Creates a [Poller][google_cloud_lro::Poller] to work with `delete_team_folder_tree`.
429        pub fn poller(
430            self,
431        ) -> impl google_cloud_lro::Poller<(), crate::model::DeleteFolderTreeMetadata> {
432            type Operation = google_cloud_lro::internal::Operation<
433                wkt::Empty,
434                crate::model::DeleteFolderTreeMetadata,
435            >;
436            let polling_error_policy = self.0.stub.get_polling_error_policy(&self.0.options);
437            let polling_backoff_policy = self.0.stub.get_polling_backoff_policy(&self.0.options);
438            let mut poller_options = self.0.stub.get_poller_options(&self.0.options);
439            if let Some(ref mut details) = poller_options.tracing {
440                details.method_name = "google_cloud_dataform_v1::client::Dataform::delete_team_folder_tree::until_done";
441            }
442
443            let stub = self.0.stub.clone();
444            let mut options = self.0.options.clone();
445            options.set_retry_policy(google_cloud_gax::retry_policy::NeverRetry);
446            let query = move |name| {
447                let stub = stub.clone();
448                let options = options.clone();
449                async {
450                    let op = GetOperation::new(stub)
451                        .set_name(name)
452                        .with_options(options)
453                        .send()
454                        .await?;
455                    Ok(Operation::new(op))
456                }
457            };
458
459            let start = move || async {
460                let op = self.send().await?;
461                Ok(Operation::new(op))
462            };
463
464            use google_cloud_lro::internal::PollerExt;
465            {
466                google_cloud_lro::internal::new_unit_response_poller(
467                    polling_error_policy,
468                    polling_backoff_policy,
469                    start,
470                    query,
471                )
472            }
473            .with_options(poller_options)
474        }
475
476        /// Sets the value of [name][crate::model::DeleteTeamFolderTreeRequest::name].
477        ///
478        /// This is a **required** field for requests.
479        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
480            self.0.request.name = v.into();
481            self
482        }
483
484        /// Sets the value of [force][crate::model::DeleteTeamFolderTreeRequest::force].
485        pub fn set_force<T: Into<bool>>(mut self, v: T) -> Self {
486            self.0.request.force = v.into();
487            self
488        }
489    }
490
491    #[doc(hidden)]
492    impl crate::RequestBuilder for DeleteTeamFolderTree {
493        fn request_options(&mut self) -> &mut crate::RequestOptions {
494            &mut self.0.options
495        }
496    }
497
498    /// The request builder for [Dataform::query_team_folder_contents][crate::client::Dataform::query_team_folder_contents] calls.
499    ///
500    /// # Example
501    /// ```
502    /// # use google_cloud_dataform_v1::builder::dataform::QueryTeamFolderContents;
503    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
504    /// use google_cloud_gax::paginator::ItemPaginator;
505    ///
506    /// let builder = prepare_request_builder();
507    /// let mut items = builder.by_item();
508    /// while let Some(result) = items.next().await {
509    ///   let item = result?;
510    /// }
511    /// # Ok(()) }
512    ///
513    /// fn prepare_request_builder() -> QueryTeamFolderContents {
514    ///   # panic!();
515    ///   // ... details omitted ...
516    /// }
517    /// ```
518    #[derive(Clone, Debug)]
519    pub struct QueryTeamFolderContents(
520        RequestBuilder<crate::model::QueryTeamFolderContentsRequest>,
521    );
522
523    impl QueryTeamFolderContents {
524        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
525            Self(RequestBuilder::new(stub))
526        }
527
528        /// Sets the full request, replacing any prior values.
529        pub fn with_request<V: Into<crate::model::QueryTeamFolderContentsRequest>>(
530            mut self,
531            v: V,
532        ) -> Self {
533            self.0.request = v.into();
534            self
535        }
536
537        /// Sets all the options, replacing any prior values.
538        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
539            self.0.options = v.into();
540            self
541        }
542
543        /// Sends the request.
544        pub async fn send(self) -> Result<crate::model::QueryTeamFolderContentsResponse> {
545            (*self.0.stub)
546                .query_team_folder_contents(self.0.request, self.0.options)
547                .await
548                .map(crate::Response::into_body)
549        }
550
551        /// Streams each page in the collection.
552        pub fn by_page(
553            self,
554        ) -> impl google_cloud_gax::paginator::Paginator<
555            crate::model::QueryTeamFolderContentsResponse,
556            crate::Error,
557        > {
558            use std::clone::Clone;
559            let token = self.0.request.page_token.clone();
560            let execute = move |token: String| {
561                let mut builder = self.clone();
562                builder.0.request = builder.0.request.set_page_token(token);
563                builder.send()
564            };
565            google_cloud_gax::paginator::internal::new_paginator(token, execute)
566        }
567
568        /// Streams each item in the collection.
569        pub fn by_item(
570            self,
571        ) -> impl google_cloud_gax::paginator::ItemPaginator<
572            crate::model::QueryTeamFolderContentsResponse,
573            crate::Error,
574        > {
575            use google_cloud_gax::paginator::Paginator;
576            self.by_page().items()
577        }
578
579        /// Sets the value of [team_folder][crate::model::QueryTeamFolderContentsRequest::team_folder].
580        ///
581        /// This is a **required** field for requests.
582        pub fn set_team_folder<T: Into<std::string::String>>(mut self, v: T) -> Self {
583            self.0.request.team_folder = v.into();
584            self
585        }
586
587        /// Sets the value of [page_size][crate::model::QueryTeamFolderContentsRequest::page_size].
588        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
589            self.0.request.page_size = v.into();
590            self
591        }
592
593        /// Sets the value of [page_token][crate::model::QueryTeamFolderContentsRequest::page_token].
594        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
595            self.0.request.page_token = v.into();
596            self
597        }
598
599        /// Sets the value of [order_by][crate::model::QueryTeamFolderContentsRequest::order_by].
600        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
601            self.0.request.order_by = v.into();
602            self
603        }
604
605        /// Sets the value of [filter][crate::model::QueryTeamFolderContentsRequest::filter].
606        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
607            self.0.request.filter = v.into();
608            self
609        }
610    }
611
612    #[doc(hidden)]
613    impl crate::RequestBuilder for QueryTeamFolderContents {
614        fn request_options(&mut self) -> &mut crate::RequestOptions {
615            &mut self.0.options
616        }
617    }
618
619    /// The request builder for [Dataform::search_team_folders][crate::client::Dataform::search_team_folders] calls.
620    ///
621    /// # Example
622    /// ```
623    /// # use google_cloud_dataform_v1::builder::dataform::SearchTeamFolders;
624    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
625    /// use google_cloud_gax::paginator::ItemPaginator;
626    ///
627    /// let builder = prepare_request_builder();
628    /// let mut items = builder.by_item();
629    /// while let Some(result) = items.next().await {
630    ///   let item = result?;
631    /// }
632    /// # Ok(()) }
633    ///
634    /// fn prepare_request_builder() -> SearchTeamFolders {
635    ///   # panic!();
636    ///   // ... details omitted ...
637    /// }
638    /// ```
639    #[derive(Clone, Debug)]
640    pub struct SearchTeamFolders(RequestBuilder<crate::model::SearchTeamFoldersRequest>);
641
642    impl SearchTeamFolders {
643        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
644            Self(RequestBuilder::new(stub))
645        }
646
647        /// Sets the full request, replacing any prior values.
648        pub fn with_request<V: Into<crate::model::SearchTeamFoldersRequest>>(
649            mut self,
650            v: V,
651        ) -> Self {
652            self.0.request = v.into();
653            self
654        }
655
656        /// Sets all the options, replacing any prior values.
657        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
658            self.0.options = v.into();
659            self
660        }
661
662        /// Sends the request.
663        pub async fn send(self) -> Result<crate::model::SearchTeamFoldersResponse> {
664            (*self.0.stub)
665                .search_team_folders(self.0.request, self.0.options)
666                .await
667                .map(crate::Response::into_body)
668        }
669
670        /// Streams each page in the collection.
671        pub fn by_page(
672            self,
673        ) -> impl google_cloud_gax::paginator::Paginator<
674            crate::model::SearchTeamFoldersResponse,
675            crate::Error,
676        > {
677            use std::clone::Clone;
678            let token = self.0.request.page_token.clone();
679            let execute = move |token: String| {
680                let mut builder = self.clone();
681                builder.0.request = builder.0.request.set_page_token(token);
682                builder.send()
683            };
684            google_cloud_gax::paginator::internal::new_paginator(token, execute)
685        }
686
687        /// Streams each item in the collection.
688        pub fn by_item(
689            self,
690        ) -> impl google_cloud_gax::paginator::ItemPaginator<
691            crate::model::SearchTeamFoldersResponse,
692            crate::Error,
693        > {
694            use google_cloud_gax::paginator::Paginator;
695            self.by_page().items()
696        }
697
698        /// Sets the value of [location][crate::model::SearchTeamFoldersRequest::location].
699        ///
700        /// This is a **required** field for requests.
701        pub fn set_location<T: Into<std::string::String>>(mut self, v: T) -> Self {
702            self.0.request.location = v.into();
703            self
704        }
705
706        /// Sets the value of [page_size][crate::model::SearchTeamFoldersRequest::page_size].
707        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
708            self.0.request.page_size = v.into();
709            self
710        }
711
712        /// Sets the value of [page_token][crate::model::SearchTeamFoldersRequest::page_token].
713        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
714            self.0.request.page_token = v.into();
715            self
716        }
717
718        /// Sets the value of [order_by][crate::model::SearchTeamFoldersRequest::order_by].
719        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
720            self.0.request.order_by = v.into();
721            self
722        }
723
724        /// Sets the value of [filter][crate::model::SearchTeamFoldersRequest::filter].
725        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
726            self.0.request.filter = v.into();
727            self
728        }
729    }
730
731    #[doc(hidden)]
732    impl crate::RequestBuilder for SearchTeamFolders {
733        fn request_options(&mut self) -> &mut crate::RequestOptions {
734            &mut self.0.options
735        }
736    }
737
738    /// The request builder for [Dataform::get_folder][crate::client::Dataform::get_folder] calls.
739    ///
740    /// # Example
741    /// ```
742    /// # use google_cloud_dataform_v1::builder::dataform::GetFolder;
743    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
744    ///
745    /// let builder = prepare_request_builder();
746    /// let response = builder.send().await?;
747    /// # Ok(()) }
748    ///
749    /// fn prepare_request_builder() -> GetFolder {
750    ///   # panic!();
751    ///   // ... details omitted ...
752    /// }
753    /// ```
754    #[derive(Clone, Debug)]
755    pub struct GetFolder(RequestBuilder<crate::model::GetFolderRequest>);
756
757    impl GetFolder {
758        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
759            Self(RequestBuilder::new(stub))
760        }
761
762        /// Sets the full request, replacing any prior values.
763        pub fn with_request<V: Into<crate::model::GetFolderRequest>>(mut self, v: V) -> Self {
764            self.0.request = v.into();
765            self
766        }
767
768        /// Sets all the options, replacing any prior values.
769        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
770            self.0.options = v.into();
771            self
772        }
773
774        /// Sends the request.
775        pub async fn send(self) -> Result<crate::model::Folder> {
776            (*self.0.stub)
777                .get_folder(self.0.request, self.0.options)
778                .await
779                .map(crate::Response::into_body)
780        }
781
782        /// Sets the value of [name][crate::model::GetFolderRequest::name].
783        ///
784        /// This is a **required** field for requests.
785        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
786            self.0.request.name = v.into();
787            self
788        }
789    }
790
791    #[doc(hidden)]
792    impl crate::RequestBuilder for GetFolder {
793        fn request_options(&mut self) -> &mut crate::RequestOptions {
794            &mut self.0.options
795        }
796    }
797
798    /// The request builder for [Dataform::create_folder][crate::client::Dataform::create_folder] calls.
799    ///
800    /// # Example
801    /// ```
802    /// # use google_cloud_dataform_v1::builder::dataform::CreateFolder;
803    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
804    ///
805    /// let builder = prepare_request_builder();
806    /// let response = builder.send().await?;
807    /// # Ok(()) }
808    ///
809    /// fn prepare_request_builder() -> CreateFolder {
810    ///   # panic!();
811    ///   // ... details omitted ...
812    /// }
813    /// ```
814    #[derive(Clone, Debug)]
815    pub struct CreateFolder(RequestBuilder<crate::model::CreateFolderRequest>);
816
817    impl CreateFolder {
818        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
819            Self(RequestBuilder::new(stub))
820        }
821
822        /// Sets the full request, replacing any prior values.
823        pub fn with_request<V: Into<crate::model::CreateFolderRequest>>(mut self, v: V) -> Self {
824            self.0.request = v.into();
825            self
826        }
827
828        /// Sets all the options, replacing any prior values.
829        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
830            self.0.options = v.into();
831            self
832        }
833
834        /// Sends the request.
835        pub async fn send(self) -> Result<crate::model::Folder> {
836            (*self.0.stub)
837                .create_folder(self.0.request, self.0.options)
838                .await
839                .map(crate::Response::into_body)
840        }
841
842        /// Sets the value of [parent][crate::model::CreateFolderRequest::parent].
843        ///
844        /// This is a **required** field for requests.
845        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
846            self.0.request.parent = v.into();
847            self
848        }
849
850        /// Sets the value of [folder][crate::model::CreateFolderRequest::folder].
851        ///
852        /// This is a **required** field for requests.
853        pub fn set_folder<T>(mut self, v: T) -> Self
854        where
855            T: std::convert::Into<crate::model::Folder>,
856        {
857            self.0.request.folder = std::option::Option::Some(v.into());
858            self
859        }
860
861        /// Sets or clears the value of [folder][crate::model::CreateFolderRequest::folder].
862        ///
863        /// This is a **required** field for requests.
864        pub fn set_or_clear_folder<T>(mut self, v: std::option::Option<T>) -> Self
865        where
866            T: std::convert::Into<crate::model::Folder>,
867        {
868            self.0.request.folder = v.map(|x| x.into());
869            self
870        }
871    }
872
873    #[doc(hidden)]
874    impl crate::RequestBuilder for CreateFolder {
875        fn request_options(&mut self) -> &mut crate::RequestOptions {
876            &mut self.0.options
877        }
878    }
879
880    /// The request builder for [Dataform::update_folder][crate::client::Dataform::update_folder] calls.
881    ///
882    /// # Example
883    /// ```
884    /// # use google_cloud_dataform_v1::builder::dataform::UpdateFolder;
885    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
886    ///
887    /// let builder = prepare_request_builder();
888    /// let response = builder.send().await?;
889    /// # Ok(()) }
890    ///
891    /// fn prepare_request_builder() -> UpdateFolder {
892    ///   # panic!();
893    ///   // ... details omitted ...
894    /// }
895    /// ```
896    #[derive(Clone, Debug)]
897    pub struct UpdateFolder(RequestBuilder<crate::model::UpdateFolderRequest>);
898
899    impl UpdateFolder {
900        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
901            Self(RequestBuilder::new(stub))
902        }
903
904        /// Sets the full request, replacing any prior values.
905        pub fn with_request<V: Into<crate::model::UpdateFolderRequest>>(mut self, v: V) -> Self {
906            self.0.request = v.into();
907            self
908        }
909
910        /// Sets all the options, replacing any prior values.
911        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
912            self.0.options = v.into();
913            self
914        }
915
916        /// Sends the request.
917        pub async fn send(self) -> Result<crate::model::Folder> {
918            (*self.0.stub)
919                .update_folder(self.0.request, self.0.options)
920                .await
921                .map(crate::Response::into_body)
922        }
923
924        /// Sets the value of [update_mask][crate::model::UpdateFolderRequest::update_mask].
925        pub fn set_update_mask<T>(mut self, v: T) -> Self
926        where
927            T: std::convert::Into<wkt::FieldMask>,
928        {
929            self.0.request.update_mask = std::option::Option::Some(v.into());
930            self
931        }
932
933        /// Sets or clears the value of [update_mask][crate::model::UpdateFolderRequest::update_mask].
934        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
935        where
936            T: std::convert::Into<wkt::FieldMask>,
937        {
938            self.0.request.update_mask = v.map(|x| x.into());
939            self
940        }
941
942        /// Sets the value of [folder][crate::model::UpdateFolderRequest::folder].
943        ///
944        /// This is a **required** field for requests.
945        pub fn set_folder<T>(mut self, v: T) -> Self
946        where
947            T: std::convert::Into<crate::model::Folder>,
948        {
949            self.0.request.folder = std::option::Option::Some(v.into());
950            self
951        }
952
953        /// Sets or clears the value of [folder][crate::model::UpdateFolderRequest::folder].
954        ///
955        /// This is a **required** field for requests.
956        pub fn set_or_clear_folder<T>(mut self, v: std::option::Option<T>) -> Self
957        where
958            T: std::convert::Into<crate::model::Folder>,
959        {
960            self.0.request.folder = v.map(|x| x.into());
961            self
962        }
963    }
964
965    #[doc(hidden)]
966    impl crate::RequestBuilder for UpdateFolder {
967        fn request_options(&mut self) -> &mut crate::RequestOptions {
968            &mut self.0.options
969        }
970    }
971
972    /// The request builder for [Dataform::delete_folder][crate::client::Dataform::delete_folder] calls.
973    ///
974    /// # Example
975    /// ```
976    /// # use google_cloud_dataform_v1::builder::dataform::DeleteFolder;
977    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
978    ///
979    /// let builder = prepare_request_builder();
980    /// let response = builder.send().await?;
981    /// # Ok(()) }
982    ///
983    /// fn prepare_request_builder() -> DeleteFolder {
984    ///   # panic!();
985    ///   // ... details omitted ...
986    /// }
987    /// ```
988    #[derive(Clone, Debug)]
989    pub struct DeleteFolder(RequestBuilder<crate::model::DeleteFolderRequest>);
990
991    impl DeleteFolder {
992        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
993            Self(RequestBuilder::new(stub))
994        }
995
996        /// Sets the full request, replacing any prior values.
997        pub fn with_request<V: Into<crate::model::DeleteFolderRequest>>(mut self, v: V) -> Self {
998            self.0.request = v.into();
999            self
1000        }
1001
1002        /// Sets all the options, replacing any prior values.
1003        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1004            self.0.options = v.into();
1005            self
1006        }
1007
1008        /// Sends the request.
1009        pub async fn send(self) -> Result<()> {
1010            (*self.0.stub)
1011                .delete_folder(self.0.request, self.0.options)
1012                .await
1013                .map(crate::Response::into_body)
1014        }
1015
1016        /// Sets the value of [name][crate::model::DeleteFolderRequest::name].
1017        ///
1018        /// This is a **required** field for requests.
1019        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1020            self.0.request.name = v.into();
1021            self
1022        }
1023    }
1024
1025    #[doc(hidden)]
1026    impl crate::RequestBuilder for DeleteFolder {
1027        fn request_options(&mut self) -> &mut crate::RequestOptions {
1028            &mut self.0.options
1029        }
1030    }
1031
1032    /// The request builder for [Dataform::delete_folder_tree][crate::client::Dataform::delete_folder_tree] calls.
1033    ///
1034    /// # Example
1035    /// ```
1036    /// # use google_cloud_dataform_v1::builder::dataform::DeleteFolderTree;
1037    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1038    /// use google_cloud_lro::Poller;
1039    ///
1040    /// let builder = prepare_request_builder();
1041    /// let response = builder.poller().until_done().await?;
1042    /// # Ok(()) }
1043    ///
1044    /// fn prepare_request_builder() -> DeleteFolderTree {
1045    ///   # panic!();
1046    ///   // ... details omitted ...
1047    /// }
1048    /// ```
1049    #[derive(Clone, Debug)]
1050    pub struct DeleteFolderTree(RequestBuilder<crate::model::DeleteFolderTreeRequest>);
1051
1052    impl DeleteFolderTree {
1053        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1054            Self(RequestBuilder::new(stub))
1055        }
1056
1057        /// Sets the full request, replacing any prior values.
1058        pub fn with_request<V: Into<crate::model::DeleteFolderTreeRequest>>(
1059            mut self,
1060            v: V,
1061        ) -> Self {
1062            self.0.request = v.into();
1063            self
1064        }
1065
1066        /// Sets all the options, replacing any prior values.
1067        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1068            self.0.options = v.into();
1069            self
1070        }
1071
1072        /// Sends the request.
1073        ///
1074        /// # Long running operations
1075        ///
1076        /// This starts, but does not poll, a longrunning operation. More information
1077        /// on [delete_folder_tree][crate::client::Dataform::delete_folder_tree].
1078        pub async fn send(self) -> Result<google_cloud_longrunning::model::Operation> {
1079            (*self.0.stub)
1080                .delete_folder_tree(self.0.request, self.0.options)
1081                .await
1082                .map(crate::Response::into_body)
1083        }
1084
1085        /// Creates a [Poller][google_cloud_lro::Poller] to work with `delete_folder_tree`.
1086        pub fn poller(
1087            self,
1088        ) -> impl google_cloud_lro::Poller<(), crate::model::DeleteFolderTreeMetadata> {
1089            type Operation = google_cloud_lro::internal::Operation<
1090                wkt::Empty,
1091                crate::model::DeleteFolderTreeMetadata,
1092            >;
1093            let polling_error_policy = self.0.stub.get_polling_error_policy(&self.0.options);
1094            let polling_backoff_policy = self.0.stub.get_polling_backoff_policy(&self.0.options);
1095            let mut poller_options = self.0.stub.get_poller_options(&self.0.options);
1096            if let Some(ref mut details) = poller_options.tracing {
1097                details.method_name =
1098                    "google_cloud_dataform_v1::client::Dataform::delete_folder_tree::until_done";
1099            }
1100
1101            let stub = self.0.stub.clone();
1102            let mut options = self.0.options.clone();
1103            options.set_retry_policy(google_cloud_gax::retry_policy::NeverRetry);
1104            let query = move |name| {
1105                let stub = stub.clone();
1106                let options = options.clone();
1107                async {
1108                    let op = GetOperation::new(stub)
1109                        .set_name(name)
1110                        .with_options(options)
1111                        .send()
1112                        .await?;
1113                    Ok(Operation::new(op))
1114                }
1115            };
1116
1117            let start = move || async {
1118                let op = self.send().await?;
1119                Ok(Operation::new(op))
1120            };
1121
1122            use google_cloud_lro::internal::PollerExt;
1123            {
1124                google_cloud_lro::internal::new_unit_response_poller(
1125                    polling_error_policy,
1126                    polling_backoff_policy,
1127                    start,
1128                    query,
1129                )
1130            }
1131            .with_options(poller_options)
1132        }
1133
1134        /// Sets the value of [name][crate::model::DeleteFolderTreeRequest::name].
1135        ///
1136        /// This is a **required** field for requests.
1137        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1138            self.0.request.name = v.into();
1139            self
1140        }
1141
1142        /// Sets the value of [force][crate::model::DeleteFolderTreeRequest::force].
1143        pub fn set_force<T: Into<bool>>(mut self, v: T) -> Self {
1144            self.0.request.force = v.into();
1145            self
1146        }
1147    }
1148
1149    #[doc(hidden)]
1150    impl crate::RequestBuilder for DeleteFolderTree {
1151        fn request_options(&mut self) -> &mut crate::RequestOptions {
1152            &mut self.0.options
1153        }
1154    }
1155
1156    /// The request builder for [Dataform::query_folder_contents][crate::client::Dataform::query_folder_contents] calls.
1157    ///
1158    /// # Example
1159    /// ```
1160    /// # use google_cloud_dataform_v1::builder::dataform::QueryFolderContents;
1161    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1162    /// use google_cloud_gax::paginator::ItemPaginator;
1163    ///
1164    /// let builder = prepare_request_builder();
1165    /// let mut items = builder.by_item();
1166    /// while let Some(result) = items.next().await {
1167    ///   let item = result?;
1168    /// }
1169    /// # Ok(()) }
1170    ///
1171    /// fn prepare_request_builder() -> QueryFolderContents {
1172    ///   # panic!();
1173    ///   // ... details omitted ...
1174    /// }
1175    /// ```
1176    #[derive(Clone, Debug)]
1177    pub struct QueryFolderContents(RequestBuilder<crate::model::QueryFolderContentsRequest>);
1178
1179    impl QueryFolderContents {
1180        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1181            Self(RequestBuilder::new(stub))
1182        }
1183
1184        /// Sets the full request, replacing any prior values.
1185        pub fn with_request<V: Into<crate::model::QueryFolderContentsRequest>>(
1186            mut self,
1187            v: V,
1188        ) -> Self {
1189            self.0.request = v.into();
1190            self
1191        }
1192
1193        /// Sets all the options, replacing any prior values.
1194        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1195            self.0.options = v.into();
1196            self
1197        }
1198
1199        /// Sends the request.
1200        pub async fn send(self) -> Result<crate::model::QueryFolderContentsResponse> {
1201            (*self.0.stub)
1202                .query_folder_contents(self.0.request, self.0.options)
1203                .await
1204                .map(crate::Response::into_body)
1205        }
1206
1207        /// Streams each page in the collection.
1208        pub fn by_page(
1209            self,
1210        ) -> impl google_cloud_gax::paginator::Paginator<
1211            crate::model::QueryFolderContentsResponse,
1212            crate::Error,
1213        > {
1214            use std::clone::Clone;
1215            let token = self.0.request.page_token.clone();
1216            let execute = move |token: String| {
1217                let mut builder = self.clone();
1218                builder.0.request = builder.0.request.set_page_token(token);
1219                builder.send()
1220            };
1221            google_cloud_gax::paginator::internal::new_paginator(token, execute)
1222        }
1223
1224        /// Streams each item in the collection.
1225        pub fn by_item(
1226            self,
1227        ) -> impl google_cloud_gax::paginator::ItemPaginator<
1228            crate::model::QueryFolderContentsResponse,
1229            crate::Error,
1230        > {
1231            use google_cloud_gax::paginator::Paginator;
1232            self.by_page().items()
1233        }
1234
1235        /// Sets the value of [folder][crate::model::QueryFolderContentsRequest::folder].
1236        ///
1237        /// This is a **required** field for requests.
1238        pub fn set_folder<T: Into<std::string::String>>(mut self, v: T) -> Self {
1239            self.0.request.folder = v.into();
1240            self
1241        }
1242
1243        /// Sets the value of [page_size][crate::model::QueryFolderContentsRequest::page_size].
1244        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
1245            self.0.request.page_size = v.into();
1246            self
1247        }
1248
1249        /// Sets the value of [page_token][crate::model::QueryFolderContentsRequest::page_token].
1250        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
1251            self.0.request.page_token = v.into();
1252            self
1253        }
1254
1255        /// Sets the value of [order_by][crate::model::QueryFolderContentsRequest::order_by].
1256        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
1257            self.0.request.order_by = v.into();
1258            self
1259        }
1260
1261        /// Sets the value of [filter][crate::model::QueryFolderContentsRequest::filter].
1262        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
1263            self.0.request.filter = v.into();
1264            self
1265        }
1266    }
1267
1268    #[doc(hidden)]
1269    impl crate::RequestBuilder for QueryFolderContents {
1270        fn request_options(&mut self) -> &mut crate::RequestOptions {
1271            &mut self.0.options
1272        }
1273    }
1274
1275    /// The request builder for [Dataform::query_user_root_contents][crate::client::Dataform::query_user_root_contents] calls.
1276    ///
1277    /// # Example
1278    /// ```
1279    /// # use google_cloud_dataform_v1::builder::dataform::QueryUserRootContents;
1280    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1281    /// use google_cloud_gax::paginator::ItemPaginator;
1282    ///
1283    /// let builder = prepare_request_builder();
1284    /// let mut items = builder.by_item();
1285    /// while let Some(result) = items.next().await {
1286    ///   let item = result?;
1287    /// }
1288    /// # Ok(()) }
1289    ///
1290    /// fn prepare_request_builder() -> QueryUserRootContents {
1291    ///   # panic!();
1292    ///   // ... details omitted ...
1293    /// }
1294    /// ```
1295    #[derive(Clone, Debug)]
1296    pub struct QueryUserRootContents(RequestBuilder<crate::model::QueryUserRootContentsRequest>);
1297
1298    impl QueryUserRootContents {
1299        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1300            Self(RequestBuilder::new(stub))
1301        }
1302
1303        /// Sets the full request, replacing any prior values.
1304        pub fn with_request<V: Into<crate::model::QueryUserRootContentsRequest>>(
1305            mut self,
1306            v: V,
1307        ) -> Self {
1308            self.0.request = v.into();
1309            self
1310        }
1311
1312        /// Sets all the options, replacing any prior values.
1313        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1314            self.0.options = v.into();
1315            self
1316        }
1317
1318        /// Sends the request.
1319        pub async fn send(self) -> Result<crate::model::QueryUserRootContentsResponse> {
1320            (*self.0.stub)
1321                .query_user_root_contents(self.0.request, self.0.options)
1322                .await
1323                .map(crate::Response::into_body)
1324        }
1325
1326        /// Streams each page in the collection.
1327        pub fn by_page(
1328            self,
1329        ) -> impl google_cloud_gax::paginator::Paginator<
1330            crate::model::QueryUserRootContentsResponse,
1331            crate::Error,
1332        > {
1333            use std::clone::Clone;
1334            let token = self.0.request.page_token.clone();
1335            let execute = move |token: String| {
1336                let mut builder = self.clone();
1337                builder.0.request = builder.0.request.set_page_token(token);
1338                builder.send()
1339            };
1340            google_cloud_gax::paginator::internal::new_paginator(token, execute)
1341        }
1342
1343        /// Streams each item in the collection.
1344        pub fn by_item(
1345            self,
1346        ) -> impl google_cloud_gax::paginator::ItemPaginator<
1347            crate::model::QueryUserRootContentsResponse,
1348            crate::Error,
1349        > {
1350            use google_cloud_gax::paginator::Paginator;
1351            self.by_page().items()
1352        }
1353
1354        /// Sets the value of [location][crate::model::QueryUserRootContentsRequest::location].
1355        ///
1356        /// This is a **required** field for requests.
1357        pub fn set_location<T: Into<std::string::String>>(mut self, v: T) -> Self {
1358            self.0.request.location = v.into();
1359            self
1360        }
1361
1362        /// Sets the value of [page_size][crate::model::QueryUserRootContentsRequest::page_size].
1363        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
1364            self.0.request.page_size = v.into();
1365            self
1366        }
1367
1368        /// Sets the value of [page_token][crate::model::QueryUserRootContentsRequest::page_token].
1369        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
1370            self.0.request.page_token = v.into();
1371            self
1372        }
1373
1374        /// Sets the value of [order_by][crate::model::QueryUserRootContentsRequest::order_by].
1375        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
1376            self.0.request.order_by = v.into();
1377            self
1378        }
1379
1380        /// Sets the value of [filter][crate::model::QueryUserRootContentsRequest::filter].
1381        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
1382            self.0.request.filter = v.into();
1383            self
1384        }
1385    }
1386
1387    #[doc(hidden)]
1388    impl crate::RequestBuilder for QueryUserRootContents {
1389        fn request_options(&mut self) -> &mut crate::RequestOptions {
1390            &mut self.0.options
1391        }
1392    }
1393
1394    /// The request builder for [Dataform::move_folder][crate::client::Dataform::move_folder] calls.
1395    ///
1396    /// # Example
1397    /// ```
1398    /// # use google_cloud_dataform_v1::builder::dataform::MoveFolder;
1399    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1400    /// use google_cloud_lro::Poller;
1401    ///
1402    /// let builder = prepare_request_builder();
1403    /// let response = builder.poller().until_done().await?;
1404    /// # Ok(()) }
1405    ///
1406    /// fn prepare_request_builder() -> MoveFolder {
1407    ///   # panic!();
1408    ///   // ... details omitted ...
1409    /// }
1410    /// ```
1411    #[derive(Clone, Debug)]
1412    pub struct MoveFolder(RequestBuilder<crate::model::MoveFolderRequest>);
1413
1414    impl MoveFolder {
1415        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1416            Self(RequestBuilder::new(stub))
1417        }
1418
1419        /// Sets the full request, replacing any prior values.
1420        pub fn with_request<V: Into<crate::model::MoveFolderRequest>>(mut self, v: V) -> Self {
1421            self.0.request = v.into();
1422            self
1423        }
1424
1425        /// Sets all the options, replacing any prior values.
1426        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1427            self.0.options = v.into();
1428            self
1429        }
1430
1431        /// Sends the request.
1432        ///
1433        /// # Long running operations
1434        ///
1435        /// This starts, but does not poll, a longrunning operation. More information
1436        /// on [move_folder][crate::client::Dataform::move_folder].
1437        pub async fn send(self) -> Result<google_cloud_longrunning::model::Operation> {
1438            (*self.0.stub)
1439                .move_folder(self.0.request, self.0.options)
1440                .await
1441                .map(crate::Response::into_body)
1442        }
1443
1444        /// Creates a [Poller][google_cloud_lro::Poller] to work with `move_folder`.
1445        pub fn poller(self) -> impl google_cloud_lro::Poller<(), crate::model::MoveFolderMetadata> {
1446            type Operation =
1447                google_cloud_lro::internal::Operation<wkt::Empty, crate::model::MoveFolderMetadata>;
1448            let polling_error_policy = self.0.stub.get_polling_error_policy(&self.0.options);
1449            let polling_backoff_policy = self.0.stub.get_polling_backoff_policy(&self.0.options);
1450            let mut poller_options = self.0.stub.get_poller_options(&self.0.options);
1451            if let Some(ref mut details) = poller_options.tracing {
1452                details.method_name =
1453                    "google_cloud_dataform_v1::client::Dataform::move_folder::until_done";
1454            }
1455
1456            let stub = self.0.stub.clone();
1457            let mut options = self.0.options.clone();
1458            options.set_retry_policy(google_cloud_gax::retry_policy::NeverRetry);
1459            let query = move |name| {
1460                let stub = stub.clone();
1461                let options = options.clone();
1462                async {
1463                    let op = GetOperation::new(stub)
1464                        .set_name(name)
1465                        .with_options(options)
1466                        .send()
1467                        .await?;
1468                    Ok(Operation::new(op))
1469                }
1470            };
1471
1472            let start = move || async {
1473                let op = self.send().await?;
1474                Ok(Operation::new(op))
1475            };
1476
1477            use google_cloud_lro::internal::PollerExt;
1478            {
1479                google_cloud_lro::internal::new_unit_response_poller(
1480                    polling_error_policy,
1481                    polling_backoff_policy,
1482                    start,
1483                    query,
1484                )
1485            }
1486            .with_options(poller_options)
1487        }
1488
1489        /// Sets the value of [name][crate::model::MoveFolderRequest::name].
1490        ///
1491        /// This is a **required** field for requests.
1492        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1493            self.0.request.name = v.into();
1494            self
1495        }
1496
1497        /// Sets the value of [destination_containing_folder][crate::model::MoveFolderRequest::destination_containing_folder].
1498        pub fn set_destination_containing_folder<T>(mut self, v: T) -> Self
1499        where
1500            T: std::convert::Into<std::string::String>,
1501        {
1502            self.0.request.destination_containing_folder = std::option::Option::Some(v.into());
1503            self
1504        }
1505
1506        /// Sets or clears the value of [destination_containing_folder][crate::model::MoveFolderRequest::destination_containing_folder].
1507        pub fn set_or_clear_destination_containing_folder<T>(
1508            mut self,
1509            v: std::option::Option<T>,
1510        ) -> Self
1511        where
1512            T: std::convert::Into<std::string::String>,
1513        {
1514            self.0.request.destination_containing_folder = v.map(|x| x.into());
1515            self
1516        }
1517    }
1518
1519    #[doc(hidden)]
1520    impl crate::RequestBuilder for MoveFolder {
1521        fn request_options(&mut self) -> &mut crate::RequestOptions {
1522            &mut self.0.options
1523        }
1524    }
1525
1526    /// The request builder for [Dataform::list_repositories][crate::client::Dataform::list_repositories] calls.
1527    ///
1528    /// # Example
1529    /// ```
1530    /// # use google_cloud_dataform_v1::builder::dataform::ListRepositories;
1531    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1532    /// use google_cloud_gax::paginator::ItemPaginator;
1533    ///
1534    /// let builder = prepare_request_builder();
1535    /// let mut items = builder.by_item();
1536    /// while let Some(result) = items.next().await {
1537    ///   let item = result?;
1538    /// }
1539    /// # Ok(()) }
1540    ///
1541    /// fn prepare_request_builder() -> ListRepositories {
1542    ///   # panic!();
1543    ///   // ... details omitted ...
1544    /// }
1545    /// ```
1546    #[derive(Clone, Debug)]
1547    pub struct ListRepositories(RequestBuilder<crate::model::ListRepositoriesRequest>);
1548
1549    impl ListRepositories {
1550        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1551            Self(RequestBuilder::new(stub))
1552        }
1553
1554        /// Sets the full request, replacing any prior values.
1555        pub fn with_request<V: Into<crate::model::ListRepositoriesRequest>>(
1556            mut self,
1557            v: V,
1558        ) -> Self {
1559            self.0.request = v.into();
1560            self
1561        }
1562
1563        /// Sets all the options, replacing any prior values.
1564        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1565            self.0.options = v.into();
1566            self
1567        }
1568
1569        /// Sends the request.
1570        pub async fn send(self) -> Result<crate::model::ListRepositoriesResponse> {
1571            (*self.0.stub)
1572                .list_repositories(self.0.request, self.0.options)
1573                .await
1574                .map(crate::Response::into_body)
1575        }
1576
1577        /// Streams each page in the collection.
1578        pub fn by_page(
1579            self,
1580        ) -> impl google_cloud_gax::paginator::Paginator<
1581            crate::model::ListRepositoriesResponse,
1582            crate::Error,
1583        > {
1584            use std::clone::Clone;
1585            let token = self.0.request.page_token.clone();
1586            let execute = move |token: String| {
1587                let mut builder = self.clone();
1588                builder.0.request = builder.0.request.set_page_token(token);
1589                builder.send()
1590            };
1591            google_cloud_gax::paginator::internal::new_paginator(token, execute)
1592        }
1593
1594        /// Streams each item in the collection.
1595        pub fn by_item(
1596            self,
1597        ) -> impl google_cloud_gax::paginator::ItemPaginator<
1598            crate::model::ListRepositoriesResponse,
1599            crate::Error,
1600        > {
1601            use google_cloud_gax::paginator::Paginator;
1602            self.by_page().items()
1603        }
1604
1605        /// Sets the value of [parent][crate::model::ListRepositoriesRequest::parent].
1606        ///
1607        /// This is a **required** field for requests.
1608        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
1609            self.0.request.parent = v.into();
1610            self
1611        }
1612
1613        /// Sets the value of [page_size][crate::model::ListRepositoriesRequest::page_size].
1614        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
1615            self.0.request.page_size = v.into();
1616            self
1617        }
1618
1619        /// Sets the value of [page_token][crate::model::ListRepositoriesRequest::page_token].
1620        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
1621            self.0.request.page_token = v.into();
1622            self
1623        }
1624
1625        /// Sets the value of [order_by][crate::model::ListRepositoriesRequest::order_by].
1626        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
1627            self.0.request.order_by = v.into();
1628            self
1629        }
1630
1631        /// Sets the value of [filter][crate::model::ListRepositoriesRequest::filter].
1632        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
1633            self.0.request.filter = v.into();
1634            self
1635        }
1636    }
1637
1638    #[doc(hidden)]
1639    impl crate::RequestBuilder for ListRepositories {
1640        fn request_options(&mut self) -> &mut crate::RequestOptions {
1641            &mut self.0.options
1642        }
1643    }
1644
1645    /// The request builder for [Dataform::get_repository][crate::client::Dataform::get_repository] calls.
1646    ///
1647    /// # Example
1648    /// ```
1649    /// # use google_cloud_dataform_v1::builder::dataform::GetRepository;
1650    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1651    ///
1652    /// let builder = prepare_request_builder();
1653    /// let response = builder.send().await?;
1654    /// # Ok(()) }
1655    ///
1656    /// fn prepare_request_builder() -> GetRepository {
1657    ///   # panic!();
1658    ///   // ... details omitted ...
1659    /// }
1660    /// ```
1661    #[derive(Clone, Debug)]
1662    pub struct GetRepository(RequestBuilder<crate::model::GetRepositoryRequest>);
1663
1664    impl GetRepository {
1665        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1666            Self(RequestBuilder::new(stub))
1667        }
1668
1669        /// Sets the full request, replacing any prior values.
1670        pub fn with_request<V: Into<crate::model::GetRepositoryRequest>>(mut self, v: V) -> Self {
1671            self.0.request = v.into();
1672            self
1673        }
1674
1675        /// Sets all the options, replacing any prior values.
1676        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1677            self.0.options = v.into();
1678            self
1679        }
1680
1681        /// Sends the request.
1682        pub async fn send(self) -> Result<crate::model::Repository> {
1683            (*self.0.stub)
1684                .get_repository(self.0.request, self.0.options)
1685                .await
1686                .map(crate::Response::into_body)
1687        }
1688
1689        /// Sets the value of [name][crate::model::GetRepositoryRequest::name].
1690        ///
1691        /// This is a **required** field for requests.
1692        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1693            self.0.request.name = v.into();
1694            self
1695        }
1696    }
1697
1698    #[doc(hidden)]
1699    impl crate::RequestBuilder for GetRepository {
1700        fn request_options(&mut self) -> &mut crate::RequestOptions {
1701            &mut self.0.options
1702        }
1703    }
1704
1705    /// The request builder for [Dataform::create_repository][crate::client::Dataform::create_repository] calls.
1706    ///
1707    /// # Example
1708    /// ```
1709    /// # use google_cloud_dataform_v1::builder::dataform::CreateRepository;
1710    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1711    ///
1712    /// let builder = prepare_request_builder();
1713    /// let response = builder.send().await?;
1714    /// # Ok(()) }
1715    ///
1716    /// fn prepare_request_builder() -> CreateRepository {
1717    ///   # panic!();
1718    ///   // ... details omitted ...
1719    /// }
1720    /// ```
1721    #[derive(Clone, Debug)]
1722    pub struct CreateRepository(RequestBuilder<crate::model::CreateRepositoryRequest>);
1723
1724    impl CreateRepository {
1725        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1726            Self(RequestBuilder::new(stub))
1727        }
1728
1729        /// Sets the full request, replacing any prior values.
1730        pub fn with_request<V: Into<crate::model::CreateRepositoryRequest>>(
1731            mut self,
1732            v: V,
1733        ) -> Self {
1734            self.0.request = v.into();
1735            self
1736        }
1737
1738        /// Sets all the options, replacing any prior values.
1739        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1740            self.0.options = v.into();
1741            self
1742        }
1743
1744        /// Sends the request.
1745        pub async fn send(self) -> Result<crate::model::Repository> {
1746            (*self.0.stub)
1747                .create_repository(self.0.request, self.0.options)
1748                .await
1749                .map(crate::Response::into_body)
1750        }
1751
1752        /// Sets the value of [parent][crate::model::CreateRepositoryRequest::parent].
1753        ///
1754        /// This is a **required** field for requests.
1755        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
1756            self.0.request.parent = v.into();
1757            self
1758        }
1759
1760        /// Sets the value of [repository][crate::model::CreateRepositoryRequest::repository].
1761        ///
1762        /// This is a **required** field for requests.
1763        pub fn set_repository<T>(mut self, v: T) -> Self
1764        where
1765            T: std::convert::Into<crate::model::Repository>,
1766        {
1767            self.0.request.repository = std::option::Option::Some(v.into());
1768            self
1769        }
1770
1771        /// Sets or clears the value of [repository][crate::model::CreateRepositoryRequest::repository].
1772        ///
1773        /// This is a **required** field for requests.
1774        pub fn set_or_clear_repository<T>(mut self, v: std::option::Option<T>) -> Self
1775        where
1776            T: std::convert::Into<crate::model::Repository>,
1777        {
1778            self.0.request.repository = v.map(|x| x.into());
1779            self
1780        }
1781
1782        /// Sets the value of [repository_id][crate::model::CreateRepositoryRequest::repository_id].
1783        ///
1784        /// This is a **required** field for requests.
1785        pub fn set_repository_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
1786            self.0.request.repository_id = v.into();
1787            self
1788        }
1789    }
1790
1791    #[doc(hidden)]
1792    impl crate::RequestBuilder for CreateRepository {
1793        fn request_options(&mut self) -> &mut crate::RequestOptions {
1794            &mut self.0.options
1795        }
1796    }
1797
1798    /// The request builder for [Dataform::update_repository][crate::client::Dataform::update_repository] calls.
1799    ///
1800    /// # Example
1801    /// ```
1802    /// # use google_cloud_dataform_v1::builder::dataform::UpdateRepository;
1803    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1804    ///
1805    /// let builder = prepare_request_builder();
1806    /// let response = builder.send().await?;
1807    /// # Ok(()) }
1808    ///
1809    /// fn prepare_request_builder() -> UpdateRepository {
1810    ///   # panic!();
1811    ///   // ... details omitted ...
1812    /// }
1813    /// ```
1814    #[derive(Clone, Debug)]
1815    pub struct UpdateRepository(RequestBuilder<crate::model::UpdateRepositoryRequest>);
1816
1817    impl UpdateRepository {
1818        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1819            Self(RequestBuilder::new(stub))
1820        }
1821
1822        /// Sets the full request, replacing any prior values.
1823        pub fn with_request<V: Into<crate::model::UpdateRepositoryRequest>>(
1824            mut self,
1825            v: V,
1826        ) -> Self {
1827            self.0.request = v.into();
1828            self
1829        }
1830
1831        /// Sets all the options, replacing any prior values.
1832        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1833            self.0.options = v.into();
1834            self
1835        }
1836
1837        /// Sends the request.
1838        pub async fn send(self) -> Result<crate::model::Repository> {
1839            (*self.0.stub)
1840                .update_repository(self.0.request, self.0.options)
1841                .await
1842                .map(crate::Response::into_body)
1843        }
1844
1845        /// Sets the value of [update_mask][crate::model::UpdateRepositoryRequest::update_mask].
1846        pub fn set_update_mask<T>(mut self, v: T) -> Self
1847        where
1848            T: std::convert::Into<wkt::FieldMask>,
1849        {
1850            self.0.request.update_mask = std::option::Option::Some(v.into());
1851            self
1852        }
1853
1854        /// Sets or clears the value of [update_mask][crate::model::UpdateRepositoryRequest::update_mask].
1855        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
1856        where
1857            T: std::convert::Into<wkt::FieldMask>,
1858        {
1859            self.0.request.update_mask = v.map(|x| x.into());
1860            self
1861        }
1862
1863        /// Sets the value of [repository][crate::model::UpdateRepositoryRequest::repository].
1864        ///
1865        /// This is a **required** field for requests.
1866        pub fn set_repository<T>(mut self, v: T) -> Self
1867        where
1868            T: std::convert::Into<crate::model::Repository>,
1869        {
1870            self.0.request.repository = std::option::Option::Some(v.into());
1871            self
1872        }
1873
1874        /// Sets or clears the value of [repository][crate::model::UpdateRepositoryRequest::repository].
1875        ///
1876        /// This is a **required** field for requests.
1877        pub fn set_or_clear_repository<T>(mut self, v: std::option::Option<T>) -> Self
1878        where
1879            T: std::convert::Into<crate::model::Repository>,
1880        {
1881            self.0.request.repository = v.map(|x| x.into());
1882            self
1883        }
1884    }
1885
1886    #[doc(hidden)]
1887    impl crate::RequestBuilder for UpdateRepository {
1888        fn request_options(&mut self) -> &mut crate::RequestOptions {
1889            &mut self.0.options
1890        }
1891    }
1892
1893    /// The request builder for [Dataform::delete_repository][crate::client::Dataform::delete_repository] calls.
1894    ///
1895    /// # Example
1896    /// ```
1897    /// # use google_cloud_dataform_v1::builder::dataform::DeleteRepository;
1898    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1899    ///
1900    /// let builder = prepare_request_builder();
1901    /// let response = builder.send().await?;
1902    /// # Ok(()) }
1903    ///
1904    /// fn prepare_request_builder() -> DeleteRepository {
1905    ///   # panic!();
1906    ///   // ... details omitted ...
1907    /// }
1908    /// ```
1909    #[derive(Clone, Debug)]
1910    pub struct DeleteRepository(RequestBuilder<crate::model::DeleteRepositoryRequest>);
1911
1912    impl DeleteRepository {
1913        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1914            Self(RequestBuilder::new(stub))
1915        }
1916
1917        /// Sets the full request, replacing any prior values.
1918        pub fn with_request<V: Into<crate::model::DeleteRepositoryRequest>>(
1919            mut self,
1920            v: V,
1921        ) -> Self {
1922            self.0.request = v.into();
1923            self
1924        }
1925
1926        /// Sets all the options, replacing any prior values.
1927        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1928            self.0.options = v.into();
1929            self
1930        }
1931
1932        /// Sends the request.
1933        pub async fn send(self) -> Result<()> {
1934            (*self.0.stub)
1935                .delete_repository(self.0.request, self.0.options)
1936                .await
1937                .map(crate::Response::into_body)
1938        }
1939
1940        /// Sets the value of [name][crate::model::DeleteRepositoryRequest::name].
1941        ///
1942        /// This is a **required** field for requests.
1943        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
1944            self.0.request.name = v.into();
1945            self
1946        }
1947
1948        /// Sets the value of [force][crate::model::DeleteRepositoryRequest::force].
1949        pub fn set_force<T: Into<bool>>(mut self, v: T) -> Self {
1950            self.0.request.force = v.into();
1951            self
1952        }
1953    }
1954
1955    #[doc(hidden)]
1956    impl crate::RequestBuilder for DeleteRepository {
1957        fn request_options(&mut self) -> &mut crate::RequestOptions {
1958            &mut self.0.options
1959        }
1960    }
1961
1962    /// The request builder for [Dataform::move_repository][crate::client::Dataform::move_repository] calls.
1963    ///
1964    /// # Example
1965    /// ```
1966    /// # use google_cloud_dataform_v1::builder::dataform::MoveRepository;
1967    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
1968    /// use google_cloud_lro::Poller;
1969    ///
1970    /// let builder = prepare_request_builder();
1971    /// let response = builder.poller().until_done().await?;
1972    /// # Ok(()) }
1973    ///
1974    /// fn prepare_request_builder() -> MoveRepository {
1975    ///   # panic!();
1976    ///   // ... details omitted ...
1977    /// }
1978    /// ```
1979    #[derive(Clone, Debug)]
1980    pub struct MoveRepository(RequestBuilder<crate::model::MoveRepositoryRequest>);
1981
1982    impl MoveRepository {
1983        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
1984            Self(RequestBuilder::new(stub))
1985        }
1986
1987        /// Sets the full request, replacing any prior values.
1988        pub fn with_request<V: Into<crate::model::MoveRepositoryRequest>>(mut self, v: V) -> Self {
1989            self.0.request = v.into();
1990            self
1991        }
1992
1993        /// Sets all the options, replacing any prior values.
1994        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
1995            self.0.options = v.into();
1996            self
1997        }
1998
1999        /// Sends the request.
2000        ///
2001        /// # Long running operations
2002        ///
2003        /// This starts, but does not poll, a longrunning operation. More information
2004        /// on [move_repository][crate::client::Dataform::move_repository].
2005        pub async fn send(self) -> Result<google_cloud_longrunning::model::Operation> {
2006            (*self.0.stub)
2007                .move_repository(self.0.request, self.0.options)
2008                .await
2009                .map(crate::Response::into_body)
2010        }
2011
2012        /// Creates a [Poller][google_cloud_lro::Poller] to work with `move_repository`.
2013        pub fn poller(
2014            self,
2015        ) -> impl google_cloud_lro::Poller<(), crate::model::MoveRepositoryMetadata> {
2016            type Operation = google_cloud_lro::internal::Operation<
2017                wkt::Empty,
2018                crate::model::MoveRepositoryMetadata,
2019            >;
2020            let polling_error_policy = self.0.stub.get_polling_error_policy(&self.0.options);
2021            let polling_backoff_policy = self.0.stub.get_polling_backoff_policy(&self.0.options);
2022            let mut poller_options = self.0.stub.get_poller_options(&self.0.options);
2023            if let Some(ref mut details) = poller_options.tracing {
2024                details.method_name =
2025                    "google_cloud_dataform_v1::client::Dataform::move_repository::until_done";
2026            }
2027
2028            let stub = self.0.stub.clone();
2029            let mut options = self.0.options.clone();
2030            options.set_retry_policy(google_cloud_gax::retry_policy::NeverRetry);
2031            let query = move |name| {
2032                let stub = stub.clone();
2033                let options = options.clone();
2034                async {
2035                    let op = GetOperation::new(stub)
2036                        .set_name(name)
2037                        .with_options(options)
2038                        .send()
2039                        .await?;
2040                    Ok(Operation::new(op))
2041                }
2042            };
2043
2044            let start = move || async {
2045                let op = self.send().await?;
2046                Ok(Operation::new(op))
2047            };
2048
2049            use google_cloud_lro::internal::PollerExt;
2050            {
2051                google_cloud_lro::internal::new_unit_response_poller(
2052                    polling_error_policy,
2053                    polling_backoff_policy,
2054                    start,
2055                    query,
2056                )
2057            }
2058            .with_options(poller_options)
2059        }
2060
2061        /// Sets the value of [name][crate::model::MoveRepositoryRequest::name].
2062        ///
2063        /// This is a **required** field for requests.
2064        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2065            self.0.request.name = v.into();
2066            self
2067        }
2068
2069        /// Sets the value of [destination_containing_folder][crate::model::MoveRepositoryRequest::destination_containing_folder].
2070        pub fn set_destination_containing_folder<T>(mut self, v: T) -> Self
2071        where
2072            T: std::convert::Into<std::string::String>,
2073        {
2074            self.0.request.destination_containing_folder = std::option::Option::Some(v.into());
2075            self
2076        }
2077
2078        /// Sets or clears the value of [destination_containing_folder][crate::model::MoveRepositoryRequest::destination_containing_folder].
2079        pub fn set_or_clear_destination_containing_folder<T>(
2080            mut self,
2081            v: std::option::Option<T>,
2082        ) -> Self
2083        where
2084            T: std::convert::Into<std::string::String>,
2085        {
2086            self.0.request.destination_containing_folder = v.map(|x| x.into());
2087            self
2088        }
2089    }
2090
2091    #[doc(hidden)]
2092    impl crate::RequestBuilder for MoveRepository {
2093        fn request_options(&mut self) -> &mut crate::RequestOptions {
2094            &mut self.0.options
2095        }
2096    }
2097
2098    /// The request builder for [Dataform::commit_repository_changes][crate::client::Dataform::commit_repository_changes] calls.
2099    ///
2100    /// # Example
2101    /// ```
2102    /// # use google_cloud_dataform_v1::builder::dataform::CommitRepositoryChanges;
2103    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2104    ///
2105    /// let builder = prepare_request_builder();
2106    /// let response = builder.send().await?;
2107    /// # Ok(()) }
2108    ///
2109    /// fn prepare_request_builder() -> CommitRepositoryChanges {
2110    ///   # panic!();
2111    ///   // ... details omitted ...
2112    /// }
2113    /// ```
2114    #[derive(Clone, Debug)]
2115    pub struct CommitRepositoryChanges(
2116        RequestBuilder<crate::model::CommitRepositoryChangesRequest>,
2117    );
2118
2119    impl CommitRepositoryChanges {
2120        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2121            Self(RequestBuilder::new(stub))
2122        }
2123
2124        /// Sets the full request, replacing any prior values.
2125        pub fn with_request<V: Into<crate::model::CommitRepositoryChangesRequest>>(
2126            mut self,
2127            v: V,
2128        ) -> Self {
2129            self.0.request = v.into();
2130            self
2131        }
2132
2133        /// Sets all the options, replacing any prior values.
2134        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2135            self.0.options = v.into();
2136            self
2137        }
2138
2139        /// Sends the request.
2140        pub async fn send(self) -> Result<crate::model::CommitRepositoryChangesResponse> {
2141            (*self.0.stub)
2142                .commit_repository_changes(self.0.request, self.0.options)
2143                .await
2144                .map(crate::Response::into_body)
2145        }
2146
2147        /// Sets the value of [name][crate::model::CommitRepositoryChangesRequest::name].
2148        ///
2149        /// This is a **required** field for requests.
2150        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2151            self.0.request.name = v.into();
2152            self
2153        }
2154
2155        /// Sets the value of [commit_metadata][crate::model::CommitRepositoryChangesRequest::commit_metadata].
2156        ///
2157        /// This is a **required** field for requests.
2158        pub fn set_commit_metadata<T>(mut self, v: T) -> Self
2159        where
2160            T: std::convert::Into<crate::model::CommitMetadata>,
2161        {
2162            self.0.request.commit_metadata = std::option::Option::Some(v.into());
2163            self
2164        }
2165
2166        /// Sets or clears the value of [commit_metadata][crate::model::CommitRepositoryChangesRequest::commit_metadata].
2167        ///
2168        /// This is a **required** field for requests.
2169        pub fn set_or_clear_commit_metadata<T>(mut self, v: std::option::Option<T>) -> Self
2170        where
2171            T: std::convert::Into<crate::model::CommitMetadata>,
2172        {
2173            self.0.request.commit_metadata = v.map(|x| x.into());
2174            self
2175        }
2176
2177        /// Sets the value of [required_head_commit_sha][crate::model::CommitRepositoryChangesRequest::required_head_commit_sha].
2178        pub fn set_required_head_commit_sha<T: Into<std::string::String>>(mut self, v: T) -> Self {
2179            self.0.request.required_head_commit_sha = v.into();
2180            self
2181        }
2182
2183        /// Sets the value of [file_operations][crate::model::CommitRepositoryChangesRequest::file_operations].
2184        pub fn set_file_operations<T, K, V>(mut self, v: T) -> Self
2185        where
2186            T: std::iter::IntoIterator<Item = (K, V)>,
2187            K: std::convert::Into<std::string::String>,
2188            V: std::convert::Into<crate::model::commit_repository_changes_request::FileOperation>,
2189        {
2190            self.0.request.file_operations =
2191                v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
2192            self
2193        }
2194    }
2195
2196    #[doc(hidden)]
2197    impl crate::RequestBuilder for CommitRepositoryChanges {
2198        fn request_options(&mut self) -> &mut crate::RequestOptions {
2199            &mut self.0.options
2200        }
2201    }
2202
2203    /// The request builder for [Dataform::read_repository_file][crate::client::Dataform::read_repository_file] calls.
2204    ///
2205    /// # Example
2206    /// ```
2207    /// # use google_cloud_dataform_v1::builder::dataform::ReadRepositoryFile;
2208    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2209    ///
2210    /// let builder = prepare_request_builder();
2211    /// let response = builder.send().await?;
2212    /// # Ok(()) }
2213    ///
2214    /// fn prepare_request_builder() -> ReadRepositoryFile {
2215    ///   # panic!();
2216    ///   // ... details omitted ...
2217    /// }
2218    /// ```
2219    #[derive(Clone, Debug)]
2220    pub struct ReadRepositoryFile(RequestBuilder<crate::model::ReadRepositoryFileRequest>);
2221
2222    impl ReadRepositoryFile {
2223        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2224            Self(RequestBuilder::new(stub))
2225        }
2226
2227        /// Sets the full request, replacing any prior values.
2228        pub fn with_request<V: Into<crate::model::ReadRepositoryFileRequest>>(
2229            mut self,
2230            v: V,
2231        ) -> Self {
2232            self.0.request = v.into();
2233            self
2234        }
2235
2236        /// Sets all the options, replacing any prior values.
2237        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2238            self.0.options = v.into();
2239            self
2240        }
2241
2242        /// Sends the request.
2243        pub async fn send(self) -> Result<crate::model::ReadRepositoryFileResponse> {
2244            (*self.0.stub)
2245                .read_repository_file(self.0.request, self.0.options)
2246                .await
2247                .map(crate::Response::into_body)
2248        }
2249
2250        /// Sets the value of [name][crate::model::ReadRepositoryFileRequest::name].
2251        ///
2252        /// This is a **required** field for requests.
2253        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2254            self.0.request.name = v.into();
2255            self
2256        }
2257
2258        /// Sets the value of [commit_sha][crate::model::ReadRepositoryFileRequest::commit_sha].
2259        pub fn set_commit_sha<T: Into<std::string::String>>(mut self, v: T) -> Self {
2260            self.0.request.commit_sha = v.into();
2261            self
2262        }
2263
2264        /// Sets the value of [path][crate::model::ReadRepositoryFileRequest::path].
2265        ///
2266        /// This is a **required** field for requests.
2267        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
2268            self.0.request.path = v.into();
2269            self
2270        }
2271    }
2272
2273    #[doc(hidden)]
2274    impl crate::RequestBuilder for ReadRepositoryFile {
2275        fn request_options(&mut self) -> &mut crate::RequestOptions {
2276            &mut self.0.options
2277        }
2278    }
2279
2280    /// The request builder for [Dataform::query_repository_directory_contents][crate::client::Dataform::query_repository_directory_contents] calls.
2281    ///
2282    /// # Example
2283    /// ```
2284    /// # use google_cloud_dataform_v1::builder::dataform::QueryRepositoryDirectoryContents;
2285    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2286    /// use google_cloud_gax::paginator::ItemPaginator;
2287    ///
2288    /// let builder = prepare_request_builder();
2289    /// let mut items = builder.by_item();
2290    /// while let Some(result) = items.next().await {
2291    ///   let item = result?;
2292    /// }
2293    /// # Ok(()) }
2294    ///
2295    /// fn prepare_request_builder() -> QueryRepositoryDirectoryContents {
2296    ///   # panic!();
2297    ///   // ... details omitted ...
2298    /// }
2299    /// ```
2300    #[derive(Clone, Debug)]
2301    pub struct QueryRepositoryDirectoryContents(
2302        RequestBuilder<crate::model::QueryRepositoryDirectoryContentsRequest>,
2303    );
2304
2305    impl QueryRepositoryDirectoryContents {
2306        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2307            Self(RequestBuilder::new(stub))
2308        }
2309
2310        /// Sets the full request, replacing any prior values.
2311        pub fn with_request<V: Into<crate::model::QueryRepositoryDirectoryContentsRequest>>(
2312            mut self,
2313            v: V,
2314        ) -> Self {
2315            self.0.request = v.into();
2316            self
2317        }
2318
2319        /// Sets all the options, replacing any prior values.
2320        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2321            self.0.options = v.into();
2322            self
2323        }
2324
2325        /// Sends the request.
2326        pub async fn send(self) -> Result<crate::model::QueryRepositoryDirectoryContentsResponse> {
2327            (*self.0.stub)
2328                .query_repository_directory_contents(self.0.request, self.0.options)
2329                .await
2330                .map(crate::Response::into_body)
2331        }
2332
2333        /// Streams each page in the collection.
2334        pub fn by_page(
2335            self,
2336        ) -> impl google_cloud_gax::paginator::Paginator<
2337            crate::model::QueryRepositoryDirectoryContentsResponse,
2338            crate::Error,
2339        > {
2340            use std::clone::Clone;
2341            let token = self.0.request.page_token.clone();
2342            let execute = move |token: String| {
2343                let mut builder = self.clone();
2344                builder.0.request = builder.0.request.set_page_token(token);
2345                builder.send()
2346            };
2347            google_cloud_gax::paginator::internal::new_paginator(token, execute)
2348        }
2349
2350        /// Streams each item in the collection.
2351        pub fn by_item(
2352            self,
2353        ) -> impl google_cloud_gax::paginator::ItemPaginator<
2354            crate::model::QueryRepositoryDirectoryContentsResponse,
2355            crate::Error,
2356        > {
2357            use google_cloud_gax::paginator::Paginator;
2358            self.by_page().items()
2359        }
2360
2361        /// Sets the value of [name][crate::model::QueryRepositoryDirectoryContentsRequest::name].
2362        ///
2363        /// This is a **required** field for requests.
2364        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2365            self.0.request.name = v.into();
2366            self
2367        }
2368
2369        /// Sets the value of [commit_sha][crate::model::QueryRepositoryDirectoryContentsRequest::commit_sha].
2370        pub fn set_commit_sha<T: Into<std::string::String>>(mut self, v: T) -> Self {
2371            self.0.request.commit_sha = v.into();
2372            self
2373        }
2374
2375        /// Sets the value of [path][crate::model::QueryRepositoryDirectoryContentsRequest::path].
2376        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
2377            self.0.request.path = v.into();
2378            self
2379        }
2380
2381        /// Sets the value of [page_size][crate::model::QueryRepositoryDirectoryContentsRequest::page_size].
2382        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
2383            self.0.request.page_size = v.into();
2384            self
2385        }
2386
2387        /// Sets the value of [page_token][crate::model::QueryRepositoryDirectoryContentsRequest::page_token].
2388        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
2389            self.0.request.page_token = v.into();
2390            self
2391        }
2392    }
2393
2394    #[doc(hidden)]
2395    impl crate::RequestBuilder for QueryRepositoryDirectoryContents {
2396        fn request_options(&mut self) -> &mut crate::RequestOptions {
2397            &mut self.0.options
2398        }
2399    }
2400
2401    /// The request builder for [Dataform::fetch_repository_history][crate::client::Dataform::fetch_repository_history] calls.
2402    ///
2403    /// # Example
2404    /// ```
2405    /// # use google_cloud_dataform_v1::builder::dataform::FetchRepositoryHistory;
2406    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2407    /// use google_cloud_gax::paginator::ItemPaginator;
2408    ///
2409    /// let builder = prepare_request_builder();
2410    /// let mut items = builder.by_item();
2411    /// while let Some(result) = items.next().await {
2412    ///   let item = result?;
2413    /// }
2414    /// # Ok(()) }
2415    ///
2416    /// fn prepare_request_builder() -> FetchRepositoryHistory {
2417    ///   # panic!();
2418    ///   // ... details omitted ...
2419    /// }
2420    /// ```
2421    #[derive(Clone, Debug)]
2422    pub struct FetchRepositoryHistory(RequestBuilder<crate::model::FetchRepositoryHistoryRequest>);
2423
2424    impl FetchRepositoryHistory {
2425        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2426            Self(RequestBuilder::new(stub))
2427        }
2428
2429        /// Sets the full request, replacing any prior values.
2430        pub fn with_request<V: Into<crate::model::FetchRepositoryHistoryRequest>>(
2431            mut self,
2432            v: V,
2433        ) -> Self {
2434            self.0.request = v.into();
2435            self
2436        }
2437
2438        /// Sets all the options, replacing any prior values.
2439        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2440            self.0.options = v.into();
2441            self
2442        }
2443
2444        /// Sends the request.
2445        pub async fn send(self) -> Result<crate::model::FetchRepositoryHistoryResponse> {
2446            (*self.0.stub)
2447                .fetch_repository_history(self.0.request, self.0.options)
2448                .await
2449                .map(crate::Response::into_body)
2450        }
2451
2452        /// Streams each page in the collection.
2453        pub fn by_page(
2454            self,
2455        ) -> impl google_cloud_gax::paginator::Paginator<
2456            crate::model::FetchRepositoryHistoryResponse,
2457            crate::Error,
2458        > {
2459            use std::clone::Clone;
2460            let token = self.0.request.page_token.clone();
2461            let execute = move |token: String| {
2462                let mut builder = self.clone();
2463                builder.0.request = builder.0.request.set_page_token(token);
2464                builder.send()
2465            };
2466            google_cloud_gax::paginator::internal::new_paginator(token, execute)
2467        }
2468
2469        /// Streams each item in the collection.
2470        pub fn by_item(
2471            self,
2472        ) -> impl google_cloud_gax::paginator::ItemPaginator<
2473            crate::model::FetchRepositoryHistoryResponse,
2474            crate::Error,
2475        > {
2476            use google_cloud_gax::paginator::Paginator;
2477            self.by_page().items()
2478        }
2479
2480        /// Sets the value of [name][crate::model::FetchRepositoryHistoryRequest::name].
2481        ///
2482        /// This is a **required** field for requests.
2483        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2484            self.0.request.name = v.into();
2485            self
2486        }
2487
2488        /// Sets the value of [page_size][crate::model::FetchRepositoryHistoryRequest::page_size].
2489        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
2490            self.0.request.page_size = v.into();
2491            self
2492        }
2493
2494        /// Sets the value of [page_token][crate::model::FetchRepositoryHistoryRequest::page_token].
2495        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
2496            self.0.request.page_token = v.into();
2497            self
2498        }
2499    }
2500
2501    #[doc(hidden)]
2502    impl crate::RequestBuilder for FetchRepositoryHistory {
2503        fn request_options(&mut self) -> &mut crate::RequestOptions {
2504            &mut self.0.options
2505        }
2506    }
2507
2508    /// The request builder for [Dataform::compute_repository_access_token_status][crate::client::Dataform::compute_repository_access_token_status] calls.
2509    ///
2510    /// # Example
2511    /// ```
2512    /// # use google_cloud_dataform_v1::builder::dataform::ComputeRepositoryAccessTokenStatus;
2513    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2514    ///
2515    /// let builder = prepare_request_builder();
2516    /// let response = builder.send().await?;
2517    /// # Ok(()) }
2518    ///
2519    /// fn prepare_request_builder() -> ComputeRepositoryAccessTokenStatus {
2520    ///   # panic!();
2521    ///   // ... details omitted ...
2522    /// }
2523    /// ```
2524    #[derive(Clone, Debug)]
2525    pub struct ComputeRepositoryAccessTokenStatus(
2526        RequestBuilder<crate::model::ComputeRepositoryAccessTokenStatusRequest>,
2527    );
2528
2529    impl ComputeRepositoryAccessTokenStatus {
2530        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2531            Self(RequestBuilder::new(stub))
2532        }
2533
2534        /// Sets the full request, replacing any prior values.
2535        pub fn with_request<V: Into<crate::model::ComputeRepositoryAccessTokenStatusRequest>>(
2536            mut self,
2537            v: V,
2538        ) -> Self {
2539            self.0.request = v.into();
2540            self
2541        }
2542
2543        /// Sets all the options, replacing any prior values.
2544        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2545            self.0.options = v.into();
2546            self
2547        }
2548
2549        /// Sends the request.
2550        pub async fn send(
2551            self,
2552        ) -> Result<crate::model::ComputeRepositoryAccessTokenStatusResponse> {
2553            (*self.0.stub)
2554                .compute_repository_access_token_status(self.0.request, self.0.options)
2555                .await
2556                .map(crate::Response::into_body)
2557        }
2558
2559        /// Sets the value of [name][crate::model::ComputeRepositoryAccessTokenStatusRequest::name].
2560        ///
2561        /// This is a **required** field for requests.
2562        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2563            self.0.request.name = v.into();
2564            self
2565        }
2566    }
2567
2568    #[doc(hidden)]
2569    impl crate::RequestBuilder for ComputeRepositoryAccessTokenStatus {
2570        fn request_options(&mut self) -> &mut crate::RequestOptions {
2571            &mut self.0.options
2572        }
2573    }
2574
2575    /// The request builder for [Dataform::fetch_remote_branches][crate::client::Dataform::fetch_remote_branches] calls.
2576    ///
2577    /// # Example
2578    /// ```
2579    /// # use google_cloud_dataform_v1::builder::dataform::FetchRemoteBranches;
2580    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2581    ///
2582    /// let builder = prepare_request_builder();
2583    /// let response = builder.send().await?;
2584    /// # Ok(()) }
2585    ///
2586    /// fn prepare_request_builder() -> FetchRemoteBranches {
2587    ///   # panic!();
2588    ///   // ... details omitted ...
2589    /// }
2590    /// ```
2591    #[derive(Clone, Debug)]
2592    pub struct FetchRemoteBranches(RequestBuilder<crate::model::FetchRemoteBranchesRequest>);
2593
2594    impl FetchRemoteBranches {
2595        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2596            Self(RequestBuilder::new(stub))
2597        }
2598
2599        /// Sets the full request, replacing any prior values.
2600        pub fn with_request<V: Into<crate::model::FetchRemoteBranchesRequest>>(
2601            mut self,
2602            v: V,
2603        ) -> Self {
2604            self.0.request = v.into();
2605            self
2606        }
2607
2608        /// Sets all the options, replacing any prior values.
2609        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2610            self.0.options = v.into();
2611            self
2612        }
2613
2614        /// Sends the request.
2615        pub async fn send(self) -> Result<crate::model::FetchRemoteBranchesResponse> {
2616            (*self.0.stub)
2617                .fetch_remote_branches(self.0.request, self.0.options)
2618                .await
2619                .map(crate::Response::into_body)
2620        }
2621
2622        /// Sets the value of [name][crate::model::FetchRemoteBranchesRequest::name].
2623        ///
2624        /// This is a **required** field for requests.
2625        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2626            self.0.request.name = v.into();
2627            self
2628        }
2629    }
2630
2631    #[doc(hidden)]
2632    impl crate::RequestBuilder for FetchRemoteBranches {
2633        fn request_options(&mut self) -> &mut crate::RequestOptions {
2634            &mut self.0.options
2635        }
2636    }
2637
2638    /// The request builder for [Dataform::list_workspaces][crate::client::Dataform::list_workspaces] calls.
2639    ///
2640    /// # Example
2641    /// ```
2642    /// # use google_cloud_dataform_v1::builder::dataform::ListWorkspaces;
2643    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2644    /// use google_cloud_gax::paginator::ItemPaginator;
2645    ///
2646    /// let builder = prepare_request_builder();
2647    /// let mut items = builder.by_item();
2648    /// while let Some(result) = items.next().await {
2649    ///   let item = result?;
2650    /// }
2651    /// # Ok(()) }
2652    ///
2653    /// fn prepare_request_builder() -> ListWorkspaces {
2654    ///   # panic!();
2655    ///   // ... details omitted ...
2656    /// }
2657    /// ```
2658    #[derive(Clone, Debug)]
2659    pub struct ListWorkspaces(RequestBuilder<crate::model::ListWorkspacesRequest>);
2660
2661    impl ListWorkspaces {
2662        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2663            Self(RequestBuilder::new(stub))
2664        }
2665
2666        /// Sets the full request, replacing any prior values.
2667        pub fn with_request<V: Into<crate::model::ListWorkspacesRequest>>(mut self, v: V) -> Self {
2668            self.0.request = v.into();
2669            self
2670        }
2671
2672        /// Sets all the options, replacing any prior values.
2673        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2674            self.0.options = v.into();
2675            self
2676        }
2677
2678        /// Sends the request.
2679        pub async fn send(self) -> Result<crate::model::ListWorkspacesResponse> {
2680            (*self.0.stub)
2681                .list_workspaces(self.0.request, self.0.options)
2682                .await
2683                .map(crate::Response::into_body)
2684        }
2685
2686        /// Streams each page in the collection.
2687        pub fn by_page(
2688            self,
2689        ) -> impl google_cloud_gax::paginator::Paginator<
2690            crate::model::ListWorkspacesResponse,
2691            crate::Error,
2692        > {
2693            use std::clone::Clone;
2694            let token = self.0.request.page_token.clone();
2695            let execute = move |token: String| {
2696                let mut builder = self.clone();
2697                builder.0.request = builder.0.request.set_page_token(token);
2698                builder.send()
2699            };
2700            google_cloud_gax::paginator::internal::new_paginator(token, execute)
2701        }
2702
2703        /// Streams each item in the collection.
2704        pub fn by_item(
2705            self,
2706        ) -> impl google_cloud_gax::paginator::ItemPaginator<
2707            crate::model::ListWorkspacesResponse,
2708            crate::Error,
2709        > {
2710            use google_cloud_gax::paginator::Paginator;
2711            self.by_page().items()
2712        }
2713
2714        /// Sets the value of [parent][crate::model::ListWorkspacesRequest::parent].
2715        ///
2716        /// This is a **required** field for requests.
2717        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
2718            self.0.request.parent = v.into();
2719            self
2720        }
2721
2722        /// Sets the value of [page_size][crate::model::ListWorkspacesRequest::page_size].
2723        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
2724            self.0.request.page_size = v.into();
2725            self
2726        }
2727
2728        /// Sets the value of [page_token][crate::model::ListWorkspacesRequest::page_token].
2729        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
2730            self.0.request.page_token = v.into();
2731            self
2732        }
2733
2734        /// Sets the value of [order_by][crate::model::ListWorkspacesRequest::order_by].
2735        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
2736            self.0.request.order_by = v.into();
2737            self
2738        }
2739
2740        /// Sets the value of [filter][crate::model::ListWorkspacesRequest::filter].
2741        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
2742            self.0.request.filter = v.into();
2743            self
2744        }
2745    }
2746
2747    #[doc(hidden)]
2748    impl crate::RequestBuilder for ListWorkspaces {
2749        fn request_options(&mut self) -> &mut crate::RequestOptions {
2750            &mut self.0.options
2751        }
2752    }
2753
2754    /// The request builder for [Dataform::get_workspace][crate::client::Dataform::get_workspace] calls.
2755    ///
2756    /// # Example
2757    /// ```
2758    /// # use google_cloud_dataform_v1::builder::dataform::GetWorkspace;
2759    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2760    ///
2761    /// let builder = prepare_request_builder();
2762    /// let response = builder.send().await?;
2763    /// # Ok(()) }
2764    ///
2765    /// fn prepare_request_builder() -> GetWorkspace {
2766    ///   # panic!();
2767    ///   // ... details omitted ...
2768    /// }
2769    /// ```
2770    #[derive(Clone, Debug)]
2771    pub struct GetWorkspace(RequestBuilder<crate::model::GetWorkspaceRequest>);
2772
2773    impl GetWorkspace {
2774        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2775            Self(RequestBuilder::new(stub))
2776        }
2777
2778        /// Sets the full request, replacing any prior values.
2779        pub fn with_request<V: Into<crate::model::GetWorkspaceRequest>>(mut self, v: V) -> Self {
2780            self.0.request = v.into();
2781            self
2782        }
2783
2784        /// Sets all the options, replacing any prior values.
2785        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2786            self.0.options = v.into();
2787            self
2788        }
2789
2790        /// Sends the request.
2791        pub async fn send(self) -> Result<crate::model::Workspace> {
2792            (*self.0.stub)
2793                .get_workspace(self.0.request, self.0.options)
2794                .await
2795                .map(crate::Response::into_body)
2796        }
2797
2798        /// Sets the value of [name][crate::model::GetWorkspaceRequest::name].
2799        ///
2800        /// This is a **required** field for requests.
2801        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2802            self.0.request.name = v.into();
2803            self
2804        }
2805    }
2806
2807    #[doc(hidden)]
2808    impl crate::RequestBuilder for GetWorkspace {
2809        fn request_options(&mut self) -> &mut crate::RequestOptions {
2810            &mut self.0.options
2811        }
2812    }
2813
2814    /// The request builder for [Dataform::create_workspace][crate::client::Dataform::create_workspace] calls.
2815    ///
2816    /// # Example
2817    /// ```
2818    /// # use google_cloud_dataform_v1::builder::dataform::CreateWorkspace;
2819    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2820    ///
2821    /// let builder = prepare_request_builder();
2822    /// let response = builder.send().await?;
2823    /// # Ok(()) }
2824    ///
2825    /// fn prepare_request_builder() -> CreateWorkspace {
2826    ///   # panic!();
2827    ///   // ... details omitted ...
2828    /// }
2829    /// ```
2830    #[derive(Clone, Debug)]
2831    pub struct CreateWorkspace(RequestBuilder<crate::model::CreateWorkspaceRequest>);
2832
2833    impl CreateWorkspace {
2834        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2835            Self(RequestBuilder::new(stub))
2836        }
2837
2838        /// Sets the full request, replacing any prior values.
2839        pub fn with_request<V: Into<crate::model::CreateWorkspaceRequest>>(mut self, v: V) -> Self {
2840            self.0.request = v.into();
2841            self
2842        }
2843
2844        /// Sets all the options, replacing any prior values.
2845        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2846            self.0.options = v.into();
2847            self
2848        }
2849
2850        /// Sends the request.
2851        pub async fn send(self) -> Result<crate::model::Workspace> {
2852            (*self.0.stub)
2853                .create_workspace(self.0.request, self.0.options)
2854                .await
2855                .map(crate::Response::into_body)
2856        }
2857
2858        /// Sets the value of [parent][crate::model::CreateWorkspaceRequest::parent].
2859        ///
2860        /// This is a **required** field for requests.
2861        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
2862            self.0.request.parent = v.into();
2863            self
2864        }
2865
2866        /// Sets the value of [workspace][crate::model::CreateWorkspaceRequest::workspace].
2867        ///
2868        /// This is a **required** field for requests.
2869        pub fn set_workspace<T>(mut self, v: T) -> Self
2870        where
2871            T: std::convert::Into<crate::model::Workspace>,
2872        {
2873            self.0.request.workspace = std::option::Option::Some(v.into());
2874            self
2875        }
2876
2877        /// Sets or clears the value of [workspace][crate::model::CreateWorkspaceRequest::workspace].
2878        ///
2879        /// This is a **required** field for requests.
2880        pub fn set_or_clear_workspace<T>(mut self, v: std::option::Option<T>) -> Self
2881        where
2882            T: std::convert::Into<crate::model::Workspace>,
2883        {
2884            self.0.request.workspace = v.map(|x| x.into());
2885            self
2886        }
2887
2888        /// Sets the value of [workspace_id][crate::model::CreateWorkspaceRequest::workspace_id].
2889        ///
2890        /// This is a **required** field for requests.
2891        pub fn set_workspace_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
2892            self.0.request.workspace_id = v.into();
2893            self
2894        }
2895    }
2896
2897    #[doc(hidden)]
2898    impl crate::RequestBuilder for CreateWorkspace {
2899        fn request_options(&mut self) -> &mut crate::RequestOptions {
2900            &mut self.0.options
2901        }
2902    }
2903
2904    /// The request builder for [Dataform::delete_workspace][crate::client::Dataform::delete_workspace] calls.
2905    ///
2906    /// # Example
2907    /// ```
2908    /// # use google_cloud_dataform_v1::builder::dataform::DeleteWorkspace;
2909    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2910    ///
2911    /// let builder = prepare_request_builder();
2912    /// let response = builder.send().await?;
2913    /// # Ok(()) }
2914    ///
2915    /// fn prepare_request_builder() -> DeleteWorkspace {
2916    ///   # panic!();
2917    ///   // ... details omitted ...
2918    /// }
2919    /// ```
2920    #[derive(Clone, Debug)]
2921    pub struct DeleteWorkspace(RequestBuilder<crate::model::DeleteWorkspaceRequest>);
2922
2923    impl DeleteWorkspace {
2924        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2925            Self(RequestBuilder::new(stub))
2926        }
2927
2928        /// Sets the full request, replacing any prior values.
2929        pub fn with_request<V: Into<crate::model::DeleteWorkspaceRequest>>(mut self, v: V) -> Self {
2930            self.0.request = v.into();
2931            self
2932        }
2933
2934        /// Sets all the options, replacing any prior values.
2935        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2936            self.0.options = v.into();
2937            self
2938        }
2939
2940        /// Sends the request.
2941        pub async fn send(self) -> Result<()> {
2942            (*self.0.stub)
2943                .delete_workspace(self.0.request, self.0.options)
2944                .await
2945                .map(crate::Response::into_body)
2946        }
2947
2948        /// Sets the value of [name][crate::model::DeleteWorkspaceRequest::name].
2949        ///
2950        /// This is a **required** field for requests.
2951        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
2952            self.0.request.name = v.into();
2953            self
2954        }
2955    }
2956
2957    #[doc(hidden)]
2958    impl crate::RequestBuilder for DeleteWorkspace {
2959        fn request_options(&mut self) -> &mut crate::RequestOptions {
2960            &mut self.0.options
2961        }
2962    }
2963
2964    /// The request builder for [Dataform::install_npm_packages][crate::client::Dataform::install_npm_packages] calls.
2965    ///
2966    /// # Example
2967    /// ```
2968    /// # use google_cloud_dataform_v1::builder::dataform::InstallNpmPackages;
2969    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
2970    ///
2971    /// let builder = prepare_request_builder();
2972    /// let response = builder.send().await?;
2973    /// # Ok(()) }
2974    ///
2975    /// fn prepare_request_builder() -> InstallNpmPackages {
2976    ///   # panic!();
2977    ///   // ... details omitted ...
2978    /// }
2979    /// ```
2980    #[derive(Clone, Debug)]
2981    pub struct InstallNpmPackages(RequestBuilder<crate::model::InstallNpmPackagesRequest>);
2982
2983    impl InstallNpmPackages {
2984        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
2985            Self(RequestBuilder::new(stub))
2986        }
2987
2988        /// Sets the full request, replacing any prior values.
2989        pub fn with_request<V: Into<crate::model::InstallNpmPackagesRequest>>(
2990            mut self,
2991            v: V,
2992        ) -> Self {
2993            self.0.request = v.into();
2994            self
2995        }
2996
2997        /// Sets all the options, replacing any prior values.
2998        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
2999            self.0.options = v.into();
3000            self
3001        }
3002
3003        /// Sends the request.
3004        pub async fn send(self) -> Result<crate::model::InstallNpmPackagesResponse> {
3005            (*self.0.stub)
3006                .install_npm_packages(self.0.request, self.0.options)
3007                .await
3008                .map(crate::Response::into_body)
3009        }
3010
3011        /// Sets the value of [workspace][crate::model::InstallNpmPackagesRequest::workspace].
3012        ///
3013        /// This is a **required** field for requests.
3014        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3015            self.0.request.workspace = v.into();
3016            self
3017        }
3018
3019        /// Sets the value of [pipeline_config][crate::model::InstallNpmPackagesRequest::pipeline_config].
3020        pub fn set_pipeline_config<T>(mut self, v: T) -> Self
3021        where
3022            T: std::convert::Into<crate::model::PipelineConfig>,
3023        {
3024            self.0.request.pipeline_config = std::option::Option::Some(v.into());
3025            self
3026        }
3027
3028        /// Sets or clears the value of [pipeline_config][crate::model::InstallNpmPackagesRequest::pipeline_config].
3029        pub fn set_or_clear_pipeline_config<T>(mut self, v: std::option::Option<T>) -> Self
3030        where
3031            T: std::convert::Into<crate::model::PipelineConfig>,
3032        {
3033            self.0.request.pipeline_config = v.map(|x| x.into());
3034            self
3035        }
3036    }
3037
3038    #[doc(hidden)]
3039    impl crate::RequestBuilder for InstallNpmPackages {
3040        fn request_options(&mut self) -> &mut crate::RequestOptions {
3041            &mut self.0.options
3042        }
3043    }
3044
3045    /// The request builder for [Dataform::pull_git_commits][crate::client::Dataform::pull_git_commits] calls.
3046    ///
3047    /// # Example
3048    /// ```
3049    /// # use google_cloud_dataform_v1::builder::dataform::PullGitCommits;
3050    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3051    ///
3052    /// let builder = prepare_request_builder();
3053    /// let response = builder.send().await?;
3054    /// # Ok(()) }
3055    ///
3056    /// fn prepare_request_builder() -> PullGitCommits {
3057    ///   # panic!();
3058    ///   // ... details omitted ...
3059    /// }
3060    /// ```
3061    #[derive(Clone, Debug)]
3062    pub struct PullGitCommits(RequestBuilder<crate::model::PullGitCommitsRequest>);
3063
3064    impl PullGitCommits {
3065        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3066            Self(RequestBuilder::new(stub))
3067        }
3068
3069        /// Sets the full request, replacing any prior values.
3070        pub fn with_request<V: Into<crate::model::PullGitCommitsRequest>>(mut self, v: V) -> Self {
3071            self.0.request = v.into();
3072            self
3073        }
3074
3075        /// Sets all the options, replacing any prior values.
3076        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3077            self.0.options = v.into();
3078            self
3079        }
3080
3081        /// Sends the request.
3082        pub async fn send(self) -> Result<crate::model::PullGitCommitsResponse> {
3083            (*self.0.stub)
3084                .pull_git_commits(self.0.request, self.0.options)
3085                .await
3086                .map(crate::Response::into_body)
3087        }
3088
3089        /// Sets the value of [name][crate::model::PullGitCommitsRequest::name].
3090        ///
3091        /// This is a **required** field for requests.
3092        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
3093            self.0.request.name = v.into();
3094            self
3095        }
3096
3097        /// Sets the value of [remote_branch][crate::model::PullGitCommitsRequest::remote_branch].
3098        pub fn set_remote_branch<T: Into<std::string::String>>(mut self, v: T) -> Self {
3099            self.0.request.remote_branch = v.into();
3100            self
3101        }
3102
3103        /// Sets the value of [author][crate::model::PullGitCommitsRequest::author].
3104        ///
3105        /// This is a **required** field for requests.
3106        pub fn set_author<T>(mut self, v: T) -> Self
3107        where
3108            T: std::convert::Into<crate::model::CommitAuthor>,
3109        {
3110            self.0.request.author = std::option::Option::Some(v.into());
3111            self
3112        }
3113
3114        /// Sets or clears the value of [author][crate::model::PullGitCommitsRequest::author].
3115        ///
3116        /// This is a **required** field for requests.
3117        pub fn set_or_clear_author<T>(mut self, v: std::option::Option<T>) -> Self
3118        where
3119            T: std::convert::Into<crate::model::CommitAuthor>,
3120        {
3121            self.0.request.author = v.map(|x| x.into());
3122            self
3123        }
3124    }
3125
3126    #[doc(hidden)]
3127    impl crate::RequestBuilder for PullGitCommits {
3128        fn request_options(&mut self) -> &mut crate::RequestOptions {
3129            &mut self.0.options
3130        }
3131    }
3132
3133    /// The request builder for [Dataform::push_git_commits][crate::client::Dataform::push_git_commits] calls.
3134    ///
3135    /// # Example
3136    /// ```
3137    /// # use google_cloud_dataform_v1::builder::dataform::PushGitCommits;
3138    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3139    ///
3140    /// let builder = prepare_request_builder();
3141    /// let response = builder.send().await?;
3142    /// # Ok(()) }
3143    ///
3144    /// fn prepare_request_builder() -> PushGitCommits {
3145    ///   # panic!();
3146    ///   // ... details omitted ...
3147    /// }
3148    /// ```
3149    #[derive(Clone, Debug)]
3150    pub struct PushGitCommits(RequestBuilder<crate::model::PushGitCommitsRequest>);
3151
3152    impl PushGitCommits {
3153        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3154            Self(RequestBuilder::new(stub))
3155        }
3156
3157        /// Sets the full request, replacing any prior values.
3158        pub fn with_request<V: Into<crate::model::PushGitCommitsRequest>>(mut self, v: V) -> Self {
3159            self.0.request = v.into();
3160            self
3161        }
3162
3163        /// Sets all the options, replacing any prior values.
3164        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3165            self.0.options = v.into();
3166            self
3167        }
3168
3169        /// Sends the request.
3170        pub async fn send(self) -> Result<crate::model::PushGitCommitsResponse> {
3171            (*self.0.stub)
3172                .push_git_commits(self.0.request, self.0.options)
3173                .await
3174                .map(crate::Response::into_body)
3175        }
3176
3177        /// Sets the value of [name][crate::model::PushGitCommitsRequest::name].
3178        ///
3179        /// This is a **required** field for requests.
3180        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
3181            self.0.request.name = v.into();
3182            self
3183        }
3184
3185        /// Sets the value of [remote_branch][crate::model::PushGitCommitsRequest::remote_branch].
3186        pub fn set_remote_branch<T: Into<std::string::String>>(mut self, v: T) -> Self {
3187            self.0.request.remote_branch = v.into();
3188            self
3189        }
3190    }
3191
3192    #[doc(hidden)]
3193    impl crate::RequestBuilder for PushGitCommits {
3194        fn request_options(&mut self) -> &mut crate::RequestOptions {
3195            &mut self.0.options
3196        }
3197    }
3198
3199    /// The request builder for [Dataform::fetch_file_git_statuses][crate::client::Dataform::fetch_file_git_statuses] calls.
3200    ///
3201    /// # Example
3202    /// ```
3203    /// # use google_cloud_dataform_v1::builder::dataform::FetchFileGitStatuses;
3204    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3205    ///
3206    /// let builder = prepare_request_builder();
3207    /// let response = builder.send().await?;
3208    /// # Ok(()) }
3209    ///
3210    /// fn prepare_request_builder() -> FetchFileGitStatuses {
3211    ///   # panic!();
3212    ///   // ... details omitted ...
3213    /// }
3214    /// ```
3215    #[derive(Clone, Debug)]
3216    pub struct FetchFileGitStatuses(RequestBuilder<crate::model::FetchFileGitStatusesRequest>);
3217
3218    impl FetchFileGitStatuses {
3219        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3220            Self(RequestBuilder::new(stub))
3221        }
3222
3223        /// Sets the full request, replacing any prior values.
3224        pub fn with_request<V: Into<crate::model::FetchFileGitStatusesRequest>>(
3225            mut self,
3226            v: V,
3227        ) -> Self {
3228            self.0.request = v.into();
3229            self
3230        }
3231
3232        /// Sets all the options, replacing any prior values.
3233        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3234            self.0.options = v.into();
3235            self
3236        }
3237
3238        /// Sends the request.
3239        pub async fn send(self) -> Result<crate::model::FetchFileGitStatusesResponse> {
3240            (*self.0.stub)
3241                .fetch_file_git_statuses(self.0.request, self.0.options)
3242                .await
3243                .map(crate::Response::into_body)
3244        }
3245
3246        /// Sets the value of [name][crate::model::FetchFileGitStatusesRequest::name].
3247        ///
3248        /// This is a **required** field for requests.
3249        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
3250            self.0.request.name = v.into();
3251            self
3252        }
3253    }
3254
3255    #[doc(hidden)]
3256    impl crate::RequestBuilder for FetchFileGitStatuses {
3257        fn request_options(&mut self) -> &mut crate::RequestOptions {
3258            &mut self.0.options
3259        }
3260    }
3261
3262    /// The request builder for [Dataform::fetch_git_ahead_behind][crate::client::Dataform::fetch_git_ahead_behind] calls.
3263    ///
3264    /// # Example
3265    /// ```
3266    /// # use google_cloud_dataform_v1::builder::dataform::FetchGitAheadBehind;
3267    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3268    ///
3269    /// let builder = prepare_request_builder();
3270    /// let response = builder.send().await?;
3271    /// # Ok(()) }
3272    ///
3273    /// fn prepare_request_builder() -> FetchGitAheadBehind {
3274    ///   # panic!();
3275    ///   // ... details omitted ...
3276    /// }
3277    /// ```
3278    #[derive(Clone, Debug)]
3279    pub struct FetchGitAheadBehind(RequestBuilder<crate::model::FetchGitAheadBehindRequest>);
3280
3281    impl FetchGitAheadBehind {
3282        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3283            Self(RequestBuilder::new(stub))
3284        }
3285
3286        /// Sets the full request, replacing any prior values.
3287        pub fn with_request<V: Into<crate::model::FetchGitAheadBehindRequest>>(
3288            mut self,
3289            v: V,
3290        ) -> Self {
3291            self.0.request = v.into();
3292            self
3293        }
3294
3295        /// Sets all the options, replacing any prior values.
3296        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3297            self.0.options = v.into();
3298            self
3299        }
3300
3301        /// Sends the request.
3302        pub async fn send(self) -> Result<crate::model::FetchGitAheadBehindResponse> {
3303            (*self.0.stub)
3304                .fetch_git_ahead_behind(self.0.request, self.0.options)
3305                .await
3306                .map(crate::Response::into_body)
3307        }
3308
3309        /// Sets the value of [name][crate::model::FetchGitAheadBehindRequest::name].
3310        ///
3311        /// This is a **required** field for requests.
3312        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
3313            self.0.request.name = v.into();
3314            self
3315        }
3316
3317        /// Sets the value of [remote_branch][crate::model::FetchGitAheadBehindRequest::remote_branch].
3318        pub fn set_remote_branch<T: Into<std::string::String>>(mut self, v: T) -> Self {
3319            self.0.request.remote_branch = v.into();
3320            self
3321        }
3322    }
3323
3324    #[doc(hidden)]
3325    impl crate::RequestBuilder for FetchGitAheadBehind {
3326        fn request_options(&mut self) -> &mut crate::RequestOptions {
3327            &mut self.0.options
3328        }
3329    }
3330
3331    /// The request builder for [Dataform::commit_workspace_changes][crate::client::Dataform::commit_workspace_changes] calls.
3332    ///
3333    /// # Example
3334    /// ```
3335    /// # use google_cloud_dataform_v1::builder::dataform::CommitWorkspaceChanges;
3336    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3337    ///
3338    /// let builder = prepare_request_builder();
3339    /// let response = builder.send().await?;
3340    /// # Ok(()) }
3341    ///
3342    /// fn prepare_request_builder() -> CommitWorkspaceChanges {
3343    ///   # panic!();
3344    ///   // ... details omitted ...
3345    /// }
3346    /// ```
3347    #[derive(Clone, Debug)]
3348    pub struct CommitWorkspaceChanges(RequestBuilder<crate::model::CommitWorkspaceChangesRequest>);
3349
3350    impl CommitWorkspaceChanges {
3351        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3352            Self(RequestBuilder::new(stub))
3353        }
3354
3355        /// Sets the full request, replacing any prior values.
3356        pub fn with_request<V: Into<crate::model::CommitWorkspaceChangesRequest>>(
3357            mut self,
3358            v: V,
3359        ) -> Self {
3360            self.0.request = v.into();
3361            self
3362        }
3363
3364        /// Sets all the options, replacing any prior values.
3365        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3366            self.0.options = v.into();
3367            self
3368        }
3369
3370        /// Sends the request.
3371        pub async fn send(self) -> Result<crate::model::CommitWorkspaceChangesResponse> {
3372            (*self.0.stub)
3373                .commit_workspace_changes(self.0.request, self.0.options)
3374                .await
3375                .map(crate::Response::into_body)
3376        }
3377
3378        /// Sets the value of [name][crate::model::CommitWorkspaceChangesRequest::name].
3379        ///
3380        /// This is a **required** field for requests.
3381        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
3382            self.0.request.name = v.into();
3383            self
3384        }
3385
3386        /// Sets the value of [author][crate::model::CommitWorkspaceChangesRequest::author].
3387        ///
3388        /// This is a **required** field for requests.
3389        pub fn set_author<T>(mut self, v: T) -> Self
3390        where
3391            T: std::convert::Into<crate::model::CommitAuthor>,
3392        {
3393            self.0.request.author = std::option::Option::Some(v.into());
3394            self
3395        }
3396
3397        /// Sets or clears the value of [author][crate::model::CommitWorkspaceChangesRequest::author].
3398        ///
3399        /// This is a **required** field for requests.
3400        pub fn set_or_clear_author<T>(mut self, v: std::option::Option<T>) -> Self
3401        where
3402            T: std::convert::Into<crate::model::CommitAuthor>,
3403        {
3404            self.0.request.author = v.map(|x| x.into());
3405            self
3406        }
3407
3408        /// Sets the value of [commit_message][crate::model::CommitWorkspaceChangesRequest::commit_message].
3409        pub fn set_commit_message<T: Into<std::string::String>>(mut self, v: T) -> Self {
3410            self.0.request.commit_message = v.into();
3411            self
3412        }
3413
3414        /// Sets the value of [paths][crate::model::CommitWorkspaceChangesRequest::paths].
3415        pub fn set_paths<T, V>(mut self, v: T) -> Self
3416        where
3417            T: std::iter::IntoIterator<Item = V>,
3418            V: std::convert::Into<std::string::String>,
3419        {
3420            use std::iter::Iterator;
3421            self.0.request.paths = v.into_iter().map(|i| i.into()).collect();
3422            self
3423        }
3424    }
3425
3426    #[doc(hidden)]
3427    impl crate::RequestBuilder for CommitWorkspaceChanges {
3428        fn request_options(&mut self) -> &mut crate::RequestOptions {
3429            &mut self.0.options
3430        }
3431    }
3432
3433    /// The request builder for [Dataform::reset_workspace_changes][crate::client::Dataform::reset_workspace_changes] calls.
3434    ///
3435    /// # Example
3436    /// ```
3437    /// # use google_cloud_dataform_v1::builder::dataform::ResetWorkspaceChanges;
3438    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3439    ///
3440    /// let builder = prepare_request_builder();
3441    /// let response = builder.send().await?;
3442    /// # Ok(()) }
3443    ///
3444    /// fn prepare_request_builder() -> ResetWorkspaceChanges {
3445    ///   # panic!();
3446    ///   // ... details omitted ...
3447    /// }
3448    /// ```
3449    #[derive(Clone, Debug)]
3450    pub struct ResetWorkspaceChanges(RequestBuilder<crate::model::ResetWorkspaceChangesRequest>);
3451
3452    impl ResetWorkspaceChanges {
3453        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3454            Self(RequestBuilder::new(stub))
3455        }
3456
3457        /// Sets the full request, replacing any prior values.
3458        pub fn with_request<V: Into<crate::model::ResetWorkspaceChangesRequest>>(
3459            mut self,
3460            v: V,
3461        ) -> Self {
3462            self.0.request = v.into();
3463            self
3464        }
3465
3466        /// Sets all the options, replacing any prior values.
3467        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3468            self.0.options = v.into();
3469            self
3470        }
3471
3472        /// Sends the request.
3473        pub async fn send(self) -> Result<crate::model::ResetWorkspaceChangesResponse> {
3474            (*self.0.stub)
3475                .reset_workspace_changes(self.0.request, self.0.options)
3476                .await
3477                .map(crate::Response::into_body)
3478        }
3479
3480        /// Sets the value of [name][crate::model::ResetWorkspaceChangesRequest::name].
3481        ///
3482        /// This is a **required** field for requests.
3483        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
3484            self.0.request.name = v.into();
3485            self
3486        }
3487
3488        /// Sets the value of [paths][crate::model::ResetWorkspaceChangesRequest::paths].
3489        pub fn set_paths<T, V>(mut self, v: T) -> Self
3490        where
3491            T: std::iter::IntoIterator<Item = V>,
3492            V: std::convert::Into<std::string::String>,
3493        {
3494            use std::iter::Iterator;
3495            self.0.request.paths = v.into_iter().map(|i| i.into()).collect();
3496            self
3497        }
3498
3499        /// Sets the value of [clean][crate::model::ResetWorkspaceChangesRequest::clean].
3500        pub fn set_clean<T: Into<bool>>(mut self, v: T) -> Self {
3501            self.0.request.clean = v.into();
3502            self
3503        }
3504    }
3505
3506    #[doc(hidden)]
3507    impl crate::RequestBuilder for ResetWorkspaceChanges {
3508        fn request_options(&mut self) -> &mut crate::RequestOptions {
3509            &mut self.0.options
3510        }
3511    }
3512
3513    /// The request builder for [Dataform::fetch_file_diff][crate::client::Dataform::fetch_file_diff] calls.
3514    ///
3515    /// # Example
3516    /// ```
3517    /// # use google_cloud_dataform_v1::builder::dataform::FetchFileDiff;
3518    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3519    ///
3520    /// let builder = prepare_request_builder();
3521    /// let response = builder.send().await?;
3522    /// # Ok(()) }
3523    ///
3524    /// fn prepare_request_builder() -> FetchFileDiff {
3525    ///   # panic!();
3526    ///   // ... details omitted ...
3527    /// }
3528    /// ```
3529    #[derive(Clone, Debug)]
3530    pub struct FetchFileDiff(RequestBuilder<crate::model::FetchFileDiffRequest>);
3531
3532    impl FetchFileDiff {
3533        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3534            Self(RequestBuilder::new(stub))
3535        }
3536
3537        /// Sets the full request, replacing any prior values.
3538        pub fn with_request<V: Into<crate::model::FetchFileDiffRequest>>(mut self, v: V) -> Self {
3539            self.0.request = v.into();
3540            self
3541        }
3542
3543        /// Sets all the options, replacing any prior values.
3544        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3545            self.0.options = v.into();
3546            self
3547        }
3548
3549        /// Sends the request.
3550        pub async fn send(self) -> Result<crate::model::FetchFileDiffResponse> {
3551            (*self.0.stub)
3552                .fetch_file_diff(self.0.request, self.0.options)
3553                .await
3554                .map(crate::Response::into_body)
3555        }
3556
3557        /// Sets the value of [workspace][crate::model::FetchFileDiffRequest::workspace].
3558        ///
3559        /// This is a **required** field for requests.
3560        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3561            self.0.request.workspace = v.into();
3562            self
3563        }
3564
3565        /// Sets the value of [path][crate::model::FetchFileDiffRequest::path].
3566        ///
3567        /// This is a **required** field for requests.
3568        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
3569            self.0.request.path = v.into();
3570            self
3571        }
3572    }
3573
3574    #[doc(hidden)]
3575    impl crate::RequestBuilder for FetchFileDiff {
3576        fn request_options(&mut self) -> &mut crate::RequestOptions {
3577            &mut self.0.options
3578        }
3579    }
3580
3581    /// The request builder for [Dataform::query_directory_contents][crate::client::Dataform::query_directory_contents] calls.
3582    ///
3583    /// # Example
3584    /// ```
3585    /// # use google_cloud_dataform_v1::builder::dataform::QueryDirectoryContents;
3586    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3587    /// use google_cloud_gax::paginator::ItemPaginator;
3588    ///
3589    /// let builder = prepare_request_builder();
3590    /// let mut items = builder.by_item();
3591    /// while let Some(result) = items.next().await {
3592    ///   let item = result?;
3593    /// }
3594    /// # Ok(()) }
3595    ///
3596    /// fn prepare_request_builder() -> QueryDirectoryContents {
3597    ///   # panic!();
3598    ///   // ... details omitted ...
3599    /// }
3600    /// ```
3601    #[derive(Clone, Debug)]
3602    pub struct QueryDirectoryContents(RequestBuilder<crate::model::QueryDirectoryContentsRequest>);
3603
3604    impl QueryDirectoryContents {
3605        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3606            Self(RequestBuilder::new(stub))
3607        }
3608
3609        /// Sets the full request, replacing any prior values.
3610        pub fn with_request<V: Into<crate::model::QueryDirectoryContentsRequest>>(
3611            mut self,
3612            v: V,
3613        ) -> Self {
3614            self.0.request = v.into();
3615            self
3616        }
3617
3618        /// Sets all the options, replacing any prior values.
3619        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3620            self.0.options = v.into();
3621            self
3622        }
3623
3624        /// Sends the request.
3625        pub async fn send(self) -> Result<crate::model::QueryDirectoryContentsResponse> {
3626            (*self.0.stub)
3627                .query_directory_contents(self.0.request, self.0.options)
3628                .await
3629                .map(crate::Response::into_body)
3630        }
3631
3632        /// Streams each page in the collection.
3633        pub fn by_page(
3634            self,
3635        ) -> impl google_cloud_gax::paginator::Paginator<
3636            crate::model::QueryDirectoryContentsResponse,
3637            crate::Error,
3638        > {
3639            use std::clone::Clone;
3640            let token = self.0.request.page_token.clone();
3641            let execute = move |token: String| {
3642                let mut builder = self.clone();
3643                builder.0.request = builder.0.request.set_page_token(token);
3644                builder.send()
3645            };
3646            google_cloud_gax::paginator::internal::new_paginator(token, execute)
3647        }
3648
3649        /// Streams each item in the collection.
3650        pub fn by_item(
3651            self,
3652        ) -> impl google_cloud_gax::paginator::ItemPaginator<
3653            crate::model::QueryDirectoryContentsResponse,
3654            crate::Error,
3655        > {
3656            use google_cloud_gax::paginator::Paginator;
3657            self.by_page().items()
3658        }
3659
3660        /// Sets the value of [workspace][crate::model::QueryDirectoryContentsRequest::workspace].
3661        ///
3662        /// This is a **required** field for requests.
3663        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3664            self.0.request.workspace = v.into();
3665            self
3666        }
3667
3668        /// Sets the value of [path][crate::model::QueryDirectoryContentsRequest::path].
3669        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
3670            self.0.request.path = v.into();
3671            self
3672        }
3673
3674        /// Sets the value of [page_size][crate::model::QueryDirectoryContentsRequest::page_size].
3675        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
3676            self.0.request.page_size = v.into();
3677            self
3678        }
3679
3680        /// Sets the value of [page_token][crate::model::QueryDirectoryContentsRequest::page_token].
3681        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
3682            self.0.request.page_token = v.into();
3683            self
3684        }
3685
3686        /// Sets the value of [view][crate::model::QueryDirectoryContentsRequest::view].
3687        pub fn set_view<T: Into<crate::model::DirectoryContentsView>>(mut self, v: T) -> Self {
3688            self.0.request.view = v.into();
3689            self
3690        }
3691    }
3692
3693    #[doc(hidden)]
3694    impl crate::RequestBuilder for QueryDirectoryContents {
3695        fn request_options(&mut self) -> &mut crate::RequestOptions {
3696            &mut self.0.options
3697        }
3698    }
3699
3700    /// The request builder for [Dataform::search_files][crate::client::Dataform::search_files] calls.
3701    ///
3702    /// # Example
3703    /// ```
3704    /// # use google_cloud_dataform_v1::builder::dataform::SearchFiles;
3705    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3706    /// use google_cloud_gax::paginator::ItemPaginator;
3707    ///
3708    /// let builder = prepare_request_builder();
3709    /// let mut items = builder.by_item();
3710    /// while let Some(result) = items.next().await {
3711    ///   let item = result?;
3712    /// }
3713    /// # Ok(()) }
3714    ///
3715    /// fn prepare_request_builder() -> SearchFiles {
3716    ///   # panic!();
3717    ///   // ... details omitted ...
3718    /// }
3719    /// ```
3720    #[derive(Clone, Debug)]
3721    pub struct SearchFiles(RequestBuilder<crate::model::SearchFilesRequest>);
3722
3723    impl SearchFiles {
3724        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3725            Self(RequestBuilder::new(stub))
3726        }
3727
3728        /// Sets the full request, replacing any prior values.
3729        pub fn with_request<V: Into<crate::model::SearchFilesRequest>>(mut self, v: V) -> Self {
3730            self.0.request = v.into();
3731            self
3732        }
3733
3734        /// Sets all the options, replacing any prior values.
3735        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3736            self.0.options = v.into();
3737            self
3738        }
3739
3740        /// Sends the request.
3741        pub async fn send(self) -> Result<crate::model::SearchFilesResponse> {
3742            (*self.0.stub)
3743                .search_files(self.0.request, self.0.options)
3744                .await
3745                .map(crate::Response::into_body)
3746        }
3747
3748        /// Streams each page in the collection.
3749        pub fn by_page(
3750            self,
3751        ) -> impl google_cloud_gax::paginator::Paginator<crate::model::SearchFilesResponse, crate::Error>
3752        {
3753            use std::clone::Clone;
3754            let token = self.0.request.page_token.clone();
3755            let execute = move |token: String| {
3756                let mut builder = self.clone();
3757                builder.0.request = builder.0.request.set_page_token(token);
3758                builder.send()
3759            };
3760            google_cloud_gax::paginator::internal::new_paginator(token, execute)
3761        }
3762
3763        /// Streams each item in the collection.
3764        pub fn by_item(
3765            self,
3766        ) -> impl google_cloud_gax::paginator::ItemPaginator<
3767            crate::model::SearchFilesResponse,
3768            crate::Error,
3769        > {
3770            use google_cloud_gax::paginator::Paginator;
3771            self.by_page().items()
3772        }
3773
3774        /// Sets the value of [workspace][crate::model::SearchFilesRequest::workspace].
3775        ///
3776        /// This is a **required** field for requests.
3777        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3778            self.0.request.workspace = v.into();
3779            self
3780        }
3781
3782        /// Sets the value of [page_size][crate::model::SearchFilesRequest::page_size].
3783        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
3784            self.0.request.page_size = v.into();
3785            self
3786        }
3787
3788        /// Sets the value of [page_token][crate::model::SearchFilesRequest::page_token].
3789        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
3790            self.0.request.page_token = v.into();
3791            self
3792        }
3793
3794        /// Sets the value of [filter][crate::model::SearchFilesRequest::filter].
3795        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
3796            self.0.request.filter = v.into();
3797            self
3798        }
3799    }
3800
3801    #[doc(hidden)]
3802    impl crate::RequestBuilder for SearchFiles {
3803        fn request_options(&mut self) -> &mut crate::RequestOptions {
3804            &mut self.0.options
3805        }
3806    }
3807
3808    /// The request builder for [Dataform::make_directory][crate::client::Dataform::make_directory] calls.
3809    ///
3810    /// # Example
3811    /// ```
3812    /// # use google_cloud_dataform_v1::builder::dataform::MakeDirectory;
3813    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3814    ///
3815    /// let builder = prepare_request_builder();
3816    /// let response = builder.send().await?;
3817    /// # Ok(()) }
3818    ///
3819    /// fn prepare_request_builder() -> MakeDirectory {
3820    ///   # panic!();
3821    ///   // ... details omitted ...
3822    /// }
3823    /// ```
3824    #[derive(Clone, Debug)]
3825    pub struct MakeDirectory(RequestBuilder<crate::model::MakeDirectoryRequest>);
3826
3827    impl MakeDirectory {
3828        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3829            Self(RequestBuilder::new(stub))
3830        }
3831
3832        /// Sets the full request, replacing any prior values.
3833        pub fn with_request<V: Into<crate::model::MakeDirectoryRequest>>(mut self, v: V) -> Self {
3834            self.0.request = v.into();
3835            self
3836        }
3837
3838        /// Sets all the options, replacing any prior values.
3839        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3840            self.0.options = v.into();
3841            self
3842        }
3843
3844        /// Sends the request.
3845        pub async fn send(self) -> Result<crate::model::MakeDirectoryResponse> {
3846            (*self.0.stub)
3847                .make_directory(self.0.request, self.0.options)
3848                .await
3849                .map(crate::Response::into_body)
3850        }
3851
3852        /// Sets the value of [workspace][crate::model::MakeDirectoryRequest::workspace].
3853        ///
3854        /// This is a **required** field for requests.
3855        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3856            self.0.request.workspace = v.into();
3857            self
3858        }
3859
3860        /// Sets the value of [path][crate::model::MakeDirectoryRequest::path].
3861        ///
3862        /// This is a **required** field for requests.
3863        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
3864            self.0.request.path = v.into();
3865            self
3866        }
3867    }
3868
3869    #[doc(hidden)]
3870    impl crate::RequestBuilder for MakeDirectory {
3871        fn request_options(&mut self) -> &mut crate::RequestOptions {
3872            &mut self.0.options
3873        }
3874    }
3875
3876    /// The request builder for [Dataform::remove_directory][crate::client::Dataform::remove_directory] calls.
3877    ///
3878    /// # Example
3879    /// ```
3880    /// # use google_cloud_dataform_v1::builder::dataform::RemoveDirectory;
3881    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3882    ///
3883    /// let builder = prepare_request_builder();
3884    /// let response = builder.send().await?;
3885    /// # Ok(()) }
3886    ///
3887    /// fn prepare_request_builder() -> RemoveDirectory {
3888    ///   # panic!();
3889    ///   // ... details omitted ...
3890    /// }
3891    /// ```
3892    #[derive(Clone, Debug)]
3893    pub struct RemoveDirectory(RequestBuilder<crate::model::RemoveDirectoryRequest>);
3894
3895    impl RemoveDirectory {
3896        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3897            Self(RequestBuilder::new(stub))
3898        }
3899
3900        /// Sets the full request, replacing any prior values.
3901        pub fn with_request<V: Into<crate::model::RemoveDirectoryRequest>>(mut self, v: V) -> Self {
3902            self.0.request = v.into();
3903            self
3904        }
3905
3906        /// Sets all the options, replacing any prior values.
3907        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3908            self.0.options = v.into();
3909            self
3910        }
3911
3912        /// Sends the request.
3913        pub async fn send(self) -> Result<crate::model::RemoveDirectoryResponse> {
3914            (*self.0.stub)
3915                .remove_directory(self.0.request, self.0.options)
3916                .await
3917                .map(crate::Response::into_body)
3918        }
3919
3920        /// Sets the value of [workspace][crate::model::RemoveDirectoryRequest::workspace].
3921        ///
3922        /// This is a **required** field for requests.
3923        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3924            self.0.request.workspace = v.into();
3925            self
3926        }
3927
3928        /// Sets the value of [path][crate::model::RemoveDirectoryRequest::path].
3929        ///
3930        /// This is a **required** field for requests.
3931        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
3932            self.0.request.path = v.into();
3933            self
3934        }
3935    }
3936
3937    #[doc(hidden)]
3938    impl crate::RequestBuilder for RemoveDirectory {
3939        fn request_options(&mut self) -> &mut crate::RequestOptions {
3940            &mut self.0.options
3941        }
3942    }
3943
3944    /// The request builder for [Dataform::move_directory][crate::client::Dataform::move_directory] calls.
3945    ///
3946    /// # Example
3947    /// ```
3948    /// # use google_cloud_dataform_v1::builder::dataform::MoveDirectory;
3949    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
3950    ///
3951    /// let builder = prepare_request_builder();
3952    /// let response = builder.send().await?;
3953    /// # Ok(()) }
3954    ///
3955    /// fn prepare_request_builder() -> MoveDirectory {
3956    ///   # panic!();
3957    ///   // ... details omitted ...
3958    /// }
3959    /// ```
3960    #[derive(Clone, Debug)]
3961    pub struct MoveDirectory(RequestBuilder<crate::model::MoveDirectoryRequest>);
3962
3963    impl MoveDirectory {
3964        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
3965            Self(RequestBuilder::new(stub))
3966        }
3967
3968        /// Sets the full request, replacing any prior values.
3969        pub fn with_request<V: Into<crate::model::MoveDirectoryRequest>>(mut self, v: V) -> Self {
3970            self.0.request = v.into();
3971            self
3972        }
3973
3974        /// Sets all the options, replacing any prior values.
3975        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
3976            self.0.options = v.into();
3977            self
3978        }
3979
3980        /// Sends the request.
3981        pub async fn send(self) -> Result<crate::model::MoveDirectoryResponse> {
3982            (*self.0.stub)
3983                .move_directory(self.0.request, self.0.options)
3984                .await
3985                .map(crate::Response::into_body)
3986        }
3987
3988        /// Sets the value of [workspace][crate::model::MoveDirectoryRequest::workspace].
3989        ///
3990        /// This is a **required** field for requests.
3991        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
3992            self.0.request.workspace = v.into();
3993            self
3994        }
3995
3996        /// Sets the value of [path][crate::model::MoveDirectoryRequest::path].
3997        ///
3998        /// This is a **required** field for requests.
3999        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4000            self.0.request.path = v.into();
4001            self
4002        }
4003
4004        /// Sets the value of [new_path][crate::model::MoveDirectoryRequest::new_path].
4005        ///
4006        /// This is a **required** field for requests.
4007        pub fn set_new_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4008            self.0.request.new_path = v.into();
4009            self
4010        }
4011    }
4012
4013    #[doc(hidden)]
4014    impl crate::RequestBuilder for MoveDirectory {
4015        fn request_options(&mut self) -> &mut crate::RequestOptions {
4016            &mut self.0.options
4017        }
4018    }
4019
4020    /// The request builder for [Dataform::read_file][crate::client::Dataform::read_file] calls.
4021    ///
4022    /// # Example
4023    /// ```
4024    /// # use google_cloud_dataform_v1::builder::dataform::ReadFile;
4025    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4026    ///
4027    /// let builder = prepare_request_builder();
4028    /// let response = builder.send().await?;
4029    /// # Ok(()) }
4030    ///
4031    /// fn prepare_request_builder() -> ReadFile {
4032    ///   # panic!();
4033    ///   // ... details omitted ...
4034    /// }
4035    /// ```
4036    #[derive(Clone, Debug)]
4037    pub struct ReadFile(RequestBuilder<crate::model::ReadFileRequest>);
4038
4039    impl ReadFile {
4040        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4041            Self(RequestBuilder::new(stub))
4042        }
4043
4044        /// Sets the full request, replacing any prior values.
4045        pub fn with_request<V: Into<crate::model::ReadFileRequest>>(mut self, v: V) -> Self {
4046            self.0.request = v.into();
4047            self
4048        }
4049
4050        /// Sets all the options, replacing any prior values.
4051        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4052            self.0.options = v.into();
4053            self
4054        }
4055
4056        /// Sends the request.
4057        pub async fn send(self) -> Result<crate::model::ReadFileResponse> {
4058            (*self.0.stub)
4059                .read_file(self.0.request, self.0.options)
4060                .await
4061                .map(crate::Response::into_body)
4062        }
4063
4064        /// Sets the value of [workspace][crate::model::ReadFileRequest::workspace].
4065        ///
4066        /// This is a **required** field for requests.
4067        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
4068            self.0.request.workspace = v.into();
4069            self
4070        }
4071
4072        /// Sets the value of [path][crate::model::ReadFileRequest::path].
4073        ///
4074        /// This is a **required** field for requests.
4075        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4076            self.0.request.path = v.into();
4077            self
4078        }
4079
4080        /// Sets the value of [revision][crate::model::ReadFileRequest::revision].
4081        pub fn set_revision<T: Into<std::string::String>>(mut self, v: T) -> Self {
4082            self.0.request.revision = v.into();
4083            self
4084        }
4085    }
4086
4087    #[doc(hidden)]
4088    impl crate::RequestBuilder for ReadFile {
4089        fn request_options(&mut self) -> &mut crate::RequestOptions {
4090            &mut self.0.options
4091        }
4092    }
4093
4094    /// The request builder for [Dataform::remove_file][crate::client::Dataform::remove_file] calls.
4095    ///
4096    /// # Example
4097    /// ```
4098    /// # use google_cloud_dataform_v1::builder::dataform::RemoveFile;
4099    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4100    ///
4101    /// let builder = prepare_request_builder();
4102    /// let response = builder.send().await?;
4103    /// # Ok(()) }
4104    ///
4105    /// fn prepare_request_builder() -> RemoveFile {
4106    ///   # panic!();
4107    ///   // ... details omitted ...
4108    /// }
4109    /// ```
4110    #[derive(Clone, Debug)]
4111    pub struct RemoveFile(RequestBuilder<crate::model::RemoveFileRequest>);
4112
4113    impl RemoveFile {
4114        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4115            Self(RequestBuilder::new(stub))
4116        }
4117
4118        /// Sets the full request, replacing any prior values.
4119        pub fn with_request<V: Into<crate::model::RemoveFileRequest>>(mut self, v: V) -> Self {
4120            self.0.request = v.into();
4121            self
4122        }
4123
4124        /// Sets all the options, replacing any prior values.
4125        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4126            self.0.options = v.into();
4127            self
4128        }
4129
4130        /// Sends the request.
4131        pub async fn send(self) -> Result<crate::model::RemoveFileResponse> {
4132            (*self.0.stub)
4133                .remove_file(self.0.request, self.0.options)
4134                .await
4135                .map(crate::Response::into_body)
4136        }
4137
4138        /// Sets the value of [workspace][crate::model::RemoveFileRequest::workspace].
4139        ///
4140        /// This is a **required** field for requests.
4141        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
4142            self.0.request.workspace = v.into();
4143            self
4144        }
4145
4146        /// Sets the value of [path][crate::model::RemoveFileRequest::path].
4147        ///
4148        /// This is a **required** field for requests.
4149        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4150            self.0.request.path = v.into();
4151            self
4152        }
4153    }
4154
4155    #[doc(hidden)]
4156    impl crate::RequestBuilder for RemoveFile {
4157        fn request_options(&mut self) -> &mut crate::RequestOptions {
4158            &mut self.0.options
4159        }
4160    }
4161
4162    /// The request builder for [Dataform::move_file][crate::client::Dataform::move_file] calls.
4163    ///
4164    /// # Example
4165    /// ```
4166    /// # use google_cloud_dataform_v1::builder::dataform::MoveFile;
4167    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4168    ///
4169    /// let builder = prepare_request_builder();
4170    /// let response = builder.send().await?;
4171    /// # Ok(()) }
4172    ///
4173    /// fn prepare_request_builder() -> MoveFile {
4174    ///   # panic!();
4175    ///   // ... details omitted ...
4176    /// }
4177    /// ```
4178    #[derive(Clone, Debug)]
4179    pub struct MoveFile(RequestBuilder<crate::model::MoveFileRequest>);
4180
4181    impl MoveFile {
4182        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4183            Self(RequestBuilder::new(stub))
4184        }
4185
4186        /// Sets the full request, replacing any prior values.
4187        pub fn with_request<V: Into<crate::model::MoveFileRequest>>(mut self, v: V) -> Self {
4188            self.0.request = v.into();
4189            self
4190        }
4191
4192        /// Sets all the options, replacing any prior values.
4193        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4194            self.0.options = v.into();
4195            self
4196        }
4197
4198        /// Sends the request.
4199        pub async fn send(self) -> Result<crate::model::MoveFileResponse> {
4200            (*self.0.stub)
4201                .move_file(self.0.request, self.0.options)
4202                .await
4203                .map(crate::Response::into_body)
4204        }
4205
4206        /// Sets the value of [workspace][crate::model::MoveFileRequest::workspace].
4207        ///
4208        /// This is a **required** field for requests.
4209        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
4210            self.0.request.workspace = v.into();
4211            self
4212        }
4213
4214        /// Sets the value of [path][crate::model::MoveFileRequest::path].
4215        ///
4216        /// This is a **required** field for requests.
4217        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4218            self.0.request.path = v.into();
4219            self
4220        }
4221
4222        /// Sets the value of [new_path][crate::model::MoveFileRequest::new_path].
4223        ///
4224        /// This is a **required** field for requests.
4225        pub fn set_new_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4226            self.0.request.new_path = v.into();
4227            self
4228        }
4229    }
4230
4231    #[doc(hidden)]
4232    impl crate::RequestBuilder for MoveFile {
4233        fn request_options(&mut self) -> &mut crate::RequestOptions {
4234            &mut self.0.options
4235        }
4236    }
4237
4238    /// The request builder for [Dataform::write_file][crate::client::Dataform::write_file] calls.
4239    ///
4240    /// # Example
4241    /// ```
4242    /// # use google_cloud_dataform_v1::builder::dataform::WriteFile;
4243    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4244    ///
4245    /// let builder = prepare_request_builder();
4246    /// let response = builder.send().await?;
4247    /// # Ok(()) }
4248    ///
4249    /// fn prepare_request_builder() -> WriteFile {
4250    ///   # panic!();
4251    ///   // ... details omitted ...
4252    /// }
4253    /// ```
4254    #[derive(Clone, Debug)]
4255    pub struct WriteFile(RequestBuilder<crate::model::WriteFileRequest>);
4256
4257    impl WriteFile {
4258        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4259            Self(RequestBuilder::new(stub))
4260        }
4261
4262        /// Sets the full request, replacing any prior values.
4263        pub fn with_request<V: Into<crate::model::WriteFileRequest>>(mut self, v: V) -> Self {
4264            self.0.request = v.into();
4265            self
4266        }
4267
4268        /// Sets all the options, replacing any prior values.
4269        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4270            self.0.options = v.into();
4271            self
4272        }
4273
4274        /// Sends the request.
4275        pub async fn send(self) -> Result<crate::model::WriteFileResponse> {
4276            (*self.0.stub)
4277                .write_file(self.0.request, self.0.options)
4278                .await
4279                .map(crate::Response::into_body)
4280        }
4281
4282        /// Sets the value of [workspace][crate::model::WriteFileRequest::workspace].
4283        ///
4284        /// This is a **required** field for requests.
4285        pub fn set_workspace<T: Into<std::string::String>>(mut self, v: T) -> Self {
4286            self.0.request.workspace = v.into();
4287            self
4288        }
4289
4290        /// Sets the value of [path][crate::model::WriteFileRequest::path].
4291        ///
4292        /// This is a **required** field for requests.
4293        pub fn set_path<T: Into<std::string::String>>(mut self, v: T) -> Self {
4294            self.0.request.path = v.into();
4295            self
4296        }
4297
4298        /// Sets the value of [contents][crate::model::WriteFileRequest::contents].
4299        ///
4300        /// This is a **required** field for requests.
4301        pub fn set_contents<T: Into<::bytes::Bytes>>(mut self, v: T) -> Self {
4302            self.0.request.contents = v.into();
4303            self
4304        }
4305    }
4306
4307    #[doc(hidden)]
4308    impl crate::RequestBuilder for WriteFile {
4309        fn request_options(&mut self) -> &mut crate::RequestOptions {
4310            &mut self.0.options
4311        }
4312    }
4313
4314    /// The request builder for [Dataform::list_release_configs][crate::client::Dataform::list_release_configs] calls.
4315    ///
4316    /// # Example
4317    /// ```
4318    /// # use google_cloud_dataform_v1::builder::dataform::ListReleaseConfigs;
4319    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4320    /// use google_cloud_gax::paginator::ItemPaginator;
4321    ///
4322    /// let builder = prepare_request_builder();
4323    /// let mut items = builder.by_item();
4324    /// while let Some(result) = items.next().await {
4325    ///   let item = result?;
4326    /// }
4327    /// # Ok(()) }
4328    ///
4329    /// fn prepare_request_builder() -> ListReleaseConfigs {
4330    ///   # panic!();
4331    ///   // ... details omitted ...
4332    /// }
4333    /// ```
4334    #[derive(Clone, Debug)]
4335    pub struct ListReleaseConfigs(RequestBuilder<crate::model::ListReleaseConfigsRequest>);
4336
4337    impl ListReleaseConfigs {
4338        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4339            Self(RequestBuilder::new(stub))
4340        }
4341
4342        /// Sets the full request, replacing any prior values.
4343        pub fn with_request<V: Into<crate::model::ListReleaseConfigsRequest>>(
4344            mut self,
4345            v: V,
4346        ) -> Self {
4347            self.0.request = v.into();
4348            self
4349        }
4350
4351        /// Sets all the options, replacing any prior values.
4352        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4353            self.0.options = v.into();
4354            self
4355        }
4356
4357        /// Sends the request.
4358        pub async fn send(self) -> Result<crate::model::ListReleaseConfigsResponse> {
4359            (*self.0.stub)
4360                .list_release_configs(self.0.request, self.0.options)
4361                .await
4362                .map(crate::Response::into_body)
4363        }
4364
4365        /// Streams each page in the collection.
4366        pub fn by_page(
4367            self,
4368        ) -> impl google_cloud_gax::paginator::Paginator<
4369            crate::model::ListReleaseConfigsResponse,
4370            crate::Error,
4371        > {
4372            use std::clone::Clone;
4373            let token = self.0.request.page_token.clone();
4374            let execute = move |token: String| {
4375                let mut builder = self.clone();
4376                builder.0.request = builder.0.request.set_page_token(token);
4377                builder.send()
4378            };
4379            google_cloud_gax::paginator::internal::new_paginator(token, execute)
4380        }
4381
4382        /// Streams each item in the collection.
4383        pub fn by_item(
4384            self,
4385        ) -> impl google_cloud_gax::paginator::ItemPaginator<
4386            crate::model::ListReleaseConfigsResponse,
4387            crate::Error,
4388        > {
4389            use google_cloud_gax::paginator::Paginator;
4390            self.by_page().items()
4391        }
4392
4393        /// Sets the value of [parent][crate::model::ListReleaseConfigsRequest::parent].
4394        ///
4395        /// This is a **required** field for requests.
4396        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
4397            self.0.request.parent = v.into();
4398            self
4399        }
4400
4401        /// Sets the value of [page_size][crate::model::ListReleaseConfigsRequest::page_size].
4402        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
4403            self.0.request.page_size = v.into();
4404            self
4405        }
4406
4407        /// Sets the value of [page_token][crate::model::ListReleaseConfigsRequest::page_token].
4408        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
4409            self.0.request.page_token = v.into();
4410            self
4411        }
4412    }
4413
4414    #[doc(hidden)]
4415    impl crate::RequestBuilder for ListReleaseConfigs {
4416        fn request_options(&mut self) -> &mut crate::RequestOptions {
4417            &mut self.0.options
4418        }
4419    }
4420
4421    /// The request builder for [Dataform::get_release_config][crate::client::Dataform::get_release_config] calls.
4422    ///
4423    /// # Example
4424    /// ```
4425    /// # use google_cloud_dataform_v1::builder::dataform::GetReleaseConfig;
4426    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4427    ///
4428    /// let builder = prepare_request_builder();
4429    /// let response = builder.send().await?;
4430    /// # Ok(()) }
4431    ///
4432    /// fn prepare_request_builder() -> GetReleaseConfig {
4433    ///   # panic!();
4434    ///   // ... details omitted ...
4435    /// }
4436    /// ```
4437    #[derive(Clone, Debug)]
4438    pub struct GetReleaseConfig(RequestBuilder<crate::model::GetReleaseConfigRequest>);
4439
4440    impl GetReleaseConfig {
4441        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4442            Self(RequestBuilder::new(stub))
4443        }
4444
4445        /// Sets the full request, replacing any prior values.
4446        pub fn with_request<V: Into<crate::model::GetReleaseConfigRequest>>(
4447            mut self,
4448            v: V,
4449        ) -> Self {
4450            self.0.request = v.into();
4451            self
4452        }
4453
4454        /// Sets all the options, replacing any prior values.
4455        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4456            self.0.options = v.into();
4457            self
4458        }
4459
4460        /// Sends the request.
4461        pub async fn send(self) -> Result<crate::model::ReleaseConfig> {
4462            (*self.0.stub)
4463                .get_release_config(self.0.request, self.0.options)
4464                .await
4465                .map(crate::Response::into_body)
4466        }
4467
4468        /// Sets the value of [name][crate::model::GetReleaseConfigRequest::name].
4469        ///
4470        /// This is a **required** field for requests.
4471        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
4472            self.0.request.name = v.into();
4473            self
4474        }
4475    }
4476
4477    #[doc(hidden)]
4478    impl crate::RequestBuilder for GetReleaseConfig {
4479        fn request_options(&mut self) -> &mut crate::RequestOptions {
4480            &mut self.0.options
4481        }
4482    }
4483
4484    /// The request builder for [Dataform::create_release_config][crate::client::Dataform::create_release_config] calls.
4485    ///
4486    /// # Example
4487    /// ```
4488    /// # use google_cloud_dataform_v1::builder::dataform::CreateReleaseConfig;
4489    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4490    ///
4491    /// let builder = prepare_request_builder();
4492    /// let response = builder.send().await?;
4493    /// # Ok(()) }
4494    ///
4495    /// fn prepare_request_builder() -> CreateReleaseConfig {
4496    ///   # panic!();
4497    ///   // ... details omitted ...
4498    /// }
4499    /// ```
4500    #[derive(Clone, Debug)]
4501    pub struct CreateReleaseConfig(RequestBuilder<crate::model::CreateReleaseConfigRequest>);
4502
4503    impl CreateReleaseConfig {
4504        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4505            Self(RequestBuilder::new(stub))
4506        }
4507
4508        /// Sets the full request, replacing any prior values.
4509        pub fn with_request<V: Into<crate::model::CreateReleaseConfigRequest>>(
4510            mut self,
4511            v: V,
4512        ) -> Self {
4513            self.0.request = v.into();
4514            self
4515        }
4516
4517        /// Sets all the options, replacing any prior values.
4518        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4519            self.0.options = v.into();
4520            self
4521        }
4522
4523        /// Sends the request.
4524        pub async fn send(self) -> Result<crate::model::ReleaseConfig> {
4525            (*self.0.stub)
4526                .create_release_config(self.0.request, self.0.options)
4527                .await
4528                .map(crate::Response::into_body)
4529        }
4530
4531        /// Sets the value of [parent][crate::model::CreateReleaseConfigRequest::parent].
4532        ///
4533        /// This is a **required** field for requests.
4534        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
4535            self.0.request.parent = v.into();
4536            self
4537        }
4538
4539        /// Sets the value of [release_config][crate::model::CreateReleaseConfigRequest::release_config].
4540        ///
4541        /// This is a **required** field for requests.
4542        pub fn set_release_config<T>(mut self, v: T) -> Self
4543        where
4544            T: std::convert::Into<crate::model::ReleaseConfig>,
4545        {
4546            self.0.request.release_config = std::option::Option::Some(v.into());
4547            self
4548        }
4549
4550        /// Sets or clears the value of [release_config][crate::model::CreateReleaseConfigRequest::release_config].
4551        ///
4552        /// This is a **required** field for requests.
4553        pub fn set_or_clear_release_config<T>(mut self, v: std::option::Option<T>) -> Self
4554        where
4555            T: std::convert::Into<crate::model::ReleaseConfig>,
4556        {
4557            self.0.request.release_config = v.map(|x| x.into());
4558            self
4559        }
4560
4561        /// Sets the value of [release_config_id][crate::model::CreateReleaseConfigRequest::release_config_id].
4562        ///
4563        /// This is a **required** field for requests.
4564        pub fn set_release_config_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
4565            self.0.request.release_config_id = v.into();
4566            self
4567        }
4568    }
4569
4570    #[doc(hidden)]
4571    impl crate::RequestBuilder for CreateReleaseConfig {
4572        fn request_options(&mut self) -> &mut crate::RequestOptions {
4573            &mut self.0.options
4574        }
4575    }
4576
4577    /// The request builder for [Dataform::update_release_config][crate::client::Dataform::update_release_config] calls.
4578    ///
4579    /// # Example
4580    /// ```
4581    /// # use google_cloud_dataform_v1::builder::dataform::UpdateReleaseConfig;
4582    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4583    ///
4584    /// let builder = prepare_request_builder();
4585    /// let response = builder.send().await?;
4586    /// # Ok(()) }
4587    ///
4588    /// fn prepare_request_builder() -> UpdateReleaseConfig {
4589    ///   # panic!();
4590    ///   // ... details omitted ...
4591    /// }
4592    /// ```
4593    #[derive(Clone, Debug)]
4594    pub struct UpdateReleaseConfig(RequestBuilder<crate::model::UpdateReleaseConfigRequest>);
4595
4596    impl UpdateReleaseConfig {
4597        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4598            Self(RequestBuilder::new(stub))
4599        }
4600
4601        /// Sets the full request, replacing any prior values.
4602        pub fn with_request<V: Into<crate::model::UpdateReleaseConfigRequest>>(
4603            mut self,
4604            v: V,
4605        ) -> Self {
4606            self.0.request = v.into();
4607            self
4608        }
4609
4610        /// Sets all the options, replacing any prior values.
4611        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4612            self.0.options = v.into();
4613            self
4614        }
4615
4616        /// Sends the request.
4617        pub async fn send(self) -> Result<crate::model::ReleaseConfig> {
4618            (*self.0.stub)
4619                .update_release_config(self.0.request, self.0.options)
4620                .await
4621                .map(crate::Response::into_body)
4622        }
4623
4624        /// Sets the value of [update_mask][crate::model::UpdateReleaseConfigRequest::update_mask].
4625        pub fn set_update_mask<T>(mut self, v: T) -> Self
4626        where
4627            T: std::convert::Into<wkt::FieldMask>,
4628        {
4629            self.0.request.update_mask = std::option::Option::Some(v.into());
4630            self
4631        }
4632
4633        /// Sets or clears the value of [update_mask][crate::model::UpdateReleaseConfigRequest::update_mask].
4634        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
4635        where
4636            T: std::convert::Into<wkt::FieldMask>,
4637        {
4638            self.0.request.update_mask = v.map(|x| x.into());
4639            self
4640        }
4641
4642        /// Sets the value of [release_config][crate::model::UpdateReleaseConfigRequest::release_config].
4643        ///
4644        /// This is a **required** field for requests.
4645        pub fn set_release_config<T>(mut self, v: T) -> Self
4646        where
4647            T: std::convert::Into<crate::model::ReleaseConfig>,
4648        {
4649            self.0.request.release_config = std::option::Option::Some(v.into());
4650            self
4651        }
4652
4653        /// Sets or clears the value of [release_config][crate::model::UpdateReleaseConfigRequest::release_config].
4654        ///
4655        /// This is a **required** field for requests.
4656        pub fn set_or_clear_release_config<T>(mut self, v: std::option::Option<T>) -> Self
4657        where
4658            T: std::convert::Into<crate::model::ReleaseConfig>,
4659        {
4660            self.0.request.release_config = v.map(|x| x.into());
4661            self
4662        }
4663    }
4664
4665    #[doc(hidden)]
4666    impl crate::RequestBuilder for UpdateReleaseConfig {
4667        fn request_options(&mut self) -> &mut crate::RequestOptions {
4668            &mut self.0.options
4669        }
4670    }
4671
4672    /// The request builder for [Dataform::delete_release_config][crate::client::Dataform::delete_release_config] calls.
4673    ///
4674    /// # Example
4675    /// ```
4676    /// # use google_cloud_dataform_v1::builder::dataform::DeleteReleaseConfig;
4677    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4678    ///
4679    /// let builder = prepare_request_builder();
4680    /// let response = builder.send().await?;
4681    /// # Ok(()) }
4682    ///
4683    /// fn prepare_request_builder() -> DeleteReleaseConfig {
4684    ///   # panic!();
4685    ///   // ... details omitted ...
4686    /// }
4687    /// ```
4688    #[derive(Clone, Debug)]
4689    pub struct DeleteReleaseConfig(RequestBuilder<crate::model::DeleteReleaseConfigRequest>);
4690
4691    impl DeleteReleaseConfig {
4692        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4693            Self(RequestBuilder::new(stub))
4694        }
4695
4696        /// Sets the full request, replacing any prior values.
4697        pub fn with_request<V: Into<crate::model::DeleteReleaseConfigRequest>>(
4698            mut self,
4699            v: V,
4700        ) -> Self {
4701            self.0.request = v.into();
4702            self
4703        }
4704
4705        /// Sets all the options, replacing any prior values.
4706        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4707            self.0.options = v.into();
4708            self
4709        }
4710
4711        /// Sends the request.
4712        pub async fn send(self) -> Result<()> {
4713            (*self.0.stub)
4714                .delete_release_config(self.0.request, self.0.options)
4715                .await
4716                .map(crate::Response::into_body)
4717        }
4718
4719        /// Sets the value of [name][crate::model::DeleteReleaseConfigRequest::name].
4720        ///
4721        /// This is a **required** field for requests.
4722        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
4723            self.0.request.name = v.into();
4724            self
4725        }
4726    }
4727
4728    #[doc(hidden)]
4729    impl crate::RequestBuilder for DeleteReleaseConfig {
4730        fn request_options(&mut self) -> &mut crate::RequestOptions {
4731            &mut self.0.options
4732        }
4733    }
4734
4735    /// The request builder for [Dataform::list_compilation_results][crate::client::Dataform::list_compilation_results] calls.
4736    ///
4737    /// # Example
4738    /// ```
4739    /// # use google_cloud_dataform_v1::builder::dataform::ListCompilationResults;
4740    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4741    /// use google_cloud_gax::paginator::ItemPaginator;
4742    ///
4743    /// let builder = prepare_request_builder();
4744    /// let mut items = builder.by_item();
4745    /// while let Some(result) = items.next().await {
4746    ///   let item = result?;
4747    /// }
4748    /// # Ok(()) }
4749    ///
4750    /// fn prepare_request_builder() -> ListCompilationResults {
4751    ///   # panic!();
4752    ///   // ... details omitted ...
4753    /// }
4754    /// ```
4755    #[derive(Clone, Debug)]
4756    pub struct ListCompilationResults(RequestBuilder<crate::model::ListCompilationResultsRequest>);
4757
4758    impl ListCompilationResults {
4759        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4760            Self(RequestBuilder::new(stub))
4761        }
4762
4763        /// Sets the full request, replacing any prior values.
4764        pub fn with_request<V: Into<crate::model::ListCompilationResultsRequest>>(
4765            mut self,
4766            v: V,
4767        ) -> Self {
4768            self.0.request = v.into();
4769            self
4770        }
4771
4772        /// Sets all the options, replacing any prior values.
4773        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4774            self.0.options = v.into();
4775            self
4776        }
4777
4778        /// Sends the request.
4779        pub async fn send(self) -> Result<crate::model::ListCompilationResultsResponse> {
4780            (*self.0.stub)
4781                .list_compilation_results(self.0.request, self.0.options)
4782                .await
4783                .map(crate::Response::into_body)
4784        }
4785
4786        /// Streams each page in the collection.
4787        pub fn by_page(
4788            self,
4789        ) -> impl google_cloud_gax::paginator::Paginator<
4790            crate::model::ListCompilationResultsResponse,
4791            crate::Error,
4792        > {
4793            use std::clone::Clone;
4794            let token = self.0.request.page_token.clone();
4795            let execute = move |token: String| {
4796                let mut builder = self.clone();
4797                builder.0.request = builder.0.request.set_page_token(token);
4798                builder.send()
4799            };
4800            google_cloud_gax::paginator::internal::new_paginator(token, execute)
4801        }
4802
4803        /// Streams each item in the collection.
4804        pub fn by_item(
4805            self,
4806        ) -> impl google_cloud_gax::paginator::ItemPaginator<
4807            crate::model::ListCompilationResultsResponse,
4808            crate::Error,
4809        > {
4810            use google_cloud_gax::paginator::Paginator;
4811            self.by_page().items()
4812        }
4813
4814        /// Sets the value of [parent][crate::model::ListCompilationResultsRequest::parent].
4815        ///
4816        /// This is a **required** field for requests.
4817        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
4818            self.0.request.parent = v.into();
4819            self
4820        }
4821
4822        /// Sets the value of [page_size][crate::model::ListCompilationResultsRequest::page_size].
4823        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
4824            self.0.request.page_size = v.into();
4825            self
4826        }
4827
4828        /// Sets the value of [page_token][crate::model::ListCompilationResultsRequest::page_token].
4829        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
4830            self.0.request.page_token = v.into();
4831            self
4832        }
4833
4834        /// Sets the value of [order_by][crate::model::ListCompilationResultsRequest::order_by].
4835        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
4836            self.0.request.order_by = v.into();
4837            self
4838        }
4839
4840        /// Sets the value of [filter][crate::model::ListCompilationResultsRequest::filter].
4841        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
4842            self.0.request.filter = v.into();
4843            self
4844        }
4845    }
4846
4847    #[doc(hidden)]
4848    impl crate::RequestBuilder for ListCompilationResults {
4849        fn request_options(&mut self) -> &mut crate::RequestOptions {
4850            &mut self.0.options
4851        }
4852    }
4853
4854    /// The request builder for [Dataform::get_compilation_result][crate::client::Dataform::get_compilation_result] calls.
4855    ///
4856    /// # Example
4857    /// ```
4858    /// # use google_cloud_dataform_v1::builder::dataform::GetCompilationResult;
4859    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4860    ///
4861    /// let builder = prepare_request_builder();
4862    /// let response = builder.send().await?;
4863    /// # Ok(()) }
4864    ///
4865    /// fn prepare_request_builder() -> GetCompilationResult {
4866    ///   # panic!();
4867    ///   // ... details omitted ...
4868    /// }
4869    /// ```
4870    #[derive(Clone, Debug)]
4871    pub struct GetCompilationResult(RequestBuilder<crate::model::GetCompilationResultRequest>);
4872
4873    impl GetCompilationResult {
4874        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4875            Self(RequestBuilder::new(stub))
4876        }
4877
4878        /// Sets the full request, replacing any prior values.
4879        pub fn with_request<V: Into<crate::model::GetCompilationResultRequest>>(
4880            mut self,
4881            v: V,
4882        ) -> Self {
4883            self.0.request = v.into();
4884            self
4885        }
4886
4887        /// Sets all the options, replacing any prior values.
4888        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4889            self.0.options = v.into();
4890            self
4891        }
4892
4893        /// Sends the request.
4894        pub async fn send(self) -> Result<crate::model::CompilationResult> {
4895            (*self.0.stub)
4896                .get_compilation_result(self.0.request, self.0.options)
4897                .await
4898                .map(crate::Response::into_body)
4899        }
4900
4901        /// Sets the value of [name][crate::model::GetCompilationResultRequest::name].
4902        ///
4903        /// This is a **required** field for requests.
4904        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
4905            self.0.request.name = v.into();
4906            self
4907        }
4908    }
4909
4910    #[doc(hidden)]
4911    impl crate::RequestBuilder for GetCompilationResult {
4912        fn request_options(&mut self) -> &mut crate::RequestOptions {
4913            &mut self.0.options
4914        }
4915    }
4916
4917    /// The request builder for [Dataform::create_compilation_result][crate::client::Dataform::create_compilation_result] calls.
4918    ///
4919    /// # Example
4920    /// ```
4921    /// # use google_cloud_dataform_v1::builder::dataform::CreateCompilationResult;
4922    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
4923    ///
4924    /// let builder = prepare_request_builder();
4925    /// let response = builder.send().await?;
4926    /// # Ok(()) }
4927    ///
4928    /// fn prepare_request_builder() -> CreateCompilationResult {
4929    ///   # panic!();
4930    ///   // ... details omitted ...
4931    /// }
4932    /// ```
4933    #[derive(Clone, Debug)]
4934    pub struct CreateCompilationResult(
4935        RequestBuilder<crate::model::CreateCompilationResultRequest>,
4936    );
4937
4938    impl CreateCompilationResult {
4939        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
4940            Self(RequestBuilder::new(stub))
4941        }
4942
4943        /// Sets the full request, replacing any prior values.
4944        pub fn with_request<V: Into<crate::model::CreateCompilationResultRequest>>(
4945            mut self,
4946            v: V,
4947        ) -> Self {
4948            self.0.request = v.into();
4949            self
4950        }
4951
4952        /// Sets all the options, replacing any prior values.
4953        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
4954            self.0.options = v.into();
4955            self
4956        }
4957
4958        /// Sends the request.
4959        pub async fn send(self) -> Result<crate::model::CompilationResult> {
4960            (*self.0.stub)
4961                .create_compilation_result(self.0.request, self.0.options)
4962                .await
4963                .map(crate::Response::into_body)
4964        }
4965
4966        /// Sets the value of [parent][crate::model::CreateCompilationResultRequest::parent].
4967        ///
4968        /// This is a **required** field for requests.
4969        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
4970            self.0.request.parent = v.into();
4971            self
4972        }
4973
4974        /// Sets the value of [compilation_result][crate::model::CreateCompilationResultRequest::compilation_result].
4975        ///
4976        /// This is a **required** field for requests.
4977        pub fn set_compilation_result<T>(mut self, v: T) -> Self
4978        where
4979            T: std::convert::Into<crate::model::CompilationResult>,
4980        {
4981            self.0.request.compilation_result = std::option::Option::Some(v.into());
4982            self
4983        }
4984
4985        /// Sets or clears the value of [compilation_result][crate::model::CreateCompilationResultRequest::compilation_result].
4986        ///
4987        /// This is a **required** field for requests.
4988        pub fn set_or_clear_compilation_result<T>(mut self, v: std::option::Option<T>) -> Self
4989        where
4990            T: std::convert::Into<crate::model::CompilationResult>,
4991        {
4992            self.0.request.compilation_result = v.map(|x| x.into());
4993            self
4994        }
4995    }
4996
4997    #[doc(hidden)]
4998    impl crate::RequestBuilder for CreateCompilationResult {
4999        fn request_options(&mut self) -> &mut crate::RequestOptions {
5000            &mut self.0.options
5001        }
5002    }
5003
5004    /// The request builder for [Dataform::query_compilation_result_actions][crate::client::Dataform::query_compilation_result_actions] calls.
5005    ///
5006    /// # Example
5007    /// ```
5008    /// # use google_cloud_dataform_v1::builder::dataform::QueryCompilationResultActions;
5009    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5010    /// use google_cloud_gax::paginator::ItemPaginator;
5011    ///
5012    /// let builder = prepare_request_builder();
5013    /// let mut items = builder.by_item();
5014    /// while let Some(result) = items.next().await {
5015    ///   let item = result?;
5016    /// }
5017    /// # Ok(()) }
5018    ///
5019    /// fn prepare_request_builder() -> QueryCompilationResultActions {
5020    ///   # panic!();
5021    ///   // ... details omitted ...
5022    /// }
5023    /// ```
5024    #[derive(Clone, Debug)]
5025    pub struct QueryCompilationResultActions(
5026        RequestBuilder<crate::model::QueryCompilationResultActionsRequest>,
5027    );
5028
5029    impl QueryCompilationResultActions {
5030        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5031            Self(RequestBuilder::new(stub))
5032        }
5033
5034        /// Sets the full request, replacing any prior values.
5035        pub fn with_request<V: Into<crate::model::QueryCompilationResultActionsRequest>>(
5036            mut self,
5037            v: V,
5038        ) -> Self {
5039            self.0.request = v.into();
5040            self
5041        }
5042
5043        /// Sets all the options, replacing any prior values.
5044        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5045            self.0.options = v.into();
5046            self
5047        }
5048
5049        /// Sends the request.
5050        pub async fn send(self) -> Result<crate::model::QueryCompilationResultActionsResponse> {
5051            (*self.0.stub)
5052                .query_compilation_result_actions(self.0.request, self.0.options)
5053                .await
5054                .map(crate::Response::into_body)
5055        }
5056
5057        /// Streams each page in the collection.
5058        pub fn by_page(
5059            self,
5060        ) -> impl google_cloud_gax::paginator::Paginator<
5061            crate::model::QueryCompilationResultActionsResponse,
5062            crate::Error,
5063        > {
5064            use std::clone::Clone;
5065            let token = self.0.request.page_token.clone();
5066            let execute = move |token: String| {
5067                let mut builder = self.clone();
5068                builder.0.request = builder.0.request.set_page_token(token);
5069                builder.send()
5070            };
5071            google_cloud_gax::paginator::internal::new_paginator(token, execute)
5072        }
5073
5074        /// Streams each item in the collection.
5075        pub fn by_item(
5076            self,
5077        ) -> impl google_cloud_gax::paginator::ItemPaginator<
5078            crate::model::QueryCompilationResultActionsResponse,
5079            crate::Error,
5080        > {
5081            use google_cloud_gax::paginator::Paginator;
5082            self.by_page().items()
5083        }
5084
5085        /// Sets the value of [name][crate::model::QueryCompilationResultActionsRequest::name].
5086        ///
5087        /// This is a **required** field for requests.
5088        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
5089            self.0.request.name = v.into();
5090            self
5091        }
5092
5093        /// Sets the value of [page_size][crate::model::QueryCompilationResultActionsRequest::page_size].
5094        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
5095            self.0.request.page_size = v.into();
5096            self
5097        }
5098
5099        /// Sets the value of [page_token][crate::model::QueryCompilationResultActionsRequest::page_token].
5100        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
5101            self.0.request.page_token = v.into();
5102            self
5103        }
5104
5105        /// Sets the value of [filter][crate::model::QueryCompilationResultActionsRequest::filter].
5106        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
5107            self.0.request.filter = v.into();
5108            self
5109        }
5110    }
5111
5112    #[doc(hidden)]
5113    impl crate::RequestBuilder for QueryCompilationResultActions {
5114        fn request_options(&mut self) -> &mut crate::RequestOptions {
5115            &mut self.0.options
5116        }
5117    }
5118
5119    /// The request builder for [Dataform::list_workflow_configs][crate::client::Dataform::list_workflow_configs] calls.
5120    ///
5121    /// # Example
5122    /// ```
5123    /// # use google_cloud_dataform_v1::builder::dataform::ListWorkflowConfigs;
5124    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5125    /// use google_cloud_gax::paginator::ItemPaginator;
5126    ///
5127    /// let builder = prepare_request_builder();
5128    /// let mut items = builder.by_item();
5129    /// while let Some(result) = items.next().await {
5130    ///   let item = result?;
5131    /// }
5132    /// # Ok(()) }
5133    ///
5134    /// fn prepare_request_builder() -> ListWorkflowConfigs {
5135    ///   # panic!();
5136    ///   // ... details omitted ...
5137    /// }
5138    /// ```
5139    #[derive(Clone, Debug)]
5140    pub struct ListWorkflowConfigs(RequestBuilder<crate::model::ListWorkflowConfigsRequest>);
5141
5142    impl ListWorkflowConfigs {
5143        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5144            Self(RequestBuilder::new(stub))
5145        }
5146
5147        /// Sets the full request, replacing any prior values.
5148        pub fn with_request<V: Into<crate::model::ListWorkflowConfigsRequest>>(
5149            mut self,
5150            v: V,
5151        ) -> Self {
5152            self.0.request = v.into();
5153            self
5154        }
5155
5156        /// Sets all the options, replacing any prior values.
5157        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5158            self.0.options = v.into();
5159            self
5160        }
5161
5162        /// Sends the request.
5163        pub async fn send(self) -> Result<crate::model::ListWorkflowConfigsResponse> {
5164            (*self.0.stub)
5165                .list_workflow_configs(self.0.request, self.0.options)
5166                .await
5167                .map(crate::Response::into_body)
5168        }
5169
5170        /// Streams each page in the collection.
5171        pub fn by_page(
5172            self,
5173        ) -> impl google_cloud_gax::paginator::Paginator<
5174            crate::model::ListWorkflowConfigsResponse,
5175            crate::Error,
5176        > {
5177            use std::clone::Clone;
5178            let token = self.0.request.page_token.clone();
5179            let execute = move |token: String| {
5180                let mut builder = self.clone();
5181                builder.0.request = builder.0.request.set_page_token(token);
5182                builder.send()
5183            };
5184            google_cloud_gax::paginator::internal::new_paginator(token, execute)
5185        }
5186
5187        /// Streams each item in the collection.
5188        pub fn by_item(
5189            self,
5190        ) -> impl google_cloud_gax::paginator::ItemPaginator<
5191            crate::model::ListWorkflowConfigsResponse,
5192            crate::Error,
5193        > {
5194            use google_cloud_gax::paginator::Paginator;
5195            self.by_page().items()
5196        }
5197
5198        /// Sets the value of [parent][crate::model::ListWorkflowConfigsRequest::parent].
5199        ///
5200        /// This is a **required** field for requests.
5201        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
5202            self.0.request.parent = v.into();
5203            self
5204        }
5205
5206        /// Sets the value of [page_size][crate::model::ListWorkflowConfigsRequest::page_size].
5207        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
5208            self.0.request.page_size = v.into();
5209            self
5210        }
5211
5212        /// Sets the value of [page_token][crate::model::ListWorkflowConfigsRequest::page_token].
5213        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
5214            self.0.request.page_token = v.into();
5215            self
5216        }
5217    }
5218
5219    #[doc(hidden)]
5220    impl crate::RequestBuilder for ListWorkflowConfigs {
5221        fn request_options(&mut self) -> &mut crate::RequestOptions {
5222            &mut self.0.options
5223        }
5224    }
5225
5226    /// The request builder for [Dataform::get_workflow_config][crate::client::Dataform::get_workflow_config] calls.
5227    ///
5228    /// # Example
5229    /// ```
5230    /// # use google_cloud_dataform_v1::builder::dataform::GetWorkflowConfig;
5231    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5232    ///
5233    /// let builder = prepare_request_builder();
5234    /// let response = builder.send().await?;
5235    /// # Ok(()) }
5236    ///
5237    /// fn prepare_request_builder() -> GetWorkflowConfig {
5238    ///   # panic!();
5239    ///   // ... details omitted ...
5240    /// }
5241    /// ```
5242    #[derive(Clone, Debug)]
5243    pub struct GetWorkflowConfig(RequestBuilder<crate::model::GetWorkflowConfigRequest>);
5244
5245    impl GetWorkflowConfig {
5246        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5247            Self(RequestBuilder::new(stub))
5248        }
5249
5250        /// Sets the full request, replacing any prior values.
5251        pub fn with_request<V: Into<crate::model::GetWorkflowConfigRequest>>(
5252            mut self,
5253            v: V,
5254        ) -> Self {
5255            self.0.request = v.into();
5256            self
5257        }
5258
5259        /// Sets all the options, replacing any prior values.
5260        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5261            self.0.options = v.into();
5262            self
5263        }
5264
5265        /// Sends the request.
5266        pub async fn send(self) -> Result<crate::model::WorkflowConfig> {
5267            (*self.0.stub)
5268                .get_workflow_config(self.0.request, self.0.options)
5269                .await
5270                .map(crate::Response::into_body)
5271        }
5272
5273        /// Sets the value of [name][crate::model::GetWorkflowConfigRequest::name].
5274        ///
5275        /// This is a **required** field for requests.
5276        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
5277            self.0.request.name = v.into();
5278            self
5279        }
5280    }
5281
5282    #[doc(hidden)]
5283    impl crate::RequestBuilder for GetWorkflowConfig {
5284        fn request_options(&mut self) -> &mut crate::RequestOptions {
5285            &mut self.0.options
5286        }
5287    }
5288
5289    /// The request builder for [Dataform::create_workflow_config][crate::client::Dataform::create_workflow_config] calls.
5290    ///
5291    /// # Example
5292    /// ```
5293    /// # use google_cloud_dataform_v1::builder::dataform::CreateWorkflowConfig;
5294    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5295    ///
5296    /// let builder = prepare_request_builder();
5297    /// let response = builder.send().await?;
5298    /// # Ok(()) }
5299    ///
5300    /// fn prepare_request_builder() -> CreateWorkflowConfig {
5301    ///   # panic!();
5302    ///   // ... details omitted ...
5303    /// }
5304    /// ```
5305    #[derive(Clone, Debug)]
5306    pub struct CreateWorkflowConfig(RequestBuilder<crate::model::CreateWorkflowConfigRequest>);
5307
5308    impl CreateWorkflowConfig {
5309        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5310            Self(RequestBuilder::new(stub))
5311        }
5312
5313        /// Sets the full request, replacing any prior values.
5314        pub fn with_request<V: Into<crate::model::CreateWorkflowConfigRequest>>(
5315            mut self,
5316            v: V,
5317        ) -> Self {
5318            self.0.request = v.into();
5319            self
5320        }
5321
5322        /// Sets all the options, replacing any prior values.
5323        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5324            self.0.options = v.into();
5325            self
5326        }
5327
5328        /// Sends the request.
5329        pub async fn send(self) -> Result<crate::model::WorkflowConfig> {
5330            (*self.0.stub)
5331                .create_workflow_config(self.0.request, self.0.options)
5332                .await
5333                .map(crate::Response::into_body)
5334        }
5335
5336        /// Sets the value of [parent][crate::model::CreateWorkflowConfigRequest::parent].
5337        ///
5338        /// This is a **required** field for requests.
5339        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
5340            self.0.request.parent = v.into();
5341            self
5342        }
5343
5344        /// Sets the value of [workflow_config][crate::model::CreateWorkflowConfigRequest::workflow_config].
5345        ///
5346        /// This is a **required** field for requests.
5347        pub fn set_workflow_config<T>(mut self, v: T) -> Self
5348        where
5349            T: std::convert::Into<crate::model::WorkflowConfig>,
5350        {
5351            self.0.request.workflow_config = std::option::Option::Some(v.into());
5352            self
5353        }
5354
5355        /// Sets or clears the value of [workflow_config][crate::model::CreateWorkflowConfigRequest::workflow_config].
5356        ///
5357        /// This is a **required** field for requests.
5358        pub fn set_or_clear_workflow_config<T>(mut self, v: std::option::Option<T>) -> Self
5359        where
5360            T: std::convert::Into<crate::model::WorkflowConfig>,
5361        {
5362            self.0.request.workflow_config = v.map(|x| x.into());
5363            self
5364        }
5365
5366        /// Sets the value of [workflow_config_id][crate::model::CreateWorkflowConfigRequest::workflow_config_id].
5367        ///
5368        /// This is a **required** field for requests.
5369        pub fn set_workflow_config_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
5370            self.0.request.workflow_config_id = v.into();
5371            self
5372        }
5373    }
5374
5375    #[doc(hidden)]
5376    impl crate::RequestBuilder for CreateWorkflowConfig {
5377        fn request_options(&mut self) -> &mut crate::RequestOptions {
5378            &mut self.0.options
5379        }
5380    }
5381
5382    /// The request builder for [Dataform::update_workflow_config][crate::client::Dataform::update_workflow_config] calls.
5383    ///
5384    /// # Example
5385    /// ```
5386    /// # use google_cloud_dataform_v1::builder::dataform::UpdateWorkflowConfig;
5387    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5388    ///
5389    /// let builder = prepare_request_builder();
5390    /// let response = builder.send().await?;
5391    /// # Ok(()) }
5392    ///
5393    /// fn prepare_request_builder() -> UpdateWorkflowConfig {
5394    ///   # panic!();
5395    ///   // ... details omitted ...
5396    /// }
5397    /// ```
5398    #[derive(Clone, Debug)]
5399    pub struct UpdateWorkflowConfig(RequestBuilder<crate::model::UpdateWorkflowConfigRequest>);
5400
5401    impl UpdateWorkflowConfig {
5402        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5403            Self(RequestBuilder::new(stub))
5404        }
5405
5406        /// Sets the full request, replacing any prior values.
5407        pub fn with_request<V: Into<crate::model::UpdateWorkflowConfigRequest>>(
5408            mut self,
5409            v: V,
5410        ) -> Self {
5411            self.0.request = v.into();
5412            self
5413        }
5414
5415        /// Sets all the options, replacing any prior values.
5416        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5417            self.0.options = v.into();
5418            self
5419        }
5420
5421        /// Sends the request.
5422        pub async fn send(self) -> Result<crate::model::WorkflowConfig> {
5423            (*self.0.stub)
5424                .update_workflow_config(self.0.request, self.0.options)
5425                .await
5426                .map(crate::Response::into_body)
5427        }
5428
5429        /// Sets the value of [update_mask][crate::model::UpdateWorkflowConfigRequest::update_mask].
5430        pub fn set_update_mask<T>(mut self, v: T) -> Self
5431        where
5432            T: std::convert::Into<wkt::FieldMask>,
5433        {
5434            self.0.request.update_mask = std::option::Option::Some(v.into());
5435            self
5436        }
5437
5438        /// Sets or clears the value of [update_mask][crate::model::UpdateWorkflowConfigRequest::update_mask].
5439        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
5440        where
5441            T: std::convert::Into<wkt::FieldMask>,
5442        {
5443            self.0.request.update_mask = v.map(|x| x.into());
5444            self
5445        }
5446
5447        /// Sets the value of [workflow_config][crate::model::UpdateWorkflowConfigRequest::workflow_config].
5448        ///
5449        /// This is a **required** field for requests.
5450        pub fn set_workflow_config<T>(mut self, v: T) -> Self
5451        where
5452            T: std::convert::Into<crate::model::WorkflowConfig>,
5453        {
5454            self.0.request.workflow_config = std::option::Option::Some(v.into());
5455            self
5456        }
5457
5458        /// Sets or clears the value of [workflow_config][crate::model::UpdateWorkflowConfigRequest::workflow_config].
5459        ///
5460        /// This is a **required** field for requests.
5461        pub fn set_or_clear_workflow_config<T>(mut self, v: std::option::Option<T>) -> Self
5462        where
5463            T: std::convert::Into<crate::model::WorkflowConfig>,
5464        {
5465            self.0.request.workflow_config = v.map(|x| x.into());
5466            self
5467        }
5468    }
5469
5470    #[doc(hidden)]
5471    impl crate::RequestBuilder for UpdateWorkflowConfig {
5472        fn request_options(&mut self) -> &mut crate::RequestOptions {
5473            &mut self.0.options
5474        }
5475    }
5476
5477    /// The request builder for [Dataform::delete_workflow_config][crate::client::Dataform::delete_workflow_config] calls.
5478    ///
5479    /// # Example
5480    /// ```
5481    /// # use google_cloud_dataform_v1::builder::dataform::DeleteWorkflowConfig;
5482    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5483    ///
5484    /// let builder = prepare_request_builder();
5485    /// let response = builder.send().await?;
5486    /// # Ok(()) }
5487    ///
5488    /// fn prepare_request_builder() -> DeleteWorkflowConfig {
5489    ///   # panic!();
5490    ///   // ... details omitted ...
5491    /// }
5492    /// ```
5493    #[derive(Clone, Debug)]
5494    pub struct DeleteWorkflowConfig(RequestBuilder<crate::model::DeleteWorkflowConfigRequest>);
5495
5496    impl DeleteWorkflowConfig {
5497        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5498            Self(RequestBuilder::new(stub))
5499        }
5500
5501        /// Sets the full request, replacing any prior values.
5502        pub fn with_request<V: Into<crate::model::DeleteWorkflowConfigRequest>>(
5503            mut self,
5504            v: V,
5505        ) -> Self {
5506            self.0.request = v.into();
5507            self
5508        }
5509
5510        /// Sets all the options, replacing any prior values.
5511        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5512            self.0.options = v.into();
5513            self
5514        }
5515
5516        /// Sends the request.
5517        pub async fn send(self) -> Result<()> {
5518            (*self.0.stub)
5519                .delete_workflow_config(self.0.request, self.0.options)
5520                .await
5521                .map(crate::Response::into_body)
5522        }
5523
5524        /// Sets the value of [name][crate::model::DeleteWorkflowConfigRequest::name].
5525        ///
5526        /// This is a **required** field for requests.
5527        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
5528            self.0.request.name = v.into();
5529            self
5530        }
5531    }
5532
5533    #[doc(hidden)]
5534    impl crate::RequestBuilder for DeleteWorkflowConfig {
5535        fn request_options(&mut self) -> &mut crate::RequestOptions {
5536            &mut self.0.options
5537        }
5538    }
5539
5540    /// The request builder for [Dataform::list_workflow_invocations][crate::client::Dataform::list_workflow_invocations] calls.
5541    ///
5542    /// # Example
5543    /// ```
5544    /// # use google_cloud_dataform_v1::builder::dataform::ListWorkflowInvocations;
5545    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5546    /// use google_cloud_gax::paginator::ItemPaginator;
5547    ///
5548    /// let builder = prepare_request_builder();
5549    /// let mut items = builder.by_item();
5550    /// while let Some(result) = items.next().await {
5551    ///   let item = result?;
5552    /// }
5553    /// # Ok(()) }
5554    ///
5555    /// fn prepare_request_builder() -> ListWorkflowInvocations {
5556    ///   # panic!();
5557    ///   // ... details omitted ...
5558    /// }
5559    /// ```
5560    #[derive(Clone, Debug)]
5561    pub struct ListWorkflowInvocations(
5562        RequestBuilder<crate::model::ListWorkflowInvocationsRequest>,
5563    );
5564
5565    impl ListWorkflowInvocations {
5566        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5567            Self(RequestBuilder::new(stub))
5568        }
5569
5570        /// Sets the full request, replacing any prior values.
5571        pub fn with_request<V: Into<crate::model::ListWorkflowInvocationsRequest>>(
5572            mut self,
5573            v: V,
5574        ) -> Self {
5575            self.0.request = v.into();
5576            self
5577        }
5578
5579        /// Sets all the options, replacing any prior values.
5580        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5581            self.0.options = v.into();
5582            self
5583        }
5584
5585        /// Sends the request.
5586        pub async fn send(self) -> Result<crate::model::ListWorkflowInvocationsResponse> {
5587            (*self.0.stub)
5588                .list_workflow_invocations(self.0.request, self.0.options)
5589                .await
5590                .map(crate::Response::into_body)
5591        }
5592
5593        /// Streams each page in the collection.
5594        pub fn by_page(
5595            self,
5596        ) -> impl google_cloud_gax::paginator::Paginator<
5597            crate::model::ListWorkflowInvocationsResponse,
5598            crate::Error,
5599        > {
5600            use std::clone::Clone;
5601            let token = self.0.request.page_token.clone();
5602            let execute = move |token: String| {
5603                let mut builder = self.clone();
5604                builder.0.request = builder.0.request.set_page_token(token);
5605                builder.send()
5606            };
5607            google_cloud_gax::paginator::internal::new_paginator(token, execute)
5608        }
5609
5610        /// Streams each item in the collection.
5611        pub fn by_item(
5612            self,
5613        ) -> impl google_cloud_gax::paginator::ItemPaginator<
5614            crate::model::ListWorkflowInvocationsResponse,
5615            crate::Error,
5616        > {
5617            use google_cloud_gax::paginator::Paginator;
5618            self.by_page().items()
5619        }
5620
5621        /// Sets the value of [parent][crate::model::ListWorkflowInvocationsRequest::parent].
5622        ///
5623        /// This is a **required** field for requests.
5624        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
5625            self.0.request.parent = v.into();
5626            self
5627        }
5628
5629        /// Sets the value of [page_size][crate::model::ListWorkflowInvocationsRequest::page_size].
5630        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
5631            self.0.request.page_size = v.into();
5632            self
5633        }
5634
5635        /// Sets the value of [page_token][crate::model::ListWorkflowInvocationsRequest::page_token].
5636        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
5637            self.0.request.page_token = v.into();
5638            self
5639        }
5640
5641        /// Sets the value of [order_by][crate::model::ListWorkflowInvocationsRequest::order_by].
5642        pub fn set_order_by<T: Into<std::string::String>>(mut self, v: T) -> Self {
5643            self.0.request.order_by = v.into();
5644            self
5645        }
5646
5647        /// Sets the value of [filter][crate::model::ListWorkflowInvocationsRequest::filter].
5648        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
5649            self.0.request.filter = v.into();
5650            self
5651        }
5652    }
5653
5654    #[doc(hidden)]
5655    impl crate::RequestBuilder for ListWorkflowInvocations {
5656        fn request_options(&mut self) -> &mut crate::RequestOptions {
5657            &mut self.0.options
5658        }
5659    }
5660
5661    /// The request builder for [Dataform::get_workflow_invocation][crate::client::Dataform::get_workflow_invocation] calls.
5662    ///
5663    /// # Example
5664    /// ```
5665    /// # use google_cloud_dataform_v1::builder::dataform::GetWorkflowInvocation;
5666    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5667    ///
5668    /// let builder = prepare_request_builder();
5669    /// let response = builder.send().await?;
5670    /// # Ok(()) }
5671    ///
5672    /// fn prepare_request_builder() -> GetWorkflowInvocation {
5673    ///   # panic!();
5674    ///   // ... details omitted ...
5675    /// }
5676    /// ```
5677    #[derive(Clone, Debug)]
5678    pub struct GetWorkflowInvocation(RequestBuilder<crate::model::GetWorkflowInvocationRequest>);
5679
5680    impl GetWorkflowInvocation {
5681        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5682            Self(RequestBuilder::new(stub))
5683        }
5684
5685        /// Sets the full request, replacing any prior values.
5686        pub fn with_request<V: Into<crate::model::GetWorkflowInvocationRequest>>(
5687            mut self,
5688            v: V,
5689        ) -> Self {
5690            self.0.request = v.into();
5691            self
5692        }
5693
5694        /// Sets all the options, replacing any prior values.
5695        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5696            self.0.options = v.into();
5697            self
5698        }
5699
5700        /// Sends the request.
5701        pub async fn send(self) -> Result<crate::model::WorkflowInvocation> {
5702            (*self.0.stub)
5703                .get_workflow_invocation(self.0.request, self.0.options)
5704                .await
5705                .map(crate::Response::into_body)
5706        }
5707
5708        /// Sets the value of [name][crate::model::GetWorkflowInvocationRequest::name].
5709        ///
5710        /// This is a **required** field for requests.
5711        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
5712            self.0.request.name = v.into();
5713            self
5714        }
5715    }
5716
5717    #[doc(hidden)]
5718    impl crate::RequestBuilder for GetWorkflowInvocation {
5719        fn request_options(&mut self) -> &mut crate::RequestOptions {
5720            &mut self.0.options
5721        }
5722    }
5723
5724    /// The request builder for [Dataform::create_workflow_invocation][crate::client::Dataform::create_workflow_invocation] calls.
5725    ///
5726    /// # Example
5727    /// ```
5728    /// # use google_cloud_dataform_v1::builder::dataform::CreateWorkflowInvocation;
5729    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5730    ///
5731    /// let builder = prepare_request_builder();
5732    /// let response = builder.send().await?;
5733    /// # Ok(()) }
5734    ///
5735    /// fn prepare_request_builder() -> CreateWorkflowInvocation {
5736    ///   # panic!();
5737    ///   // ... details omitted ...
5738    /// }
5739    /// ```
5740    #[derive(Clone, Debug)]
5741    pub struct CreateWorkflowInvocation(
5742        RequestBuilder<crate::model::CreateWorkflowInvocationRequest>,
5743    );
5744
5745    impl CreateWorkflowInvocation {
5746        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5747            Self(RequestBuilder::new(stub))
5748        }
5749
5750        /// Sets the full request, replacing any prior values.
5751        pub fn with_request<V: Into<crate::model::CreateWorkflowInvocationRequest>>(
5752            mut self,
5753            v: V,
5754        ) -> Self {
5755            self.0.request = v.into();
5756            self
5757        }
5758
5759        /// Sets all the options, replacing any prior values.
5760        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5761            self.0.options = v.into();
5762            self
5763        }
5764
5765        /// Sends the request.
5766        pub async fn send(self) -> Result<crate::model::WorkflowInvocation> {
5767            (*self.0.stub)
5768                .create_workflow_invocation(self.0.request, self.0.options)
5769                .await
5770                .map(crate::Response::into_body)
5771        }
5772
5773        /// Sets the value of [parent][crate::model::CreateWorkflowInvocationRequest::parent].
5774        ///
5775        /// This is a **required** field for requests.
5776        pub fn set_parent<T: Into<std::string::String>>(mut self, v: T) -> Self {
5777            self.0.request.parent = v.into();
5778            self
5779        }
5780
5781        /// Sets the value of [workflow_invocation][crate::model::CreateWorkflowInvocationRequest::workflow_invocation].
5782        ///
5783        /// This is a **required** field for requests.
5784        pub fn set_workflow_invocation<T>(mut self, v: T) -> Self
5785        where
5786            T: std::convert::Into<crate::model::WorkflowInvocation>,
5787        {
5788            self.0.request.workflow_invocation = std::option::Option::Some(v.into());
5789            self
5790        }
5791
5792        /// Sets or clears the value of [workflow_invocation][crate::model::CreateWorkflowInvocationRequest::workflow_invocation].
5793        ///
5794        /// This is a **required** field for requests.
5795        pub fn set_or_clear_workflow_invocation<T>(mut self, v: std::option::Option<T>) -> Self
5796        where
5797            T: std::convert::Into<crate::model::WorkflowInvocation>,
5798        {
5799            self.0.request.workflow_invocation = v.map(|x| x.into());
5800            self
5801        }
5802    }
5803
5804    #[doc(hidden)]
5805    impl crate::RequestBuilder for CreateWorkflowInvocation {
5806        fn request_options(&mut self) -> &mut crate::RequestOptions {
5807            &mut self.0.options
5808        }
5809    }
5810
5811    /// The request builder for [Dataform::delete_workflow_invocation][crate::client::Dataform::delete_workflow_invocation] calls.
5812    ///
5813    /// # Example
5814    /// ```
5815    /// # use google_cloud_dataform_v1::builder::dataform::DeleteWorkflowInvocation;
5816    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5817    ///
5818    /// let builder = prepare_request_builder();
5819    /// let response = builder.send().await?;
5820    /// # Ok(()) }
5821    ///
5822    /// fn prepare_request_builder() -> DeleteWorkflowInvocation {
5823    ///   # panic!();
5824    ///   // ... details omitted ...
5825    /// }
5826    /// ```
5827    #[derive(Clone, Debug)]
5828    pub struct DeleteWorkflowInvocation(
5829        RequestBuilder<crate::model::DeleteWorkflowInvocationRequest>,
5830    );
5831
5832    impl DeleteWorkflowInvocation {
5833        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5834            Self(RequestBuilder::new(stub))
5835        }
5836
5837        /// Sets the full request, replacing any prior values.
5838        pub fn with_request<V: Into<crate::model::DeleteWorkflowInvocationRequest>>(
5839            mut self,
5840            v: V,
5841        ) -> Self {
5842            self.0.request = v.into();
5843            self
5844        }
5845
5846        /// Sets all the options, replacing any prior values.
5847        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5848            self.0.options = v.into();
5849            self
5850        }
5851
5852        /// Sends the request.
5853        pub async fn send(self) -> Result<()> {
5854            (*self.0.stub)
5855                .delete_workflow_invocation(self.0.request, self.0.options)
5856                .await
5857                .map(crate::Response::into_body)
5858        }
5859
5860        /// Sets the value of [name][crate::model::DeleteWorkflowInvocationRequest::name].
5861        ///
5862        /// This is a **required** field for requests.
5863        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
5864            self.0.request.name = v.into();
5865            self
5866        }
5867    }
5868
5869    #[doc(hidden)]
5870    impl crate::RequestBuilder for DeleteWorkflowInvocation {
5871        fn request_options(&mut self) -> &mut crate::RequestOptions {
5872            &mut self.0.options
5873        }
5874    }
5875
5876    /// The request builder for [Dataform::cancel_workflow_invocation][crate::client::Dataform::cancel_workflow_invocation] calls.
5877    ///
5878    /// # Example
5879    /// ```
5880    /// # use google_cloud_dataform_v1::builder::dataform::CancelWorkflowInvocation;
5881    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5882    ///
5883    /// let builder = prepare_request_builder();
5884    /// let response = builder.send().await?;
5885    /// # Ok(()) }
5886    ///
5887    /// fn prepare_request_builder() -> CancelWorkflowInvocation {
5888    ///   # panic!();
5889    ///   // ... details omitted ...
5890    /// }
5891    /// ```
5892    #[derive(Clone, Debug)]
5893    pub struct CancelWorkflowInvocation(
5894        RequestBuilder<crate::model::CancelWorkflowInvocationRequest>,
5895    );
5896
5897    impl CancelWorkflowInvocation {
5898        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5899            Self(RequestBuilder::new(stub))
5900        }
5901
5902        /// Sets the full request, replacing any prior values.
5903        pub fn with_request<V: Into<crate::model::CancelWorkflowInvocationRequest>>(
5904            mut self,
5905            v: V,
5906        ) -> Self {
5907            self.0.request = v.into();
5908            self
5909        }
5910
5911        /// Sets all the options, replacing any prior values.
5912        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5913            self.0.options = v.into();
5914            self
5915        }
5916
5917        /// Sends the request.
5918        pub async fn send(self) -> Result<crate::model::CancelWorkflowInvocationResponse> {
5919            (*self.0.stub)
5920                .cancel_workflow_invocation(self.0.request, self.0.options)
5921                .await
5922                .map(crate::Response::into_body)
5923        }
5924
5925        /// Sets the value of [name][crate::model::CancelWorkflowInvocationRequest::name].
5926        ///
5927        /// This is a **required** field for requests.
5928        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
5929            self.0.request.name = v.into();
5930            self
5931        }
5932    }
5933
5934    #[doc(hidden)]
5935    impl crate::RequestBuilder for CancelWorkflowInvocation {
5936        fn request_options(&mut self) -> &mut crate::RequestOptions {
5937            &mut self.0.options
5938        }
5939    }
5940
5941    /// The request builder for [Dataform::query_workflow_invocation_actions][crate::client::Dataform::query_workflow_invocation_actions] calls.
5942    ///
5943    /// # Example
5944    /// ```
5945    /// # use google_cloud_dataform_v1::builder::dataform::QueryWorkflowInvocationActions;
5946    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
5947    /// use google_cloud_gax::paginator::ItemPaginator;
5948    ///
5949    /// let builder = prepare_request_builder();
5950    /// let mut items = builder.by_item();
5951    /// while let Some(result) = items.next().await {
5952    ///   let item = result?;
5953    /// }
5954    /// # Ok(()) }
5955    ///
5956    /// fn prepare_request_builder() -> QueryWorkflowInvocationActions {
5957    ///   # panic!();
5958    ///   // ... details omitted ...
5959    /// }
5960    /// ```
5961    #[derive(Clone, Debug)]
5962    pub struct QueryWorkflowInvocationActions(
5963        RequestBuilder<crate::model::QueryWorkflowInvocationActionsRequest>,
5964    );
5965
5966    impl QueryWorkflowInvocationActions {
5967        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
5968            Self(RequestBuilder::new(stub))
5969        }
5970
5971        /// Sets the full request, replacing any prior values.
5972        pub fn with_request<V: Into<crate::model::QueryWorkflowInvocationActionsRequest>>(
5973            mut self,
5974            v: V,
5975        ) -> Self {
5976            self.0.request = v.into();
5977            self
5978        }
5979
5980        /// Sets all the options, replacing any prior values.
5981        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
5982            self.0.options = v.into();
5983            self
5984        }
5985
5986        /// Sends the request.
5987        pub async fn send(self) -> Result<crate::model::QueryWorkflowInvocationActionsResponse> {
5988            (*self.0.stub)
5989                .query_workflow_invocation_actions(self.0.request, self.0.options)
5990                .await
5991                .map(crate::Response::into_body)
5992        }
5993
5994        /// Streams each page in the collection.
5995        pub fn by_page(
5996            self,
5997        ) -> impl google_cloud_gax::paginator::Paginator<
5998            crate::model::QueryWorkflowInvocationActionsResponse,
5999            crate::Error,
6000        > {
6001            use std::clone::Clone;
6002            let token = self.0.request.page_token.clone();
6003            let execute = move |token: String| {
6004                let mut builder = self.clone();
6005                builder.0.request = builder.0.request.set_page_token(token);
6006                builder.send()
6007            };
6008            google_cloud_gax::paginator::internal::new_paginator(token, execute)
6009        }
6010
6011        /// Streams each item in the collection.
6012        pub fn by_item(
6013            self,
6014        ) -> impl google_cloud_gax::paginator::ItemPaginator<
6015            crate::model::QueryWorkflowInvocationActionsResponse,
6016            crate::Error,
6017        > {
6018            use google_cloud_gax::paginator::Paginator;
6019            self.by_page().items()
6020        }
6021
6022        /// Sets the value of [name][crate::model::QueryWorkflowInvocationActionsRequest::name].
6023        ///
6024        /// This is a **required** field for requests.
6025        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6026            self.0.request.name = v.into();
6027            self
6028        }
6029
6030        /// Sets the value of [page_size][crate::model::QueryWorkflowInvocationActionsRequest::page_size].
6031        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
6032            self.0.request.page_size = v.into();
6033            self
6034        }
6035
6036        /// Sets the value of [page_token][crate::model::QueryWorkflowInvocationActionsRequest::page_token].
6037        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
6038            self.0.request.page_token = v.into();
6039            self
6040        }
6041    }
6042
6043    #[doc(hidden)]
6044    impl crate::RequestBuilder for QueryWorkflowInvocationActions {
6045        fn request_options(&mut self) -> &mut crate::RequestOptions {
6046            &mut self.0.options
6047        }
6048    }
6049
6050    /// The request builder for [Dataform::get_config][crate::client::Dataform::get_config] calls.
6051    ///
6052    /// # Example
6053    /// ```
6054    /// # use google_cloud_dataform_v1::builder::dataform::GetConfig;
6055    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6056    ///
6057    /// let builder = prepare_request_builder();
6058    /// let response = builder.send().await?;
6059    /// # Ok(()) }
6060    ///
6061    /// fn prepare_request_builder() -> GetConfig {
6062    ///   # panic!();
6063    ///   // ... details omitted ...
6064    /// }
6065    /// ```
6066    #[derive(Clone, Debug)]
6067    pub struct GetConfig(RequestBuilder<crate::model::GetConfigRequest>);
6068
6069    impl GetConfig {
6070        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6071            Self(RequestBuilder::new(stub))
6072        }
6073
6074        /// Sets the full request, replacing any prior values.
6075        pub fn with_request<V: Into<crate::model::GetConfigRequest>>(mut self, v: V) -> Self {
6076            self.0.request = v.into();
6077            self
6078        }
6079
6080        /// Sets all the options, replacing any prior values.
6081        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6082            self.0.options = v.into();
6083            self
6084        }
6085
6086        /// Sends the request.
6087        pub async fn send(self) -> Result<crate::model::Config> {
6088            (*self.0.stub)
6089                .get_config(self.0.request, self.0.options)
6090                .await
6091                .map(crate::Response::into_body)
6092        }
6093
6094        /// Sets the value of [name][crate::model::GetConfigRequest::name].
6095        ///
6096        /// This is a **required** field for requests.
6097        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6098            self.0.request.name = v.into();
6099            self
6100        }
6101    }
6102
6103    #[doc(hidden)]
6104    impl crate::RequestBuilder for GetConfig {
6105        fn request_options(&mut self) -> &mut crate::RequestOptions {
6106            &mut self.0.options
6107        }
6108    }
6109
6110    /// The request builder for [Dataform::update_config][crate::client::Dataform::update_config] calls.
6111    ///
6112    /// # Example
6113    /// ```
6114    /// # use google_cloud_dataform_v1::builder::dataform::UpdateConfig;
6115    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6116    ///
6117    /// let builder = prepare_request_builder();
6118    /// let response = builder.send().await?;
6119    /// # Ok(()) }
6120    ///
6121    /// fn prepare_request_builder() -> UpdateConfig {
6122    ///   # panic!();
6123    ///   // ... details omitted ...
6124    /// }
6125    /// ```
6126    #[derive(Clone, Debug)]
6127    pub struct UpdateConfig(RequestBuilder<crate::model::UpdateConfigRequest>);
6128
6129    impl UpdateConfig {
6130        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6131            Self(RequestBuilder::new(stub))
6132        }
6133
6134        /// Sets the full request, replacing any prior values.
6135        pub fn with_request<V: Into<crate::model::UpdateConfigRequest>>(mut self, v: V) -> Self {
6136            self.0.request = v.into();
6137            self
6138        }
6139
6140        /// Sets all the options, replacing any prior values.
6141        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6142            self.0.options = v.into();
6143            self
6144        }
6145
6146        /// Sends the request.
6147        pub async fn send(self) -> Result<crate::model::Config> {
6148            (*self.0.stub)
6149                .update_config(self.0.request, self.0.options)
6150                .await
6151                .map(crate::Response::into_body)
6152        }
6153
6154        /// Sets the value of [config][crate::model::UpdateConfigRequest::config].
6155        ///
6156        /// This is a **required** field for requests.
6157        pub fn set_config<T>(mut self, v: T) -> Self
6158        where
6159            T: std::convert::Into<crate::model::Config>,
6160        {
6161            self.0.request.config = std::option::Option::Some(v.into());
6162            self
6163        }
6164
6165        /// Sets or clears the value of [config][crate::model::UpdateConfigRequest::config].
6166        ///
6167        /// This is a **required** field for requests.
6168        pub fn set_or_clear_config<T>(mut self, v: std::option::Option<T>) -> Self
6169        where
6170            T: std::convert::Into<crate::model::Config>,
6171        {
6172            self.0.request.config = v.map(|x| x.into());
6173            self
6174        }
6175
6176        /// Sets the value of [update_mask][crate::model::UpdateConfigRequest::update_mask].
6177        pub fn set_update_mask<T>(mut self, v: T) -> Self
6178        where
6179            T: std::convert::Into<wkt::FieldMask>,
6180        {
6181            self.0.request.update_mask = std::option::Option::Some(v.into());
6182            self
6183        }
6184
6185        /// Sets or clears the value of [update_mask][crate::model::UpdateConfigRequest::update_mask].
6186        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
6187        where
6188            T: std::convert::Into<wkt::FieldMask>,
6189        {
6190            self.0.request.update_mask = v.map(|x| x.into());
6191            self
6192        }
6193    }
6194
6195    #[doc(hidden)]
6196    impl crate::RequestBuilder for UpdateConfig {
6197        fn request_options(&mut self) -> &mut crate::RequestOptions {
6198            &mut self.0.options
6199        }
6200    }
6201
6202    /// The request builder for [Dataform::get_iam_policy][crate::client::Dataform::get_iam_policy] calls.
6203    ///
6204    /// # Example
6205    /// ```
6206    /// # use google_cloud_dataform_v1::builder::dataform::GetIamPolicy;
6207    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6208    ///
6209    /// let builder = prepare_request_builder();
6210    /// let response = builder.send().await?;
6211    /// # Ok(()) }
6212    ///
6213    /// fn prepare_request_builder() -> GetIamPolicy {
6214    ///   # panic!();
6215    ///   // ... details omitted ...
6216    /// }
6217    /// ```
6218    #[derive(Clone, Debug)]
6219    pub struct GetIamPolicy(RequestBuilder<google_cloud_iam_v1::model::GetIamPolicyRequest>);
6220
6221    impl GetIamPolicy {
6222        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6223            Self(RequestBuilder::new(stub))
6224        }
6225
6226        /// Sets the full request, replacing any prior values.
6227        pub fn with_request<V: Into<google_cloud_iam_v1::model::GetIamPolicyRequest>>(
6228            mut self,
6229            v: V,
6230        ) -> Self {
6231            self.0.request = v.into();
6232            self
6233        }
6234
6235        /// Sets all the options, replacing any prior values.
6236        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6237            self.0.options = v.into();
6238            self
6239        }
6240
6241        /// Sends the request.
6242        pub async fn send(self) -> Result<google_cloud_iam_v1::model::Policy> {
6243            (*self.0.stub)
6244                .get_iam_policy(self.0.request, self.0.options)
6245                .await
6246                .map(crate::Response::into_body)
6247        }
6248
6249        /// Sets the value of [resource][google_cloud_iam_v1::model::GetIamPolicyRequest::resource].
6250        ///
6251        /// This is a **required** field for requests.
6252        pub fn set_resource<T: Into<std::string::String>>(mut self, v: T) -> Self {
6253            self.0.request.resource = v.into();
6254            self
6255        }
6256
6257        /// Sets the value of [options][google_cloud_iam_v1::model::GetIamPolicyRequest::options].
6258        pub fn set_options<T>(mut self, v: T) -> Self
6259        where
6260            T: std::convert::Into<google_cloud_iam_v1::model::GetPolicyOptions>,
6261        {
6262            self.0.request.options = std::option::Option::Some(v.into());
6263            self
6264        }
6265
6266        /// Sets or clears the value of [options][google_cloud_iam_v1::model::GetIamPolicyRequest::options].
6267        pub fn set_or_clear_options<T>(mut self, v: std::option::Option<T>) -> Self
6268        where
6269            T: std::convert::Into<google_cloud_iam_v1::model::GetPolicyOptions>,
6270        {
6271            self.0.request.options = v.map(|x| x.into());
6272            self
6273        }
6274    }
6275
6276    #[doc(hidden)]
6277    impl crate::RequestBuilder for GetIamPolicy {
6278        fn request_options(&mut self) -> &mut crate::RequestOptions {
6279            &mut self.0.options
6280        }
6281    }
6282
6283    /// The request builder for [Dataform::set_iam_policy][crate::client::Dataform::set_iam_policy] calls.
6284    ///
6285    /// # Example
6286    /// ```
6287    /// # use google_cloud_dataform_v1::builder::dataform::SetIamPolicy;
6288    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6289    ///
6290    /// let builder = prepare_request_builder();
6291    /// let response = builder.send().await?;
6292    /// # Ok(()) }
6293    ///
6294    /// fn prepare_request_builder() -> SetIamPolicy {
6295    ///   # panic!();
6296    ///   // ... details omitted ...
6297    /// }
6298    /// ```
6299    #[derive(Clone, Debug)]
6300    pub struct SetIamPolicy(RequestBuilder<google_cloud_iam_v1::model::SetIamPolicyRequest>);
6301
6302    impl SetIamPolicy {
6303        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6304            Self(RequestBuilder::new(stub))
6305        }
6306
6307        /// Sets the full request, replacing any prior values.
6308        pub fn with_request<V: Into<google_cloud_iam_v1::model::SetIamPolicyRequest>>(
6309            mut self,
6310            v: V,
6311        ) -> Self {
6312            self.0.request = v.into();
6313            self
6314        }
6315
6316        /// Sets all the options, replacing any prior values.
6317        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6318            self.0.options = v.into();
6319            self
6320        }
6321
6322        /// Sends the request.
6323        pub async fn send(self) -> Result<google_cloud_iam_v1::model::Policy> {
6324            (*self.0.stub)
6325                .set_iam_policy(self.0.request, self.0.options)
6326                .await
6327                .map(crate::Response::into_body)
6328        }
6329
6330        /// Sets the value of [resource][google_cloud_iam_v1::model::SetIamPolicyRequest::resource].
6331        ///
6332        /// This is a **required** field for requests.
6333        pub fn set_resource<T: Into<std::string::String>>(mut self, v: T) -> Self {
6334            self.0.request.resource = v.into();
6335            self
6336        }
6337
6338        /// Sets the value of [policy][google_cloud_iam_v1::model::SetIamPolicyRequest::policy].
6339        ///
6340        /// This is a **required** field for requests.
6341        pub fn set_policy<T>(mut self, v: T) -> Self
6342        where
6343            T: std::convert::Into<google_cloud_iam_v1::model::Policy>,
6344        {
6345            self.0.request.policy = std::option::Option::Some(v.into());
6346            self
6347        }
6348
6349        /// Sets or clears the value of [policy][google_cloud_iam_v1::model::SetIamPolicyRequest::policy].
6350        ///
6351        /// This is a **required** field for requests.
6352        pub fn set_or_clear_policy<T>(mut self, v: std::option::Option<T>) -> Self
6353        where
6354            T: std::convert::Into<google_cloud_iam_v1::model::Policy>,
6355        {
6356            self.0.request.policy = v.map(|x| x.into());
6357            self
6358        }
6359
6360        /// Sets the value of [update_mask][google_cloud_iam_v1::model::SetIamPolicyRequest::update_mask].
6361        pub fn set_update_mask<T>(mut self, v: T) -> Self
6362        where
6363            T: std::convert::Into<wkt::FieldMask>,
6364        {
6365            self.0.request.update_mask = std::option::Option::Some(v.into());
6366            self
6367        }
6368
6369        /// Sets or clears the value of [update_mask][google_cloud_iam_v1::model::SetIamPolicyRequest::update_mask].
6370        pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
6371        where
6372            T: std::convert::Into<wkt::FieldMask>,
6373        {
6374            self.0.request.update_mask = v.map(|x| x.into());
6375            self
6376        }
6377    }
6378
6379    #[doc(hidden)]
6380    impl crate::RequestBuilder for SetIamPolicy {
6381        fn request_options(&mut self) -> &mut crate::RequestOptions {
6382            &mut self.0.options
6383        }
6384    }
6385
6386    /// The request builder for [Dataform::test_iam_permissions][crate::client::Dataform::test_iam_permissions] calls.
6387    ///
6388    /// # Example
6389    /// ```
6390    /// # use google_cloud_dataform_v1::builder::dataform::TestIamPermissions;
6391    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6392    ///
6393    /// let builder = prepare_request_builder();
6394    /// let response = builder.send().await?;
6395    /// # Ok(()) }
6396    ///
6397    /// fn prepare_request_builder() -> TestIamPermissions {
6398    ///   # panic!();
6399    ///   // ... details omitted ...
6400    /// }
6401    /// ```
6402    #[derive(Clone, Debug)]
6403    pub struct TestIamPermissions(
6404        RequestBuilder<google_cloud_iam_v1::model::TestIamPermissionsRequest>,
6405    );
6406
6407    impl TestIamPermissions {
6408        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6409            Self(RequestBuilder::new(stub))
6410        }
6411
6412        /// Sets the full request, replacing any prior values.
6413        pub fn with_request<V: Into<google_cloud_iam_v1::model::TestIamPermissionsRequest>>(
6414            mut self,
6415            v: V,
6416        ) -> Self {
6417            self.0.request = v.into();
6418            self
6419        }
6420
6421        /// Sets all the options, replacing any prior values.
6422        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6423            self.0.options = v.into();
6424            self
6425        }
6426
6427        /// Sends the request.
6428        pub async fn send(self) -> Result<google_cloud_iam_v1::model::TestIamPermissionsResponse> {
6429            (*self.0.stub)
6430                .test_iam_permissions(self.0.request, self.0.options)
6431                .await
6432                .map(crate::Response::into_body)
6433        }
6434
6435        /// Sets the value of [resource][google_cloud_iam_v1::model::TestIamPermissionsRequest::resource].
6436        ///
6437        /// This is a **required** field for requests.
6438        pub fn set_resource<T: Into<std::string::String>>(mut self, v: T) -> Self {
6439            self.0.request.resource = v.into();
6440            self
6441        }
6442
6443        /// Sets the value of [permissions][google_cloud_iam_v1::model::TestIamPermissionsRequest::permissions].
6444        ///
6445        /// This is a **required** field for requests.
6446        pub fn set_permissions<T, V>(mut self, v: T) -> Self
6447        where
6448            T: std::iter::IntoIterator<Item = V>,
6449            V: std::convert::Into<std::string::String>,
6450        {
6451            use std::iter::Iterator;
6452            self.0.request.permissions = v.into_iter().map(|i| i.into()).collect();
6453            self
6454        }
6455    }
6456
6457    #[doc(hidden)]
6458    impl crate::RequestBuilder for TestIamPermissions {
6459        fn request_options(&mut self) -> &mut crate::RequestOptions {
6460            &mut self.0.options
6461        }
6462    }
6463
6464    /// The request builder for [Dataform::list_locations][crate::client::Dataform::list_locations] calls.
6465    ///
6466    /// # Example
6467    /// ```
6468    /// # use google_cloud_dataform_v1::builder::dataform::ListLocations;
6469    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6470    /// use google_cloud_gax::paginator::ItemPaginator;
6471    ///
6472    /// let builder = prepare_request_builder();
6473    /// let mut items = builder.by_item();
6474    /// while let Some(result) = items.next().await {
6475    ///   let item = result?;
6476    /// }
6477    /// # Ok(()) }
6478    ///
6479    /// fn prepare_request_builder() -> ListLocations {
6480    ///   # panic!();
6481    ///   // ... details omitted ...
6482    /// }
6483    /// ```
6484    #[derive(Clone, Debug)]
6485    pub struct ListLocations(RequestBuilder<google_cloud_location::model::ListLocationsRequest>);
6486
6487    impl ListLocations {
6488        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6489            Self(RequestBuilder::new(stub))
6490        }
6491
6492        /// Sets the full request, replacing any prior values.
6493        pub fn with_request<V: Into<google_cloud_location::model::ListLocationsRequest>>(
6494            mut self,
6495            v: V,
6496        ) -> Self {
6497            self.0.request = v.into();
6498            self
6499        }
6500
6501        /// Sets all the options, replacing any prior values.
6502        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6503            self.0.options = v.into();
6504            self
6505        }
6506
6507        /// Sends the request.
6508        pub async fn send(self) -> Result<google_cloud_location::model::ListLocationsResponse> {
6509            (*self.0.stub)
6510                .list_locations(self.0.request, self.0.options)
6511                .await
6512                .map(crate::Response::into_body)
6513        }
6514
6515        /// Streams each page in the collection.
6516        pub fn by_page(
6517            self,
6518        ) -> impl google_cloud_gax::paginator::Paginator<
6519            google_cloud_location::model::ListLocationsResponse,
6520            crate::Error,
6521        > {
6522            use std::clone::Clone;
6523            let token = self.0.request.page_token.clone();
6524            let execute = move |token: String| {
6525                let mut builder = self.clone();
6526                builder.0.request = builder.0.request.set_page_token(token);
6527                builder.send()
6528            };
6529            google_cloud_gax::paginator::internal::new_paginator(token, execute)
6530        }
6531
6532        /// Streams each item in the collection.
6533        pub fn by_item(
6534            self,
6535        ) -> impl google_cloud_gax::paginator::ItemPaginator<
6536            google_cloud_location::model::ListLocationsResponse,
6537            crate::Error,
6538        > {
6539            use google_cloud_gax::paginator::Paginator;
6540            self.by_page().items()
6541        }
6542
6543        /// Sets the value of [name][google_cloud_location::model::ListLocationsRequest::name].
6544        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6545            self.0.request.name = v.into();
6546            self
6547        }
6548
6549        /// Sets the value of [filter][google_cloud_location::model::ListLocationsRequest::filter].
6550        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
6551            self.0.request.filter = v.into();
6552            self
6553        }
6554
6555        /// Sets the value of [page_size][google_cloud_location::model::ListLocationsRequest::page_size].
6556        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
6557            self.0.request.page_size = v.into();
6558            self
6559        }
6560
6561        /// Sets the value of [page_token][google_cloud_location::model::ListLocationsRequest::page_token].
6562        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
6563            self.0.request.page_token = v.into();
6564            self
6565        }
6566    }
6567
6568    #[doc(hidden)]
6569    impl crate::RequestBuilder for ListLocations {
6570        fn request_options(&mut self) -> &mut crate::RequestOptions {
6571            &mut self.0.options
6572        }
6573    }
6574
6575    /// The request builder for [Dataform::get_location][crate::client::Dataform::get_location] calls.
6576    ///
6577    /// # Example
6578    /// ```
6579    /// # use google_cloud_dataform_v1::builder::dataform::GetLocation;
6580    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6581    ///
6582    /// let builder = prepare_request_builder();
6583    /// let response = builder.send().await?;
6584    /// # Ok(()) }
6585    ///
6586    /// fn prepare_request_builder() -> GetLocation {
6587    ///   # panic!();
6588    ///   // ... details omitted ...
6589    /// }
6590    /// ```
6591    #[derive(Clone, Debug)]
6592    pub struct GetLocation(RequestBuilder<google_cloud_location::model::GetLocationRequest>);
6593
6594    impl GetLocation {
6595        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6596            Self(RequestBuilder::new(stub))
6597        }
6598
6599        /// Sets the full request, replacing any prior values.
6600        pub fn with_request<V: Into<google_cloud_location::model::GetLocationRequest>>(
6601            mut self,
6602            v: V,
6603        ) -> Self {
6604            self.0.request = v.into();
6605            self
6606        }
6607
6608        /// Sets all the options, replacing any prior values.
6609        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6610            self.0.options = v.into();
6611            self
6612        }
6613
6614        /// Sends the request.
6615        pub async fn send(self) -> Result<google_cloud_location::model::Location> {
6616            (*self.0.stub)
6617                .get_location(self.0.request, self.0.options)
6618                .await
6619                .map(crate::Response::into_body)
6620        }
6621
6622        /// Sets the value of [name][google_cloud_location::model::GetLocationRequest::name].
6623        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6624            self.0.request.name = v.into();
6625            self
6626        }
6627    }
6628
6629    #[doc(hidden)]
6630    impl crate::RequestBuilder for GetLocation {
6631        fn request_options(&mut self) -> &mut crate::RequestOptions {
6632            &mut self.0.options
6633        }
6634    }
6635
6636    /// The request builder for [Dataform::list_operations][crate::client::Dataform::list_operations] calls.
6637    ///
6638    /// # Example
6639    /// ```
6640    /// # use google_cloud_dataform_v1::builder::dataform::ListOperations;
6641    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6642    /// use google_cloud_gax::paginator::ItemPaginator;
6643    ///
6644    /// let builder = prepare_request_builder();
6645    /// let mut items = builder.by_item();
6646    /// while let Some(result) = items.next().await {
6647    ///   let item = result?;
6648    /// }
6649    /// # Ok(()) }
6650    ///
6651    /// fn prepare_request_builder() -> ListOperations {
6652    ///   # panic!();
6653    ///   // ... details omitted ...
6654    /// }
6655    /// ```
6656    #[derive(Clone, Debug)]
6657    pub struct ListOperations(
6658        RequestBuilder<google_cloud_longrunning::model::ListOperationsRequest>,
6659    );
6660
6661    impl ListOperations {
6662        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6663            Self(RequestBuilder::new(stub))
6664        }
6665
6666        /// Sets the full request, replacing any prior values.
6667        pub fn with_request<V: Into<google_cloud_longrunning::model::ListOperationsRequest>>(
6668            mut self,
6669            v: V,
6670        ) -> Self {
6671            self.0.request = v.into();
6672            self
6673        }
6674
6675        /// Sets all the options, replacing any prior values.
6676        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6677            self.0.options = v.into();
6678            self
6679        }
6680
6681        /// Sends the request.
6682        pub async fn send(self) -> Result<google_cloud_longrunning::model::ListOperationsResponse> {
6683            (*self.0.stub)
6684                .list_operations(self.0.request, self.0.options)
6685                .await
6686                .map(crate::Response::into_body)
6687        }
6688
6689        /// Streams each page in the collection.
6690        pub fn by_page(
6691            self,
6692        ) -> impl google_cloud_gax::paginator::Paginator<
6693            google_cloud_longrunning::model::ListOperationsResponse,
6694            crate::Error,
6695        > {
6696            use std::clone::Clone;
6697            let token = self.0.request.page_token.clone();
6698            let execute = move |token: String| {
6699                let mut builder = self.clone();
6700                builder.0.request = builder.0.request.set_page_token(token);
6701                builder.send()
6702            };
6703            google_cloud_gax::paginator::internal::new_paginator(token, execute)
6704        }
6705
6706        /// Streams each item in the collection.
6707        pub fn by_item(
6708            self,
6709        ) -> impl google_cloud_gax::paginator::ItemPaginator<
6710            google_cloud_longrunning::model::ListOperationsResponse,
6711            crate::Error,
6712        > {
6713            use google_cloud_gax::paginator::Paginator;
6714            self.by_page().items()
6715        }
6716
6717        /// Sets the value of [name][google_cloud_longrunning::model::ListOperationsRequest::name].
6718        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6719            self.0.request.name = v.into();
6720            self
6721        }
6722
6723        /// Sets the value of [filter][google_cloud_longrunning::model::ListOperationsRequest::filter].
6724        pub fn set_filter<T: Into<std::string::String>>(mut self, v: T) -> Self {
6725            self.0.request.filter = v.into();
6726            self
6727        }
6728
6729        /// Sets the value of [page_size][google_cloud_longrunning::model::ListOperationsRequest::page_size].
6730        pub fn set_page_size<T: Into<i32>>(mut self, v: T) -> Self {
6731            self.0.request.page_size = v.into();
6732            self
6733        }
6734
6735        /// Sets the value of [page_token][google_cloud_longrunning::model::ListOperationsRequest::page_token].
6736        pub fn set_page_token<T: Into<std::string::String>>(mut self, v: T) -> Self {
6737            self.0.request.page_token = v.into();
6738            self
6739        }
6740
6741        /// Sets the value of [return_partial_success][google_cloud_longrunning::model::ListOperationsRequest::return_partial_success].
6742        pub fn set_return_partial_success<T: Into<bool>>(mut self, v: T) -> Self {
6743            self.0.request.return_partial_success = v.into();
6744            self
6745        }
6746    }
6747
6748    #[doc(hidden)]
6749    impl crate::RequestBuilder for ListOperations {
6750        fn request_options(&mut self) -> &mut crate::RequestOptions {
6751            &mut self.0.options
6752        }
6753    }
6754
6755    /// The request builder for [Dataform::get_operation][crate::client::Dataform::get_operation] calls.
6756    ///
6757    /// # Example
6758    /// ```
6759    /// # use google_cloud_dataform_v1::builder::dataform::GetOperation;
6760    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6761    ///
6762    /// let builder = prepare_request_builder();
6763    /// let response = builder.send().await?;
6764    /// # Ok(()) }
6765    ///
6766    /// fn prepare_request_builder() -> GetOperation {
6767    ///   # panic!();
6768    ///   // ... details omitted ...
6769    /// }
6770    /// ```
6771    #[derive(Clone, Debug)]
6772    pub struct GetOperation(RequestBuilder<google_cloud_longrunning::model::GetOperationRequest>);
6773
6774    impl GetOperation {
6775        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6776            Self(RequestBuilder::new(stub))
6777        }
6778
6779        /// Sets the full request, replacing any prior values.
6780        pub fn with_request<V: Into<google_cloud_longrunning::model::GetOperationRequest>>(
6781            mut self,
6782            v: V,
6783        ) -> Self {
6784            self.0.request = v.into();
6785            self
6786        }
6787
6788        /// Sets all the options, replacing any prior values.
6789        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6790            self.0.options = v.into();
6791            self
6792        }
6793
6794        /// Sends the request.
6795        pub async fn send(self) -> Result<google_cloud_longrunning::model::Operation> {
6796            (*self.0.stub)
6797                .get_operation(self.0.request, self.0.options)
6798                .await
6799                .map(crate::Response::into_body)
6800        }
6801
6802        /// Sets the value of [name][google_cloud_longrunning::model::GetOperationRequest::name].
6803        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6804            self.0.request.name = v.into();
6805            self
6806        }
6807    }
6808
6809    #[doc(hidden)]
6810    impl crate::RequestBuilder for GetOperation {
6811        fn request_options(&mut self) -> &mut crate::RequestOptions {
6812            &mut self.0.options
6813        }
6814    }
6815
6816    /// The request builder for [Dataform::delete_operation][crate::client::Dataform::delete_operation] calls.
6817    ///
6818    /// # Example
6819    /// ```
6820    /// # use google_cloud_dataform_v1::builder::dataform::DeleteOperation;
6821    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6822    ///
6823    /// let builder = prepare_request_builder();
6824    /// let response = builder.send().await?;
6825    /// # Ok(()) }
6826    ///
6827    /// fn prepare_request_builder() -> DeleteOperation {
6828    ///   # panic!();
6829    ///   // ... details omitted ...
6830    /// }
6831    /// ```
6832    #[derive(Clone, Debug)]
6833    pub struct DeleteOperation(
6834        RequestBuilder<google_cloud_longrunning::model::DeleteOperationRequest>,
6835    );
6836
6837    impl DeleteOperation {
6838        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6839            Self(RequestBuilder::new(stub))
6840        }
6841
6842        /// Sets the full request, replacing any prior values.
6843        pub fn with_request<V: Into<google_cloud_longrunning::model::DeleteOperationRequest>>(
6844            mut self,
6845            v: V,
6846        ) -> Self {
6847            self.0.request = v.into();
6848            self
6849        }
6850
6851        /// Sets all the options, replacing any prior values.
6852        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6853            self.0.options = v.into();
6854            self
6855        }
6856
6857        /// Sends the request.
6858        pub async fn send(self) -> Result<()> {
6859            (*self.0.stub)
6860                .delete_operation(self.0.request, self.0.options)
6861                .await
6862                .map(crate::Response::into_body)
6863        }
6864
6865        /// Sets the value of [name][google_cloud_longrunning::model::DeleteOperationRequest::name].
6866        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6867            self.0.request.name = v.into();
6868            self
6869        }
6870    }
6871
6872    #[doc(hidden)]
6873    impl crate::RequestBuilder for DeleteOperation {
6874        fn request_options(&mut self) -> &mut crate::RequestOptions {
6875            &mut self.0.options
6876        }
6877    }
6878
6879    /// The request builder for [Dataform::cancel_operation][crate::client::Dataform::cancel_operation] calls.
6880    ///
6881    /// # Example
6882    /// ```
6883    /// # use google_cloud_dataform_v1::builder::dataform::CancelOperation;
6884    /// # async fn sample() -> google_cloud_dataform_v1::Result<()> {
6885    ///
6886    /// let builder = prepare_request_builder();
6887    /// let response = builder.send().await?;
6888    /// # Ok(()) }
6889    ///
6890    /// fn prepare_request_builder() -> CancelOperation {
6891    ///   # panic!();
6892    ///   // ... details omitted ...
6893    /// }
6894    /// ```
6895    #[derive(Clone, Debug)]
6896    pub struct CancelOperation(
6897        RequestBuilder<google_cloud_longrunning::model::CancelOperationRequest>,
6898    );
6899
6900    impl CancelOperation {
6901        pub(crate) fn new(stub: std::sync::Arc<dyn super::super::stub::dynamic::Dataform>) -> Self {
6902            Self(RequestBuilder::new(stub))
6903        }
6904
6905        /// Sets the full request, replacing any prior values.
6906        pub fn with_request<V: Into<google_cloud_longrunning::model::CancelOperationRequest>>(
6907            mut self,
6908            v: V,
6909        ) -> Self {
6910            self.0.request = v.into();
6911            self
6912        }
6913
6914        /// Sets all the options, replacing any prior values.
6915        pub fn with_options<V: Into<crate::RequestOptions>>(mut self, v: V) -> Self {
6916            self.0.options = v.into();
6917            self
6918        }
6919
6920        /// Sends the request.
6921        pub async fn send(self) -> Result<()> {
6922            (*self.0.stub)
6923                .cancel_operation(self.0.request, self.0.options)
6924                .await
6925                .map(crate::Response::into_body)
6926        }
6927
6928        /// Sets the value of [name][google_cloud_longrunning::model::CancelOperationRequest::name].
6929        pub fn set_name<T: Into<std::string::String>>(mut self, v: T) -> Self {
6930            self.0.request.name = v.into();
6931            self
6932        }
6933    }
6934
6935    #[doc(hidden)]
6936    impl crate::RequestBuilder for CancelOperation {
6937        fn request_options(&mut self) -> &mut crate::RequestOptions {
6938            &mut self.0.options
6939        }
6940    }
6941}