aws_sdk_codebuild/operation/list_projects/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::list_projects::_list_projects_output::ListProjectsOutputBuilder;
3
4pub use crate::operation::list_projects::_list_projects_input::ListProjectsInputBuilder;
5
6impl crate::operation::list_projects::builders::ListProjectsInputBuilder {
7    /// Sends a request with this input using the given client.
8    pub async fn send_with(
9        self,
10        client: &crate::Client,
11    ) -> ::std::result::Result<
12        crate::operation::list_projects::ListProjectsOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::list_projects::ListProjectsError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.list_projects();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `ListProjects`.
24///
25/// <p>Gets a list of build project names, with each build project name representing a single build project.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct ListProjectsFluentBuilder {
28    handle: ::std::sync::Arc<crate::client::Handle>,
29    inner: crate::operation::list_projects::builders::ListProjectsInputBuilder,
30    config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33    crate::client::customize::internal::CustomizableSend<
34        crate::operation::list_projects::ListProjectsOutput,
35        crate::operation::list_projects::ListProjectsError,
36    > for ListProjectsFluentBuilder
37{
38    fn send(
39        self,
40        config_override: crate::config::Builder,
41    ) -> crate::client::customize::internal::BoxFuture<
42        crate::client::customize::internal::SendResult<
43            crate::operation::list_projects::ListProjectsOutput,
44            crate::operation::list_projects::ListProjectsError,
45        >,
46    > {
47        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48    }
49}
50impl ListProjectsFluentBuilder {
51    /// Creates a new `ListProjectsFluentBuilder`.
52    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
53        Self {
54            handle,
55            inner: ::std::default::Default::default(),
56            config_override: ::std::option::Option::None,
57        }
58    }
59    /// Access the ListProjects as a reference.
60    pub fn as_input(&self) -> &crate::operation::list_projects::builders::ListProjectsInputBuilder {
61        &self.inner
62    }
63    /// Sends the request and returns the response.
64    ///
65    /// If an error occurs, an `SdkError` will be returned with additional details that
66    /// can be matched against.
67    ///
68    /// By default, any retryable failures will be retried twice. Retry behavior
69    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
70    /// set when configuring the client.
71    pub async fn send(
72        self,
73    ) -> ::std::result::Result<
74        crate::operation::list_projects::ListProjectsOutput,
75        ::aws_smithy_runtime_api::client::result::SdkError<
76            crate::operation::list_projects::ListProjectsError,
77            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
78        >,
79    > {
80        let input = self
81            .inner
82            .build()
83            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
84        let runtime_plugins = crate::operation::list_projects::ListProjects::operation_runtime_plugins(
85            self.handle.runtime_plugins.clone(),
86            &self.handle.conf,
87            self.config_override,
88        );
89        crate::operation::list_projects::ListProjects::orchestrate(&runtime_plugins, input).await
90    }
91
92    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
93    pub fn customize(
94        self,
95    ) -> crate::client::customize::CustomizableOperation<
96        crate::operation::list_projects::ListProjectsOutput,
97        crate::operation::list_projects::ListProjectsError,
98        Self,
99    > {
100        crate::client::customize::CustomizableOperation::new(self)
101    }
102    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
103        self.set_config_override(::std::option::Option::Some(config_override.into()));
104        self
105    }
106
107    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
108        self.config_override = config_override;
109        self
110    }
111    /// Create a paginator for this request
112    ///
113    /// Paginators are used by calling [`send().await`](crate::operation::list_projects::paginator::ListProjectsPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
114    pub fn into_paginator(self) -> crate::operation::list_projects::paginator::ListProjectsPaginator {
115        crate::operation::list_projects::paginator::ListProjectsPaginator::new(self.handle, self.inner)
116    }
117    /// <p>The criterion to be used to list build project names. Valid values include:</p>
118    /// <ul>
119    /// <li>
120    /// <p><code>CREATED_TIME</code>: List based on when each build project was created.</p></li>
121    /// <li>
122    /// <p><code>LAST_MODIFIED_TIME</code>: List based on when information about each build project was last changed.</p></li>
123    /// <li>
124    /// <p><code>NAME</code>: List based on each build project's name.</p></li>
125    /// </ul>
126    /// <p>Use <code>sortOrder</code> to specify in what order to list the build project names based on the preceding criteria.</p>
127    pub fn sort_by(mut self, input: crate::types::ProjectSortByType) -> Self {
128        self.inner = self.inner.sort_by(input);
129        self
130    }
131    /// <p>The criterion to be used to list build project names. Valid values include:</p>
132    /// <ul>
133    /// <li>
134    /// <p><code>CREATED_TIME</code>: List based on when each build project was created.</p></li>
135    /// <li>
136    /// <p><code>LAST_MODIFIED_TIME</code>: List based on when information about each build project was last changed.</p></li>
137    /// <li>
138    /// <p><code>NAME</code>: List based on each build project's name.</p></li>
139    /// </ul>
140    /// <p>Use <code>sortOrder</code> to specify in what order to list the build project names based on the preceding criteria.</p>
141    pub fn set_sort_by(mut self, input: ::std::option::Option<crate::types::ProjectSortByType>) -> Self {
142        self.inner = self.inner.set_sort_by(input);
143        self
144    }
145    /// <p>The criterion to be used to list build project names. Valid values include:</p>
146    /// <ul>
147    /// <li>
148    /// <p><code>CREATED_TIME</code>: List based on when each build project was created.</p></li>
149    /// <li>
150    /// <p><code>LAST_MODIFIED_TIME</code>: List based on when information about each build project was last changed.</p></li>
151    /// <li>
152    /// <p><code>NAME</code>: List based on each build project's name.</p></li>
153    /// </ul>
154    /// <p>Use <code>sortOrder</code> to specify in what order to list the build project names based on the preceding criteria.</p>
155    pub fn get_sort_by(&self) -> &::std::option::Option<crate::types::ProjectSortByType> {
156        self.inner.get_sort_by()
157    }
158    /// <p>The order in which to list build projects. Valid values include:</p>
159    /// <ul>
160    /// <li>
161    /// <p><code>ASCENDING</code>: List in ascending order.</p></li>
162    /// <li>
163    /// <p><code>DESCENDING</code>: List in descending order.</p></li>
164    /// </ul>
165    /// <p>Use <code>sortBy</code> to specify the criterion to be used to list build project names.</p>
166    pub fn sort_order(mut self, input: crate::types::SortOrderType) -> Self {
167        self.inner = self.inner.sort_order(input);
168        self
169    }
170    /// <p>The order in which to list build projects. Valid values include:</p>
171    /// <ul>
172    /// <li>
173    /// <p><code>ASCENDING</code>: List in ascending order.</p></li>
174    /// <li>
175    /// <p><code>DESCENDING</code>: List in descending order.</p></li>
176    /// </ul>
177    /// <p>Use <code>sortBy</code> to specify the criterion to be used to list build project names.</p>
178    pub fn set_sort_order(mut self, input: ::std::option::Option<crate::types::SortOrderType>) -> Self {
179        self.inner = self.inner.set_sort_order(input);
180        self
181    }
182    /// <p>The order in which to list build projects. Valid values include:</p>
183    /// <ul>
184    /// <li>
185    /// <p><code>ASCENDING</code>: List in ascending order.</p></li>
186    /// <li>
187    /// <p><code>DESCENDING</code>: List in descending order.</p></li>
188    /// </ul>
189    /// <p>Use <code>sortBy</code> to specify the criterion to be used to list build project names.</p>
190    pub fn get_sort_order(&self) -> &::std::option::Option<crate::types::SortOrderType> {
191        self.inner.get_sort_order()
192    }
193    /// <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
194    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
195        self.inner = self.inner.next_token(input.into());
196        self
197    }
198    /// <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
199    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
200        self.inner = self.inner.set_next_token(input);
201        self
202    }
203    /// <p>During a previous call, if there are more than 100 items in the list, only the first 100 items are returned, along with a unique string called a <i>nextToken</i>. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.</p>
204    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
205        self.inner.get_next_token()
206    }
207}