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

Describes the reason for an activity that isn't scaled (not scaled * activity), in machine-readable format. For help interpreting the not scaled * reason details, see Scaling * activities for Application Auto Scaling.

See Also:

AWS * API Reference

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

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline const Aws::String& GetCode() const{ return m_code; } /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; } /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline void SetCode(const Aws::String& value) { m_codeHasBeenSet = true; m_code = value; } /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline void SetCode(Aws::String&& value) { m_codeHasBeenSet = true; m_code = std::move(value); } /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline void SetCode(const char* value) { m_codeHasBeenSet = true; m_code.assign(value); } /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline NotScaledReason& WithCode(const Aws::String& value) { SetCode(value); return *this;} /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline NotScaledReason& WithCode(Aws::String&& value) { SetCode(std::move(value)); return *this;} /** *

A code that represents the reason for not scaling.

Valid values:

*
  • AutoScalingAnticipatedFlapping

  • *

    TargetServicePutResourceAsUnscalable

  • *

    AlreadyAtMaxCapacity

  • AlreadyAtMinCapacity

  • *

    AlreadyAtDesiredCapacity

*/ inline NotScaledReason& WithCode(const char* value) { SetCode(value); return *this;} /** *

The maximum capacity.

*/ inline int GetMaxCapacity() const{ return m_maxCapacity; } /** *

The maximum capacity.

*/ inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; } /** *

The maximum capacity.

*/ inline void SetMaxCapacity(int value) { m_maxCapacityHasBeenSet = true; m_maxCapacity = value; } /** *

The maximum capacity.

*/ inline NotScaledReason& WithMaxCapacity(int value) { SetMaxCapacity(value); return *this;} /** *

The minimum capacity.

*/ inline int GetMinCapacity() const{ return m_minCapacity; } /** *

The minimum capacity.

*/ inline bool MinCapacityHasBeenSet() const { return m_minCapacityHasBeenSet; } /** *

The minimum capacity.

*/ inline void SetMinCapacity(int value) { m_minCapacityHasBeenSet = true; m_minCapacity = value; } /** *

The minimum capacity.

*/ inline NotScaledReason& WithMinCapacity(int value) { SetMinCapacity(value); return *this;} /** *

The current capacity.

*/ inline int GetCurrentCapacity() const{ return m_currentCapacity; } /** *

The current capacity.

*/ inline bool CurrentCapacityHasBeenSet() const { return m_currentCapacityHasBeenSet; } /** *

The current capacity.

*/ inline void SetCurrentCapacity(int value) { m_currentCapacityHasBeenSet = true; m_currentCapacity = value; } /** *

The current capacity.

*/ inline NotScaledReason& WithCurrentCapacity(int value) { SetCurrentCapacity(value); return *this;} private: Aws::String m_code; bool m_codeHasBeenSet = false; int m_maxCapacity; bool m_maxCapacityHasBeenSet = false; int m_minCapacity; bool m_minCapacityHasBeenSet = false; int m_currentCapacity; bool m_currentCapacityHasBeenSet = false; }; } // namespace Model } // namespace ApplicationAutoScaling } // namespace Aws