aws_sdk_ecs/operation/list_service_deployments/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::list_service_deployments::_list_service_deployments_output::ListServiceDeploymentsOutputBuilder;
3
4pub use crate::operation::list_service_deployments::_list_service_deployments_input::ListServiceDeploymentsInputBuilder;
5
6impl crate::operation::list_service_deployments::builders::ListServiceDeploymentsInputBuilder {
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_service_deployments::ListServiceDeploymentsOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::list_service_deployments::ListServiceDeploymentsError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.list_service_deployments();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `ListServiceDeployments`.
24///
25/// <p>This operation lists all the service deployments that meet the specified filter criteria.</p>
26/// <p>A service deployment happens when you release a software update for the service. You route traffic from the running service revisions to the new service revison and control the number of running tasks.</p>
27/// <p>This API returns the values that you use for the request parameters in <a href="https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeServiceRevisions.html">DescribeServiceRevisions</a>.</p>
28#[derive(::std::clone::Clone, ::std::fmt::Debug)]
29pub struct ListServiceDeploymentsFluentBuilder {
30    handle: ::std::sync::Arc<crate::client::Handle>,
31    inner: crate::operation::list_service_deployments::builders::ListServiceDeploymentsInputBuilder,
32    config_override: ::std::option::Option<crate::config::Builder>,
33}
34impl
35    crate::client::customize::internal::CustomizableSend<
36        crate::operation::list_service_deployments::ListServiceDeploymentsOutput,
37        crate::operation::list_service_deployments::ListServiceDeploymentsError,
38    > for ListServiceDeploymentsFluentBuilder
39{
40    fn send(
41        self,
42        config_override: crate::config::Builder,
43    ) -> crate::client::customize::internal::BoxFuture<
44        crate::client::customize::internal::SendResult<
45            crate::operation::list_service_deployments::ListServiceDeploymentsOutput,
46            crate::operation::list_service_deployments::ListServiceDeploymentsError,
47        >,
48    > {
49        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
50    }
51}
52impl ListServiceDeploymentsFluentBuilder {
53    /// Creates a new `ListServiceDeploymentsFluentBuilder`.
54    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
55        Self {
56            handle,
57            inner: ::std::default::Default::default(),
58            config_override: ::std::option::Option::None,
59        }
60    }
61    /// Access the ListServiceDeployments as a reference.
62    pub fn as_input(&self) -> &crate::operation::list_service_deployments::builders::ListServiceDeploymentsInputBuilder {
63        &self.inner
64    }
65    /// Sends the request and returns the response.
66    ///
67    /// If an error occurs, an `SdkError` will be returned with additional details that
68    /// can be matched against.
69    ///
70    /// By default, any retryable failures will be retried twice. Retry behavior
71    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
72    /// set when configuring the client.
73    pub async fn send(
74        self,
75    ) -> ::std::result::Result<
76        crate::operation::list_service_deployments::ListServiceDeploymentsOutput,
77        ::aws_smithy_runtime_api::client::result::SdkError<
78            crate::operation::list_service_deployments::ListServiceDeploymentsError,
79            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
80        >,
81    > {
82        let input = self
83            .inner
84            .build()
85            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
86        let runtime_plugins = crate::operation::list_service_deployments::ListServiceDeployments::operation_runtime_plugins(
87            self.handle.runtime_plugins.clone(),
88            &self.handle.conf,
89            self.config_override,
90        );
91        crate::operation::list_service_deployments::ListServiceDeployments::orchestrate(&runtime_plugins, input).await
92    }
93
94    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
95    pub fn customize(
96        self,
97    ) -> crate::client::customize::CustomizableOperation<
98        crate::operation::list_service_deployments::ListServiceDeploymentsOutput,
99        crate::operation::list_service_deployments::ListServiceDeploymentsError,
100        Self,
101    > {
102        crate::client::customize::CustomizableOperation::new(self)
103    }
104    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
105        self.set_config_override(::std::option::Option::Some(config_override.into()));
106        self
107    }
108
109    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
110        self.config_override = config_override;
111        self
112    }
113    /// <p>The ARN or name of the service</p>
114    pub fn service(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
115        self.inner = self.inner.service(input.into());
116        self
117    }
118    /// <p>The ARN or name of the service</p>
119    pub fn set_service(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
120        self.inner = self.inner.set_service(input);
121        self
122    }
123    /// <p>The ARN or name of the service</p>
124    pub fn get_service(&self) -> &::std::option::Option<::std::string::String> {
125        self.inner.get_service()
126    }
127    /// <p>The cluster that hosts the service. This can either be the cluster name or ARN. Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. If you don't specify a cluster, <code>default</code> is used.</p>
128    pub fn cluster(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
129        self.inner = self.inner.cluster(input.into());
130        self
131    }
132    /// <p>The cluster that hosts the service. This can either be the cluster name or ARN. Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. If you don't specify a cluster, <code>default</code> is used.</p>
133    pub fn set_cluster(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
134        self.inner = self.inner.set_cluster(input);
135        self
136    }
137    /// <p>The cluster that hosts the service. This can either be the cluster name or ARN. Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. If you don't specify a cluster, <code>default</code> is used.</p>
138    pub fn get_cluster(&self) -> &::std::option::Option<::std::string::String> {
139        self.inner.get_cluster()
140    }
141    ///
142    /// Appends an item to `status`.
143    ///
144    /// To override the contents of this collection use [`set_status`](Self::set_status).
145    ///
146    /// <p>An optional filter you can use to narrow the results. If you do not specify a status, then all status values are included in the result.</p>
147    pub fn status(mut self, input: crate::types::ServiceDeploymentStatus) -> Self {
148        self.inner = self.inner.status(input);
149        self
150    }
151    /// <p>An optional filter you can use to narrow the results. If you do not specify a status, then all status values are included in the result.</p>
152    pub fn set_status(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ServiceDeploymentStatus>>) -> Self {
153        self.inner = self.inner.set_status(input);
154        self
155    }
156    /// <p>An optional filter you can use to narrow the results. If you do not specify a status, then all status values are included in the result.</p>
157    pub fn get_status(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ServiceDeploymentStatus>> {
158        self.inner.get_status()
159    }
160    /// <p>An optional filter you can use to narrow the results by the service creation date. If you do not specify a value, the result includes all services created before the current time. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
161    pub fn created_at(mut self, input: crate::types::CreatedAt) -> Self {
162        self.inner = self.inner.created_at(input);
163        self
164    }
165    /// <p>An optional filter you can use to narrow the results by the service creation date. If you do not specify a value, the result includes all services created before the current time. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
166    pub fn set_created_at(mut self, input: ::std::option::Option<crate::types::CreatedAt>) -> Self {
167        self.inner = self.inner.set_created_at(input);
168        self
169    }
170    /// <p>An optional filter you can use to narrow the results by the service creation date. If you do not specify a value, the result includes all services created before the current time. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.</p>
171    pub fn get_created_at(&self) -> &::std::option::Option<crate::types::CreatedAt> {
172        self.inner.get_created_at()
173    }
174    /// <p>The <code>nextToken</code> value returned from a <code>ListServiceDeployments</code> request indicating that more results are available to fulfill the request and further calls are needed. If you provided <code>maxResults</code>, it's possible the number of results is fewer than <code>maxResults</code>.</p>
175    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
176        self.inner = self.inner.next_token(input.into());
177        self
178    }
179    /// <p>The <code>nextToken</code> value returned from a <code>ListServiceDeployments</code> request indicating that more results are available to fulfill the request and further calls are needed. If you provided <code>maxResults</code>, it's possible the number of results is fewer than <code>maxResults</code>.</p>
180    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
181        self.inner = self.inner.set_next_token(input);
182        self
183    }
184    /// <p>The <code>nextToken</code> value returned from a <code>ListServiceDeployments</code> request indicating that more results are available to fulfill the request and further calls are needed. If you provided <code>maxResults</code>, it's possible the number of results is fewer than <code>maxResults</code>.</p>
185    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
186        self.inner.get_next_token()
187    }
188    /// <p>The maximum number of service deployment results that <code>ListServiceDeployments</code> returned in paginated output. When this parameter is used, <code>ListServiceDeployments</code> only returns <code>maxResults</code> results in a single page along with a <code>nextToken</code> response element. The remaining results of the initial request can be seen by sending another <code>ListServiceDeployments</code> request with the returned <code>nextToken</code> value. This value can be between 1 and 100. If this parameter isn't used, then <code>ListServiceDeployments</code> returns up to 20 results and a <code>nextToken</code> value if applicable.</p>
189    pub fn max_results(mut self, input: i32) -> Self {
190        self.inner = self.inner.max_results(input);
191        self
192    }
193    /// <p>The maximum number of service deployment results that <code>ListServiceDeployments</code> returned in paginated output. When this parameter is used, <code>ListServiceDeployments</code> only returns <code>maxResults</code> results in a single page along with a <code>nextToken</code> response element. The remaining results of the initial request can be seen by sending another <code>ListServiceDeployments</code> request with the returned <code>nextToken</code> value. This value can be between 1 and 100. If this parameter isn't used, then <code>ListServiceDeployments</code> returns up to 20 results and a <code>nextToken</code> value if applicable.</p>
194    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
195        self.inner = self.inner.set_max_results(input);
196        self
197    }
198    /// <p>The maximum number of service deployment results that <code>ListServiceDeployments</code> returned in paginated output. When this parameter is used, <code>ListServiceDeployments</code> only returns <code>maxResults</code> results in a single page along with a <code>nextToken</code> response element. The remaining results of the initial request can be seen by sending another <code>ListServiceDeployments</code> request with the returned <code>nextToken</code> value. This value can be between 1 and 100. If this parameter isn't used, then <code>ListServiceDeployments</code> returns up to 20 results and a <code>nextToken</code> value if applicable.</p>
199    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
200        self.inner.get_max_results()
201    }
202}