aws_sdk_appstream/operation/update_stack/
_update_stack_input.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct UpdateStackInput {
6 pub display_name: ::std::option::Option<::std::string::String>,
8 pub description: ::std::option::Option<::std::string::String>,
10 pub name: ::std::option::Option<::std::string::String>,
12 pub storage_connectors: ::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>>,
14 #[deprecated]
16 pub delete_storage_connectors: ::std::option::Option<bool>,
17 pub redirect_url: ::std::option::Option<::std::string::String>,
19 pub feedback_url: ::std::option::Option<::std::string::String>,
21 pub attributes_to_delete: ::std::option::Option<::std::vec::Vec<crate::types::StackAttribute>>,
23 pub user_settings: ::std::option::Option<::std::vec::Vec<crate::types::UserSetting>>,
25 pub application_settings: ::std::option::Option<crate::types::ApplicationSettings>,
27 pub access_endpoints: ::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>>,
29 pub embed_host_domains: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
31 pub streaming_experience_settings: ::std::option::Option<crate::types::StreamingExperienceSettings>,
33 pub content_redirection: ::std::option::Option<crate::types::ContentRedirection>,
35 pub agent_access_config: ::std::option::Option<crate::types::AgentAccessConfigForUpdate>,
37}
38impl UpdateStackInput {
39 pub fn display_name(&self) -> ::std::option::Option<&str> {
41 self.display_name.as_deref()
42 }
43 pub fn description(&self) -> ::std::option::Option<&str> {
45 self.description.as_deref()
46 }
47 pub fn name(&self) -> ::std::option::Option<&str> {
49 self.name.as_deref()
50 }
51 pub fn storage_connectors(&self) -> &[crate::types::StorageConnector] {
55 self.storage_connectors.as_deref().unwrap_or_default()
56 }
57 #[deprecated]
59 pub fn delete_storage_connectors(&self) -> ::std::option::Option<bool> {
60 self.delete_storage_connectors
61 }
62 pub fn redirect_url(&self) -> ::std::option::Option<&str> {
64 self.redirect_url.as_deref()
65 }
66 pub fn feedback_url(&self) -> ::std::option::Option<&str> {
68 self.feedback_url.as_deref()
69 }
70 pub fn attributes_to_delete(&self) -> &[crate::types::StackAttribute] {
74 self.attributes_to_delete.as_deref().unwrap_or_default()
75 }
76 pub fn user_settings(&self) -> &[crate::types::UserSetting] {
80 self.user_settings.as_deref().unwrap_or_default()
81 }
82 pub fn application_settings(&self) -> ::std::option::Option<&crate::types::ApplicationSettings> {
84 self.application_settings.as_ref()
85 }
86 pub fn access_endpoints(&self) -> &[crate::types::AccessEndpoint] {
90 self.access_endpoints.as_deref().unwrap_or_default()
91 }
92 pub fn embed_host_domains(&self) -> &[::std::string::String] {
96 self.embed_host_domains.as_deref().unwrap_or_default()
97 }
98 pub fn streaming_experience_settings(&self) -> ::std::option::Option<&crate::types::StreamingExperienceSettings> {
100 self.streaming_experience_settings.as_ref()
101 }
102 pub fn content_redirection(&self) -> ::std::option::Option<&crate::types::ContentRedirection> {
104 self.content_redirection.as_ref()
105 }
106 pub fn agent_access_config(&self) -> ::std::option::Option<&crate::types::AgentAccessConfigForUpdate> {
108 self.agent_access_config.as_ref()
109 }
110}
111impl UpdateStackInput {
112 pub fn builder() -> crate::operation::update_stack::builders::UpdateStackInputBuilder {
114 crate::operation::update_stack::builders::UpdateStackInputBuilder::default()
115 }
116}
117
118#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
120#[non_exhaustive]
121pub struct UpdateStackInputBuilder {
122 pub(crate) display_name: ::std::option::Option<::std::string::String>,
123 pub(crate) description: ::std::option::Option<::std::string::String>,
124 pub(crate) name: ::std::option::Option<::std::string::String>,
125 pub(crate) storage_connectors: ::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>>,
126 pub(crate) delete_storage_connectors: ::std::option::Option<bool>,
127 pub(crate) redirect_url: ::std::option::Option<::std::string::String>,
128 pub(crate) feedback_url: ::std::option::Option<::std::string::String>,
129 pub(crate) attributes_to_delete: ::std::option::Option<::std::vec::Vec<crate::types::StackAttribute>>,
130 pub(crate) user_settings: ::std::option::Option<::std::vec::Vec<crate::types::UserSetting>>,
131 pub(crate) application_settings: ::std::option::Option<crate::types::ApplicationSettings>,
132 pub(crate) access_endpoints: ::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>>,
133 pub(crate) embed_host_domains: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
134 pub(crate) streaming_experience_settings: ::std::option::Option<crate::types::StreamingExperienceSettings>,
135 pub(crate) content_redirection: ::std::option::Option<crate::types::ContentRedirection>,
136 pub(crate) agent_access_config: ::std::option::Option<crate::types::AgentAccessConfigForUpdate>,
137}
138impl UpdateStackInputBuilder {
139 pub fn display_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
141 self.display_name = ::std::option::Option::Some(input.into());
142 self
143 }
144 pub fn set_display_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
146 self.display_name = input;
147 self
148 }
149 pub fn get_display_name(&self) -> &::std::option::Option<::std::string::String> {
151 &self.display_name
152 }
153 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
155 self.description = ::std::option::Option::Some(input.into());
156 self
157 }
158 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
160 self.description = input;
161 self
162 }
163 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
165 &self.description
166 }
167 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
170 self.name = ::std::option::Option::Some(input.into());
171 self
172 }
173 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
175 self.name = input;
176 self
177 }
178 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
180 &self.name
181 }
182 pub fn storage_connectors(mut self, input: crate::types::StorageConnector) -> Self {
188 let mut v = self.storage_connectors.unwrap_or_default();
189 v.push(input);
190 self.storage_connectors = ::std::option::Option::Some(v);
191 self
192 }
193 pub fn set_storage_connectors(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>>) -> Self {
195 self.storage_connectors = input;
196 self
197 }
198 pub fn get_storage_connectors(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>> {
200 &self.storage_connectors
201 }
202 #[deprecated]
204 pub fn delete_storage_connectors(mut self, input: bool) -> Self {
205 self.delete_storage_connectors = ::std::option::Option::Some(input);
206 self
207 }
208 #[deprecated]
210 pub fn set_delete_storage_connectors(mut self, input: ::std::option::Option<bool>) -> Self {
211 self.delete_storage_connectors = input;
212 self
213 }
214 #[deprecated]
216 pub fn get_delete_storage_connectors(&self) -> &::std::option::Option<bool> {
217 &self.delete_storage_connectors
218 }
219 pub fn redirect_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
221 self.redirect_url = ::std::option::Option::Some(input.into());
222 self
223 }
224 pub fn set_redirect_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
226 self.redirect_url = input;
227 self
228 }
229 pub fn get_redirect_url(&self) -> &::std::option::Option<::std::string::String> {
231 &self.redirect_url
232 }
233 pub fn feedback_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
235 self.feedback_url = ::std::option::Option::Some(input.into());
236 self
237 }
238 pub fn set_feedback_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
240 self.feedback_url = input;
241 self
242 }
243 pub fn get_feedback_url(&self) -> &::std::option::Option<::std::string::String> {
245 &self.feedback_url
246 }
247 pub fn attributes_to_delete(mut self, input: crate::types::StackAttribute) -> Self {
253 let mut v = self.attributes_to_delete.unwrap_or_default();
254 v.push(input);
255 self.attributes_to_delete = ::std::option::Option::Some(v);
256 self
257 }
258 pub fn set_attributes_to_delete(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::StackAttribute>>) -> Self {
260 self.attributes_to_delete = input;
261 self
262 }
263 pub fn get_attributes_to_delete(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::StackAttribute>> {
265 &self.attributes_to_delete
266 }
267 pub fn user_settings(mut self, input: crate::types::UserSetting) -> Self {
273 let mut v = self.user_settings.unwrap_or_default();
274 v.push(input);
275 self.user_settings = ::std::option::Option::Some(v);
276 self
277 }
278 pub fn set_user_settings(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::UserSetting>>) -> Self {
280 self.user_settings = input;
281 self
282 }
283 pub fn get_user_settings(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::UserSetting>> {
285 &self.user_settings
286 }
287 pub fn application_settings(mut self, input: crate::types::ApplicationSettings) -> Self {
289 self.application_settings = ::std::option::Option::Some(input);
290 self
291 }
292 pub fn set_application_settings(mut self, input: ::std::option::Option<crate::types::ApplicationSettings>) -> Self {
294 self.application_settings = input;
295 self
296 }
297 pub fn get_application_settings(&self) -> &::std::option::Option<crate::types::ApplicationSettings> {
299 &self.application_settings
300 }
301 pub fn access_endpoints(mut self, input: crate::types::AccessEndpoint) -> Self {
307 let mut v = self.access_endpoints.unwrap_or_default();
308 v.push(input);
309 self.access_endpoints = ::std::option::Option::Some(v);
310 self
311 }
312 pub fn set_access_endpoints(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>>) -> Self {
314 self.access_endpoints = input;
315 self
316 }
317 pub fn get_access_endpoints(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>> {
319 &self.access_endpoints
320 }
321 pub fn embed_host_domains(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
327 let mut v = self.embed_host_domains.unwrap_or_default();
328 v.push(input.into());
329 self.embed_host_domains = ::std::option::Option::Some(v);
330 self
331 }
332 pub fn set_embed_host_domains(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
334 self.embed_host_domains = input;
335 self
336 }
337 pub fn get_embed_host_domains(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
339 &self.embed_host_domains
340 }
341 pub fn streaming_experience_settings(mut self, input: crate::types::StreamingExperienceSettings) -> Self {
343 self.streaming_experience_settings = ::std::option::Option::Some(input);
344 self
345 }
346 pub fn set_streaming_experience_settings(mut self, input: ::std::option::Option<crate::types::StreamingExperienceSettings>) -> Self {
348 self.streaming_experience_settings = input;
349 self
350 }
351 pub fn get_streaming_experience_settings(&self) -> &::std::option::Option<crate::types::StreamingExperienceSettings> {
353 &self.streaming_experience_settings
354 }
355 pub fn content_redirection(mut self, input: crate::types::ContentRedirection) -> Self {
357 self.content_redirection = ::std::option::Option::Some(input);
358 self
359 }
360 pub fn set_content_redirection(mut self, input: ::std::option::Option<crate::types::ContentRedirection>) -> Self {
362 self.content_redirection = input;
363 self
364 }
365 pub fn get_content_redirection(&self) -> &::std::option::Option<crate::types::ContentRedirection> {
367 &self.content_redirection
368 }
369 pub fn agent_access_config(mut self, input: crate::types::AgentAccessConfigForUpdate) -> Self {
371 self.agent_access_config = ::std::option::Option::Some(input);
372 self
373 }
374 pub fn set_agent_access_config(mut self, input: ::std::option::Option<crate::types::AgentAccessConfigForUpdate>) -> Self {
376 self.agent_access_config = input;
377 self
378 }
379 pub fn get_agent_access_config(&self) -> &::std::option::Option<crate::types::AgentAccessConfigForUpdate> {
381 &self.agent_access_config
382 }
383 pub fn build(self) -> ::std::result::Result<crate::operation::update_stack::UpdateStackInput, ::aws_smithy_types::error::operation::BuildError> {
385 ::std::result::Result::Ok(crate::operation::update_stack::UpdateStackInput {
386 display_name: self.display_name,
387 description: self.description,
388 name: self.name,
389 storage_connectors: self.storage_connectors,
390 delete_storage_connectors: self.delete_storage_connectors,
391 redirect_url: self.redirect_url,
392 feedback_url: self.feedback_url,
393 attributes_to_delete: self.attributes_to_delete,
394 user_settings: self.user_settings,
395 application_settings: self.application_settings,
396 access_endpoints: self.access_endpoints,
397 embed_host_domains: self.embed_host_domains,
398 streaming_experience_settings: self.streaming_experience_settings,
399 content_redirection: self.content_redirection,
400 agent_access_config: self.agent_access_config,
401 })
402 }
403}