AWS SDK for C++

AWS SDK for C++ Version 1.11.719

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/StorageConnector.h>
12#include <aws/appstream/model/StreamingExperienceSettings.h>
13#include <aws/appstream/model/UserSetting.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17
18#include <utility>
19
20namespace Aws {
21namespace AppStream {
22namespace Model {
23
27 public:
28 AWS_APPSTREAM_API CreateStackRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateStack"; }
35
36 AWS_APPSTREAM_API Aws::String SerializePayload() const override;
37
39
41
44 inline const Aws::String& GetName() const { return m_name; }
45 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
46 template <typename NameT = Aws::String>
47 void SetName(NameT&& value) {
48 m_nameHasBeenSet = true;
49 m_name = std::forward<NameT>(value);
50 }
51 template <typename NameT = Aws::String>
52 CreateStackRequest& WithName(NameT&& value) {
53 SetName(std::forward<NameT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetDescription() const { return m_description; }
63 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
64 template <typename DescriptionT = Aws::String>
65 void SetDescription(DescriptionT&& value) {
66 m_descriptionHasBeenSet = true;
67 m_description = std::forward<DescriptionT>(value);
68 }
69 template <typename DescriptionT = Aws::String>
70 CreateStackRequest& WithDescription(DescriptionT&& value) {
71 SetDescription(std::forward<DescriptionT>(value));
72 return *this;
73 }
75
77
80 inline const Aws::String& GetDisplayName() const { return m_displayName; }
81 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
82 template <typename DisplayNameT = Aws::String>
83 void SetDisplayName(DisplayNameT&& value) {
84 m_displayNameHasBeenSet = true;
85 m_displayName = std::forward<DisplayNameT>(value);
86 }
87 template <typename DisplayNameT = Aws::String>
88 CreateStackRequest& WithDisplayName(DisplayNameT&& value) {
89 SetDisplayName(std::forward<DisplayNameT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::Vector<StorageConnector>& GetStorageConnectors() const { return m_storageConnectors; }
99 inline bool StorageConnectorsHasBeenSet() const { return m_storageConnectorsHasBeenSet; }
100 template <typename StorageConnectorsT = Aws::Vector<StorageConnector>>
101 void SetStorageConnectors(StorageConnectorsT&& value) {
102 m_storageConnectorsHasBeenSet = true;
103 m_storageConnectors = std::forward<StorageConnectorsT>(value);
104 }
105 template <typename StorageConnectorsT = Aws::Vector<StorageConnector>>
106 CreateStackRequest& WithStorageConnectors(StorageConnectorsT&& value) {
107 SetStorageConnectors(std::forward<StorageConnectorsT>(value));
108 return *this;
109 }
110 template <typename StorageConnectorsT = StorageConnector>
111 CreateStackRequest& AddStorageConnectors(StorageConnectorsT&& value) {
112 m_storageConnectorsHasBeenSet = true;
113 m_storageConnectors.emplace_back(std::forward<StorageConnectorsT>(value));
114 return *this;
115 }
117
119
122 inline const Aws::String& GetRedirectURL() const { return m_redirectURL; }
123 inline bool RedirectURLHasBeenSet() const { return m_redirectURLHasBeenSet; }
124 template <typename RedirectURLT = Aws::String>
125 void SetRedirectURL(RedirectURLT&& value) {
126 m_redirectURLHasBeenSet = true;
127 m_redirectURL = std::forward<RedirectURLT>(value);
128 }
129 template <typename RedirectURLT = Aws::String>
130 CreateStackRequest& WithRedirectURL(RedirectURLT&& value) {
131 SetRedirectURL(std::forward<RedirectURLT>(value));
132 return *this;
133 }
135
137
141 inline const Aws::String& GetFeedbackURL() const { return m_feedbackURL; }
142 inline bool FeedbackURLHasBeenSet() const { return m_feedbackURLHasBeenSet; }
143 template <typename FeedbackURLT = Aws::String>
144 void SetFeedbackURL(FeedbackURLT&& value) {
145 m_feedbackURLHasBeenSet = true;
146 m_feedbackURL = std::forward<FeedbackURLT>(value);
147 }
148 template <typename FeedbackURLT = Aws::String>
149 CreateStackRequest& WithFeedbackURL(FeedbackURLT&& value) {
150 SetFeedbackURL(std::forward<FeedbackURLT>(value));
151 return *this;
152 }
154
156
160 inline const Aws::Vector<UserSetting>& GetUserSettings() const { return m_userSettings; }
161 inline bool UserSettingsHasBeenSet() const { return m_userSettingsHasBeenSet; }
162 template <typename UserSettingsT = Aws::Vector<UserSetting>>
163 void SetUserSettings(UserSettingsT&& value) {
164 m_userSettingsHasBeenSet = true;
165 m_userSettings = std::forward<UserSettingsT>(value);
166 }
167 template <typename UserSettingsT = Aws::Vector<UserSetting>>
168 CreateStackRequest& WithUserSettings(UserSettingsT&& value) {
169 SetUserSettings(std::forward<UserSettingsT>(value));
170 return *this;
171 }
172 template <typename UserSettingsT = UserSetting>
173 CreateStackRequest& AddUserSettings(UserSettingsT&& value) {
174 m_userSettingsHasBeenSet = true;
175 m_userSettings.emplace_back(std::forward<UserSettingsT>(value));
176 return *this;
177 }
179
181
186 inline const ApplicationSettings& GetApplicationSettings() const { return m_applicationSettings; }
187 inline bool ApplicationSettingsHasBeenSet() const { return m_applicationSettingsHasBeenSet; }
188 template <typename ApplicationSettingsT = ApplicationSettings>
189 void SetApplicationSettings(ApplicationSettingsT&& value) {
190 m_applicationSettingsHasBeenSet = true;
191 m_applicationSettings = std::forward<ApplicationSettingsT>(value);
192 }
193 template <typename ApplicationSettingsT = ApplicationSettings>
194 CreateStackRequest& WithApplicationSettings(ApplicationSettingsT&& value) {
195 SetApplicationSettings(std::forward<ApplicationSettingsT>(value));
196 return *this;
197 }
199
201
212 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
213 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
214 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
215 void SetTags(TagsT&& value) {
216 m_tagsHasBeenSet = true;
217 m_tags = std::forward<TagsT>(value);
218 }
219 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
220 CreateStackRequest& WithTags(TagsT&& value) {
221 SetTags(std::forward<TagsT>(value));
222 return *this;
223 }
224 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
225 CreateStackRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
226 m_tagsHasBeenSet = true;
227 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
228 return *this;
229 }
231
233
238 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
239 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
240 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
241 void SetAccessEndpoints(AccessEndpointsT&& value) {
242 m_accessEndpointsHasBeenSet = true;
243 m_accessEndpoints = std::forward<AccessEndpointsT>(value);
244 }
245 template <typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
246 CreateStackRequest& WithAccessEndpoints(AccessEndpointsT&& value) {
247 SetAccessEndpoints(std::forward<AccessEndpointsT>(value));
248 return *this;
249 }
250 template <typename AccessEndpointsT = AccessEndpoint>
251 CreateStackRequest& AddAccessEndpoints(AccessEndpointsT&& value) {
252 m_accessEndpointsHasBeenSet = true;
253 m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value));
254 return *this;
255 }
257
259
264 inline const Aws::Vector<Aws::String>& GetEmbedHostDomains() const { return m_embedHostDomains; }
265 inline bool EmbedHostDomainsHasBeenSet() const { return m_embedHostDomainsHasBeenSet; }
266 template <typename EmbedHostDomainsT = Aws::Vector<Aws::String>>
267 void SetEmbedHostDomains(EmbedHostDomainsT&& value) {
268 m_embedHostDomainsHasBeenSet = true;
269 m_embedHostDomains = std::forward<EmbedHostDomainsT>(value);
270 }
271 template <typename EmbedHostDomainsT = Aws::Vector<Aws::String>>
272 CreateStackRequest& WithEmbedHostDomains(EmbedHostDomainsT&& value) {
273 SetEmbedHostDomains(std::forward<EmbedHostDomainsT>(value));
274 return *this;
275 }
276 template <typename EmbedHostDomainsT = Aws::String>
277 CreateStackRequest& AddEmbedHostDomains(EmbedHostDomainsT&& value) {
278 m_embedHostDomainsHasBeenSet = true;
279 m_embedHostDomains.emplace_back(std::forward<EmbedHostDomainsT>(value));
280 return *this;
281 }
283
285
289 inline const StreamingExperienceSettings& GetStreamingExperienceSettings() const { return m_streamingExperienceSettings; }
290 inline bool StreamingExperienceSettingsHasBeenSet() const { return m_streamingExperienceSettingsHasBeenSet; }
291 template <typename StreamingExperienceSettingsT = StreamingExperienceSettings>
292 void SetStreamingExperienceSettings(StreamingExperienceSettingsT&& value) {
293 m_streamingExperienceSettingsHasBeenSet = true;
294 m_streamingExperienceSettings = std::forward<StreamingExperienceSettingsT>(value);
295 }
296 template <typename StreamingExperienceSettingsT = StreamingExperienceSettings>
297 CreateStackRequest& WithStreamingExperienceSettings(StreamingExperienceSettingsT&& value) {
298 SetStreamingExperienceSettings(std::forward<StreamingExperienceSettingsT>(value));
299 return *this;
300 }
302 private:
303 Aws::String m_name;
304
305 Aws::String m_description;
306
307 Aws::String m_displayName;
308
309 Aws::Vector<StorageConnector> m_storageConnectors;
310
311 Aws::String m_redirectURL;
312
313 Aws::String m_feedbackURL;
314
315 Aws::Vector<UserSetting> m_userSettings;
316
317 ApplicationSettings m_applicationSettings;
318
320
321 Aws::Vector<AccessEndpoint> m_accessEndpoints;
322
323 Aws::Vector<Aws::String> m_embedHostDomains;
324
325 StreamingExperienceSettings m_streamingExperienceSettings;
326 bool m_nameHasBeenSet = false;
327 bool m_descriptionHasBeenSet = false;
328 bool m_displayNameHasBeenSet = false;
329 bool m_storageConnectorsHasBeenSet = false;
330 bool m_redirectURLHasBeenSet = false;
331 bool m_feedbackURLHasBeenSet = false;
332 bool m_userSettingsHasBeenSet = false;
333 bool m_applicationSettingsHasBeenSet = false;
334 bool m_tagsHasBeenSet = false;
335 bool m_accessEndpointsHasBeenSet = false;
336 bool m_embedHostDomainsHasBeenSet = false;
337 bool m_streamingExperienceSettingsHasBeenSet = false;
338};
339
340} // namespace Model
341} // namespace AppStream
342} // 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
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
CreateStackRequest & WithFeedbackURL(FeedbackURLT &&value)
CreateStackRequest & WithStorageConnectors(StorageConnectorsT &&value)
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