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

Strategy item for the capacity provider strategy that the service * uses.

See Also:

AWS * API Reference

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

The minimum number of tasks to run on the capacity provider. Only one * strategy item can specify a value for Base.

The value must * be between 0 and 100000.

*/ inline int GetBase() const{ return m_base; } /** *

The minimum number of tasks to run on the capacity provider. Only one * strategy item can specify a value for Base.

The value must * be between 0 and 100000.

*/ inline bool BaseHasBeenSet() const { return m_baseHasBeenSet; } /** *

The minimum number of tasks to run on the capacity provider. Only one * strategy item can specify a value for Base.

The value must * be between 0 and 100000.

*/ inline void SetBase(int value) { m_baseHasBeenSet = true; m_base = value; } /** *

The minimum number of tasks to run on the capacity provider. Only one * strategy item can specify a value for Base.

The value must * be between 0 and 100000.

*/ inline AwsEcsServiceCapacityProviderStrategyDetails& WithBase(int value) { SetBase(value); return *this;} /** *

The short name of the capacity provider.

*/ inline const Aws::String& GetCapacityProvider() const{ return m_capacityProvider; } /** *

The short name of the capacity provider.

*/ inline bool CapacityProviderHasBeenSet() const { return m_capacityProviderHasBeenSet; } /** *

The short name of the capacity provider.

*/ inline void SetCapacityProvider(const Aws::String& value) { m_capacityProviderHasBeenSet = true; m_capacityProvider = value; } /** *

The short name of the capacity provider.

*/ inline void SetCapacityProvider(Aws::String&& value) { m_capacityProviderHasBeenSet = true; m_capacityProvider = std::move(value); } /** *

The short name of the capacity provider.

*/ inline void SetCapacityProvider(const char* value) { m_capacityProviderHasBeenSet = true; m_capacityProvider.assign(value); } /** *

The short name of the capacity provider.

*/ inline AwsEcsServiceCapacityProviderStrategyDetails& WithCapacityProvider(const Aws::String& value) { SetCapacityProvider(value); return *this;} /** *

The short name of the capacity provider.

*/ inline AwsEcsServiceCapacityProviderStrategyDetails& WithCapacityProvider(Aws::String&& value) { SetCapacityProvider(std::move(value)); return *this;} /** *

The short name of the capacity provider.

*/ inline AwsEcsServiceCapacityProviderStrategyDetails& WithCapacityProvider(const char* value) { SetCapacityProvider(value); return *this;} /** *

The relative percentage of the total number of tasks that should use the * capacity provider.

If no weight is specified, the default value is 0. At * least one capacity provider must have a weight greater than 0.

The value * can be between 0 and 1000.

*/ inline int GetWeight() const{ return m_weight; } /** *

The relative percentage of the total number of tasks that should use the * capacity provider.

If no weight is specified, the default value is 0. At * least one capacity provider must have a weight greater than 0.

The value * can be between 0 and 1000.

*/ inline bool WeightHasBeenSet() const { return m_weightHasBeenSet; } /** *

The relative percentage of the total number of tasks that should use the * capacity provider.

If no weight is specified, the default value is 0. At * least one capacity provider must have a weight greater than 0.

The value * can be between 0 and 1000.

*/ inline void SetWeight(int value) { m_weightHasBeenSet = true; m_weight = value; } /** *

The relative percentage of the total number of tasks that should use the * capacity provider.

If no weight is specified, the default value is 0. At * least one capacity provider must have a weight greater than 0.

The value * can be between 0 and 1000.

*/ inline AwsEcsServiceCapacityProviderStrategyDetails& WithWeight(int value) { SetWeight(value); return *this;} private: int m_base; bool m_baseHasBeenSet = false; Aws::String m_capacityProvider; bool m_capacityProviderHasBeenSet = false; int m_weight; bool m_weightHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws