/** * 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 a deployment configuration.

See Also:

AWS * API Reference

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

The deployment configuration ID.

*/ inline const Aws::String& GetDeploymentConfigId() const{ return m_deploymentConfigId; } /** *

The deployment configuration ID.

*/ inline bool DeploymentConfigIdHasBeenSet() const { return m_deploymentConfigIdHasBeenSet; } /** *

The deployment configuration ID.

*/ inline void SetDeploymentConfigId(const Aws::String& value) { m_deploymentConfigIdHasBeenSet = true; m_deploymentConfigId = value; } /** *

The deployment configuration ID.

*/ inline void SetDeploymentConfigId(Aws::String&& value) { m_deploymentConfigIdHasBeenSet = true; m_deploymentConfigId = std::move(value); } /** *

The deployment configuration ID.

*/ inline void SetDeploymentConfigId(const char* value) { m_deploymentConfigIdHasBeenSet = true; m_deploymentConfigId.assign(value); } /** *

The deployment configuration ID.

*/ inline DeploymentConfigInfo& WithDeploymentConfigId(const Aws::String& value) { SetDeploymentConfigId(value); return *this;} /** *

The deployment configuration ID.

*/ inline DeploymentConfigInfo& WithDeploymentConfigId(Aws::String&& value) { SetDeploymentConfigId(std::move(value)); return *this;} /** *

The deployment configuration ID.

*/ inline DeploymentConfigInfo& WithDeploymentConfigId(const char* value) { SetDeploymentConfigId(value); return *this;} /** *

The deployment configuration name.

*/ inline const Aws::String& GetDeploymentConfigName() const{ return m_deploymentConfigName; } /** *

The deployment configuration name.

*/ inline bool DeploymentConfigNameHasBeenSet() const { return m_deploymentConfigNameHasBeenSet; } /** *

The deployment configuration name.

*/ inline void SetDeploymentConfigName(const Aws::String& value) { m_deploymentConfigNameHasBeenSet = true; m_deploymentConfigName = value; } /** *

The deployment configuration name.

*/ inline void SetDeploymentConfigName(Aws::String&& value) { m_deploymentConfigNameHasBeenSet = true; m_deploymentConfigName = std::move(value); } /** *

The deployment configuration name.

*/ inline void SetDeploymentConfigName(const char* value) { m_deploymentConfigNameHasBeenSet = true; m_deploymentConfigName.assign(value); } /** *

The deployment configuration name.

*/ inline DeploymentConfigInfo& WithDeploymentConfigName(const Aws::String& value) { SetDeploymentConfigName(value); return *this;} /** *

The deployment configuration name.

*/ inline DeploymentConfigInfo& WithDeploymentConfigName(Aws::String&& value) { SetDeploymentConfigName(std::move(value)); return *this;} /** *

The deployment configuration name.

*/ inline DeploymentConfigInfo& WithDeploymentConfigName(const char* value) { SetDeploymentConfigName(value); return *this;} /** *

Information about the number or percentage of minimum healthy instance.

*/ inline const MinimumHealthyHosts& GetMinimumHealthyHosts() const{ return m_minimumHealthyHosts; } /** *

Information about the number or percentage of minimum healthy instance.

*/ inline bool MinimumHealthyHostsHasBeenSet() const { return m_minimumHealthyHostsHasBeenSet; } /** *

Information about the number or percentage of minimum healthy instance.

*/ inline void SetMinimumHealthyHosts(const MinimumHealthyHosts& value) { m_minimumHealthyHostsHasBeenSet = true; m_minimumHealthyHosts = value; } /** *

Information about the number or percentage of minimum healthy instance.

*/ inline void SetMinimumHealthyHosts(MinimumHealthyHosts&& value) { m_minimumHealthyHostsHasBeenSet = true; m_minimumHealthyHosts = std::move(value); } /** *

Information about the number or percentage of minimum healthy instance.

*/ inline DeploymentConfigInfo& WithMinimumHealthyHosts(const MinimumHealthyHosts& value) { SetMinimumHealthyHosts(value); return *this;} /** *

Information about the number or percentage of minimum healthy instance.

*/ inline DeploymentConfigInfo& WithMinimumHealthyHosts(MinimumHealthyHosts&& value) { SetMinimumHealthyHosts(std::move(value)); return *this;} /** *

The time at which the deployment configuration was created.

*/ inline const Aws::Utils::DateTime& GetCreateTime() const{ return m_createTime; } /** *

The time at which the deployment configuration was created.

*/ inline bool CreateTimeHasBeenSet() const { return m_createTimeHasBeenSet; } /** *

The time at which the deployment configuration was created.

*/ inline void SetCreateTime(const Aws::Utils::DateTime& value) { m_createTimeHasBeenSet = true; m_createTime = value; } /** *

The time at which the deployment configuration was created.

*/ inline void SetCreateTime(Aws::Utils::DateTime&& value) { m_createTimeHasBeenSet = true; m_createTime = std::move(value); } /** *

The time at which the deployment configuration was created.

*/ inline DeploymentConfigInfo& WithCreateTime(const Aws::Utils::DateTime& value) { SetCreateTime(value); return *this;} /** *

The time at which the deployment configuration was created.

*/ inline DeploymentConfigInfo& WithCreateTime(Aws::Utils::DateTime&& value) { SetCreateTime(std::move(value)); return *this;} /** *

The destination platform type for the deployment (Lambda, * Server, or ECS).

*/ inline const ComputePlatform& GetComputePlatform() const{ return m_computePlatform; } /** *

The destination platform type for the deployment (Lambda, * Server, or ECS).

*/ inline bool ComputePlatformHasBeenSet() const { return m_computePlatformHasBeenSet; } /** *

The destination platform type for the deployment (Lambda, * Server, or ECS).

*/ inline void SetComputePlatform(const ComputePlatform& value) { m_computePlatformHasBeenSet = true; m_computePlatform = value; } /** *

The destination platform type for the deployment (Lambda, * Server, or ECS).

*/ inline void SetComputePlatform(ComputePlatform&& value) { m_computePlatformHasBeenSet = true; m_computePlatform = std::move(value); } /** *

The destination platform type for the deployment (Lambda, * Server, or ECS).

*/ inline DeploymentConfigInfo& WithComputePlatform(const ComputePlatform& value) { SetComputePlatform(value); return *this;} /** *

The destination platform type for the deployment (Lambda, * Server, or ECS).

*/ inline DeploymentConfigInfo& WithComputePlatform(ComputePlatform&& value) { SetComputePlatform(std::move(value)); return *this;} /** *

The configuration that specifies how the deployment traffic is routed. Used * for deployments with a Lambda or Amazon ECS compute platform only.

*/ inline const TrafficRoutingConfig& GetTrafficRoutingConfig() const{ return m_trafficRoutingConfig; } /** *

The configuration that specifies how the deployment traffic is routed. Used * for deployments with a Lambda or Amazon ECS compute platform only.

*/ inline bool TrafficRoutingConfigHasBeenSet() const { return m_trafficRoutingConfigHasBeenSet; } /** *

The configuration that specifies how the deployment traffic is routed. Used * for deployments with a Lambda or Amazon ECS compute platform only.

*/ inline void SetTrafficRoutingConfig(const TrafficRoutingConfig& value) { m_trafficRoutingConfigHasBeenSet = true; m_trafficRoutingConfig = value; } /** *

The configuration that specifies how the deployment traffic is routed. Used * for deployments with a Lambda or Amazon ECS compute platform only.

*/ inline void SetTrafficRoutingConfig(TrafficRoutingConfig&& value) { m_trafficRoutingConfigHasBeenSet = true; m_trafficRoutingConfig = std::move(value); } /** *

The configuration that specifies how the deployment traffic is routed. Used * for deployments with a Lambda or Amazon ECS compute platform only.

*/ inline DeploymentConfigInfo& WithTrafficRoutingConfig(const TrafficRoutingConfig& value) { SetTrafficRoutingConfig(value); return *this;} /** *

The configuration that specifies how the deployment traffic is routed. Used * for deployments with a Lambda or Amazon ECS compute platform only.

*/ inline DeploymentConfigInfo& WithTrafficRoutingConfig(TrafficRoutingConfig&& value) { SetTrafficRoutingConfig(std::move(value)); return *this;} private: Aws::String m_deploymentConfigId; bool m_deploymentConfigIdHasBeenSet = false; Aws::String m_deploymentConfigName; bool m_deploymentConfigNameHasBeenSet = false; MinimumHealthyHosts m_minimumHealthyHosts; bool m_minimumHealthyHostsHasBeenSet = false; Aws::Utils::DateTime m_createTime; bool m_createTimeHasBeenSet = false; ComputePlatform m_computePlatform; bool m_computePlatformHasBeenSet = false; TrafficRoutingConfig m_trafficRoutingConfig; bool m_trafficRoutingConfigHasBeenSet = false; }; } // namespace Model } // namespace CodeDeploy } // namespace Aws