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}