AWS SDK for C++

AWS SDK for C++ Version 1.11.786

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/ApplicationSettings.h>
11#include <aws/appstream/model/ContentRedirection.h>
12#include <aws/appstream/model/StorageConnector.h>
13#include <aws/appstream/model/StreamingExperienceSettings.h>
14#include <aws/appstream/model/UserSetting.h>
15#include <aws/core/utils/memory/stl/AWSMap.h>
16#include <aws/core/utils/memory/stl/AWSString.h>
17#include <aws/core/utils/memory/stl/AWSVector.h>
18
19#include <utility>
20
21namespace Aws {
22namespace AppStream {
23namespace Model {
24
28 public:
29 AWS_APPSTREAM_API CreateStackRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateStack"; }
36
37 AWS_APPSTREAM_API Aws::String SerializePayload() const override;
38
40
42
45 inline const Aws::String& GetName() const { return m_name; }
46 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
47 template <typename NameT = Aws::String>
48 void SetName(NameT&& value) {
49 m_nameHasBeenSet = true;
50 m_name = std::forward<NameT>(value);
51 }
52 template <typename NameT = Aws::String>
53 CreateStackRequest& WithName(NameT&& value) {
54 SetName(std::forward<NameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetDescription() const { return m_description; }
64 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
65 template <typename DescriptionT = Aws::String>
66 void SetDescription(DescriptionT&& value) {
67 m_descriptionHasBeenSet = true;
68 m_description = std::forward<DescriptionT>(value);
69 }
70 template <typename DescriptionT = Aws::String>
71 CreateStackRequest& WithDescription(DescriptionT&& value) {
72 SetDescription(std::forward<DescriptionT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetDisplayName() const { return m_displayName; }
82 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
83 template <typename DisplayNameT = Aws::String>
84 void SetDisplayName(DisplayNameT&& value) {
85 m_displayNameHasBeenSet = true;
86 m_displayName = std::forward<DisplayNameT>(value);
87 }
88 template <typename DisplayNameT = Aws::String>
89 CreateStackRequest& WithDisplayName(DisplayNameT&& value) {
90 SetDisplayName(std::forward<DisplayNameT>(value));
91 return *this;
92 }
94
96
99 inline const Aws::Vector<StorageConnector>& GetStorageConnectors() const { return m_storageConnectors; }
100 inline bool StorageConnectorsHasBeenSet() const { return m_storageConnectorsHasBeenSet; }
101 template <typename StorageConnectorsT = Aws::Vector<StorageConnector>>
102 void SetStorageConnectors(StorageConnectorsT&& value) {
103 m_storageConnectorsHasBeenSet = true;
104 m_storageConnectors = std::forward<StorageConnectorsT>(value);
105 }
106 template <typename StorageConnectorsT = Aws::Vector<StorageConnector>>
107 CreateStackRequest& WithStorageConnectors(StorageConnectorsT&& value) {
108 SetStorageConnectors(std::forward<StorageConnectorsT>(value));
109 return *this;
110 }
111 template <typename StorageConnectorsT = StorageConnector>
112 CreateStackRequest& AddStorageConnectors(StorageConnectorsT&& value) {
113 m_storageConnectorsHasBeenSet = true;
114 m_storageConnectors.emplace_back(std::forward<StorageConnectorsT>(value));
115 return *this;
116 }
118
120
123 inline const Aws::String& GetRedirectURL() const { return m_redirectURL; }
124 inline bool RedirectURLHasBeenSet() const { return m_redirectURLHasBeenSet; }
125 template <typename RedirectURLT = Aws::String>
126 void SetRedirectURL(RedirectURLT&& value) {
127 m_redirectURLHasBeenSet = true;
128 m_redirectURL = std::forward<RedirectURLT>(value);
129 }
130 template <typename RedirectURLT = Aws::String>
131 CreateStackRequest& WithRedirectURL(RedirectURLT&& value) {
132 SetRedirectURL(std::forward<RedirectURLT>(value));
133 return *this;
134 }
136
138
142 inline const Aws::String& GetFeedbackURL() const { return m_feedbackURL; }
143 inline bool FeedbackURLHasBeenSet() const { return m_feedbackURLHasBeenSet; }
144 template <typename FeedbackURLT = Aws::String>
145 void SetFeedbackURL(FeedbackURLT&& value) {
146 m_feedbackURLHasBeenSet = true;
147 m_feedbackURL = std::forward<FeedbackURLT>(value);
148 }
149 template <typename FeedbackURLT = Aws::String>
150 CreateStackRequest& WithFeedbackURL(FeedbackURLT&& value) {
151 SetFeedbackURL(std::forward<FeedbackURLT>(value));
152 return *this;
153 }
155
157
161 inline const Aws::Vector<UserSetting>& GetUserSettings() const { return m_userSettings; }
162 inline bool UserSettingsHasBeenSet() const { return m_userSettingsHasBeenSet; }
163 template <typename UserSettingsT = Aws::Vector<UserSetting>>
164 void SetUserSettings(UserSettingsT&& value) {
165 m_userSettingsHasBeenSet = true;
166 m_userSettings = std::forward<UserSettingsT>(value);
167 }
168 template <typename UserSettingsT = Aws::Vector<UserSetting>>
169 CreateStackRequest& WithUserSettings(UserSettingsT&& value) {
170 SetUserSettings(std::forward<UserSettingsT>(value));
171 return *this;
172 }
173 template <typename UserSettingsT = UserSetting>
174 CreateStackRequest& AddUserSettings(UserSettingsT&& value) {
175 m_userSettingsHasBeenSet = true;
176 m_userSettings.emplace_back(std::forward<UserSettingsT>(value));
177 return *this;
178 }
180
182
187 inline const ApplicationSettings& GetApplicationSettings() const { return m_applicationSettings; }
188 inline bool ApplicationSettingsHasBeenSet() const { return m_applicationSettingsHasBeenSet; }
189 template <typename ApplicationSettingsT = ApplicationSettings>
190 void SetApplicationSettings(ApplicationSettingsT&& value) {
191 m_applicationSettingsHasBeenSet = true;
192 m_applicationSettings = std::forward<ApplicationSettingsT>(value);
193 }
194 template <typename ApplicationSettingsT = ApplicationSettings>
195 CreateStackRequest& WithApplicationSettings(ApplicationSettingsT&& value) {
196 SetApplicationSettings(std::forward<ApplicationSettingsT>(value));
197 return *this;
198 }
200
202
213 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
214 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
215 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
216 void SetTags(TagsT&& value) {
217 m_tagsHasBeenSet = true;
218 m_tags = std::forward<TagsT>(value);
219 }
220 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
221 CreateStackRequest& WithTags(TagsT&& value) {
222 SetTags(std::forward<TagsT>(value));
223 return *this;
224 }
225 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
226 CreateStackRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
227 m_tagsHasBeenSet = true;
228 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
229 return *this;
230 }
232
234
239 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
240 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
241 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
242 void SetAccessEndpoints(AccessEndpointsT&& value) {
243 m_accessEndpointsHasBeenSet = true;
244 m_accessEndpoints = std::forward<AccessEndpointsT>(value);
245 }
246 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
247 CreateStackRequest& WithAccessEndpoints(AccessEndpointsT&& value) {
248 SetAccessEndpoints(std::forward<AccessEndpointsT>(value));
249 return *this;
250 }
251 template <typename AccessEndpointsT = AccessEndpoint>
252 CreateStackRequest& AddAccessEndpoints(AccessEndpointsT&& value) {
253 m_accessEndpointsHasBeenSet = true;
254 m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value));
255 return *this;
256 }
258
260
265 inline const Aws::Vector<Aws::String>& GetEmbedHostDomains() const { return m_embedHostDomains; }
266 inline bool EmbedHostDomainsHasBeenSet() const { return m_embedHostDomainsHasBeenSet; }
267 template <typename EmbedHostDomainsT = Aws::Vector<Aws::String>>
268 void SetEmbedHostDomains(EmbedHostDomainsT&& value) {
269 m_embedHostDomainsHasBeenSet = true;
270 m_embedHostDomains = std::forward<EmbedHostDomainsT>(value);
271 }
272 template <typename EmbedHostDomainsT = Aws::Vector<Aws::String>>
273 CreateStackRequest& WithEmbedHostDomains(EmbedHostDomainsT&& value) {
274 SetEmbedHostDomains(std::forward<EmbedHostDomainsT>(value));
275 return *this;
276 }
277 template <typename EmbedHostDomainsT = Aws::String>
278 CreateStackRequest& AddEmbedHostDomains(EmbedHostDomainsT&& value) {
279 m_embedHostDomainsHasBeenSet = true;
280 m_embedHostDomains.emplace_back(std::forward<EmbedHostDomainsT>(value));
281 return *this;
282 }
284
286
290 inline const StreamingExperienceSettings& GetStreamingExperienceSettings() const { return m_streamingExperienceSettings; }
291 inline bool StreamingExperienceSettingsHasBeenSet() const { return m_streamingExperienceSettingsHasBeenSet; }
292 template <typename StreamingExperienceSettingsT = StreamingExperienceSettings>
293 void SetStreamingExperienceSettings(StreamingExperienceSettingsT&& value) {
294 m_streamingExperienceSettingsHasBeenSet = true;
295 m_streamingExperienceSettings = std::forward<StreamingExperienceSettingsT>(value);
296 }
297 template <typename StreamingExperienceSettingsT = StreamingExperienceSettings>
298 CreateStackRequest& WithStreamingExperienceSettings(StreamingExperienceSettingsT&& value) {
299 SetStreamingExperienceSettings(std::forward<StreamingExperienceSettingsT>(value));
300 return *this;
301 }
303
305
306 inline const ContentRedirection& GetContentRedirection() const { return m_contentRedirection; }
307 inline bool ContentRedirectionHasBeenSet() const { return m_contentRedirectionHasBeenSet; }
308 template <typename ContentRedirectionT = ContentRedirection>
309 void SetContentRedirection(ContentRedirectionT&& value) {
310 m_contentRedirectionHasBeenSet = true;
311 m_contentRedirection = std::forward<ContentRedirectionT>(value);
312 }
313 template <typename ContentRedirectionT = ContentRedirection>
314 CreateStackRequest& WithContentRedirection(ContentRedirectionT&& value) {
315 SetContentRedirection(std::forward<ContentRedirectionT>(value));
316 return *this;
317 }
319 private:
320 Aws::String m_name;
321
322 Aws::String m_description;
323
324 Aws::String m_displayName;
325
326 Aws::Vector<StorageConnector> m_storageConnectors;
327
328 Aws::String m_redirectURL;
329
330 Aws::String m_feedbackURL;
331
332 Aws::Vector<UserSetting> m_userSettings;
333
334 ApplicationSettings m_applicationSettings;
335
337
338 Aws::Vector<AccessEndpoint> m_accessEndpoints;
339
340 Aws::Vector<Aws::String> m_embedHostDomains;
341
342 StreamingExperienceSettings m_streamingExperienceSettings;
343
344 ContentRedirection m_contentRedirection;
345 bool m_nameHasBeenSet = false;
346 bool m_descriptionHasBeenSet = false;
347 bool m_displayNameHasBeenSet = false;
348 bool m_storageConnectorsHasBeenSet = false;
349 bool m_redirectURLHasBeenSet = false;
350 bool m_feedbackURLHasBeenSet = false;
351 bool m_userSettingsHasBeenSet = false;
352 bool m_applicationSettingsHasBeenSet = false;
353 bool m_tagsHasBeenSet = false;
354 bool m_accessEndpointsHasBeenSet = false;
355 bool m_embedHostDomainsHasBeenSet = false;
356 bool m_streamingExperienceSettingsHasBeenSet = false;
357 bool m_contentRedirectionHasBeenSet = false;
358};
359
360} // namespace Model
361} // namespace AppStream
362} // 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
CreateStackRequest & WithDescription(DescriptionT &&value)
CreateStackRequest & WithEmbedHostDomains(EmbedHostDomainsT &&value)
AWS_APPSTREAM_API Aws::String SerializePayload() const override
const ApplicationSettings & GetApplicationSettings() const
void SetContentRedirection(ContentRedirectionT &&value)
CreateStackRequest & WithFeedbackURL(FeedbackURLT &&value)
CreateStackRequest & WithStorageConnectors(StorageConnectorsT &&value)
const ContentRedirection & GetContentRedirection() const
CreateStackRequest & WithTags(TagsT &&value)
void SetEmbedHostDomains(EmbedHostDomainsT &&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