/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides details about an Amazon ECS cluster.See Also:
AWS
* API Reference
The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline const Aws::String& GetClusterArn() const{ return m_clusterArn; } /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline bool ClusterArnHasBeenSet() const { return m_clusterArnHasBeenSet; } /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline void SetClusterArn(const Aws::String& value) { m_clusterArnHasBeenSet = true; m_clusterArn = value; } /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline void SetClusterArn(Aws::String&& value) { m_clusterArnHasBeenSet = true; m_clusterArn = std::move(value); } /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline void SetClusterArn(const char* value) { m_clusterArnHasBeenSet = true; m_clusterArn.assign(value); } /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline AwsEcsClusterDetails& WithClusterArn(const Aws::String& value) { SetClusterArn(value); return *this;} /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline AwsEcsClusterDetails& WithClusterArn(Aws::String&& value) { SetClusterArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) that identifies the cluster.
*/ inline AwsEcsClusterDetails& WithClusterArn(const char* value) { SetClusterArn(value); return *this;} /** *The number of services that are running on the cluster in an
* ACTIVE
state. You can view these services with the Amazon ECS
* ListServices
API operation.
The number of services that are running on the cluster in an
* ACTIVE
state. You can view these services with the Amazon ECS
* ListServices
API operation.
The number of services that are running on the cluster in an
* ACTIVE
state. You can view these services with the Amazon ECS
* ListServices
API operation.
The number of services that are running on the cluster in an
* ACTIVE
state. You can view these services with the Amazon ECS
* ListServices
API operation.
The short name of one or more capacity providers to associate with the * cluster.
*/ inline const Aws::VectorThe short name of one or more capacity providers to associate with the * cluster.
*/ inline bool CapacityProvidersHasBeenSet() const { return m_capacityProvidersHasBeenSet; } /** *The short name of one or more capacity providers to associate with the * cluster.
*/ inline void SetCapacityProviders(const Aws::VectorThe short name of one or more capacity providers to associate with the * cluster.
*/ inline void SetCapacityProviders(Aws::VectorThe short name of one or more capacity providers to associate with the * cluster.
*/ inline AwsEcsClusterDetails& WithCapacityProviders(const Aws::VectorThe short name of one or more capacity providers to associate with the * cluster.
*/ inline AwsEcsClusterDetails& WithCapacityProviders(Aws::VectorThe short name of one or more capacity providers to associate with the * cluster.
*/ inline AwsEcsClusterDetails& AddCapacityProviders(const Aws::String& value) { m_capacityProvidersHasBeenSet = true; m_capacityProviders.push_back(value); return *this; } /** *The short name of one or more capacity providers to associate with the * cluster.
*/ inline AwsEcsClusterDetails& AddCapacityProviders(Aws::String&& value) { m_capacityProvidersHasBeenSet = true; m_capacityProviders.push_back(std::move(value)); return *this; } /** *The short name of one or more capacity providers to associate with the * cluster.
*/ inline AwsEcsClusterDetails& AddCapacityProviders(const char* value) { m_capacityProvidersHasBeenSet = true; m_capacityProviders.push_back(value); return *this; } /** *The setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline const Aws::VectorThe setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline bool ClusterSettingsHasBeenSet() const { return m_clusterSettingsHasBeenSet; } /** *The setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline void SetClusterSettings(const Aws::VectorThe setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline void SetClusterSettings(Aws::VectorThe setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline AwsEcsClusterDetails& WithClusterSettings(const Aws::VectorThe setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline AwsEcsClusterDetails& WithClusterSettings(Aws::VectorThe setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline AwsEcsClusterDetails& AddClusterSettings(const AwsEcsClusterClusterSettingsDetails& value) { m_clusterSettingsHasBeenSet = true; m_clusterSettings.push_back(value); return *this; } /** *The setting to use to create the cluster. Specifically used to configure * whether to enable CloudWatch Container Insights for the cluster.
*/ inline AwsEcsClusterDetails& AddClusterSettings(AwsEcsClusterClusterSettingsDetails&& value) { m_clusterSettingsHasBeenSet = true; m_clusterSettings.push_back(std::move(value)); return *this; } /** *The run command configuration for the cluster.
*/ inline const AwsEcsClusterConfigurationDetails& GetConfiguration() const{ return m_configuration; } /** *The run command configuration for the cluster.
*/ inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; } /** *The run command configuration for the cluster.
*/ inline void SetConfiguration(const AwsEcsClusterConfigurationDetails& value) { m_configurationHasBeenSet = true; m_configuration = value; } /** *The run command configuration for the cluster.
*/ inline void SetConfiguration(AwsEcsClusterConfigurationDetails&& value) { m_configurationHasBeenSet = true; m_configuration = std::move(value); } /** *The run command configuration for the cluster.
*/ inline AwsEcsClusterDetails& WithConfiguration(const AwsEcsClusterConfigurationDetails& value) { SetConfiguration(value); return *this;} /** *The run command configuration for the cluster.
*/ inline AwsEcsClusterDetails& WithConfiguration(AwsEcsClusterConfigurationDetails&& value) { SetConfiguration(std::move(value)); return *this;} /** *The default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline const Aws::VectorThe default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline bool DefaultCapacityProviderStrategyHasBeenSet() const { return m_defaultCapacityProviderStrategyHasBeenSet; } /** *The default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline void SetDefaultCapacityProviderStrategy(const Aws::VectorThe default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline void SetDefaultCapacityProviderStrategy(Aws::VectorThe default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline AwsEcsClusterDetails& WithDefaultCapacityProviderStrategy(const Aws::VectorThe default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline AwsEcsClusterDetails& WithDefaultCapacityProviderStrategy(Aws::VectorThe default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline AwsEcsClusterDetails& AddDefaultCapacityProviderStrategy(const AwsEcsClusterDefaultCapacityProviderStrategyDetails& value) { m_defaultCapacityProviderStrategyHasBeenSet = true; m_defaultCapacityProviderStrategy.push_back(value); return *this; } /** *The default capacity provider strategy for the cluster. The default capacity * provider strategy is used when services or tasks are run without a specified * launch type or capacity provider strategy.
*/ inline AwsEcsClusterDetails& AddDefaultCapacityProviderStrategy(AwsEcsClusterDefaultCapacityProviderStrategyDetails&& value) { m_defaultCapacityProviderStrategyHasBeenSet = true; m_defaultCapacityProviderStrategy.push_back(std::move(value)); return *this; } /** *A name that you use to identify your cluster.
*/ inline const Aws::String& GetClusterName() const{ return m_clusterName; } /** *A name that you use to identify your cluster.
*/ inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; } /** *A name that you use to identify your cluster.
*/ inline void SetClusterName(const Aws::String& value) { m_clusterNameHasBeenSet = true; m_clusterName = value; } /** *A name that you use to identify your cluster.
*/ inline void SetClusterName(Aws::String&& value) { m_clusterNameHasBeenSet = true; m_clusterName = std::move(value); } /** *A name that you use to identify your cluster.
*/ inline void SetClusterName(const char* value) { m_clusterNameHasBeenSet = true; m_clusterName.assign(value); } /** *A name that you use to identify your cluster.
*/ inline AwsEcsClusterDetails& WithClusterName(const Aws::String& value) { SetClusterName(value); return *this;} /** *A name that you use to identify your cluster.
*/ inline AwsEcsClusterDetails& WithClusterName(Aws::String&& value) { SetClusterName(std::move(value)); return *this;} /** *A name that you use to identify your cluster.
*/ inline AwsEcsClusterDetails& WithClusterName(const char* value) { SetClusterName(value); return *this;} /** *The number of container instances registered into the cluster. This includes
* container instances in both ACTIVE
and DRAINING
* status.
The number of container instances registered into the cluster. This includes
* container instances in both ACTIVE
and DRAINING
* status.
The number of container instances registered into the cluster. This includes
* container instances in both ACTIVE
and DRAINING
* status.
The number of container instances registered into the cluster. This includes
* container instances in both ACTIVE
and DRAINING
* status.
The number of tasks in the cluster that are in the RUNNING
* state.
The number of tasks in the cluster that are in the RUNNING
* state.
The number of tasks in the cluster that are in the RUNNING
* state.
The number of tasks in the cluster that are in the RUNNING
* state.
The status of the cluster.
*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *The status of the cluster.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the cluster.
*/ inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the cluster.
*/ inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the cluster.
*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *The status of the cluster.
*/ inline AwsEcsClusterDetails& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *The status of the cluster.
*/ inline AwsEcsClusterDetails& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *The status of the cluster.
*/ inline AwsEcsClusterDetails& WithStatus(const char* value) { SetStatus(value); return *this;} private: Aws::String m_clusterArn; bool m_clusterArnHasBeenSet = false; int m_activeServicesCount; bool m_activeServicesCountHasBeenSet = false; Aws::Vector