AWS SDK for C++

AWS SDK for C++ Version 1.11.807

Loading...
Searching...
No Matches
CreateStackRequest.h
1
6#pragma once
7#include <aws/appstream/AppStreamRequest.h>
8#include <aws/appstream/AppStream_EXPORTS.h>
9#include <aws/appstream/model/AccessEndpoint.h>
10#include <aws/appstream/model/AgentAccessConfig.h>
11#include <aws/appstream/model/ApplicationSettings.h>
12#include <aws/appstream/model/ContentRedirection.h>
13#include <aws/appstream/model/StorageConnector.h>
14#include <aws/appstream/model/StreamingExperienceSettings.h>
15#include <aws/appstream/model/UserSetting.h>
16#include <aws/core/utils/memory/stl/AWSMap.h>
17#include <aws/core/utils/memory/stl/AWSString.h>
18#include <aws/core/utils/memory/stl/AWSVector.h>
19
20#include <utility>
21
22namespace Aws {
23namespace AppStream {
24namespace Model {
25
29 public:
30 AWS_APPSTREAM_API CreateStackRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateStack"; }
37
38 AWS_APPSTREAM_API Aws::String SerializePayload() const override;
39
41
43
46 inline const Aws::String& GetName() const { return m_name; }
47 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
48 template <typename NameT = Aws::String>
49 void SetName(NameT&& value) {
50 m_nameHasBeenSet = true;
51 m_name = std::forward<NameT>(value);
52 }
53 template <typename NameT = Aws::String>
54 CreateStackRequest& WithName(NameT&& value) {
55 SetName(std::forward<NameT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::String& GetDescription() const { return m_description; }
65 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
66 template <typename DescriptionT = Aws::String>
67 void SetDescription(DescriptionT&& value) {
68 m_descriptionHasBeenSet = true;
69 m_description = std::forward<DescriptionT>(value);
70 }
71 template <typename DescriptionT = Aws::String>
72 CreateStackRequest& WithDescription(DescriptionT&& value) {
73 SetDescription(std::forward<DescriptionT>(value));
74 return *this;
75 }
77
79
82 inline const Aws::String& GetDisplayName() const { return m_displayName; }
83 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
84 template <typename DisplayNameT = Aws::String>
85 void SetDisplayName(DisplayNameT&& value) {
86 m_displayNameHasBeenSet = true;
87 m_displayName = std::forward<DisplayNameT>(value);
88 }
89 template <typename DisplayNameT = Aws::String>
90 CreateStackRequest& WithDisplayName(DisplayNameT&& value) {
91 SetDisplayName(std::forward<DisplayNameT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::Vector<StorageConnector>& GetStorageConnectors() const { return m_storageConnectors; }
101 inline bool StorageConnectorsHasBeenSet() const { return m_storageConnectorsHasBeenSet; }
102 template <typename StorageConnectorsT = Aws::Vector<StorageConnector>>
103 void SetStorageConnectors(StorageConnectorsT&& value) {
104 m_storageConnectorsHasBeenSet = true;
105 m_storageConnectors = std::forward<StorageConnectorsT>(value);
106 }
107 template <typename StorageConnectorsT = Aws::Vector<StorageConnector>>
108 CreateStackRequest& WithStorageConnectors(StorageConnectorsT&& value) {
109 SetStorageConnectors(std::forward<StorageConnectorsT>(value));
110 return *this;
111 }
112 template <typename StorageConnectorsT = StorageConnector>
113 CreateStackRequest& AddStorageConnectors(StorageConnectorsT&& value) {
114 m_storageConnectorsHasBeenSet = true;
115 m_storageConnectors.emplace_back(std::forward<StorageConnectorsT>(value));
116 return *this;
117 }
119
121
124 inline const Aws::String& GetRedirectURL() const { return m_redirectURL; }
125 inline bool RedirectURLHasBeenSet() const { return m_redirectURLHasBeenSet; }
126 template <typename RedirectURLT = Aws::String>
127 void SetRedirectURL(RedirectURLT&& value) {
128 m_redirectURLHasBeenSet = true;
129 m_redirectURL = std::forward<RedirectURLT>(value);
130 }
131 template <typename RedirectURLT = Aws::String>
132 CreateStackRequest& WithRedirectURL(RedirectURLT&& value) {
133 SetRedirectURL(std::forward<RedirectURLT>(value));
134 return *this;
135 }
137
139
143 inline const Aws::String& GetFeedbackURL() const { return m_feedbackURL; }
144 inline bool FeedbackURLHasBeenSet() const { return m_feedbackURLHasBeenSet; }
145 template <typename FeedbackURLT = Aws::String>
146 void SetFeedbackURL(FeedbackURLT&& value) {
147 m_feedbackURLHasBeenSet = true;
148 m_feedbackURL = std::forward<FeedbackURLT>(value);
149 }
150 template <typename FeedbackURLT = Aws::String>
151 CreateStackRequest& WithFeedbackURL(FeedbackURLT&& value) {
152 SetFeedbackURL(std::forward<FeedbackURLT>(value));
153 return *this;
154 }
156
158
162 inline const Aws::Vector<UserSetting>& GetUserSettings() const { return m_userSettings; }
163 inline bool UserSettingsHasBeenSet() const { return m_userSettingsHasBeenSet; }
164 template <typename UserSettingsT = Aws::Vector<UserSetting>>
165 void SetUserSettings(UserSettingsT&& value) {
166 m_userSettingsHasBeenSet = true;
167 m_userSettings = std::forward<UserSettingsT>(value);
168 }
169 template <typename UserSettingsT = Aws::Vector<UserSetting>>
170 CreateStackRequest& WithUserSettings(UserSettingsT&& value) {
171 SetUserSettings(std::forward<UserSettingsT>(value));
172 return *this;
173 }
174 template <typename UserSettingsT = UserSetting>
175 CreateStackRequest& AddUserSettings(UserSettingsT&& value) {
176 m_userSettingsHasBeenSet = true;
177 m_userSettings.emplace_back(std::forward<UserSettingsT>(value));
178 return *this;
179 }
181
183
188 inline const ApplicationSettings& GetApplicationSettings() const { return m_applicationSettings; }
189 inline bool ApplicationSettingsHasBeenSet() const { return m_applicationSettingsHasBeenSet; }
190 template <typename ApplicationSettingsT = ApplicationSettings>
191 void SetApplicationSettings(ApplicationSettingsT&& value) {
192 m_applicationSettingsHasBeenSet = true;
193 m_applicationSettings = std::forward<ApplicationSettingsT>(value);
194 }
195 template <typename ApplicationSettingsT = ApplicationSettings>
196 CreateStackRequest& WithApplicationSettings(ApplicationSettingsT&& value) {
197 SetApplicationSettings(std::forward<ApplicationSettingsT>(value));
198 return *this;
199 }
201
203
214 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
215 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
216 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
217 void SetTags(TagsT&& value) {
218 m_tagsHasBeenSet = true;
219 m_tags = std::forward<TagsT>(value);
220 }
221 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
222 CreateStackRequest& WithTags(TagsT&& value) {
223 SetTags(std::forward<TagsT>(value));
224 return *this;
225 }
226 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
227 CreateStackRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
228 m_tagsHasBeenSet = true;
229 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
230 return *this;
231 }
233
235
240 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
241 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
242 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
243 void SetAccessEndpoints(AccessEndpointsT&& value) {
244 m_accessEndpointsHasBeenSet = true;
245 m_accessEndpoints = std::forward<AccessEndpointsT>(value);
246 }
247 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
248 CreateStackRequest& WithAccessEndpoints(AccessEndpointsT&& value) {
249 SetAccessEndpoints(std::forward<AccessEndpointsT>(value));
250 return *this;
251 }
252 template <typename AccessEndpointsT = AccessEndpoint>
253 CreateStackRequest& AddAccessEndpoints(AccessEndpointsT&& value) {
254 m_accessEndpointsHasBeenSet = true;
255 m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value));
256 return *this;
257 }
259
261
266 inline const Aws::Vector<Aws::String>& GetEmbedHostDomains() const { return m_embedHostDomains; }
267 inline bool EmbedHostDomainsHasBeenSet() const { return m_embedHostDomainsHasBeenSet; }
268 template <typename EmbedHostDomainsT = Aws::Vector<Aws::String>>
269 void SetEmbedHostDomains(EmbedHostDomainsT&& value) {
270 m_embedHostDomainsHasBeenSet = true;
271 m_embedHostDomains = std::forward<EmbedHostDomainsT>(value);
272 }
273 template <typename EmbedHostDomainsT = Aws::Vector<Aws::String>>
274 CreateStackRequest& WithEmbedHostDomains(EmbedHostDomainsT&& value) {
275 SetEmbedHostDomains(std::forward<EmbedHostDomainsT>(value));
276 return *this;
277 }
278 template <typename EmbedHostDomainsT = Aws::String>
279 CreateStackRequest& AddEmbedHostDomains(EmbedHostDomainsT&& value) {
280 m_embedHostDomainsHasBeenSet = true;
281 m_embedHostDomains.emplace_back(std::forward<EmbedHostDomainsT>(value));
282 return *this;
283 }
285
287
291 inline const StreamingExperienceSettings& GetStreamingExperienceSettings() const { return m_streamingExperienceSettings; }
292 inline bool StreamingExperienceSettingsHasBeenSet() const { return m_streamingExperienceSettingsHasBeenSet; }
293 template <typename StreamingExperienceSettingsT = StreamingExperienceSettings>
294 void SetStreamingExperienceSettings(StreamingExperienceSettingsT&& value) {
295 m_streamingExperienceSettingsHasBeenSet = true;
296 m_streamingExperienceSettings = std::forward<StreamingExperienceSettingsT>(value);
297 }
298 template <typename StreamingExperienceSettingsT = StreamingExperienceSettings>
299 CreateStackRequest& WithStreamingExperienceSettings(StreamingExperienceSettingsT&& value) {
300 SetStreamingExperienceSettings(std::forward<StreamingExperienceSettingsT>(value));
301 return *this;
302 }
304
306
307 inline const ContentRedirection& GetContentRedirection() const { return m_contentRedirection; }
308 inline bool ContentRedirectionHasBeenSet() const { return m_contentRedirectionHasBeenSet; }
309 template <typename ContentRedirectionT = ContentRedirection>
310 void SetContentRedirection(ContentRedirectionT&& value) {
311 m_contentRedirectionHasBeenSet = true;
312 m_contentRedirection = std::forward<ContentRedirectionT>(value);
313 }
314 template <typename ContentRedirectionT = ContentRedirection>
315 CreateStackRequest& WithContentRedirection(ContentRedirectionT&& value) {
316 SetContentRedirection(std::forward<ContentRedirectionT>(value));
317 return *this;
318 }
320
322
326 inline const AgentAccessConfig& GetAgentAccessConfig() const { return m_agentAccessConfig; }
327 inline bool AgentAccessConfigHasBeenSet() const { return m_agentAccessConfigHasBeenSet; }
328 template <typename AgentAccessConfigT = AgentAccessConfig>
329 void SetAgentAccessConfig(AgentAccessConfigT&& value) {
330 m_agentAccessConfigHasBeenSet = true;
331 m_agentAccessConfig = std::forward<AgentAccessConfigT>(value);
332 }
333 template <typename AgentAccessConfigT = AgentAccessConfig>
334 CreateStackRequest& WithAgentAccessConfig(AgentAccessConfigT&& value) {
335 SetAgentAccessConfig(std::forward<AgentAccessConfigT>(value));
336 return *this;
337 }
339 private:
340 Aws::String m_name;
341
342 Aws::String m_description;
343
344 Aws::String m_displayName;
345
346 Aws::Vector<StorageConnector> m_storageConnectors;
347
348 Aws::String m_redirectURL;
349
350 Aws::String m_feedbackURL;
351
352 Aws::Vector<UserSetting> m_userSettings;
353
354 ApplicationSettings m_applicationSettings;
355
357
358 Aws::Vector<AccessEndpoint> m_accessEndpoints;
359
360 Aws::Vector<Aws::String> m_embedHostDomains;
361
362 StreamingExperienceSettings m_streamingExperienceSettings;
363
364 ContentRedirection m_contentRedirection;
365
366 AgentAccessConfig m_agentAccessConfig;
367 bool m_nameHasBeenSet = false;
368 bool m_descriptionHasBeenSet = false;
369 bool m_displayNameHasBeenSet = false;
370 bool m_storageConnectorsHasBeenSet = false;
371 bool m_redirectURLHasBeenSet = false;
372 bool m_feedbackURLHasBeenSet = false;
373 bool m_userSettingsHasBeenSet = false;
374 bool m_applicationSettingsHasBeenSet = false;
375 bool m_tagsHasBeenSet = false;
376 bool m_accessEndpointsHasBeenSet = false;
377 bool m_embedHostDomainsHasBeenSet = false;
378 bool m_streamingExperienceSettingsHasBeenSet = false;
379 bool m_contentRedirectionHasBeenSet = false;
380 bool m_agentAccessConfigHasBeenSet = false;
381};
382
383} // namespace Model
384} // namespace AppStream
385} // namespace Aws
void SetApplicationSettings(ApplicationSettingsT &&value)
CreateStackRequest & WithDisplayName(DisplayNameT &&value)
const Aws::Vector< Aws::String > & GetEmbedHostDomains() const
AWS_APPSTREAM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateStackRequest & WithContentRedirection(ContentRedirectionT &&value)
void SetAccessEndpoints(AccessEndpointsT &&value)
CreateStackRequest & AddUserSettings(UserSettingsT &&value)
CreateStackRequest & AddEmbedHostDomains(EmbedHostDomainsT &&value)
const Aws::Vector< AccessEndpoint > & GetAccessEndpoints() const
void SetStorageConnectors(StorageConnectorsT &&value)
CreateStackRequest & AddStorageConnectors(StorageConnectorsT &&value)
AWS_APPSTREAM_API CreateStackRequest()=default
CreateStackRequest & WithAccessEndpoints(AccessEndpointsT &&value)
CreateStackRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateStackRequest & WithStreamingExperienceSettings(StreamingExperienceSettingsT &&value)
const Aws::Vector< StorageConnector > & GetStorageConnectors() const
virtual const char * GetServiceRequestName() const override
const AgentAccessConfig & GetAgentAccessConfig() const
CreateStackRequest & WithDescription(DescriptionT &&value)
CreateStackRequest & WithEmbedHostDomains(EmbedHostDomainsT &&value)
AWS_APPSTREAM_API Aws::String SerializePayload() const override
const ApplicationSettings & GetApplicationSettings() const
CreateStackRequest & WithAgentAccessConfig(AgentAccessConfigT &&value)
void SetContentRedirection(ContentRedirectionT &&value)
CreateStackRequest & WithFeedbackURL(FeedbackURLT &&value)
CreateStackRequest & WithStorageConnectors(StorageConnectorsT &&value)
const ContentRedirection & GetContentRedirection() const
CreateStackRequest & WithTags(TagsT &&value)
void SetEmbedHostDomains(EmbedHostDomainsT &&value)
void SetAgentAccessConfig(AgentAccessConfigT &&value)
const Aws::Vector< UserSetting > & GetUserSettings() const
CreateStackRequest & WithApplicationSettings(ApplicationSettingsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateStackRequest & WithRedirectURL(RedirectURLT &&value)
void SetStreamingExperienceSettings(StreamingExperienceSettingsT &&value)
const StreamingExperienceSettings & GetStreamingExperienceSettings() const
CreateStackRequest & WithName(NameT &&value)
CreateStackRequest & AddAccessEndpoints(AccessEndpointsT &&value)
CreateStackRequest & WithUserSettings(UserSettingsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector