/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CodeDeploy { namespace Model { /** *

Information about the target to be updated by an CloudFormation blue/green * deployment. This target type is used for all deployments initiated by a * CloudFormation stack update.

See Also:

AWS * API Reference

*/ class CloudFormationTarget { public: AWS_CODEDEPLOY_API CloudFormationTarget(); AWS_CODEDEPLOY_API CloudFormationTarget(Aws::Utils::Json::JsonView jsonValue); AWS_CODEDEPLOY_API CloudFormationTarget& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline const Aws::String& GetDeploymentId() const{ return m_deploymentId; } /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline bool DeploymentIdHasBeenSet() const { return m_deploymentIdHasBeenSet; } /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline void SetDeploymentId(const Aws::String& value) { m_deploymentIdHasBeenSet = true; m_deploymentId = value; } /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline void SetDeploymentId(Aws::String&& value) { m_deploymentIdHasBeenSet = true; m_deploymentId = std::move(value); } /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline void SetDeploymentId(const char* value) { m_deploymentIdHasBeenSet = true; m_deploymentId.assign(value); } /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithDeploymentId(const Aws::String& value) { SetDeploymentId(value); return *this;} /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithDeploymentId(Aws::String&& value) { SetDeploymentId(std::move(value)); return *this;} /** *

The unique ID of an CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithDeploymentId(const char* value) { SetDeploymentId(value); return *this;} /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline const Aws::String& GetTargetId() const{ return m_targetId; } /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline bool TargetIdHasBeenSet() const { return m_targetIdHasBeenSet; } /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline void SetTargetId(const Aws::String& value) { m_targetIdHasBeenSet = true; m_targetId = value; } /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline void SetTargetId(Aws::String&& value) { m_targetIdHasBeenSet = true; m_targetId = std::move(value); } /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline void SetTargetId(const char* value) { m_targetIdHasBeenSet = true; m_targetId.assign(value); } /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline CloudFormationTarget& WithTargetId(const Aws::String& value) { SetTargetId(value); return *this;} /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline CloudFormationTarget& WithTargetId(Aws::String&& value) { SetTargetId(std::move(value)); return *this;} /** *

The unique ID of a deployment target that has a type * of CloudFormationTarget.

*/ inline CloudFormationTarget& WithTargetId(const char* value) { SetTargetId(value); return *this;} /** *

The date and time when the target application was updated by an * CloudFormation blue/green deployment.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; } /** *

The date and time when the target application was updated by an * CloudFormation blue/green deployment.

*/ inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; } /** *

The date and time when the target application was updated by an * CloudFormation blue/green deployment.

*/ inline void SetLastUpdatedAt(const Aws::Utils::DateTime& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = value; } /** *

The date and time when the target application was updated by an * CloudFormation blue/green deployment.

*/ inline void SetLastUpdatedAt(Aws::Utils::DateTime&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::move(value); } /** *

The date and time when the target application was updated by an * CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;} /** *

The date and time when the target application was updated by an * CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;} /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline const Aws::Vector& GetLifecycleEvents() const{ return m_lifecycleEvents; } /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline bool LifecycleEventsHasBeenSet() const { return m_lifecycleEventsHasBeenSet; } /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline void SetLifecycleEvents(const Aws::Vector& value) { m_lifecycleEventsHasBeenSet = true; m_lifecycleEvents = value; } /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline void SetLifecycleEvents(Aws::Vector&& value) { m_lifecycleEventsHasBeenSet = true; m_lifecycleEvents = std::move(value); } /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline CloudFormationTarget& WithLifecycleEvents(const Aws::Vector& value) { SetLifecycleEvents(value); return *this;} /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline CloudFormationTarget& WithLifecycleEvents(Aws::Vector&& value) { SetLifecycleEvents(std::move(value)); return *this;} /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline CloudFormationTarget& AddLifecycleEvents(const LifecycleEvent& value) { m_lifecycleEventsHasBeenSet = true; m_lifecycleEvents.push_back(value); return *this; } /** *

The lifecycle events of the CloudFormation blue/green deployment to this * target application.

*/ inline CloudFormationTarget& AddLifecycleEvents(LifecycleEvent&& value) { m_lifecycleEventsHasBeenSet = true; m_lifecycleEvents.push_back(std::move(value)); return *this; } /** *

The status of an CloudFormation blue/green deployment's target application. *

*/ inline const TargetStatus& GetStatus() const{ return m_status; } /** *

The status of an CloudFormation blue/green deployment's target application. *

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of an CloudFormation blue/green deployment's target application. *

*/ inline void SetStatus(const TargetStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of an CloudFormation blue/green deployment's target application. *

*/ inline void SetStatus(TargetStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of an CloudFormation blue/green deployment's target application. *

*/ inline CloudFormationTarget& WithStatus(const TargetStatus& value) { SetStatus(value); return *this;} /** *

The status of an CloudFormation blue/green deployment's target application. *

*/ inline CloudFormationTarget& WithStatus(TargetStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline const Aws::String& GetResourceType() const{ return m_resourceType; } /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} /** *

The resource type for the CloudFormation blue/green deployment.

*/ inline CloudFormationTarget& WithResourceType(const char* value) { SetResourceType(value); return *this;} /** *

The percentage of production traffic that the target version of an * CloudFormation blue/green deployment receives.

*/ inline double GetTargetVersionWeight() const{ return m_targetVersionWeight; } /** *

The percentage of production traffic that the target version of an * CloudFormation blue/green deployment receives.

*/ inline bool TargetVersionWeightHasBeenSet() const { return m_targetVersionWeightHasBeenSet; } /** *

The percentage of production traffic that the target version of an * CloudFormation blue/green deployment receives.

*/ inline void SetTargetVersionWeight(double value) { m_targetVersionWeightHasBeenSet = true; m_targetVersionWeight = value; } /** *

The percentage of production traffic that the target version of an * CloudFormation blue/green deployment receives.

*/ inline CloudFormationTarget& WithTargetVersionWeight(double value) { SetTargetVersionWeight(value); return *this;} private: Aws::String m_deploymentId; bool m_deploymentIdHasBeenSet = false; Aws::String m_targetId; bool m_targetIdHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedAt; bool m_lastUpdatedAtHasBeenSet = false; Aws::Vector m_lifecycleEvents; bool m_lifecycleEventsHasBeenSet = false; TargetStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_resourceType; bool m_resourceTypeHasBeenSet = false; double m_targetVersionWeight; bool m_targetVersionWeightHasBeenSet = false; }; } // namespace Model } // namespace CodeDeploy } // namespace Aws