/** * 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 Pipes { namespace Model { /** *

The details of a capacity provider strategy. To learn more, see CapacityProviderStrategyItem * in the Amazon ECS API Reference.

See Also:

AWS * API Reference

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

The base value designates how many tasks, at a minimum, to run on the * specified capacity provider. Only one capacity provider in a capacity provider * strategy can have a base defined. If no value is specified, the default value of * 0 is used.

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

The base value designates how many tasks, at a minimum, to run on the * specified capacity provider. Only one capacity provider in a capacity provider * strategy can have a base defined. If no value is specified, the default value of * 0 is used.

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

The base value designates how many tasks, at a minimum, to run on the * specified capacity provider. Only one capacity provider in a capacity provider * strategy can have a base defined. If no value is specified, the default value of * 0 is used.

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

The base value designates how many tasks, at a minimum, to run on the * specified capacity provider. Only one capacity provider in a capacity provider * strategy can have a base defined. If no value is specified, the default value of * 0 is used.

*/ inline CapacityProviderStrategyItem& 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 CapacityProviderStrategyItem& WithCapacityProvider(const Aws::String& value) { SetCapacityProvider(value); return *this;} /** *

The short name of the capacity provider.

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

The short name of the capacity provider.

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

The weight value designates the relative percentage of the total number of * tasks launched that should use the specified capacity provider. The weight value * is taken into consideration after the base value, if defined, is satisfied.

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

The weight value designates the relative percentage of the total number of * tasks launched that should use the specified capacity provider. The weight value * is taken into consideration after the base value, if defined, is satisfied.

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

The weight value designates the relative percentage of the total number of * tasks launched that should use the specified capacity provider. The weight value * is taken into consideration after the base value, if defined, is satisfied.

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

The weight value designates the relative percentage of the total number of * tasks launched that should use the specified capacity provider. The weight value * is taken into consideration after the base value, if defined, is satisfied.

*/ inline CapacityProviderStrategyItem& 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 Pipes } // namespace Aws