/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The status of an automatic scaling policy. See Also:
AWS
* API Reference
Indicates the status of the automatic scaling policy.
*/ inline const AutoScalingPolicyState& GetState() const{ return m_state; } /** *Indicates the status of the automatic scaling policy.
*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *Indicates the status of the automatic scaling policy.
*/ inline void SetState(const AutoScalingPolicyState& value) { m_stateHasBeenSet = true; m_state = value; } /** *Indicates the status of the automatic scaling policy.
*/ inline void SetState(AutoScalingPolicyState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *Indicates the status of the automatic scaling policy.
*/ inline AutoScalingPolicyStatus& WithState(const AutoScalingPolicyState& value) { SetState(value); return *this;} /** *Indicates the status of the automatic scaling policy.
*/ inline AutoScalingPolicyStatus& WithState(AutoScalingPolicyState&& value) { SetState(std::move(value)); return *this;} /** *The reason for a change in status.
*/ inline const AutoScalingPolicyStateChangeReason& GetStateChangeReason() const{ return m_stateChangeReason; } /** *The reason for a change in status.
*/ inline bool StateChangeReasonHasBeenSet() const { return m_stateChangeReasonHasBeenSet; } /** *The reason for a change in status.
*/ inline void SetStateChangeReason(const AutoScalingPolicyStateChangeReason& value) { m_stateChangeReasonHasBeenSet = true; m_stateChangeReason = value; } /** *The reason for a change in status.
*/ inline void SetStateChangeReason(AutoScalingPolicyStateChangeReason&& value) { m_stateChangeReasonHasBeenSet = true; m_stateChangeReason = std::move(value); } /** *The reason for a change in status.
*/ inline AutoScalingPolicyStatus& WithStateChangeReason(const AutoScalingPolicyStateChangeReason& value) { SetStateChangeReason(value); return *this;} /** *The reason for a change in status.
*/ inline AutoScalingPolicyStatus& WithStateChangeReason(AutoScalingPolicyStateChangeReason&& value) { SetStateChangeReason(std::move(value)); return *this;} private: AutoScalingPolicyState m_state; bool m_stateHasBeenSet = false; AutoScalingPolicyStateChangeReason m_stateChangeReason; bool m_stateChangeReasonHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws