/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Nests a stack as a resource in a top-level template. Nested stacks are stacks
* created as resources for another stack.See Also:
AWS
* API Reference
The capabilities allowed in the stack.
*/ inline const Aws::VectorThe capabilities allowed in the stack.
*/ inline bool CapabilitiesHasBeenSet() const { return m_capabilitiesHasBeenSet; } /** *The capabilities allowed in the stack.
*/ inline void SetCapabilities(const Aws::VectorThe capabilities allowed in the stack.
*/ inline void SetCapabilities(Aws::VectorThe capabilities allowed in the stack.
*/ inline AwsCloudFormationStackDetails& WithCapabilities(const Aws::VectorThe capabilities allowed in the stack.
*/ inline AwsCloudFormationStackDetails& WithCapabilities(Aws::VectorThe capabilities allowed in the stack.
*/ inline AwsCloudFormationStackDetails& AddCapabilities(const Aws::String& value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(value); return *this; } /** *The capabilities allowed in the stack.
*/ inline AwsCloudFormationStackDetails& AddCapabilities(Aws::String&& value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(std::move(value)); return *this; } /** *The capabilities allowed in the stack.
*/ inline AwsCloudFormationStackDetails& AddCapabilities(const char* value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(value); return *this; } /** *The time at which the stack was created.
*/ inline const Aws::String& GetCreationTime() const{ return m_creationTime; } /** *The time at which the stack was created.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *The time at which the stack was created.
*/ inline void SetCreationTime(const Aws::String& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *The time at which the stack was created.
*/ inline void SetCreationTime(Aws::String&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *The time at which the stack was created.
*/ inline void SetCreationTime(const char* value) { m_creationTimeHasBeenSet = true; m_creationTime.assign(value); } /** *The time at which the stack was created.
*/ inline AwsCloudFormationStackDetails& WithCreationTime(const Aws::String& value) { SetCreationTime(value); return *this;} /** *The time at which the stack was created.
*/ inline AwsCloudFormationStackDetails& WithCreationTime(Aws::String&& value) { SetCreationTime(std::move(value)); return *this;} /** *The time at which the stack was created.
*/ inline AwsCloudFormationStackDetails& WithCreationTime(const char* value) { SetCreationTime(value); return *this;} /** *A user-defined description associated with the stack.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *A user-defined description associated with the stack.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *A user-defined description associated with the stack.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *A user-defined description associated with the stack.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *A user-defined description associated with the stack.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *A user-defined description associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *A user-defined description associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *A user-defined description associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithDescription(const char* value) { SetDescription(value); return *this;} /** *Boolean to enable or disable rollback on stack creation failures.
*/ inline bool GetDisableRollback() const{ return m_disableRollback; } /** *Boolean to enable or disable rollback on stack creation failures.
*/ inline bool DisableRollbackHasBeenSet() const { return m_disableRollbackHasBeenSet; } /** *Boolean to enable or disable rollback on stack creation failures.
*/ inline void SetDisableRollback(bool value) { m_disableRollbackHasBeenSet = true; m_disableRollback = value; } /** *Boolean to enable or disable rollback on stack creation failures.
*/ inline AwsCloudFormationStackDetails& WithDisableRollback(bool value) { SetDisableRollback(value); return *this;} /** *Information about whether a stack's actual configuration differs, or has * drifted, from its expected configuration, as defined in the stack template and * any values specified as template parameters.
*/ inline const AwsCloudFormationStackDriftInformationDetails& GetDriftInformation() const{ return m_driftInformation; } /** *Information about whether a stack's actual configuration differs, or has * drifted, from its expected configuration, as defined in the stack template and * any values specified as template parameters.
*/ inline bool DriftInformationHasBeenSet() const { return m_driftInformationHasBeenSet; } /** *Information about whether a stack's actual configuration differs, or has * drifted, from its expected configuration, as defined in the stack template and * any values specified as template parameters.
*/ inline void SetDriftInformation(const AwsCloudFormationStackDriftInformationDetails& value) { m_driftInformationHasBeenSet = true; m_driftInformation = value; } /** *Information about whether a stack's actual configuration differs, or has * drifted, from its expected configuration, as defined in the stack template and * any values specified as template parameters.
*/ inline void SetDriftInformation(AwsCloudFormationStackDriftInformationDetails&& value) { m_driftInformationHasBeenSet = true; m_driftInformation = std::move(value); } /** *Information about whether a stack's actual configuration differs, or has * drifted, from its expected configuration, as defined in the stack template and * any values specified as template parameters.
*/ inline AwsCloudFormationStackDetails& WithDriftInformation(const AwsCloudFormationStackDriftInformationDetails& value) { SetDriftInformation(value); return *this;} /** *Information about whether a stack's actual configuration differs, or has * drifted, from its expected configuration, as defined in the stack template and * any values specified as template parameters.
*/ inline AwsCloudFormationStackDetails& WithDriftInformation(AwsCloudFormationStackDriftInformationDetails&& value) { SetDriftInformation(std::move(value)); return *this;} /** *Whether termination protection is enabled for the stack.
*/ inline bool GetEnableTerminationProtection() const{ return m_enableTerminationProtection; } /** *Whether termination protection is enabled for the stack.
*/ inline bool EnableTerminationProtectionHasBeenSet() const { return m_enableTerminationProtectionHasBeenSet; } /** *Whether termination protection is enabled for the stack.
*/ inline void SetEnableTerminationProtection(bool value) { m_enableTerminationProtectionHasBeenSet = true; m_enableTerminationProtection = value; } /** *Whether termination protection is enabled for the stack.
*/ inline AwsCloudFormationStackDetails& WithEnableTerminationProtection(bool value) { SetEnableTerminationProtection(value); return *this;} /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline const Aws::String& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline void SetLastUpdatedTime(const Aws::String& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline void SetLastUpdatedTime(Aws::String&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline void SetLastUpdatedTime(const char* value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime.assign(value); } /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline AwsCloudFormationStackDetails& WithLastUpdatedTime(const Aws::String& value) { SetLastUpdatedTime(value); return *this;} /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline AwsCloudFormationStackDetails& WithLastUpdatedTime(Aws::String&& value) { SetLastUpdatedTime(std::move(value)); return *this;} /** *The time the nested stack was last updated. This field will only be returned * if the stack has been updated at least once.
*/ inline AwsCloudFormationStackDetails& WithLastUpdatedTime(const char* value) { SetLastUpdatedTime(value); return *this;} /** *The Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline const Aws::VectorThe Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline bool NotificationArnsHasBeenSet() const { return m_notificationArnsHasBeenSet; } /** *The Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline void SetNotificationArns(const Aws::VectorThe Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline void SetNotificationArns(Aws::VectorThe Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline AwsCloudFormationStackDetails& WithNotificationArns(const Aws::VectorThe Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline AwsCloudFormationStackDetails& WithNotificationArns(Aws::VectorThe Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline AwsCloudFormationStackDetails& AddNotificationArns(const Aws::String& value) { m_notificationArnsHasBeenSet = true; m_notificationArns.push_back(value); return *this; } /** *The Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline AwsCloudFormationStackDetails& AddNotificationArns(Aws::String&& value) { m_notificationArnsHasBeenSet = true; m_notificationArns.push_back(std::move(value)); return *this; } /** *The Amazon Resource Names (ARNs) of the Amazon SNS topic to which * stack-related events are published.
*/ inline AwsCloudFormationStackDetails& AddNotificationArns(const char* value) { m_notificationArnsHasBeenSet = true; m_notificationArns.push_back(value); return *this; } /** *A list of output structures.
*/ inline const Aws::VectorA list of output structures.
*/ inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; } /** *A list of output structures.
*/ inline void SetOutputs(const Aws::VectorA list of output structures.
*/ inline void SetOutputs(Aws::VectorA list of output structures.
*/ inline AwsCloudFormationStackDetails& WithOutputs(const Aws::VectorA list of output structures.
*/ inline AwsCloudFormationStackDetails& WithOutputs(Aws::VectorA list of output structures.
*/ inline AwsCloudFormationStackDetails& AddOutputs(const AwsCloudFormationStackOutputsDetails& value) { m_outputsHasBeenSet = true; m_outputs.push_back(value); return *this; } /** *A list of output structures.
*/ inline AwsCloudFormationStackDetails& AddOutputs(AwsCloudFormationStackOutputsDetails&& value) { m_outputsHasBeenSet = true; m_outputs.push_back(std::move(value)); return *this; } /** *The ARN of an IAM role that's associated with the stack.
*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *The ARN of an IAM role that's associated with the stack.
*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *The ARN of an IAM role that's associated with the stack.
*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *The ARN of an IAM role that's associated with the stack.
*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *The ARN of an IAM role that's associated with the stack.
*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *The ARN of an IAM role that's associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *The ARN of an IAM role that's associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *The ARN of an IAM role that's associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *Unique identifier of the stack.
*/ inline const Aws::String& GetStackId() const{ return m_stackId; } /** *Unique identifier of the stack.
*/ inline bool StackIdHasBeenSet() const { return m_stackIdHasBeenSet; } /** *Unique identifier of the stack.
*/ inline void SetStackId(const Aws::String& value) { m_stackIdHasBeenSet = true; m_stackId = value; } /** *Unique identifier of the stack.
*/ inline void SetStackId(Aws::String&& value) { m_stackIdHasBeenSet = true; m_stackId = std::move(value); } /** *Unique identifier of the stack.
*/ inline void SetStackId(const char* value) { m_stackIdHasBeenSet = true; m_stackId.assign(value); } /** *Unique identifier of the stack.
*/ inline AwsCloudFormationStackDetails& WithStackId(const Aws::String& value) { SetStackId(value); return *this;} /** *Unique identifier of the stack.
*/ inline AwsCloudFormationStackDetails& WithStackId(Aws::String&& value) { SetStackId(std::move(value)); return *this;} /** *Unique identifier of the stack.
*/ inline AwsCloudFormationStackDetails& WithStackId(const char* value) { SetStackId(value); return *this;} /** *The name associated with the stack.
*/ inline const Aws::String& GetStackName() const{ return m_stackName; } /** *The name associated with the stack.
*/ inline bool StackNameHasBeenSet() const { return m_stackNameHasBeenSet; } /** *The name associated with the stack.
*/ inline void SetStackName(const Aws::String& value) { m_stackNameHasBeenSet = true; m_stackName = value; } /** *The name associated with the stack.
*/ inline void SetStackName(Aws::String&& value) { m_stackNameHasBeenSet = true; m_stackName = std::move(value); } /** *The name associated with the stack.
*/ inline void SetStackName(const char* value) { m_stackNameHasBeenSet = true; m_stackName.assign(value); } /** *The name associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithStackName(const Aws::String& value) { SetStackName(value); return *this;} /** *The name associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithStackName(Aws::String&& value) { SetStackName(std::move(value)); return *this;} /** *The name associated with the stack.
*/ inline AwsCloudFormationStackDetails& WithStackName(const char* value) { SetStackName(value); return *this;} /** *Current status of the stack.
*/ inline const Aws::String& GetStackStatus() const{ return m_stackStatus; } /** *Current status of the stack.
*/ inline bool StackStatusHasBeenSet() const { return m_stackStatusHasBeenSet; } /** *Current status of the stack.
*/ inline void SetStackStatus(const Aws::String& value) { m_stackStatusHasBeenSet = true; m_stackStatus = value; } /** *Current status of the stack.
*/ inline void SetStackStatus(Aws::String&& value) { m_stackStatusHasBeenSet = true; m_stackStatus = std::move(value); } /** *Current status of the stack.
*/ inline void SetStackStatus(const char* value) { m_stackStatusHasBeenSet = true; m_stackStatus.assign(value); } /** *Current status of the stack.
*/ inline AwsCloudFormationStackDetails& WithStackStatus(const Aws::String& value) { SetStackStatus(value); return *this;} /** *Current status of the stack.
*/ inline AwsCloudFormationStackDetails& WithStackStatus(Aws::String&& value) { SetStackStatus(std::move(value)); return *this;} /** *Current status of the stack.
*/ inline AwsCloudFormationStackDetails& WithStackStatus(const char* value) { SetStackStatus(value); return *this;} /** *Success or failure message associated with the stack status.
*/ inline const Aws::String& GetStackStatusReason() const{ return m_stackStatusReason; } /** *Success or failure message associated with the stack status.
*/ inline bool StackStatusReasonHasBeenSet() const { return m_stackStatusReasonHasBeenSet; } /** *Success or failure message associated with the stack status.
*/ inline void SetStackStatusReason(const Aws::String& value) { m_stackStatusReasonHasBeenSet = true; m_stackStatusReason = value; } /** *Success or failure message associated with the stack status.
*/ inline void SetStackStatusReason(Aws::String&& value) { m_stackStatusReasonHasBeenSet = true; m_stackStatusReason = std::move(value); } /** *Success or failure message associated with the stack status.
*/ inline void SetStackStatusReason(const char* value) { m_stackStatusReasonHasBeenSet = true; m_stackStatusReason.assign(value); } /** *Success or failure message associated with the stack status.
*/ inline AwsCloudFormationStackDetails& WithStackStatusReason(const Aws::String& value) { SetStackStatusReason(value); return *this;} /** *Success or failure message associated with the stack status.
*/ inline AwsCloudFormationStackDetails& WithStackStatusReason(Aws::String&& value) { SetStackStatusReason(std::move(value)); return *this;} /** *Success or failure message associated with the stack status.
*/ inline AwsCloudFormationStackDetails& WithStackStatusReason(const char* value) { SetStackStatusReason(value); return *this;} /** *The length of time, in minutes, that CloudFormation waits for the nested
* stack to reach the CREATE_COMPLETE
state.
The length of time, in minutes, that CloudFormation waits for the nested
* stack to reach the CREATE_COMPLETE
state.
The length of time, in minutes, that CloudFormation waits for the nested
* stack to reach the CREATE_COMPLETE
state.
The length of time, in minutes, that CloudFormation waits for the nested
* stack to reach the CREATE_COMPLETE
state.