/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The ResourceChange structure describes the resource and the
* action that CloudFormation will perform on it if you execute this change
* set.See Also:
AWS
* API Reference
The action that CloudFormation takes on the resource, such as
* Add (adds a new resource), Modify (changes a
* resource), Remove (deletes a resource), Import
* (imports a resource), or Dynamic (exact action for the resource
* can't be determined).
The action that CloudFormation takes on the resource, such as
* Add (adds a new resource), Modify (changes a
* resource), Remove (deletes a resource), Import
* (imports a resource), or Dynamic (exact action for the resource
* can't be determined).
The action that CloudFormation takes on the resource, such as
* Add (adds a new resource), Modify (changes a
* resource), Remove (deletes a resource), Import
* (imports a resource), or Dynamic (exact action for the resource
* can't be determined).
The action that CloudFormation takes on the resource, such as
* Add (adds a new resource), Modify (changes a
* resource), Remove (deletes a resource), Import
* (imports a resource), or Dynamic (exact action for the resource
* can't be determined).
The action that CloudFormation takes on the resource, such as
* Add (adds a new resource), Modify (changes a
* resource), Remove (deletes a resource), Import
* (imports a resource), or Dynamic (exact action for the resource
* can't be determined).
The action that CloudFormation takes on the resource, such as
* Add (adds a new resource), Modify (changes a
* resource), Remove (deletes a resource), Import
* (imports a resource), or Dynamic (exact action for the resource
* can't be determined).
The resource's logical ID, which is defined in the stack's template.
*/ inline const Aws::String& GetLogicalResourceId() const{ return m_logicalResourceId; } /** *The resource's logical ID, which is defined in the stack's template.
*/ inline bool LogicalResourceIdHasBeenSet() const { return m_logicalResourceIdHasBeenSet; } /** *The resource's logical ID, which is defined in the stack's template.
*/ inline void SetLogicalResourceId(const Aws::String& value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId = value; } /** *The resource's logical ID, which is defined in the stack's template.
*/ inline void SetLogicalResourceId(Aws::String&& value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId = std::move(value); } /** *The resource's logical ID, which is defined in the stack's template.
*/ inline void SetLogicalResourceId(const char* value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId.assign(value); } /** *The resource's logical ID, which is defined in the stack's template.
*/ inline ResourceChange& WithLogicalResourceId(const Aws::String& value) { SetLogicalResourceId(value); return *this;} /** *The resource's logical ID, which is defined in the stack's template.
*/ inline ResourceChange& WithLogicalResourceId(Aws::String&& value) { SetLogicalResourceId(std::move(value)); return *this;} /** *The resource's logical ID, which is defined in the stack's template.
*/ inline ResourceChange& WithLogicalResourceId(const char* value) { SetLogicalResourceId(value); return *this;} /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline const Aws::String& GetPhysicalResourceId() const{ return m_physicalResourceId; } /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline bool PhysicalResourceIdHasBeenSet() const { return m_physicalResourceIdHasBeenSet; } /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline void SetPhysicalResourceId(const Aws::String& value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId = value; } /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline void SetPhysicalResourceId(Aws::String&& value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId = std::move(value); } /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline void SetPhysicalResourceId(const char* value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId.assign(value); } /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline ResourceChange& WithPhysicalResourceId(const Aws::String& value) { SetPhysicalResourceId(value); return *this;} /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline ResourceChange& WithPhysicalResourceId(Aws::String&& value) { SetPhysicalResourceId(std::move(value)); return *this;} /** *The resource's physical ID (resource name). Resources that you are adding * don't have physical IDs because they haven't been created.
*/ inline ResourceChange& WithPhysicalResourceId(const char* value) { SetPhysicalResourceId(value); return *this;} /** *The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
The type of CloudFormation resource, such as
* AWS::S3::Bucket.
For the Modify action, indicates whether CloudFormation will
* replace the resource by creating a new one and deleting the old one. This value
* depends on the value of the RequiresRecreation property in the
* ResourceTargetDefinition structure. For example, if the
* RequiresRecreation field is Always and the
* Evaluation field is Static, Replacement
* is True. If the RequiresRecreation field is
* Always and the Evaluation field is
* Dynamic, Replacement is
* Conditionally.
If you have multiple changes with different
* RequiresRecreation values, the Replacement value
* depends on the change with the most impact. A RequiresRecreation
* value of Always has the most impact, followed by
* Conditionally, and then Never.
For the Modify action, indicates whether CloudFormation will
* replace the resource by creating a new one and deleting the old one. This value
* depends on the value of the RequiresRecreation property in the
* ResourceTargetDefinition structure. For example, if the
* RequiresRecreation field is Always and the
* Evaluation field is Static, Replacement
* is True. If the RequiresRecreation field is
* Always and the Evaluation field is
* Dynamic, Replacement is
* Conditionally.
If you have multiple changes with different
* RequiresRecreation values, the Replacement value
* depends on the change with the most impact. A RequiresRecreation
* value of Always has the most impact, followed by
* Conditionally, and then Never.
For the Modify action, indicates whether CloudFormation will
* replace the resource by creating a new one and deleting the old one. This value
* depends on the value of the RequiresRecreation property in the
* ResourceTargetDefinition structure. For example, if the
* RequiresRecreation field is Always and the
* Evaluation field is Static, Replacement
* is True. If the RequiresRecreation field is
* Always and the Evaluation field is
* Dynamic, Replacement is
* Conditionally.
If you have multiple changes with different
* RequiresRecreation values, the Replacement value
* depends on the change with the most impact. A RequiresRecreation
* value of Always has the most impact, followed by
* Conditionally, and then Never.
For the Modify action, indicates whether CloudFormation will
* replace the resource by creating a new one and deleting the old one. This value
* depends on the value of the RequiresRecreation property in the
* ResourceTargetDefinition structure. For example, if the
* RequiresRecreation field is Always and the
* Evaluation field is Static, Replacement
* is True. If the RequiresRecreation field is
* Always and the Evaluation field is
* Dynamic, Replacement is
* Conditionally.
If you have multiple changes with different
* RequiresRecreation values, the Replacement value
* depends on the change with the most impact. A RequiresRecreation
* value of Always has the most impact, followed by
* Conditionally, and then Never.
For the Modify action, indicates whether CloudFormation will
* replace the resource by creating a new one and deleting the old one. This value
* depends on the value of the RequiresRecreation property in the
* ResourceTargetDefinition structure. For example, if the
* RequiresRecreation field is Always and the
* Evaluation field is Static, Replacement
* is True. If the RequiresRecreation field is
* Always and the Evaluation field is
* Dynamic, Replacement is
* Conditionally.
If you have multiple changes with different
* RequiresRecreation values, the Replacement value
* depends on the change with the most impact. A RequiresRecreation
* value of Always has the most impact, followed by
* Conditionally, and then Never.
For the Modify action, indicates whether CloudFormation will
* replace the resource by creating a new one and deleting the old one. This value
* depends on the value of the RequiresRecreation property in the
* ResourceTargetDefinition structure. For example, if the
* RequiresRecreation field is Always and the
* Evaluation field is Static, Replacement
* is True. If the RequiresRecreation field is
* Always and the Evaluation field is
* Dynamic, Replacement is
* Conditionally.
If you have multiple changes with different
* RequiresRecreation values, the Replacement value
* depends on the change with the most impact. A RequiresRecreation
* value of Always has the most impact, followed by
* Conditionally, and then Never.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, indicates which resource attribute is
* triggering this update, such as a change in the resource attribute's
* Metadata, Properties, or Tags.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
For the Modify action, a list of
* ResourceChangeDetail structures that describes the changes that
* CloudFormation will make to the resource.
The change set ID of the nested change set.
*/ inline const Aws::String& GetChangeSetId() const{ return m_changeSetId; } /** *The change set ID of the nested change set.
*/ inline bool ChangeSetIdHasBeenSet() const { return m_changeSetIdHasBeenSet; } /** *The change set ID of the nested change set.
*/ inline void SetChangeSetId(const Aws::String& value) { m_changeSetIdHasBeenSet = true; m_changeSetId = value; } /** *The change set ID of the nested change set.
*/ inline void SetChangeSetId(Aws::String&& value) { m_changeSetIdHasBeenSet = true; m_changeSetId = std::move(value); } /** *The change set ID of the nested change set.
*/ inline void SetChangeSetId(const char* value) { m_changeSetIdHasBeenSet = true; m_changeSetId.assign(value); } /** *The change set ID of the nested change set.
*/ inline ResourceChange& WithChangeSetId(const Aws::String& value) { SetChangeSetId(value); return *this;} /** *The change set ID of the nested change set.
*/ inline ResourceChange& WithChangeSetId(Aws::String&& value) { SetChangeSetId(std::move(value)); return *this;} /** *The change set ID of the nested change set.
*/ inline ResourceChange& WithChangeSetId(const char* value) { SetChangeSetId(value); return *this;} /** *Contains information about the module from which the resource was created, if * the resource was created from a module included in the stack template.
*/ inline const ModuleInfo& GetModuleInfo() const{ return m_moduleInfo; } /** *Contains information about the module from which the resource was created, if * the resource was created from a module included in the stack template.
*/ inline bool ModuleInfoHasBeenSet() const { return m_moduleInfoHasBeenSet; } /** *Contains information about the module from which the resource was created, if * the resource was created from a module included in the stack template.
*/ inline void SetModuleInfo(const ModuleInfo& value) { m_moduleInfoHasBeenSet = true; m_moduleInfo = value; } /** *Contains information about the module from which the resource was created, if * the resource was created from a module included in the stack template.
*/ inline void SetModuleInfo(ModuleInfo&& value) { m_moduleInfoHasBeenSet = true; m_moduleInfo = std::move(value); } /** *Contains information about the module from which the resource was created, if * the resource was created from a module included in the stack template.
*/ inline ResourceChange& WithModuleInfo(const ModuleInfo& value) { SetModuleInfo(value); return *this;} /** *Contains information about the module from which the resource was created, if * the resource was created from a module included in the stack template.
*/ inline ResourceChange& WithModuleInfo(ModuleInfo&& value) { SetModuleInfo(std::move(value)); return *this;} private: ChangeAction m_action; bool m_actionHasBeenSet = false; Aws::String m_logicalResourceId; bool m_logicalResourceIdHasBeenSet = false; Aws::String m_physicalResourceId; bool m_physicalResourceIdHasBeenSet = false; Aws::String m_resourceType; bool m_resourceTypeHasBeenSet = false; Replacement m_replacement; bool m_replacementHasBeenSet = false; Aws::Vector