aws_sdk_m2/operation/get_application/
_get_application_output.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct GetApplicationOutput {
6 pub name: ::std::string::String,
8 pub description: ::std::option::Option<::std::string::String>,
10 pub application_id: ::std::string::String,
12 pub application_arn: ::std::string::String,
14 pub status: crate::types::ApplicationLifecycle,
16 pub latest_version: ::std::option::Option<crate::types::ApplicationVersionSummary>,
18 pub deployed_version: ::std::option::Option<crate::types::DeployedVersionSummary>,
20 pub engine_type: crate::types::EngineType,
22 pub log_groups: ::std::option::Option<::std::vec::Vec<crate::types::LogGroupSummary>>,
24 pub creation_time: ::aws_smithy_types::DateTime,
26 pub last_start_time: ::std::option::Option<::aws_smithy_types::DateTime>,
28 pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
30 pub environment_id: ::std::option::Option<::std::string::String>,
32 pub target_group_arns: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
34 pub listener_arns: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
36 pub listener_ports: ::std::option::Option<::std::vec::Vec<i32>>,
38 pub load_balancer_dns_name: ::std::option::Option<::std::string::String>,
40 pub status_reason: ::std::option::Option<::std::string::String>,
42 pub kms_key_id: ::std::option::Option<::std::string::String>,
44 pub role_arn: ::std::option::Option<::std::string::String>,
46 _request_id: Option<String>,
47}
48impl GetApplicationOutput {
49 pub fn name(&self) -> &str {
51 use std::ops::Deref;
52 self.name.deref()
53 }
54 pub fn description(&self) -> ::std::option::Option<&str> {
56 self.description.as_deref()
57 }
58 pub fn application_id(&self) -> &str {
60 use std::ops::Deref;
61 self.application_id.deref()
62 }
63 pub fn application_arn(&self) -> &str {
65 use std::ops::Deref;
66 self.application_arn.deref()
67 }
68 pub fn status(&self) -> &crate::types::ApplicationLifecycle {
70 &self.status
71 }
72 pub fn latest_version(&self) -> ::std::option::Option<&crate::types::ApplicationVersionSummary> {
74 self.latest_version.as_ref()
75 }
76 pub fn deployed_version(&self) -> ::std::option::Option<&crate::types::DeployedVersionSummary> {
78 self.deployed_version.as_ref()
79 }
80 pub fn engine_type(&self) -> &crate::types::EngineType {
82 &self.engine_type
83 }
84 pub fn log_groups(&self) -> &[crate::types::LogGroupSummary] {
88 self.log_groups.as_deref().unwrap_or_default()
89 }
90 pub fn creation_time(&self) -> &::aws_smithy_types::DateTime {
92 &self.creation_time
93 }
94 pub fn last_start_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
96 self.last_start_time.as_ref()
97 }
98 pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
100 self.tags.as_ref()
101 }
102 pub fn environment_id(&self) -> ::std::option::Option<&str> {
104 self.environment_id.as_deref()
105 }
106 pub fn target_group_arns(&self) -> &[::std::string::String] {
110 self.target_group_arns.as_deref().unwrap_or_default()
111 }
112 pub fn listener_arns(&self) -> &[::std::string::String] {
116 self.listener_arns.as_deref().unwrap_or_default()
117 }
118 pub fn listener_ports(&self) -> &[i32] {
122 self.listener_ports.as_deref().unwrap_or_default()
123 }
124 pub fn load_balancer_dns_name(&self) -> ::std::option::Option<&str> {
126 self.load_balancer_dns_name.as_deref()
127 }
128 pub fn status_reason(&self) -> ::std::option::Option<&str> {
130 self.status_reason.as_deref()
131 }
132 pub fn kms_key_id(&self) -> ::std::option::Option<&str> {
134 self.kms_key_id.as_deref()
135 }
136 pub fn role_arn(&self) -> ::std::option::Option<&str> {
138 self.role_arn.as_deref()
139 }
140}
141impl ::aws_types::request_id::RequestId for GetApplicationOutput {
142 fn request_id(&self) -> Option<&str> {
143 self._request_id.as_deref()
144 }
145}
146impl GetApplicationOutput {
147 pub fn builder() -> crate::operation::get_application::builders::GetApplicationOutputBuilder {
149 crate::operation::get_application::builders::GetApplicationOutputBuilder::default()
150 }
151}
152
153#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
155#[non_exhaustive]
156pub struct GetApplicationOutputBuilder {
157 pub(crate) name: ::std::option::Option<::std::string::String>,
158 pub(crate) description: ::std::option::Option<::std::string::String>,
159 pub(crate) application_id: ::std::option::Option<::std::string::String>,
160 pub(crate) application_arn: ::std::option::Option<::std::string::String>,
161 pub(crate) status: ::std::option::Option<crate::types::ApplicationLifecycle>,
162 pub(crate) latest_version: ::std::option::Option<crate::types::ApplicationVersionSummary>,
163 pub(crate) deployed_version: ::std::option::Option<crate::types::DeployedVersionSummary>,
164 pub(crate) engine_type: ::std::option::Option<crate::types::EngineType>,
165 pub(crate) log_groups: ::std::option::Option<::std::vec::Vec<crate::types::LogGroupSummary>>,
166 pub(crate) creation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
167 pub(crate) last_start_time: ::std::option::Option<::aws_smithy_types::DateTime>,
168 pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
169 pub(crate) environment_id: ::std::option::Option<::std::string::String>,
170 pub(crate) target_group_arns: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
171 pub(crate) listener_arns: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
172 pub(crate) listener_ports: ::std::option::Option<::std::vec::Vec<i32>>,
173 pub(crate) load_balancer_dns_name: ::std::option::Option<::std::string::String>,
174 pub(crate) status_reason: ::std::option::Option<::std::string::String>,
175 pub(crate) kms_key_id: ::std::option::Option<::std::string::String>,
176 pub(crate) role_arn: ::std::option::Option<::std::string::String>,
177 _request_id: Option<String>,
178}
179impl GetApplicationOutputBuilder {
180 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
183 self.name = ::std::option::Option::Some(input.into());
184 self
185 }
186 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
188 self.name = input;
189 self
190 }
191 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
193 &self.name
194 }
195 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
197 self.description = ::std::option::Option::Some(input.into());
198 self
199 }
200 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
202 self.description = input;
203 self
204 }
205 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
207 &self.description
208 }
209 pub fn application_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
212 self.application_id = ::std::option::Option::Some(input.into());
213 self
214 }
215 pub fn set_application_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
217 self.application_id = input;
218 self
219 }
220 pub fn get_application_id(&self) -> &::std::option::Option<::std::string::String> {
222 &self.application_id
223 }
224 pub fn application_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
227 self.application_arn = ::std::option::Option::Some(input.into());
228 self
229 }
230 pub fn set_application_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
232 self.application_arn = input;
233 self
234 }
235 pub fn get_application_arn(&self) -> &::std::option::Option<::std::string::String> {
237 &self.application_arn
238 }
239 pub fn status(mut self, input: crate::types::ApplicationLifecycle) -> Self {
242 self.status = ::std::option::Option::Some(input);
243 self
244 }
245 pub fn set_status(mut self, input: ::std::option::Option<crate::types::ApplicationLifecycle>) -> Self {
247 self.status = input;
248 self
249 }
250 pub fn get_status(&self) -> &::std::option::Option<crate::types::ApplicationLifecycle> {
252 &self.status
253 }
254 pub fn latest_version(mut self, input: crate::types::ApplicationVersionSummary) -> Self {
257 self.latest_version = ::std::option::Option::Some(input);
258 self
259 }
260 pub fn set_latest_version(mut self, input: ::std::option::Option<crate::types::ApplicationVersionSummary>) -> Self {
262 self.latest_version = input;
263 self
264 }
265 pub fn get_latest_version(&self) -> &::std::option::Option<crate::types::ApplicationVersionSummary> {
267 &self.latest_version
268 }
269 pub fn deployed_version(mut self, input: crate::types::DeployedVersionSummary) -> Self {
271 self.deployed_version = ::std::option::Option::Some(input);
272 self
273 }
274 pub fn set_deployed_version(mut self, input: ::std::option::Option<crate::types::DeployedVersionSummary>) -> Self {
276 self.deployed_version = input;
277 self
278 }
279 pub fn get_deployed_version(&self) -> &::std::option::Option<crate::types::DeployedVersionSummary> {
281 &self.deployed_version
282 }
283 pub fn engine_type(mut self, input: crate::types::EngineType) -> Self {
286 self.engine_type = ::std::option::Option::Some(input);
287 self
288 }
289 pub fn set_engine_type(mut self, input: ::std::option::Option<crate::types::EngineType>) -> Self {
291 self.engine_type = input;
292 self
293 }
294 pub fn get_engine_type(&self) -> &::std::option::Option<crate::types::EngineType> {
296 &self.engine_type
297 }
298 pub fn log_groups(mut self, input: crate::types::LogGroupSummary) -> Self {
304 let mut v = self.log_groups.unwrap_or_default();
305 v.push(input);
306 self.log_groups = ::std::option::Option::Some(v);
307 self
308 }
309 pub fn set_log_groups(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::LogGroupSummary>>) -> Self {
311 self.log_groups = input;
312 self
313 }
314 pub fn get_log_groups(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::LogGroupSummary>> {
316 &self.log_groups
317 }
318 pub fn creation_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
321 self.creation_time = ::std::option::Option::Some(input);
322 self
323 }
324 pub fn set_creation_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
326 self.creation_time = input;
327 self
328 }
329 pub fn get_creation_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
331 &self.creation_time
332 }
333 pub fn last_start_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
335 self.last_start_time = ::std::option::Option::Some(input);
336 self
337 }
338 pub fn set_last_start_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
340 self.last_start_time = input;
341 self
342 }
343 pub fn get_last_start_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
345 &self.last_start_time
346 }
347 pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
353 let mut hash_map = self.tags.unwrap_or_default();
354 hash_map.insert(k.into(), v.into());
355 self.tags = ::std::option::Option::Some(hash_map);
356 self
357 }
358 pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
360 self.tags = input;
361 self
362 }
363 pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
365 &self.tags
366 }
367 pub fn environment_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
369 self.environment_id = ::std::option::Option::Some(input.into());
370 self
371 }
372 pub fn set_environment_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
374 self.environment_id = input;
375 self
376 }
377 pub fn get_environment_id(&self) -> &::std::option::Option<::std::string::String> {
379 &self.environment_id
380 }
381 pub fn target_group_arns(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
387 let mut v = self.target_group_arns.unwrap_or_default();
388 v.push(input.into());
389 self.target_group_arns = ::std::option::Option::Some(v);
390 self
391 }
392 pub fn set_target_group_arns(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
394 self.target_group_arns = input;
395 self
396 }
397 pub fn get_target_group_arns(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
399 &self.target_group_arns
400 }
401 pub fn listener_arns(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
407 let mut v = self.listener_arns.unwrap_or_default();
408 v.push(input.into());
409 self.listener_arns = ::std::option::Option::Some(v);
410 self
411 }
412 pub fn set_listener_arns(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
414 self.listener_arns = input;
415 self
416 }
417 pub fn get_listener_arns(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
419 &self.listener_arns
420 }
421 pub fn listener_ports(mut self, input: i32) -> Self {
427 let mut v = self.listener_ports.unwrap_or_default();
428 v.push(input);
429 self.listener_ports = ::std::option::Option::Some(v);
430 self
431 }
432 pub fn set_listener_ports(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
434 self.listener_ports = input;
435 self
436 }
437 pub fn get_listener_ports(&self) -> &::std::option::Option<::std::vec::Vec<i32>> {
439 &self.listener_ports
440 }
441 pub fn load_balancer_dns_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
443 self.load_balancer_dns_name = ::std::option::Option::Some(input.into());
444 self
445 }
446 pub fn set_load_balancer_dns_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
448 self.load_balancer_dns_name = input;
449 self
450 }
451 pub fn get_load_balancer_dns_name(&self) -> &::std::option::Option<::std::string::String> {
453 &self.load_balancer_dns_name
454 }
455 pub fn status_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
457 self.status_reason = ::std::option::Option::Some(input.into());
458 self
459 }
460 pub fn set_status_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
462 self.status_reason = input;
463 self
464 }
465 pub fn get_status_reason(&self) -> &::std::option::Option<::std::string::String> {
467 &self.status_reason
468 }
469 pub fn kms_key_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
471 self.kms_key_id = ::std::option::Option::Some(input.into());
472 self
473 }
474 pub fn set_kms_key_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
476 self.kms_key_id = input;
477 self
478 }
479 pub fn get_kms_key_id(&self) -> &::std::option::Option<::std::string::String> {
481 &self.kms_key_id
482 }
483 pub fn role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
485 self.role_arn = ::std::option::Option::Some(input.into());
486 self
487 }
488 pub fn set_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
490 self.role_arn = input;
491 self
492 }
493 pub fn get_role_arn(&self) -> &::std::option::Option<::std::string::String> {
495 &self.role_arn
496 }
497 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
498 self._request_id = Some(request_id.into());
499 self
500 }
501
502 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
503 self._request_id = request_id;
504 self
505 }
506 pub fn build(
515 self,
516 ) -> ::std::result::Result<crate::operation::get_application::GetApplicationOutput, ::aws_smithy_types::error::operation::BuildError> {
517 ::std::result::Result::Ok(crate::operation::get_application::GetApplicationOutput {
518 name: self.name.ok_or_else(|| {
519 ::aws_smithy_types::error::operation::BuildError::missing_field(
520 "name",
521 "name was not specified but it is required when building GetApplicationOutput",
522 )
523 })?,
524 description: self.description,
525 application_id: self.application_id.ok_or_else(|| {
526 ::aws_smithy_types::error::operation::BuildError::missing_field(
527 "application_id",
528 "application_id was not specified but it is required when building GetApplicationOutput",
529 )
530 })?,
531 application_arn: self.application_arn.ok_or_else(|| {
532 ::aws_smithy_types::error::operation::BuildError::missing_field(
533 "application_arn",
534 "application_arn was not specified but it is required when building GetApplicationOutput",
535 )
536 })?,
537 status: self.status.ok_or_else(|| {
538 ::aws_smithy_types::error::operation::BuildError::missing_field(
539 "status",
540 "status was not specified but it is required when building GetApplicationOutput",
541 )
542 })?,
543 latest_version: self.latest_version,
544 deployed_version: self.deployed_version,
545 engine_type: self.engine_type.ok_or_else(|| {
546 ::aws_smithy_types::error::operation::BuildError::missing_field(
547 "engine_type",
548 "engine_type was not specified but it is required when building GetApplicationOutput",
549 )
550 })?,
551 log_groups: self.log_groups,
552 creation_time: self.creation_time.ok_or_else(|| {
553 ::aws_smithy_types::error::operation::BuildError::missing_field(
554 "creation_time",
555 "creation_time was not specified but it is required when building GetApplicationOutput",
556 )
557 })?,
558 last_start_time: self.last_start_time,
559 tags: self.tags,
560 environment_id: self.environment_id,
561 target_group_arns: self.target_group_arns,
562 listener_arns: self.listener_arns,
563 listener_ports: self.listener_ports,
564 load_balancer_dns_name: self.load_balancer_dns_name,
565 status_reason: self.status_reason,
566 kms_key_id: self.kms_key_id,
567 role_arn: self.role_arn,
568 _request_id: self._request_id,
569 })
570 }
571}