Skip to main content

aws_sdk_appstream/operation/create_stack/
_create_stack_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreateStackInput {
6    /// <p>The name of the stack.</p>
7    pub name: ::std::option::Option<::std::string::String>,
8    /// <p>The description to display.</p>
9    pub description: ::std::option::Option<::std::string::String>,
10    /// <p>The stack name to display.</p>
11    pub display_name: ::std::option::Option<::std::string::String>,
12    /// <p>The storage connectors to enable.</p>
13    pub storage_connectors: ::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>>,
14    /// <p>The URL that users are redirected to after their streaming session ends.</p>
15    pub redirect_url: ::std::option::Option<::std::string::String>,
16    /// <p>The URL that users are redirected to after they click the Send Feedback link. If no URL is specified, no Send Feedback link is displayed.</p>
17    pub feedback_url: ::std::option::Option<::std::string::String>,
18    /// <p>The actions that are enabled or disabled for users during their streaming sessions. By default, these actions are enabled.</p>
19    pub user_settings: ::std::option::Option<::std::vec::Vec<crate::types::UserSetting>>,
20    /// <p>The persistent application settings for users of a stack. When these settings are enabled, changes that users make to applications and Windows settings are automatically saved after each session and applied to the next session.</p>
21    pub application_settings: ::std::option::Option<crate::types::ApplicationSettings>,
22    /// <p>The tags to associate with the stack. A tag is a key-value pair, and the value is optional. For example, Environment=Test. If you do not specify a value, Environment=.</p>
23    /// <p>If you do not specify a value, the value is set to an empty string.</p>
24    /// <p>Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following special characters:</p>
25    /// <p>_ . : / = + \ - @</p>
26    /// <p>For more information about tags, see <a href="https://docs.aws.amazon.com/appstream2/latest/developerguide/tagging-basic.html">Tagging Your Resources</a> in the <i>Amazon WorkSpaces Applications Administration Guide</i>.</p>
27    pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
28    /// <p>The list of interface VPC endpoint (interface endpoint) objects. Users of the stack can connect to WorkSpaces Applications only through the specified endpoints.</p>
29    pub access_endpoints: ::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>>,
30    /// <p>The domains where WorkSpaces Applications streaming sessions can be embedded in an iframe. You must approve the domains that you want to host embedded WorkSpaces Applications streaming sessions.</p>
31    pub embed_host_domains: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
32    /// <p>The streaming protocol you want your stack to prefer. This can be UDP or TCP. Currently, UDP is only supported in the Windows native client.</p>
33    pub streaming_experience_settings: ::std::option::Option<crate::types::StreamingExperienceSettings>,
34    /// <p>Configuration for bidirectional URL redirection between the streaming session and the local client. Use HostToClient to redirect URLs from the remote desktop to the local browser.</p>
35    pub content_redirection: ::std::option::Option<crate::types::ContentRedirection>,
36    /// <p>The configuration for agent access on the stack. If specified, agent access is enabled for the stack.</p>
37    pub agent_access_config: ::std::option::Option<crate::types::AgentAccessConfig>,
38}
39impl CreateStackInput {
40    /// <p>The name of the stack.</p>
41    pub fn name(&self) -> ::std::option::Option<&str> {
42        self.name.as_deref()
43    }
44    /// <p>The description to display.</p>
45    pub fn description(&self) -> ::std::option::Option<&str> {
46        self.description.as_deref()
47    }
48    /// <p>The stack name to display.</p>
49    pub fn display_name(&self) -> ::std::option::Option<&str> {
50        self.display_name.as_deref()
51    }
52    /// <p>The storage connectors to enable.</p>
53    ///
54    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.storage_connectors.is_none()`.
55    pub fn storage_connectors(&self) -> &[crate::types::StorageConnector] {
56        self.storage_connectors.as_deref().unwrap_or_default()
57    }
58    /// <p>The URL that users are redirected to after their streaming session ends.</p>
59    pub fn redirect_url(&self) -> ::std::option::Option<&str> {
60        self.redirect_url.as_deref()
61    }
62    /// <p>The URL that users are redirected to after they click the Send Feedback link. If no URL is specified, no Send Feedback link is displayed.</p>
63    pub fn feedback_url(&self) -> ::std::option::Option<&str> {
64        self.feedback_url.as_deref()
65    }
66    /// <p>The actions that are enabled or disabled for users during their streaming sessions. By default, these actions are enabled.</p>
67    ///
68    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.user_settings.is_none()`.
69    pub fn user_settings(&self) -> &[crate::types::UserSetting] {
70        self.user_settings.as_deref().unwrap_or_default()
71    }
72    /// <p>The persistent application settings for users of a stack. When these settings are enabled, changes that users make to applications and Windows settings are automatically saved after each session and applied to the next session.</p>
73    pub fn application_settings(&self) -> ::std::option::Option<&crate::types::ApplicationSettings> {
74        self.application_settings.as_ref()
75    }
76    /// <p>The tags to associate with the stack. A tag is a key-value pair, and the value is optional. For example, Environment=Test. If you do not specify a value, Environment=.</p>
77    /// <p>If you do not specify a value, the value is set to an empty string.</p>
78    /// <p>Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following special characters:</p>
79    /// <p>_ . : / = + \ - @</p>
80    /// <p>For more information about tags, see <a href="https://docs.aws.amazon.com/appstream2/latest/developerguide/tagging-basic.html">Tagging Your Resources</a> in the <i>Amazon WorkSpaces Applications Administration Guide</i>.</p>
81    pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
82        self.tags.as_ref()
83    }
84    /// <p>The list of interface VPC endpoint (interface endpoint) objects. Users of the stack can connect to WorkSpaces Applications only through the specified endpoints.</p>
85    ///
86    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.access_endpoints.is_none()`.
87    pub fn access_endpoints(&self) -> &[crate::types::AccessEndpoint] {
88        self.access_endpoints.as_deref().unwrap_or_default()
89    }
90    /// <p>The domains where WorkSpaces Applications streaming sessions can be embedded in an iframe. You must approve the domains that you want to host embedded WorkSpaces Applications streaming sessions.</p>
91    ///
92    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.embed_host_domains.is_none()`.
93    pub fn embed_host_domains(&self) -> &[::std::string::String] {
94        self.embed_host_domains.as_deref().unwrap_or_default()
95    }
96    /// <p>The streaming protocol you want your stack to prefer. This can be UDP or TCP. Currently, UDP is only supported in the Windows native client.</p>
97    pub fn streaming_experience_settings(&self) -> ::std::option::Option<&crate::types::StreamingExperienceSettings> {
98        self.streaming_experience_settings.as_ref()
99    }
100    /// <p>Configuration for bidirectional URL redirection between the streaming session and the local client. Use HostToClient to redirect URLs from the remote desktop to the local browser.</p>
101    pub fn content_redirection(&self) -> ::std::option::Option<&crate::types::ContentRedirection> {
102        self.content_redirection.as_ref()
103    }
104    /// <p>The configuration for agent access on the stack. If specified, agent access is enabled for the stack.</p>
105    pub fn agent_access_config(&self) -> ::std::option::Option<&crate::types::AgentAccessConfig> {
106        self.agent_access_config.as_ref()
107    }
108}
109impl CreateStackInput {
110    /// Creates a new builder-style object to manufacture [`CreateStackInput`](crate::operation::create_stack::CreateStackInput).
111    pub fn builder() -> crate::operation::create_stack::builders::CreateStackInputBuilder {
112        crate::operation::create_stack::builders::CreateStackInputBuilder::default()
113    }
114}
115
116/// A builder for [`CreateStackInput`](crate::operation::create_stack::CreateStackInput).
117#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
118#[non_exhaustive]
119pub struct CreateStackInputBuilder {
120    pub(crate) name: ::std::option::Option<::std::string::String>,
121    pub(crate) description: ::std::option::Option<::std::string::String>,
122    pub(crate) display_name: ::std::option::Option<::std::string::String>,
123    pub(crate) storage_connectors: ::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>>,
124    pub(crate) redirect_url: ::std::option::Option<::std::string::String>,
125    pub(crate) feedback_url: ::std::option::Option<::std::string::String>,
126    pub(crate) user_settings: ::std::option::Option<::std::vec::Vec<crate::types::UserSetting>>,
127    pub(crate) application_settings: ::std::option::Option<crate::types::ApplicationSettings>,
128    pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
129    pub(crate) access_endpoints: ::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>>,
130    pub(crate) embed_host_domains: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
131    pub(crate) streaming_experience_settings: ::std::option::Option<crate::types::StreamingExperienceSettings>,
132    pub(crate) content_redirection: ::std::option::Option<crate::types::ContentRedirection>,
133    pub(crate) agent_access_config: ::std::option::Option<crate::types::AgentAccessConfig>,
134}
135impl CreateStackInputBuilder {
136    /// <p>The name of the stack.</p>
137    /// This field is required.
138    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
139        self.name = ::std::option::Option::Some(input.into());
140        self
141    }
142    /// <p>The name of the stack.</p>
143    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
144        self.name = input;
145        self
146    }
147    /// <p>The name of the stack.</p>
148    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
149        &self.name
150    }
151    /// <p>The description to display.</p>
152    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
153        self.description = ::std::option::Option::Some(input.into());
154        self
155    }
156    /// <p>The description to display.</p>
157    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
158        self.description = input;
159        self
160    }
161    /// <p>The description to display.</p>
162    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
163        &self.description
164    }
165    /// <p>The stack name to display.</p>
166    pub fn display_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
167        self.display_name = ::std::option::Option::Some(input.into());
168        self
169    }
170    /// <p>The stack name to display.</p>
171    pub fn set_display_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
172        self.display_name = input;
173        self
174    }
175    /// <p>The stack name to display.</p>
176    pub fn get_display_name(&self) -> &::std::option::Option<::std::string::String> {
177        &self.display_name
178    }
179    /// Appends an item to `storage_connectors`.
180    ///
181    /// To override the contents of this collection use [`set_storage_connectors`](Self::set_storage_connectors).
182    ///
183    /// <p>The storage connectors to enable.</p>
184    pub fn storage_connectors(mut self, input: crate::types::StorageConnector) -> Self {
185        let mut v = self.storage_connectors.unwrap_or_default();
186        v.push(input);
187        self.storage_connectors = ::std::option::Option::Some(v);
188        self
189    }
190    /// <p>The storage connectors to enable.</p>
191    pub fn set_storage_connectors(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>>) -> Self {
192        self.storage_connectors = input;
193        self
194    }
195    /// <p>The storage connectors to enable.</p>
196    pub fn get_storage_connectors(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::StorageConnector>> {
197        &self.storage_connectors
198    }
199    /// <p>The URL that users are redirected to after their streaming session ends.</p>
200    pub fn redirect_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
201        self.redirect_url = ::std::option::Option::Some(input.into());
202        self
203    }
204    /// <p>The URL that users are redirected to after their streaming session ends.</p>
205    pub fn set_redirect_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
206        self.redirect_url = input;
207        self
208    }
209    /// <p>The URL that users are redirected to after their streaming session ends.</p>
210    pub fn get_redirect_url(&self) -> &::std::option::Option<::std::string::String> {
211        &self.redirect_url
212    }
213    /// <p>The URL that users are redirected to after they click the Send Feedback link. If no URL is specified, no Send Feedback link is displayed.</p>
214    pub fn feedback_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
215        self.feedback_url = ::std::option::Option::Some(input.into());
216        self
217    }
218    /// <p>The URL that users are redirected to after they click the Send Feedback link. If no URL is specified, no Send Feedback link is displayed.</p>
219    pub fn set_feedback_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
220        self.feedback_url = input;
221        self
222    }
223    /// <p>The URL that users are redirected to after they click the Send Feedback link. If no URL is specified, no Send Feedback link is displayed.</p>
224    pub fn get_feedback_url(&self) -> &::std::option::Option<::std::string::String> {
225        &self.feedback_url
226    }
227    /// Appends an item to `user_settings`.
228    ///
229    /// To override the contents of this collection use [`set_user_settings`](Self::set_user_settings).
230    ///
231    /// <p>The actions that are enabled or disabled for users during their streaming sessions. By default, these actions are enabled.</p>
232    pub fn user_settings(mut self, input: crate::types::UserSetting) -> Self {
233        let mut v = self.user_settings.unwrap_or_default();
234        v.push(input);
235        self.user_settings = ::std::option::Option::Some(v);
236        self
237    }
238    /// <p>The actions that are enabled or disabled for users during their streaming sessions. By default, these actions are enabled.</p>
239    pub fn set_user_settings(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::UserSetting>>) -> Self {
240        self.user_settings = input;
241        self
242    }
243    /// <p>The actions that are enabled or disabled for users during their streaming sessions. By default, these actions are enabled.</p>
244    pub fn get_user_settings(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::UserSetting>> {
245        &self.user_settings
246    }
247    /// <p>The persistent application settings for users of a stack. When these settings are enabled, changes that users make to applications and Windows settings are automatically saved after each session and applied to the next session.</p>
248    pub fn application_settings(mut self, input: crate::types::ApplicationSettings) -> Self {
249        self.application_settings = ::std::option::Option::Some(input);
250        self
251    }
252    /// <p>The persistent application settings for users of a stack. When these settings are enabled, changes that users make to applications and Windows settings are automatically saved after each session and applied to the next session.</p>
253    pub fn set_application_settings(mut self, input: ::std::option::Option<crate::types::ApplicationSettings>) -> Self {
254        self.application_settings = input;
255        self
256    }
257    /// <p>The persistent application settings for users of a stack. When these settings are enabled, changes that users make to applications and Windows settings are automatically saved after each session and applied to the next session.</p>
258    pub fn get_application_settings(&self) -> &::std::option::Option<crate::types::ApplicationSettings> {
259        &self.application_settings
260    }
261    /// Adds a key-value pair to `tags`.
262    ///
263    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
264    ///
265    /// <p>The tags to associate with the stack. A tag is a key-value pair, and the value is optional. For example, Environment=Test. If you do not specify a value, Environment=.</p>
266    /// <p>If you do not specify a value, the value is set to an empty string.</p>
267    /// <p>Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following special characters:</p>
268    /// <p>_ . : / = + \ - @</p>
269    /// <p>For more information about tags, see <a href="https://docs.aws.amazon.com/appstream2/latest/developerguide/tagging-basic.html">Tagging Your Resources</a> in the <i>Amazon WorkSpaces Applications Administration Guide</i>.</p>
270    pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
271        let mut hash_map = self.tags.unwrap_or_default();
272        hash_map.insert(k.into(), v.into());
273        self.tags = ::std::option::Option::Some(hash_map);
274        self
275    }
276    /// <p>The tags to associate with the stack. A tag is a key-value pair, and the value is optional. For example, Environment=Test. If you do not specify a value, Environment=.</p>
277    /// <p>If you do not specify a value, the value is set to an empty string.</p>
278    /// <p>Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following special characters:</p>
279    /// <p>_ . : / = + \ - @</p>
280    /// <p>For more information about tags, see <a href="https://docs.aws.amazon.com/appstream2/latest/developerguide/tagging-basic.html">Tagging Your Resources</a> in the <i>Amazon WorkSpaces Applications Administration Guide</i>.</p>
281    pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
282        self.tags = input;
283        self
284    }
285    /// <p>The tags to associate with the stack. A tag is a key-value pair, and the value is optional. For example, Environment=Test. If you do not specify a value, Environment=.</p>
286    /// <p>If you do not specify a value, the value is set to an empty string.</p>
287    /// <p>Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following special characters:</p>
288    /// <p>_ . : / = + \ - @</p>
289    /// <p>For more information about tags, see <a href="https://docs.aws.amazon.com/appstream2/latest/developerguide/tagging-basic.html">Tagging Your Resources</a> in the <i>Amazon WorkSpaces Applications Administration Guide</i>.</p>
290    pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
291        &self.tags
292    }
293    /// Appends an item to `access_endpoints`.
294    ///
295    /// To override the contents of this collection use [`set_access_endpoints`](Self::set_access_endpoints).
296    ///
297    /// <p>The list of interface VPC endpoint (interface endpoint) objects. Users of the stack can connect to WorkSpaces Applications only through the specified endpoints.</p>
298    pub fn access_endpoints(mut self, input: crate::types::AccessEndpoint) -> Self {
299        let mut v = self.access_endpoints.unwrap_or_default();
300        v.push(input);
301        self.access_endpoints = ::std::option::Option::Some(v);
302        self
303    }
304    /// <p>The list of interface VPC endpoint (interface endpoint) objects. Users of the stack can connect to WorkSpaces Applications only through the specified endpoints.</p>
305    pub fn set_access_endpoints(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>>) -> Self {
306        self.access_endpoints = input;
307        self
308    }
309    /// <p>The list of interface VPC endpoint (interface endpoint) objects. Users of the stack can connect to WorkSpaces Applications only through the specified endpoints.</p>
310    pub fn get_access_endpoints(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AccessEndpoint>> {
311        &self.access_endpoints
312    }
313    /// Appends an item to `embed_host_domains`.
314    ///
315    /// To override the contents of this collection use [`set_embed_host_domains`](Self::set_embed_host_domains).
316    ///
317    /// <p>The domains where WorkSpaces Applications streaming sessions can be embedded in an iframe. You must approve the domains that you want to host embedded WorkSpaces Applications streaming sessions.</p>
318    pub fn embed_host_domains(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
319        let mut v = self.embed_host_domains.unwrap_or_default();
320        v.push(input.into());
321        self.embed_host_domains = ::std::option::Option::Some(v);
322        self
323    }
324    /// <p>The domains where WorkSpaces Applications streaming sessions can be embedded in an iframe. You must approve the domains that you want to host embedded WorkSpaces Applications streaming sessions.</p>
325    pub fn set_embed_host_domains(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
326        self.embed_host_domains = input;
327        self
328    }
329    /// <p>The domains where WorkSpaces Applications streaming sessions can be embedded in an iframe. You must approve the domains that you want to host embedded WorkSpaces Applications streaming sessions.</p>
330    pub fn get_embed_host_domains(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
331        &self.embed_host_domains
332    }
333    /// <p>The streaming protocol you want your stack to prefer. This can be UDP or TCP. Currently, UDP is only supported in the Windows native client.</p>
334    pub fn streaming_experience_settings(mut self, input: crate::types::StreamingExperienceSettings) -> Self {
335        self.streaming_experience_settings = ::std::option::Option::Some(input);
336        self
337    }
338    /// <p>The streaming protocol you want your stack to prefer. This can be UDP or TCP. Currently, UDP is only supported in the Windows native client.</p>
339    pub fn set_streaming_experience_settings(mut self, input: ::std::option::Option<crate::types::StreamingExperienceSettings>) -> Self {
340        self.streaming_experience_settings = input;
341        self
342    }
343    /// <p>The streaming protocol you want your stack to prefer. This can be UDP or TCP. Currently, UDP is only supported in the Windows native client.</p>
344    pub fn get_streaming_experience_settings(&self) -> &::std::option::Option<crate::types::StreamingExperienceSettings> {
345        &self.streaming_experience_settings
346    }
347    /// <p>Configuration for bidirectional URL redirection between the streaming session and the local client. Use HostToClient to redirect URLs from the remote desktop to the local browser.</p>
348    pub fn content_redirection(mut self, input: crate::types::ContentRedirection) -> Self {
349        self.content_redirection = ::std::option::Option::Some(input);
350        self
351    }
352    /// <p>Configuration for bidirectional URL redirection between the streaming session and the local client. Use HostToClient to redirect URLs from the remote desktop to the local browser.</p>
353    pub fn set_content_redirection(mut self, input: ::std::option::Option<crate::types::ContentRedirection>) -> Self {
354        self.content_redirection = input;
355        self
356    }
357    /// <p>Configuration for bidirectional URL redirection between the streaming session and the local client. Use HostToClient to redirect URLs from the remote desktop to the local browser.</p>
358    pub fn get_content_redirection(&self) -> &::std::option::Option<crate::types::ContentRedirection> {
359        &self.content_redirection
360    }
361    /// <p>The configuration for agent access on the stack. If specified, agent access is enabled for the stack.</p>
362    pub fn agent_access_config(mut self, input: crate::types::AgentAccessConfig) -> Self {
363        self.agent_access_config = ::std::option::Option::Some(input);
364        self
365    }
366    /// <p>The configuration for agent access on the stack. If specified, agent access is enabled for the stack.</p>
367    pub fn set_agent_access_config(mut self, input: ::std::option::Option<crate::types::AgentAccessConfig>) -> Self {
368        self.agent_access_config = input;
369        self
370    }
371    /// <p>The configuration for agent access on the stack. If specified, agent access is enabled for the stack.</p>
372    pub fn get_agent_access_config(&self) -> &::std::option::Option<crate::types::AgentAccessConfig> {
373        &self.agent_access_config
374    }
375    /// Consumes the builder and constructs a [`CreateStackInput`](crate::operation::create_stack::CreateStackInput).
376    pub fn build(self) -> ::std::result::Result<crate::operation::create_stack::CreateStackInput, ::aws_smithy_types::error::operation::BuildError> {
377        ::std::result::Result::Ok(crate::operation::create_stack::CreateStackInput {
378            name: self.name,
379            description: self.description,
380            display_name: self.display_name,
381            storage_connectors: self.storage_connectors,
382            redirect_url: self.redirect_url,
383            feedback_url: self.feedback_url,
384            user_settings: self.user_settings,
385            application_settings: self.application_settings,
386            tags: self.tags,
387            access_endpoints: self.access_endpoints,
388            embed_host_domains: self.embed_host_domains,
389            streaming_experience_settings: self.streaming_experience_settings,
390            content_redirection: self.content_redirection,
391            agent_access_config: self.agent_access_config,
392        })
393    }
394}