aws_sdk_elasticbeanstalk/operation/create_environment/
_create_environment_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Describes the properties of an environment.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct CreateEnvironmentOutput {
7    /// <p>The name of this environment.</p>
8    pub environment_name: ::std::option::Option<::std::string::String>,
9    /// <p>The ID of this environment.</p>
10    pub environment_id: ::std::option::Option<::std::string::String>,
11    /// <p>The name of the application associated with this environment.</p>
12    pub application_name: ::std::option::Option<::std::string::String>,
13    /// <p>The application version deployed in this environment.</p>
14    pub version_label: ::std::option::Option<::std::string::String>,
15    /// <p>The name of the <code>SolutionStack</code> deployed with this environment.</p>
16    pub solution_stack_name: ::std::option::Option<::std::string::String>,
17    /// <p>The ARN of the platform version.</p>
18    pub platform_arn: ::std::option::Option<::std::string::String>,
19    /// <p>The name of the configuration template used to originally launch this environment.</p>
20    pub template_name: ::std::option::Option<::std::string::String>,
21    /// <p>Describes this environment.</p>
22    pub description: ::std::option::Option<::std::string::String>,
23    /// <p>For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.</p>
24    pub endpoint_url: ::std::option::Option<::std::string::String>,
25    /// <p>The URL to the CNAME for this environment.</p>
26    pub cname: ::std::option::Option<::std::string::String>,
27    /// <p>The creation date for this environment.</p>
28    pub date_created: ::std::option::Option<::aws_smithy_types::DateTime>,
29    /// <p>The last modified date for this environment.</p>
30    pub date_updated: ::std::option::Option<::aws_smithy_types::DateTime>,
31    /// <p>The current operational status of the environment:</p>
32    /// <ul>
33    /// <li>
34    /// <p><code>Launching</code>: Environment is in the process of initial deployment.</p></li>
35    /// <li>
36    /// <p><code>Updating</code>: Environment is in the process of updating its configuration settings or application version.</p></li>
37    /// <li>
38    /// <p><code>Ready</code>: Environment is available to have an action performed on it, such as update or terminate.</p></li>
39    /// <li>
40    /// <p><code>Terminating</code>: Environment is in the shut-down process.</p></li>
41    /// <li>
42    /// <p><code>Terminated</code>: Environment is not running.</p></li>
43    /// </ul>
44    pub status: ::std::option::Option<crate::types::EnvironmentStatus>,
45    /// <p>Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.</p>
46    /// <p><code>true:</code> There is an update in progress.</p>
47    /// <p><code>false:</code> There are no updates currently in progress.</p>
48    pub abortable_operation_in_progress: ::std::option::Option<bool>,
49    /// <p>Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:</p>
50    /// <ul>
51    /// <li>
52    /// <p><code>Red</code>: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.</p></li>
53    /// <li>
54    /// <p><code>Yellow</code>: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.</p></li>
55    /// <li>
56    /// <p><code>Green</code>: Indicates the environment is healthy and fully functional.</p></li>
57    /// <li>
58    /// <p><code>Grey</code>: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an <code>UpdateEnvironment</code> or <code>RestartEnvironment</code> request.</p></li>
59    /// </ul>
60    /// <p>Default: <code>Grey</code></p>
61    pub health: ::std::option::Option<crate::types::EnvironmentHealth>,
62    /// <p>Returns the health status of the application running in your environment. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html">Health Colors and Statuses</a>.</p>
63    pub health_status: ::std::option::Option<crate::types::EnvironmentHealthStatus>,
64    /// <p>The description of the AWS resources used by this environment.</p>
65    pub resources: ::std::option::Option<crate::types::EnvironmentResourcesDescription>,
66    /// <p>Describes the current tier of this environment.</p>
67    pub tier: ::std::option::Option<crate::types::EnvironmentTier>,
68    /// <p>A list of links to other environments in the same group.</p>
69    pub environment_links: ::std::option::Option<::std::vec::Vec<crate::types::EnvironmentLink>>,
70    /// <p>The environment's Amazon Resource Name (ARN), which can be used in other API requests that require an ARN.</p>
71    pub environment_arn: ::std::option::Option<::std::string::String>,
72    /// <p>The Amazon Resource Name (ARN) of the environment's operations role. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html">Operations roles</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>
73    pub operations_role: ::std::option::Option<::std::string::String>,
74    _request_id: Option<String>,
75}
76impl CreateEnvironmentOutput {
77    /// <p>The name of this environment.</p>
78    pub fn environment_name(&self) -> ::std::option::Option<&str> {
79        self.environment_name.as_deref()
80    }
81    /// <p>The ID of this environment.</p>
82    pub fn environment_id(&self) -> ::std::option::Option<&str> {
83        self.environment_id.as_deref()
84    }
85    /// <p>The name of the application associated with this environment.</p>
86    pub fn application_name(&self) -> ::std::option::Option<&str> {
87        self.application_name.as_deref()
88    }
89    /// <p>The application version deployed in this environment.</p>
90    pub fn version_label(&self) -> ::std::option::Option<&str> {
91        self.version_label.as_deref()
92    }
93    /// <p>The name of the <code>SolutionStack</code> deployed with this environment.</p>
94    pub fn solution_stack_name(&self) -> ::std::option::Option<&str> {
95        self.solution_stack_name.as_deref()
96    }
97    /// <p>The ARN of the platform version.</p>
98    pub fn platform_arn(&self) -> ::std::option::Option<&str> {
99        self.platform_arn.as_deref()
100    }
101    /// <p>The name of the configuration template used to originally launch this environment.</p>
102    pub fn template_name(&self) -> ::std::option::Option<&str> {
103        self.template_name.as_deref()
104    }
105    /// <p>Describes this environment.</p>
106    pub fn description(&self) -> ::std::option::Option<&str> {
107        self.description.as_deref()
108    }
109    /// <p>For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.</p>
110    pub fn endpoint_url(&self) -> ::std::option::Option<&str> {
111        self.endpoint_url.as_deref()
112    }
113    /// <p>The URL to the CNAME for this environment.</p>
114    pub fn cname(&self) -> ::std::option::Option<&str> {
115        self.cname.as_deref()
116    }
117    /// <p>The creation date for this environment.</p>
118    pub fn date_created(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
119        self.date_created.as_ref()
120    }
121    /// <p>The last modified date for this environment.</p>
122    pub fn date_updated(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
123        self.date_updated.as_ref()
124    }
125    /// <p>The current operational status of the environment:</p>
126    /// <ul>
127    /// <li>
128    /// <p><code>Launching</code>: Environment is in the process of initial deployment.</p></li>
129    /// <li>
130    /// <p><code>Updating</code>: Environment is in the process of updating its configuration settings or application version.</p></li>
131    /// <li>
132    /// <p><code>Ready</code>: Environment is available to have an action performed on it, such as update or terminate.</p></li>
133    /// <li>
134    /// <p><code>Terminating</code>: Environment is in the shut-down process.</p></li>
135    /// <li>
136    /// <p><code>Terminated</code>: Environment is not running.</p></li>
137    /// </ul>
138    pub fn status(&self) -> ::std::option::Option<&crate::types::EnvironmentStatus> {
139        self.status.as_ref()
140    }
141    /// <p>Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.</p>
142    /// <p><code>true:</code> There is an update in progress.</p>
143    /// <p><code>false:</code> There are no updates currently in progress.</p>
144    pub fn abortable_operation_in_progress(&self) -> ::std::option::Option<bool> {
145        self.abortable_operation_in_progress
146    }
147    /// <p>Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:</p>
148    /// <ul>
149    /// <li>
150    /// <p><code>Red</code>: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.</p></li>
151    /// <li>
152    /// <p><code>Yellow</code>: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.</p></li>
153    /// <li>
154    /// <p><code>Green</code>: Indicates the environment is healthy and fully functional.</p></li>
155    /// <li>
156    /// <p><code>Grey</code>: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an <code>UpdateEnvironment</code> or <code>RestartEnvironment</code> request.</p></li>
157    /// </ul>
158    /// <p>Default: <code>Grey</code></p>
159    pub fn health(&self) -> ::std::option::Option<&crate::types::EnvironmentHealth> {
160        self.health.as_ref()
161    }
162    /// <p>Returns the health status of the application running in your environment. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html">Health Colors and Statuses</a>.</p>
163    pub fn health_status(&self) -> ::std::option::Option<&crate::types::EnvironmentHealthStatus> {
164        self.health_status.as_ref()
165    }
166    /// <p>The description of the AWS resources used by this environment.</p>
167    pub fn resources(&self) -> ::std::option::Option<&crate::types::EnvironmentResourcesDescription> {
168        self.resources.as_ref()
169    }
170    /// <p>Describes the current tier of this environment.</p>
171    pub fn tier(&self) -> ::std::option::Option<&crate::types::EnvironmentTier> {
172        self.tier.as_ref()
173    }
174    /// <p>A list of links to other environments in the same group.</p>
175    ///
176    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.environment_links.is_none()`.
177    pub fn environment_links(&self) -> &[crate::types::EnvironmentLink] {
178        self.environment_links.as_deref().unwrap_or_default()
179    }
180    /// <p>The environment's Amazon Resource Name (ARN), which can be used in other API requests that require an ARN.</p>
181    pub fn environment_arn(&self) -> ::std::option::Option<&str> {
182        self.environment_arn.as_deref()
183    }
184    /// <p>The Amazon Resource Name (ARN) of the environment's operations role. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html">Operations roles</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>
185    pub fn operations_role(&self) -> ::std::option::Option<&str> {
186        self.operations_role.as_deref()
187    }
188}
189impl ::aws_types::request_id::RequestId for CreateEnvironmentOutput {
190    fn request_id(&self) -> Option<&str> {
191        self._request_id.as_deref()
192    }
193}
194impl CreateEnvironmentOutput {
195    /// Creates a new builder-style object to manufacture [`CreateEnvironmentOutput`](crate::operation::create_environment::CreateEnvironmentOutput).
196    pub fn builder() -> crate::operation::create_environment::builders::CreateEnvironmentOutputBuilder {
197        crate::operation::create_environment::builders::CreateEnvironmentOutputBuilder::default()
198    }
199}
200
201/// A builder for [`CreateEnvironmentOutput`](crate::operation::create_environment::CreateEnvironmentOutput).
202#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
203#[non_exhaustive]
204pub struct CreateEnvironmentOutputBuilder {
205    pub(crate) environment_name: ::std::option::Option<::std::string::String>,
206    pub(crate) environment_id: ::std::option::Option<::std::string::String>,
207    pub(crate) application_name: ::std::option::Option<::std::string::String>,
208    pub(crate) version_label: ::std::option::Option<::std::string::String>,
209    pub(crate) solution_stack_name: ::std::option::Option<::std::string::String>,
210    pub(crate) platform_arn: ::std::option::Option<::std::string::String>,
211    pub(crate) template_name: ::std::option::Option<::std::string::String>,
212    pub(crate) description: ::std::option::Option<::std::string::String>,
213    pub(crate) endpoint_url: ::std::option::Option<::std::string::String>,
214    pub(crate) cname: ::std::option::Option<::std::string::String>,
215    pub(crate) date_created: ::std::option::Option<::aws_smithy_types::DateTime>,
216    pub(crate) date_updated: ::std::option::Option<::aws_smithy_types::DateTime>,
217    pub(crate) status: ::std::option::Option<crate::types::EnvironmentStatus>,
218    pub(crate) abortable_operation_in_progress: ::std::option::Option<bool>,
219    pub(crate) health: ::std::option::Option<crate::types::EnvironmentHealth>,
220    pub(crate) health_status: ::std::option::Option<crate::types::EnvironmentHealthStatus>,
221    pub(crate) resources: ::std::option::Option<crate::types::EnvironmentResourcesDescription>,
222    pub(crate) tier: ::std::option::Option<crate::types::EnvironmentTier>,
223    pub(crate) environment_links: ::std::option::Option<::std::vec::Vec<crate::types::EnvironmentLink>>,
224    pub(crate) environment_arn: ::std::option::Option<::std::string::String>,
225    pub(crate) operations_role: ::std::option::Option<::std::string::String>,
226    _request_id: Option<String>,
227}
228impl CreateEnvironmentOutputBuilder {
229    /// <p>The name of this environment.</p>
230    pub fn environment_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
231        self.environment_name = ::std::option::Option::Some(input.into());
232        self
233    }
234    /// <p>The name of this environment.</p>
235    pub fn set_environment_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
236        self.environment_name = input;
237        self
238    }
239    /// <p>The name of this environment.</p>
240    pub fn get_environment_name(&self) -> &::std::option::Option<::std::string::String> {
241        &self.environment_name
242    }
243    /// <p>The ID of this environment.</p>
244    pub fn environment_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
245        self.environment_id = ::std::option::Option::Some(input.into());
246        self
247    }
248    /// <p>The ID of this environment.</p>
249    pub fn set_environment_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
250        self.environment_id = input;
251        self
252    }
253    /// <p>The ID of this environment.</p>
254    pub fn get_environment_id(&self) -> &::std::option::Option<::std::string::String> {
255        &self.environment_id
256    }
257    /// <p>The name of the application associated with this environment.</p>
258    pub fn application_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
259        self.application_name = ::std::option::Option::Some(input.into());
260        self
261    }
262    /// <p>The name of the application associated with this environment.</p>
263    pub fn set_application_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
264        self.application_name = input;
265        self
266    }
267    /// <p>The name of the application associated with this environment.</p>
268    pub fn get_application_name(&self) -> &::std::option::Option<::std::string::String> {
269        &self.application_name
270    }
271    /// <p>The application version deployed in this environment.</p>
272    pub fn version_label(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
273        self.version_label = ::std::option::Option::Some(input.into());
274        self
275    }
276    /// <p>The application version deployed in this environment.</p>
277    pub fn set_version_label(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
278        self.version_label = input;
279        self
280    }
281    /// <p>The application version deployed in this environment.</p>
282    pub fn get_version_label(&self) -> &::std::option::Option<::std::string::String> {
283        &self.version_label
284    }
285    /// <p>The name of the <code>SolutionStack</code> deployed with this environment.</p>
286    pub fn solution_stack_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
287        self.solution_stack_name = ::std::option::Option::Some(input.into());
288        self
289    }
290    /// <p>The name of the <code>SolutionStack</code> deployed with this environment.</p>
291    pub fn set_solution_stack_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
292        self.solution_stack_name = input;
293        self
294    }
295    /// <p>The name of the <code>SolutionStack</code> deployed with this environment.</p>
296    pub fn get_solution_stack_name(&self) -> &::std::option::Option<::std::string::String> {
297        &self.solution_stack_name
298    }
299    /// <p>The ARN of the platform version.</p>
300    pub fn platform_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
301        self.platform_arn = ::std::option::Option::Some(input.into());
302        self
303    }
304    /// <p>The ARN of the platform version.</p>
305    pub fn set_platform_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
306        self.platform_arn = input;
307        self
308    }
309    /// <p>The ARN of the platform version.</p>
310    pub fn get_platform_arn(&self) -> &::std::option::Option<::std::string::String> {
311        &self.platform_arn
312    }
313    /// <p>The name of the configuration template used to originally launch this environment.</p>
314    pub fn template_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
315        self.template_name = ::std::option::Option::Some(input.into());
316        self
317    }
318    /// <p>The name of the configuration template used to originally launch this environment.</p>
319    pub fn set_template_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
320        self.template_name = input;
321        self
322    }
323    /// <p>The name of the configuration template used to originally launch this environment.</p>
324    pub fn get_template_name(&self) -> &::std::option::Option<::std::string::String> {
325        &self.template_name
326    }
327    /// <p>Describes this environment.</p>
328    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
329        self.description = ::std::option::Option::Some(input.into());
330        self
331    }
332    /// <p>Describes this environment.</p>
333    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
334        self.description = input;
335        self
336    }
337    /// <p>Describes this environment.</p>
338    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
339        &self.description
340    }
341    /// <p>For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.</p>
342    pub fn endpoint_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
343        self.endpoint_url = ::std::option::Option::Some(input.into());
344        self
345    }
346    /// <p>For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.</p>
347    pub fn set_endpoint_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
348        self.endpoint_url = input;
349        self
350    }
351    /// <p>For load-balanced, autoscaling environments, the URL to the LoadBalancer. For single-instance environments, the IP address of the instance.</p>
352    pub fn get_endpoint_url(&self) -> &::std::option::Option<::std::string::String> {
353        &self.endpoint_url
354    }
355    /// <p>The URL to the CNAME for this environment.</p>
356    pub fn cname(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
357        self.cname = ::std::option::Option::Some(input.into());
358        self
359    }
360    /// <p>The URL to the CNAME for this environment.</p>
361    pub fn set_cname(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
362        self.cname = input;
363        self
364    }
365    /// <p>The URL to the CNAME for this environment.</p>
366    pub fn get_cname(&self) -> &::std::option::Option<::std::string::String> {
367        &self.cname
368    }
369    /// <p>The creation date for this environment.</p>
370    pub fn date_created(mut self, input: ::aws_smithy_types::DateTime) -> Self {
371        self.date_created = ::std::option::Option::Some(input);
372        self
373    }
374    /// <p>The creation date for this environment.</p>
375    pub fn set_date_created(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
376        self.date_created = input;
377        self
378    }
379    /// <p>The creation date for this environment.</p>
380    pub fn get_date_created(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
381        &self.date_created
382    }
383    /// <p>The last modified date for this environment.</p>
384    pub fn date_updated(mut self, input: ::aws_smithy_types::DateTime) -> Self {
385        self.date_updated = ::std::option::Option::Some(input);
386        self
387    }
388    /// <p>The last modified date for this environment.</p>
389    pub fn set_date_updated(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
390        self.date_updated = input;
391        self
392    }
393    /// <p>The last modified date for this environment.</p>
394    pub fn get_date_updated(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
395        &self.date_updated
396    }
397    /// <p>The current operational status of the environment:</p>
398    /// <ul>
399    /// <li>
400    /// <p><code>Launching</code>: Environment is in the process of initial deployment.</p></li>
401    /// <li>
402    /// <p><code>Updating</code>: Environment is in the process of updating its configuration settings or application version.</p></li>
403    /// <li>
404    /// <p><code>Ready</code>: Environment is available to have an action performed on it, such as update or terminate.</p></li>
405    /// <li>
406    /// <p><code>Terminating</code>: Environment is in the shut-down process.</p></li>
407    /// <li>
408    /// <p><code>Terminated</code>: Environment is not running.</p></li>
409    /// </ul>
410    pub fn status(mut self, input: crate::types::EnvironmentStatus) -> Self {
411        self.status = ::std::option::Option::Some(input);
412        self
413    }
414    /// <p>The current operational status of the environment:</p>
415    /// <ul>
416    /// <li>
417    /// <p><code>Launching</code>: Environment is in the process of initial deployment.</p></li>
418    /// <li>
419    /// <p><code>Updating</code>: Environment is in the process of updating its configuration settings or application version.</p></li>
420    /// <li>
421    /// <p><code>Ready</code>: Environment is available to have an action performed on it, such as update or terminate.</p></li>
422    /// <li>
423    /// <p><code>Terminating</code>: Environment is in the shut-down process.</p></li>
424    /// <li>
425    /// <p><code>Terminated</code>: Environment is not running.</p></li>
426    /// </ul>
427    pub fn set_status(mut self, input: ::std::option::Option<crate::types::EnvironmentStatus>) -> Self {
428        self.status = input;
429        self
430    }
431    /// <p>The current operational status of the environment:</p>
432    /// <ul>
433    /// <li>
434    /// <p><code>Launching</code>: Environment is in the process of initial deployment.</p></li>
435    /// <li>
436    /// <p><code>Updating</code>: Environment is in the process of updating its configuration settings or application version.</p></li>
437    /// <li>
438    /// <p><code>Ready</code>: Environment is available to have an action performed on it, such as update or terminate.</p></li>
439    /// <li>
440    /// <p><code>Terminating</code>: Environment is in the shut-down process.</p></li>
441    /// <li>
442    /// <p><code>Terminated</code>: Environment is not running.</p></li>
443    /// </ul>
444    pub fn get_status(&self) -> &::std::option::Option<crate::types::EnvironmentStatus> {
445        &self.status
446    }
447    /// <p>Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.</p>
448    /// <p><code>true:</code> There is an update in progress.</p>
449    /// <p><code>false:</code> There are no updates currently in progress.</p>
450    pub fn abortable_operation_in_progress(mut self, input: bool) -> Self {
451        self.abortable_operation_in_progress = ::std::option::Option::Some(input);
452        self
453    }
454    /// <p>Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.</p>
455    /// <p><code>true:</code> There is an update in progress.</p>
456    /// <p><code>false:</code> There are no updates currently in progress.</p>
457    pub fn set_abortable_operation_in_progress(mut self, input: ::std::option::Option<bool>) -> Self {
458        self.abortable_operation_in_progress = input;
459        self
460    }
461    /// <p>Indicates if there is an in-progress environment configuration update or application version deployment that you can cancel.</p>
462    /// <p><code>true:</code> There is an update in progress.</p>
463    /// <p><code>false:</code> There are no updates currently in progress.</p>
464    pub fn get_abortable_operation_in_progress(&self) -> &::std::option::Option<bool> {
465        &self.abortable_operation_in_progress
466    }
467    /// <p>Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:</p>
468    /// <ul>
469    /// <li>
470    /// <p><code>Red</code>: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.</p></li>
471    /// <li>
472    /// <p><code>Yellow</code>: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.</p></li>
473    /// <li>
474    /// <p><code>Green</code>: Indicates the environment is healthy and fully functional.</p></li>
475    /// <li>
476    /// <p><code>Grey</code>: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an <code>UpdateEnvironment</code> or <code>RestartEnvironment</code> request.</p></li>
477    /// </ul>
478    /// <p>Default: <code>Grey</code></p>
479    pub fn health(mut self, input: crate::types::EnvironmentHealth) -> Self {
480        self.health = ::std::option::Option::Some(input);
481        self
482    }
483    /// <p>Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:</p>
484    /// <ul>
485    /// <li>
486    /// <p><code>Red</code>: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.</p></li>
487    /// <li>
488    /// <p><code>Yellow</code>: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.</p></li>
489    /// <li>
490    /// <p><code>Green</code>: Indicates the environment is healthy and fully functional.</p></li>
491    /// <li>
492    /// <p><code>Grey</code>: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an <code>UpdateEnvironment</code> or <code>RestartEnvironment</code> request.</p></li>
493    /// </ul>
494    /// <p>Default: <code>Grey</code></p>
495    pub fn set_health(mut self, input: ::std::option::Option<crate::types::EnvironmentHealth>) -> Self {
496        self.health = input;
497        self
498    }
499    /// <p>Describes the health status of the environment. AWS Elastic Beanstalk indicates the failure levels for a running environment:</p>
500    /// <ul>
501    /// <li>
502    /// <p><code>Red</code>: Indicates the environment is not responsive. Occurs when three or more consecutive failures occur for an environment.</p></li>
503    /// <li>
504    /// <p><code>Yellow</code>: Indicates that something is wrong. Occurs when two consecutive failures occur for an environment.</p></li>
505    /// <li>
506    /// <p><code>Green</code>: Indicates the environment is healthy and fully functional.</p></li>
507    /// <li>
508    /// <p><code>Grey</code>: Default health for a new environment. The environment is not fully launched and health checks have not started or health checks are suspended during an <code>UpdateEnvironment</code> or <code>RestartEnvironment</code> request.</p></li>
509    /// </ul>
510    /// <p>Default: <code>Grey</code></p>
511    pub fn get_health(&self) -> &::std::option::Option<crate::types::EnvironmentHealth> {
512        &self.health
513    }
514    /// <p>Returns the health status of the application running in your environment. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html">Health Colors and Statuses</a>.</p>
515    pub fn health_status(mut self, input: crate::types::EnvironmentHealthStatus) -> Self {
516        self.health_status = ::std::option::Option::Some(input);
517        self
518    }
519    /// <p>Returns the health status of the application running in your environment. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html">Health Colors and Statuses</a>.</p>
520    pub fn set_health_status(mut self, input: ::std::option::Option<crate::types::EnvironmentHealthStatus>) -> Self {
521        self.health_status = input;
522        self
523    }
524    /// <p>Returns the health status of the application running in your environment. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html">Health Colors and Statuses</a>.</p>
525    pub fn get_health_status(&self) -> &::std::option::Option<crate::types::EnvironmentHealthStatus> {
526        &self.health_status
527    }
528    /// <p>The description of the AWS resources used by this environment.</p>
529    pub fn resources(mut self, input: crate::types::EnvironmentResourcesDescription) -> Self {
530        self.resources = ::std::option::Option::Some(input);
531        self
532    }
533    /// <p>The description of the AWS resources used by this environment.</p>
534    pub fn set_resources(mut self, input: ::std::option::Option<crate::types::EnvironmentResourcesDescription>) -> Self {
535        self.resources = input;
536        self
537    }
538    /// <p>The description of the AWS resources used by this environment.</p>
539    pub fn get_resources(&self) -> &::std::option::Option<crate::types::EnvironmentResourcesDescription> {
540        &self.resources
541    }
542    /// <p>Describes the current tier of this environment.</p>
543    pub fn tier(mut self, input: crate::types::EnvironmentTier) -> Self {
544        self.tier = ::std::option::Option::Some(input);
545        self
546    }
547    /// <p>Describes the current tier of this environment.</p>
548    pub fn set_tier(mut self, input: ::std::option::Option<crate::types::EnvironmentTier>) -> Self {
549        self.tier = input;
550        self
551    }
552    /// <p>Describes the current tier of this environment.</p>
553    pub fn get_tier(&self) -> &::std::option::Option<crate::types::EnvironmentTier> {
554        &self.tier
555    }
556    /// Appends an item to `environment_links`.
557    ///
558    /// To override the contents of this collection use [`set_environment_links`](Self::set_environment_links).
559    ///
560    /// <p>A list of links to other environments in the same group.</p>
561    pub fn environment_links(mut self, input: crate::types::EnvironmentLink) -> Self {
562        let mut v = self.environment_links.unwrap_or_default();
563        v.push(input);
564        self.environment_links = ::std::option::Option::Some(v);
565        self
566    }
567    /// <p>A list of links to other environments in the same group.</p>
568    pub fn set_environment_links(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EnvironmentLink>>) -> Self {
569        self.environment_links = input;
570        self
571    }
572    /// <p>A list of links to other environments in the same group.</p>
573    pub fn get_environment_links(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EnvironmentLink>> {
574        &self.environment_links
575    }
576    /// <p>The environment's Amazon Resource Name (ARN), which can be used in other API requests that require an ARN.</p>
577    pub fn environment_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
578        self.environment_arn = ::std::option::Option::Some(input.into());
579        self
580    }
581    /// <p>The environment's Amazon Resource Name (ARN), which can be used in other API requests that require an ARN.</p>
582    pub fn set_environment_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
583        self.environment_arn = input;
584        self
585    }
586    /// <p>The environment's Amazon Resource Name (ARN), which can be used in other API requests that require an ARN.</p>
587    pub fn get_environment_arn(&self) -> &::std::option::Option<::std::string::String> {
588        &self.environment_arn
589    }
590    /// <p>The Amazon Resource Name (ARN) of the environment's operations role. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html">Operations roles</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>
591    pub fn operations_role(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
592        self.operations_role = ::std::option::Option::Some(input.into());
593        self
594    }
595    /// <p>The Amazon Resource Name (ARN) of the environment's operations role. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html">Operations roles</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>
596    pub fn set_operations_role(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
597        self.operations_role = input;
598        self
599    }
600    /// <p>The Amazon Resource Name (ARN) of the environment's operations role. For more information, see <a href="https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html">Operations roles</a> in the <i>AWS Elastic Beanstalk Developer Guide</i>.</p>
601    pub fn get_operations_role(&self) -> &::std::option::Option<::std::string::String> {
602        &self.operations_role
603    }
604    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
605        self._request_id = Some(request_id.into());
606        self
607    }
608
609    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
610        self._request_id = request_id;
611        self
612    }
613    /// Consumes the builder and constructs a [`CreateEnvironmentOutput`](crate::operation::create_environment::CreateEnvironmentOutput).
614    pub fn build(self) -> crate::operation::create_environment::CreateEnvironmentOutput {
615        crate::operation::create_environment::CreateEnvironmentOutput {
616            environment_name: self.environment_name,
617            environment_id: self.environment_id,
618            application_name: self.application_name,
619            version_label: self.version_label,
620            solution_stack_name: self.solution_stack_name,
621            platform_arn: self.platform_arn,
622            template_name: self.template_name,
623            description: self.description,
624            endpoint_url: self.endpoint_url,
625            cname: self.cname,
626            date_created: self.date_created,
627            date_updated: self.date_updated,
628            status: self.status,
629            abortable_operation_in_progress: self.abortable_operation_in_progress,
630            health: self.health,
631            health_status: self.health_status,
632            resources: self.resources,
633            tier: self.tier,
634            environment_links: self.environment_links,
635            environment_arn: self.environment_arn,
636            operations_role: self.operations_role,
637            _request_id: self._request_id,
638        }
639    }
640}