AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateStackRequest.h
1
6#pragma once
7#include <aws/cloudformation/CloudFormation_EXPORTS.h>
8#include <aws/cloudformation/CloudFormationRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/cloudformation/model/RollbackConfiguration.h>
12#include <aws/cloudformation/model/OnFailure.h>
13#include <aws/cloudformation/model/Parameter.h>
14#include <aws/cloudformation/model/Capability.h>
15#include <aws/cloudformation/model/Tag.h>
16#include <utility>
17
18namespace Aws
19{
20namespace CloudFormation
21{
22namespace Model
23{
24
31 {
32 public:
33 AWS_CLOUDFORMATION_API CreateStackRequest();
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateStack"; }
40
41 AWS_CLOUDFORMATION_API Aws::String SerializePayload() const override;
42
43 protected:
44 AWS_CLOUDFORMATION_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
45
46 public:
47
49
56 inline const Aws::String& GetStackName() const{ return m_stackName; }
57 inline bool StackNameHasBeenSet() const { return m_stackNameHasBeenSet; }
58 inline void SetStackName(const Aws::String& value) { m_stackNameHasBeenSet = true; m_stackName = value; }
59 inline void SetStackName(Aws::String&& value) { m_stackNameHasBeenSet = true; m_stackName = std::move(value); }
60 inline void SetStackName(const char* value) { m_stackNameHasBeenSet = true; m_stackName.assign(value); }
61 inline CreateStackRequest& WithStackName(const Aws::String& value) { SetStackName(value); return *this;}
62 inline CreateStackRequest& WithStackName(Aws::String&& value) { SetStackName(std::move(value)); return *this;}
63 inline CreateStackRequest& WithStackName(const char* value) { SetStackName(value); return *this;}
65
67
73 inline const Aws::String& GetTemplateBody() const{ return m_templateBody; }
74 inline bool TemplateBodyHasBeenSet() const { return m_templateBodyHasBeenSet; }
75 inline void SetTemplateBody(const Aws::String& value) { m_templateBodyHasBeenSet = true; m_templateBody = value; }
76 inline void SetTemplateBody(Aws::String&& value) { m_templateBodyHasBeenSet = true; m_templateBody = std::move(value); }
77 inline void SetTemplateBody(const char* value) { m_templateBodyHasBeenSet = true; m_templateBody.assign(value); }
78 inline CreateStackRequest& WithTemplateBody(const Aws::String& value) { SetTemplateBody(value); return *this;}
79 inline CreateStackRequest& WithTemplateBody(Aws::String&& value) { SetTemplateBody(std::move(value)); return *this;}
80 inline CreateStackRequest& WithTemplateBody(const char* value) { SetTemplateBody(value); return *this;}
82
84
92 inline const Aws::String& GetTemplateURL() const{ return m_templateURL; }
93 inline bool TemplateURLHasBeenSet() const { return m_templateURLHasBeenSet; }
94 inline void SetTemplateURL(const Aws::String& value) { m_templateURLHasBeenSet = true; m_templateURL = value; }
95 inline void SetTemplateURL(Aws::String&& value) { m_templateURLHasBeenSet = true; m_templateURL = std::move(value); }
96 inline void SetTemplateURL(const char* value) { m_templateURLHasBeenSet = true; m_templateURL.assign(value); }
97 inline CreateStackRequest& WithTemplateURL(const Aws::String& value) { SetTemplateURL(value); return *this;}
98 inline CreateStackRequest& WithTemplateURL(Aws::String&& value) { SetTemplateURL(std::move(value)); return *this;}
99 inline CreateStackRequest& WithTemplateURL(const char* value) { SetTemplateURL(value); return *this;}
101
103
109 inline const Aws::Vector<Parameter>& GetParameters() const{ return m_parameters; }
110 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
111 inline void SetParameters(const Aws::Vector<Parameter>& value) { m_parametersHasBeenSet = true; m_parameters = value; }
112 inline void SetParameters(Aws::Vector<Parameter>&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); }
113 inline CreateStackRequest& WithParameters(const Aws::Vector<Parameter>& value) { SetParameters(value); return *this;}
114 inline CreateStackRequest& WithParameters(Aws::Vector<Parameter>&& value) { SetParameters(std::move(value)); return *this;}
115 inline CreateStackRequest& AddParameters(const Parameter& value) { m_parametersHasBeenSet = true; m_parameters.push_back(value); return *this; }
116 inline CreateStackRequest& AddParameters(Parameter&& value) { m_parametersHasBeenSet = true; m_parameters.push_back(std::move(value)); return *this; }
118
120
125 inline bool GetDisableRollback() const{ return m_disableRollback; }
126 inline bool DisableRollbackHasBeenSet() const { return m_disableRollbackHasBeenSet; }
127 inline void SetDisableRollback(bool value) { m_disableRollbackHasBeenSet = true; m_disableRollback = value; }
128 inline CreateStackRequest& WithDisableRollback(bool value) { SetDisableRollback(value); return *this;}
130
132
136 inline const RollbackConfiguration& GetRollbackConfiguration() const{ return m_rollbackConfiguration; }
137 inline bool RollbackConfigurationHasBeenSet() const { return m_rollbackConfigurationHasBeenSet; }
138 inline void SetRollbackConfiguration(const RollbackConfiguration& value) { m_rollbackConfigurationHasBeenSet = true; m_rollbackConfiguration = value; }
139 inline void SetRollbackConfiguration(RollbackConfiguration&& value) { m_rollbackConfigurationHasBeenSet = true; m_rollbackConfiguration = std::move(value); }
143
145
150 inline int GetTimeoutInMinutes() const{ return m_timeoutInMinutes; }
151 inline bool TimeoutInMinutesHasBeenSet() const { return m_timeoutInMinutesHasBeenSet; }
152 inline void SetTimeoutInMinutes(int value) { m_timeoutInMinutesHasBeenSet = true; m_timeoutInMinutes = value; }
153 inline CreateStackRequest& WithTimeoutInMinutes(int value) { SetTimeoutInMinutes(value); return *this;}
155
157
162 inline const Aws::Vector<Aws::String>& GetNotificationARNs() const{ return m_notificationARNs; }
163 inline bool NotificationARNsHasBeenSet() const { return m_notificationARNsHasBeenSet; }
164 inline void SetNotificationARNs(const Aws::Vector<Aws::String>& value) { m_notificationARNsHasBeenSet = true; m_notificationARNs = value; }
165 inline void SetNotificationARNs(Aws::Vector<Aws::String>&& value) { m_notificationARNsHasBeenSet = true; m_notificationARNs = std::move(value); }
167 inline CreateStackRequest& WithNotificationARNs(Aws::Vector<Aws::String>&& value) { SetNotificationARNs(std::move(value)); return *this;}
168 inline CreateStackRequest& AddNotificationARNs(const Aws::String& value) { m_notificationARNsHasBeenSet = true; m_notificationARNs.push_back(value); return *this; }
169 inline CreateStackRequest& AddNotificationARNs(Aws::String&& value) { m_notificationARNsHasBeenSet = true; m_notificationARNs.push_back(std::move(value)); return *this; }
170 inline CreateStackRequest& AddNotificationARNs(const char* value) { m_notificationARNsHasBeenSet = true; m_notificationARNs.push_back(value); return *this; }
172
174
234 inline const Aws::Vector<Capability>& GetCapabilities() const{ return m_capabilities; }
235 inline bool CapabilitiesHasBeenSet() const { return m_capabilitiesHasBeenSet; }
236 inline void SetCapabilities(const Aws::Vector<Capability>& value) { m_capabilitiesHasBeenSet = true; m_capabilities = value; }
237 inline void SetCapabilities(Aws::Vector<Capability>&& value) { m_capabilitiesHasBeenSet = true; m_capabilities = std::move(value); }
238 inline CreateStackRequest& WithCapabilities(const Aws::Vector<Capability>& value) { SetCapabilities(value); return *this;}
239 inline CreateStackRequest& WithCapabilities(Aws::Vector<Capability>&& value) { SetCapabilities(std::move(value)); return *this;}
240 inline CreateStackRequest& AddCapabilities(const Capability& value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(value); return *this; }
241 inline CreateStackRequest& AddCapabilities(Capability&& value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(std::move(value)); return *this; }
243
245
265 inline const Aws::Vector<Aws::String>& GetResourceTypes() const{ return m_resourceTypes; }
266 inline bool ResourceTypesHasBeenSet() const { return m_resourceTypesHasBeenSet; }
267 inline void SetResourceTypes(const Aws::Vector<Aws::String>& value) { m_resourceTypesHasBeenSet = true; m_resourceTypes = value; }
268 inline void SetResourceTypes(Aws::Vector<Aws::String>&& value) { m_resourceTypesHasBeenSet = true; m_resourceTypes = std::move(value); }
270 inline CreateStackRequest& WithResourceTypes(Aws::Vector<Aws::String>&& value) { SetResourceTypes(std::move(value)); return *this;}
271 inline CreateStackRequest& AddResourceTypes(const Aws::String& value) { m_resourceTypesHasBeenSet = true; m_resourceTypes.push_back(value); return *this; }
272 inline CreateStackRequest& AddResourceTypes(Aws::String&& value) { m_resourceTypesHasBeenSet = true; m_resourceTypes.push_back(std::move(value)); return *this; }
273 inline CreateStackRequest& AddResourceTypes(const char* value) { m_resourceTypesHasBeenSet = true; m_resourceTypes.push_back(value); return *this; }
275
277
288 inline const Aws::String& GetRoleARN() const{ return m_roleARN; }
289 inline bool RoleARNHasBeenSet() const { return m_roleARNHasBeenSet; }
290 inline void SetRoleARN(const Aws::String& value) { m_roleARNHasBeenSet = true; m_roleARN = value; }
291 inline void SetRoleARN(Aws::String&& value) { m_roleARNHasBeenSet = true; m_roleARN = std::move(value); }
292 inline void SetRoleARN(const char* value) { m_roleARNHasBeenSet = true; m_roleARN.assign(value); }
293 inline CreateStackRequest& WithRoleARN(const Aws::String& value) { SetRoleARN(value); return *this;}
294 inline CreateStackRequest& WithRoleARN(Aws::String&& value) { SetRoleARN(std::move(value)); return *this;}
295 inline CreateStackRequest& WithRoleARN(const char* value) { SetRoleARN(value); return *this;}
297
299
305 inline const OnFailure& GetOnFailure() const{ return m_onFailure; }
306 inline bool OnFailureHasBeenSet() const { return m_onFailureHasBeenSet; }
307 inline void SetOnFailure(const OnFailure& value) { m_onFailureHasBeenSet = true; m_onFailure = value; }
308 inline void SetOnFailure(OnFailure&& value) { m_onFailureHasBeenSet = true; m_onFailure = std::move(value); }
309 inline CreateStackRequest& WithOnFailure(const OnFailure& value) { SetOnFailure(value); return *this;}
310 inline CreateStackRequest& WithOnFailure(OnFailure&& value) { SetOnFailure(std::move(value)); return *this;}
312
314
321 inline const Aws::String& GetStackPolicyBody() const{ return m_stackPolicyBody; }
322 inline bool StackPolicyBodyHasBeenSet() const { return m_stackPolicyBodyHasBeenSet; }
323 inline void SetStackPolicyBody(const Aws::String& value) { m_stackPolicyBodyHasBeenSet = true; m_stackPolicyBody = value; }
324 inline void SetStackPolicyBody(Aws::String&& value) { m_stackPolicyBodyHasBeenSet = true; m_stackPolicyBody = std::move(value); }
325 inline void SetStackPolicyBody(const char* value) { m_stackPolicyBodyHasBeenSet = true; m_stackPolicyBody.assign(value); }
326 inline CreateStackRequest& WithStackPolicyBody(const Aws::String& value) { SetStackPolicyBody(value); return *this;}
327 inline CreateStackRequest& WithStackPolicyBody(Aws::String&& value) { SetStackPolicyBody(std::move(value)); return *this;}
328 inline CreateStackRequest& WithStackPolicyBody(const char* value) { SetStackPolicyBody(value); return *this;}
330
332
339 inline const Aws::String& GetStackPolicyURL() const{ return m_stackPolicyURL; }
340 inline bool StackPolicyURLHasBeenSet() const { return m_stackPolicyURLHasBeenSet; }
341 inline void SetStackPolicyURL(const Aws::String& value) { m_stackPolicyURLHasBeenSet = true; m_stackPolicyURL = value; }
342 inline void SetStackPolicyURL(Aws::String&& value) { m_stackPolicyURLHasBeenSet = true; m_stackPolicyURL = std::move(value); }
343 inline void SetStackPolicyURL(const char* value) { m_stackPolicyURLHasBeenSet = true; m_stackPolicyURL.assign(value); }
344 inline CreateStackRequest& WithStackPolicyURL(const Aws::String& value) { SetStackPolicyURL(value); return *this;}
345 inline CreateStackRequest& WithStackPolicyURL(Aws::String&& value) { SetStackPolicyURL(std::move(value)); return *this;}
346 inline CreateStackRequest& WithStackPolicyURL(const char* value) { SetStackPolicyURL(value); return *this;}
348
350
355 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
356 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
357 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
358 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
359 inline CreateStackRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
360 inline CreateStackRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
361 inline CreateStackRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
362 inline CreateStackRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
364
366
384 inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; }
385 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
386 inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; }
387 inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); }
388 inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); }
389 inline CreateStackRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;}
390 inline CreateStackRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;}
391 inline CreateStackRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;}
393
395
407 inline bool GetEnableTerminationProtection() const{ return m_enableTerminationProtection; }
408 inline bool EnableTerminationProtectionHasBeenSet() const { return m_enableTerminationProtectionHasBeenSet; }
409 inline void SetEnableTerminationProtection(bool value) { m_enableTerminationProtectionHasBeenSet = true; m_enableTerminationProtection = value; }
412
414
419 inline bool GetRetainExceptOnCreate() const{ return m_retainExceptOnCreate; }
420 inline bool RetainExceptOnCreateHasBeenSet() const { return m_retainExceptOnCreateHasBeenSet; }
421 inline void SetRetainExceptOnCreate(bool value) { m_retainExceptOnCreateHasBeenSet = true; m_retainExceptOnCreate = value; }
422 inline CreateStackRequest& WithRetainExceptOnCreate(bool value) { SetRetainExceptOnCreate(value); return *this;}
424 private:
425
426 Aws::String m_stackName;
427 bool m_stackNameHasBeenSet = false;
428
429 Aws::String m_templateBody;
430 bool m_templateBodyHasBeenSet = false;
431
432 Aws::String m_templateURL;
433 bool m_templateURLHasBeenSet = false;
434
435 Aws::Vector<Parameter> m_parameters;
436 bool m_parametersHasBeenSet = false;
437
438 bool m_disableRollback;
439 bool m_disableRollbackHasBeenSet = false;
440
441 RollbackConfiguration m_rollbackConfiguration;
442 bool m_rollbackConfigurationHasBeenSet = false;
443
444 int m_timeoutInMinutes;
445 bool m_timeoutInMinutesHasBeenSet = false;
446
447 Aws::Vector<Aws::String> m_notificationARNs;
448 bool m_notificationARNsHasBeenSet = false;
449
450 Aws::Vector<Capability> m_capabilities;
451 bool m_capabilitiesHasBeenSet = false;
452
453 Aws::Vector<Aws::String> m_resourceTypes;
454 bool m_resourceTypesHasBeenSet = false;
455
456 Aws::String m_roleARN;
457 bool m_roleARNHasBeenSet = false;
458
459 OnFailure m_onFailure;
460 bool m_onFailureHasBeenSet = false;
461
462 Aws::String m_stackPolicyBody;
463 bool m_stackPolicyBodyHasBeenSet = false;
464
465 Aws::String m_stackPolicyURL;
466 bool m_stackPolicyURLHasBeenSet = false;
467
468 Aws::Vector<Tag> m_tags;
469 bool m_tagsHasBeenSet = false;
470
471 Aws::String m_clientRequestToken;
472 bool m_clientRequestTokenHasBeenSet = false;
473
474 bool m_enableTerminationProtection;
475 bool m_enableTerminationProtectionHasBeenSet = false;
476
477 bool m_retainExceptOnCreate;
478 bool m_retainExceptOnCreateHasBeenSet = false;
479 };
480
481} // namespace Model
482} // namespace CloudFormation
483} // namespace Aws
CreateStackRequest & WithRollbackConfiguration(RollbackConfiguration &&value)
void SetNotificationARNs(Aws::Vector< Aws::String > &&value)
virtual const char * GetServiceRequestName() const override
CreateStackRequest & WithStackPolicyBody(const Aws::String &value)
CreateStackRequest & WithRoleARN(const Aws::String &value)
const RollbackConfiguration & GetRollbackConfiguration() const
void SetResourceTypes(Aws::Vector< Aws::String > &&value)
CreateStackRequest & WithStackPolicyBody(Aws::String &&value)
CreateStackRequest & WithTemplateBody(const Aws::String &value)
CreateStackRequest & WithTemplateURL(const Aws::String &value)
CreateStackRequest & WithTimeoutInMinutes(int value)
void SetParameters(Aws::Vector< Parameter > &&value)
AWS_CLOUDFORMATION_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
void SetClientRequestToken(const Aws::String &value)
CreateStackRequest & WithTemplateBody(Aws::String &&value)
CreateStackRequest & WithParameters(Aws::Vector< Parameter > &&value)
CreateStackRequest & AddResourceTypes(Aws::String &&value)
CreateStackRequest & WithRetainExceptOnCreate(bool value)
CreateStackRequest & WithTemplateURL(Aws::String &&value)
void SetNotificationARNs(const Aws::Vector< Aws::String > &value)
CreateStackRequest & WithStackPolicyBody(const char *value)
CreateStackRequest & WithNotificationARNs(const Aws::Vector< Aws::String > &value)
void SetRollbackConfiguration(const RollbackConfiguration &value)
CreateStackRequest & AddNotificationARNs(const char *value)
void SetCapabilities(Aws::Vector< Capability > &&value)
CreateStackRequest & AddParameters(const Parameter &value)
CreateStackRequest & WithStackName(const char *value)
void SetTags(const Aws::Vector< Tag > &value)
CreateStackRequest & AddResourceTypes(const Aws::String &value)
CreateStackRequest & WithTags(const Aws::Vector< Tag > &value)
CreateStackRequest & AddParameters(Parameter &&value)
const Aws::Vector< Parameter > & GetParameters() const
CreateStackRequest & WithParameters(const Aws::Vector< Parameter > &value)
void SetResourceTypes(const Aws::Vector< Aws::String > &value)
CreateStackRequest & AddCapabilities(const Capability &value)
CreateStackRequest & WithStackPolicyURL(const char *value)
CreateStackRequest & WithResourceTypes(const Aws::Vector< Aws::String > &value)
CreateStackRequest & WithClientRequestToken(const Aws::String &value)
CreateStackRequest & WithTags(Aws::Vector< Tag > &&value)
const Aws::Vector< Capability > & GetCapabilities() const
CreateStackRequest & WithNotificationARNs(Aws::Vector< Aws::String > &&value)
const Aws::Vector< Tag > & GetTags() const
CreateStackRequest & WithTemplateBody(const char *value)
CreateStackRequest & WithDisableRollback(bool value)
CreateStackRequest & WithClientRequestToken(Aws::String &&value)
CreateStackRequest & WithEnableTerminationProtection(bool value)
CreateStackRequest & WithClientRequestToken(const char *value)
CreateStackRequest & WithCapabilities(const Aws::Vector< Capability > &value)
void SetCapabilities(const Aws::Vector< Capability > &value)
CreateStackRequest & WithStackPolicyURL(Aws::String &&value)
CreateStackRequest & WithStackPolicyURL(const Aws::String &value)
void SetStackPolicyBody(const Aws::String &value)
const Aws::Vector< Aws::String > & GetNotificationARNs() const
CreateStackRequest & WithRoleARN(Aws::String &&value)
CreateStackRequest & AddCapabilities(Capability &&value)
CreateStackRequest & WithResourceTypes(Aws::Vector< Aws::String > &&value)
CreateStackRequest & AddResourceTypes(const char *value)
CreateStackRequest & WithRollbackConfiguration(const RollbackConfiguration &value)
void SetParameters(const Aws::Vector< Parameter > &value)
CreateStackRequest & WithRoleARN(const char *value)
CreateStackRequest & WithOnFailure(OnFailure &&value)
CreateStackRequest & WithStackName(Aws::String &&value)
const Aws::Vector< Aws::String > & GetResourceTypes() const
CreateStackRequest & WithCapabilities(Aws::Vector< Capability > &&value)
CreateStackRequest & WithOnFailure(const OnFailure &value)
void SetRollbackConfiguration(RollbackConfiguration &&value)
CreateStackRequest & WithStackName(const Aws::String &value)
AWS_CLOUDFORMATION_API Aws::String SerializePayload() const override
CreateStackRequest & AddNotificationARNs(const Aws::String &value)
CreateStackRequest & WithTemplateURL(const char *value)
CreateStackRequest & AddNotificationARNs(Aws::String &&value)
CreateStackRequest & AddTags(const Tag &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector