aws_sdk_appstream/operation/update_application/
_update_application_input.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct UpdateApplicationInput {
6 pub name: ::std::option::Option<::std::string::String>,
8 pub display_name: ::std::option::Option<::std::string::String>,
10 pub description: ::std::option::Option<::std::string::String>,
12 pub icon_s3_location: ::std::option::Option<crate::types::S3Location>,
14 pub launch_path: ::std::option::Option<::std::string::String>,
16 pub working_directory: ::std::option::Option<::std::string::String>,
18 pub launch_parameters: ::std::option::Option<::std::string::String>,
20 pub app_block_arn: ::std::option::Option<::std::string::String>,
22 pub attributes_to_delete: ::std::option::Option<::std::vec::Vec<crate::types::ApplicationAttribute>>,
24}
25impl UpdateApplicationInput {
26 pub fn name(&self) -> ::std::option::Option<&str> {
28 self.name.as_deref()
29 }
30 pub fn display_name(&self) -> ::std::option::Option<&str> {
32 self.display_name.as_deref()
33 }
34 pub fn description(&self) -> ::std::option::Option<&str> {
36 self.description.as_deref()
37 }
38 pub fn icon_s3_location(&self) -> ::std::option::Option<&crate::types::S3Location> {
40 self.icon_s3_location.as_ref()
41 }
42 pub fn launch_path(&self) -> ::std::option::Option<&str> {
44 self.launch_path.as_deref()
45 }
46 pub fn working_directory(&self) -> ::std::option::Option<&str> {
48 self.working_directory.as_deref()
49 }
50 pub fn launch_parameters(&self) -> ::std::option::Option<&str> {
52 self.launch_parameters.as_deref()
53 }
54 pub fn app_block_arn(&self) -> ::std::option::Option<&str> {
56 self.app_block_arn.as_deref()
57 }
58 pub fn attributes_to_delete(&self) -> &[crate::types::ApplicationAttribute] {
62 self.attributes_to_delete.as_deref().unwrap_or_default()
63 }
64}
65impl UpdateApplicationInput {
66 pub fn builder() -> crate::operation::update_application::builders::UpdateApplicationInputBuilder {
68 crate::operation::update_application::builders::UpdateApplicationInputBuilder::default()
69 }
70}
71
72#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
74#[non_exhaustive]
75pub struct UpdateApplicationInputBuilder {
76 pub(crate) name: ::std::option::Option<::std::string::String>,
77 pub(crate) display_name: ::std::option::Option<::std::string::String>,
78 pub(crate) description: ::std::option::Option<::std::string::String>,
79 pub(crate) icon_s3_location: ::std::option::Option<crate::types::S3Location>,
80 pub(crate) launch_path: ::std::option::Option<::std::string::String>,
81 pub(crate) working_directory: ::std::option::Option<::std::string::String>,
82 pub(crate) launch_parameters: ::std::option::Option<::std::string::String>,
83 pub(crate) app_block_arn: ::std::option::Option<::std::string::String>,
84 pub(crate) attributes_to_delete: ::std::option::Option<::std::vec::Vec<crate::types::ApplicationAttribute>>,
85}
86impl UpdateApplicationInputBuilder {
87 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
90 self.name = ::std::option::Option::Some(input.into());
91 self
92 }
93 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
95 self.name = input;
96 self
97 }
98 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
100 &self.name
101 }
102 pub fn display_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
104 self.display_name = ::std::option::Option::Some(input.into());
105 self
106 }
107 pub fn set_display_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
109 self.display_name = input;
110 self
111 }
112 pub fn get_display_name(&self) -> &::std::option::Option<::std::string::String> {
114 &self.display_name
115 }
116 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
118 self.description = ::std::option::Option::Some(input.into());
119 self
120 }
121 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
123 self.description = input;
124 self
125 }
126 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
128 &self.description
129 }
130 pub fn icon_s3_location(mut self, input: crate::types::S3Location) -> Self {
132 self.icon_s3_location = ::std::option::Option::Some(input);
133 self
134 }
135 pub fn set_icon_s3_location(mut self, input: ::std::option::Option<crate::types::S3Location>) -> Self {
137 self.icon_s3_location = input;
138 self
139 }
140 pub fn get_icon_s3_location(&self) -> &::std::option::Option<crate::types::S3Location> {
142 &self.icon_s3_location
143 }
144 pub fn launch_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
146 self.launch_path = ::std::option::Option::Some(input.into());
147 self
148 }
149 pub fn set_launch_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
151 self.launch_path = input;
152 self
153 }
154 pub fn get_launch_path(&self) -> &::std::option::Option<::std::string::String> {
156 &self.launch_path
157 }
158 pub fn working_directory(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
160 self.working_directory = ::std::option::Option::Some(input.into());
161 self
162 }
163 pub fn set_working_directory(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
165 self.working_directory = input;
166 self
167 }
168 pub fn get_working_directory(&self) -> &::std::option::Option<::std::string::String> {
170 &self.working_directory
171 }
172 pub fn launch_parameters(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
174 self.launch_parameters = ::std::option::Option::Some(input.into());
175 self
176 }
177 pub fn set_launch_parameters(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
179 self.launch_parameters = input;
180 self
181 }
182 pub fn get_launch_parameters(&self) -> &::std::option::Option<::std::string::String> {
184 &self.launch_parameters
185 }
186 pub fn app_block_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
188 self.app_block_arn = ::std::option::Option::Some(input.into());
189 self
190 }
191 pub fn set_app_block_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
193 self.app_block_arn = input;
194 self
195 }
196 pub fn get_app_block_arn(&self) -> &::std::option::Option<::std::string::String> {
198 &self.app_block_arn
199 }
200 pub fn attributes_to_delete(mut self, input: crate::types::ApplicationAttribute) -> Self {
206 let mut v = self.attributes_to_delete.unwrap_or_default();
207 v.push(input);
208 self.attributes_to_delete = ::std::option::Option::Some(v);
209 self
210 }
211 pub fn set_attributes_to_delete(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ApplicationAttribute>>) -> Self {
213 self.attributes_to_delete = input;
214 self
215 }
216 pub fn get_attributes_to_delete(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ApplicationAttribute>> {
218 &self.attributes_to_delete
219 }
220 pub fn build(
222 self,
223 ) -> ::std::result::Result<crate::operation::update_application::UpdateApplicationInput, ::aws_smithy_types::error::operation::BuildError> {
224 ::std::result::Result::Ok(crate::operation::update_application::UpdateApplicationInput {
225 name: self.name,
226 display_name: self.display_name,
227 description: self.description,
228 icon_s3_location: self.icon_s3_location,
229 launch_path: self.launch_path,
230 working_directory: self.working_directory,
231 launch_parameters: self.launch_parameters,
232 app_block_arn: self.app_block_arn,
233 attributes_to_delete: self.attributes_to_delete,
234 })
235 }
236}