/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Managed scaling policy for an Amazon EMR cluster. The policy specifies the
* limits for resources that can be added or terminated from a cluster. The policy
* only applies to the core and task nodes. The master node cannot be scaled after
* initial configuration. See Also:
AWS
* API Reference
The Amazon EC2 unit limits for a managed scaling policy. The managed scaling * activity of a cluster is not allowed to go above or below these limits. The * limit only applies to the core and task nodes. The master node cannot be scaled * after initial configuration.
*/ inline const ComputeLimits& GetComputeLimits() const{ return m_computeLimits; } /** *The Amazon EC2 unit limits for a managed scaling policy. The managed scaling * activity of a cluster is not allowed to go above or below these limits. The * limit only applies to the core and task nodes. The master node cannot be scaled * after initial configuration.
*/ inline bool ComputeLimitsHasBeenSet() const { return m_computeLimitsHasBeenSet; } /** *The Amazon EC2 unit limits for a managed scaling policy. The managed scaling * activity of a cluster is not allowed to go above or below these limits. The * limit only applies to the core and task nodes. The master node cannot be scaled * after initial configuration.
*/ inline void SetComputeLimits(const ComputeLimits& value) { m_computeLimitsHasBeenSet = true; m_computeLimits = value; } /** *The Amazon EC2 unit limits for a managed scaling policy. The managed scaling * activity of a cluster is not allowed to go above or below these limits. The * limit only applies to the core and task nodes. The master node cannot be scaled * after initial configuration.
*/ inline void SetComputeLimits(ComputeLimits&& value) { m_computeLimitsHasBeenSet = true; m_computeLimits = std::move(value); } /** *The Amazon EC2 unit limits for a managed scaling policy. The managed scaling * activity of a cluster is not allowed to go above or below these limits. The * limit only applies to the core and task nodes. The master node cannot be scaled * after initial configuration.
*/ inline ManagedScalingPolicy& WithComputeLimits(const ComputeLimits& value) { SetComputeLimits(value); return *this;} /** *The Amazon EC2 unit limits for a managed scaling policy. The managed scaling * activity of a cluster is not allowed to go above or below these limits. The * limit only applies to the core and task nodes. The master node cannot be scaled * after initial configuration.
*/ inline ManagedScalingPolicy& WithComputeLimits(ComputeLimits&& value) { SetComputeLimits(std::move(value)); return *this;} private: ComputeLimits m_computeLimits; bool m_computeLimitsHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws