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

Specifies whether the scaling activities for a scalable target are in a * suspended state.

See Also:

AWS * API Reference

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

Whether scale in by a target tracking scaling policy or a step scaling policy * is suspended. Set the value to true if you don't want Application * Auto Scaling to remove capacity when a scaling policy is triggered. The default * is false.

*/ inline bool GetDynamicScalingInSuspended() const{ return m_dynamicScalingInSuspended; } /** *

Whether scale in by a target tracking scaling policy or a step scaling policy * is suspended. Set the value to true if you don't want Application * Auto Scaling to remove capacity when a scaling policy is triggered. The default * is false.

*/ inline bool DynamicScalingInSuspendedHasBeenSet() const { return m_dynamicScalingInSuspendedHasBeenSet; } /** *

Whether scale in by a target tracking scaling policy or a step scaling policy * is suspended. Set the value to true if you don't want Application * Auto Scaling to remove capacity when a scaling policy is triggered. The default * is false.

*/ inline void SetDynamicScalingInSuspended(bool value) { m_dynamicScalingInSuspendedHasBeenSet = true; m_dynamicScalingInSuspended = value; } /** *

Whether scale in by a target tracking scaling policy or a step scaling policy * is suspended. Set the value to true if you don't want Application * Auto Scaling to remove capacity when a scaling policy is triggered. The default * is false.

*/ inline SuspendedState& WithDynamicScalingInSuspended(bool value) { SetDynamicScalingInSuspended(value); return *this;} /** *

Whether scale out by a target tracking scaling policy or a step scaling * policy is suspended. Set the value to true if you don't want * Application Auto Scaling to add capacity when a scaling policy is triggered. The * default is false.

*/ inline bool GetDynamicScalingOutSuspended() const{ return m_dynamicScalingOutSuspended; } /** *

Whether scale out by a target tracking scaling policy or a step scaling * policy is suspended. Set the value to true if you don't want * Application Auto Scaling to add capacity when a scaling policy is triggered. The * default is false.

*/ inline bool DynamicScalingOutSuspendedHasBeenSet() const { return m_dynamicScalingOutSuspendedHasBeenSet; } /** *

Whether scale out by a target tracking scaling policy or a step scaling * policy is suspended. Set the value to true if you don't want * Application Auto Scaling to add capacity when a scaling policy is triggered. The * default is false.

*/ inline void SetDynamicScalingOutSuspended(bool value) { m_dynamicScalingOutSuspendedHasBeenSet = true; m_dynamicScalingOutSuspended = value; } /** *

Whether scale out by a target tracking scaling policy or a step scaling * policy is suspended. Set the value to true if you don't want * Application Auto Scaling to add capacity when a scaling policy is triggered. The * default is false.

*/ inline SuspendedState& WithDynamicScalingOutSuspended(bool value) { SetDynamicScalingOutSuspended(value); return *this;} /** *

Whether scheduled scaling is suspended. Set the value to true if * you don't want Application Auto Scaling to add or remove capacity by initiating * scheduled actions. The default is false.

*/ inline bool GetScheduledScalingSuspended() const{ return m_scheduledScalingSuspended; } /** *

Whether scheduled scaling is suspended. Set the value to true if * you don't want Application Auto Scaling to add or remove capacity by initiating * scheduled actions. The default is false.

*/ inline bool ScheduledScalingSuspendedHasBeenSet() const { return m_scheduledScalingSuspendedHasBeenSet; } /** *

Whether scheduled scaling is suspended. Set the value to true if * you don't want Application Auto Scaling to add or remove capacity by initiating * scheduled actions. The default is false.

*/ inline void SetScheduledScalingSuspended(bool value) { m_scheduledScalingSuspendedHasBeenSet = true; m_scheduledScalingSuspended = value; } /** *

Whether scheduled scaling is suspended. Set the value to true if * you don't want Application Auto Scaling to add or remove capacity by initiating * scheduled actions. The default is false.

*/ inline SuspendedState& WithScheduledScalingSuspended(bool value) { SetScheduledScalingSuspended(value); return *this;} private: bool m_dynamicScalingInSuspended; bool m_dynamicScalingInSuspendedHasBeenSet = false; bool m_dynamicScalingOutSuspended; bool m_dynamicScalingOutSuspendedHasBeenSet = false; bool m_scheduledScalingSuspended; bool m_scheduledScalingSuspendedHasBeenSet = false; }; } // namespace Model } // namespace ApplicationAutoScaling } // namespace Aws