aws_sdk_m2/types/
_application_version_summary.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct ApplicationVersionSummary {
7 pub application_version: i32,
9 pub status: crate::types::ApplicationVersionLifecycle,
11 pub status_reason: ::std::option::Option<::std::string::String>,
13 pub creation_time: ::aws_smithy_types::DateTime,
15}
16impl ApplicationVersionSummary {
17 pub fn application_version(&self) -> i32 {
19 self.application_version
20 }
21 pub fn status(&self) -> &crate::types::ApplicationVersionLifecycle {
23 &self.status
24 }
25 pub fn status_reason(&self) -> ::std::option::Option<&str> {
27 self.status_reason.as_deref()
28 }
29 pub fn creation_time(&self) -> &::aws_smithy_types::DateTime {
31 &self.creation_time
32 }
33}
34impl ApplicationVersionSummary {
35 pub fn builder() -> crate::types::builders::ApplicationVersionSummaryBuilder {
37 crate::types::builders::ApplicationVersionSummaryBuilder::default()
38 }
39}
40
41#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
43#[non_exhaustive]
44pub struct ApplicationVersionSummaryBuilder {
45 pub(crate) application_version: ::std::option::Option<i32>,
46 pub(crate) status: ::std::option::Option<crate::types::ApplicationVersionLifecycle>,
47 pub(crate) status_reason: ::std::option::Option<::std::string::String>,
48 pub(crate) creation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
49}
50impl ApplicationVersionSummaryBuilder {
51 pub fn application_version(mut self, input: i32) -> Self {
54 self.application_version = ::std::option::Option::Some(input);
55 self
56 }
57 pub fn set_application_version(mut self, input: ::std::option::Option<i32>) -> Self {
59 self.application_version = input;
60 self
61 }
62 pub fn get_application_version(&self) -> &::std::option::Option<i32> {
64 &self.application_version
65 }
66 pub fn status(mut self, input: crate::types::ApplicationVersionLifecycle) -> Self {
69 self.status = ::std::option::Option::Some(input);
70 self
71 }
72 pub fn set_status(mut self, input: ::std::option::Option<crate::types::ApplicationVersionLifecycle>) -> Self {
74 self.status = input;
75 self
76 }
77 pub fn get_status(&self) -> &::std::option::Option<crate::types::ApplicationVersionLifecycle> {
79 &self.status
80 }
81 pub fn status_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
83 self.status_reason = ::std::option::Option::Some(input.into());
84 self
85 }
86 pub fn set_status_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
88 self.status_reason = input;
89 self
90 }
91 pub fn get_status_reason(&self) -> &::std::option::Option<::std::string::String> {
93 &self.status_reason
94 }
95 pub fn creation_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
98 self.creation_time = ::std::option::Option::Some(input);
99 self
100 }
101 pub fn set_creation_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
103 self.creation_time = input;
104 self
105 }
106 pub fn get_creation_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
108 &self.creation_time
109 }
110 pub fn build(self) -> ::std::result::Result<crate::types::ApplicationVersionSummary, ::aws_smithy_types::error::operation::BuildError> {
116 ::std::result::Result::Ok(crate::types::ApplicationVersionSummary {
117 application_version: self.application_version.ok_or_else(|| {
118 ::aws_smithy_types::error::operation::BuildError::missing_field(
119 "application_version",
120 "application_version was not specified but it is required when building ApplicationVersionSummary",
121 )
122 })?,
123 status: self.status.ok_or_else(|| {
124 ::aws_smithy_types::error::operation::BuildError::missing_field(
125 "status",
126 "status was not specified but it is required when building ApplicationVersionSummary",
127 )
128 })?,
129 status_reason: self.status_reason,
130 creation_time: self.creation_time.ok_or_else(|| {
131 ::aws_smithy_types::error::operation::BuildError::missing_field(
132 "creation_time",
133 "creation_time was not specified but it is required when building ApplicationVersionSummary",
134 )
135 })?,
136 })
137 }
138}