AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
ManagedScalingPolicy.h
1
6#pragma once
7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/elasticmapreduce/model/ComputeLimits.h>
9#include <aws/elasticmapreduce/model/ScalingStrategy.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace EMR
23{
24namespace Model
25{
26
36 {
37 public:
38 AWS_EMR_API ManagedScalingPolicy() = default;
42
43
45
51 inline const ComputeLimits& GetComputeLimits() const { return m_computeLimits; }
52 inline bool ComputeLimitsHasBeenSet() const { return m_computeLimitsHasBeenSet; }
53 template<typename ComputeLimitsT = ComputeLimits>
54 void SetComputeLimits(ComputeLimitsT&& value) { m_computeLimitsHasBeenSet = true; m_computeLimits = std::forward<ComputeLimitsT>(value); }
55 template<typename ComputeLimitsT = ComputeLimits>
56 ManagedScalingPolicy& WithComputeLimits(ComputeLimitsT&& value) { SetComputeLimits(std::forward<ComputeLimitsT>(value)); return *this;}
58
60
66 inline int GetUtilizationPerformanceIndex() const { return m_utilizationPerformanceIndex; }
67 inline bool UtilizationPerformanceIndexHasBeenSet() const { return m_utilizationPerformanceIndexHasBeenSet; }
68 inline void SetUtilizationPerformanceIndex(int value) { m_utilizationPerformanceIndexHasBeenSet = true; m_utilizationPerformanceIndex = value; }
71
73
77 inline ScalingStrategy GetScalingStrategy() const { return m_scalingStrategy; }
78 inline bool ScalingStrategyHasBeenSet() const { return m_scalingStrategyHasBeenSet; }
79 inline void SetScalingStrategy(ScalingStrategy value) { m_scalingStrategyHasBeenSet = true; m_scalingStrategy = value; }
82 private:
83
84 ComputeLimits m_computeLimits;
85 bool m_computeLimitsHasBeenSet = false;
86
87 int m_utilizationPerformanceIndex{0};
88 bool m_utilizationPerformanceIndexHasBeenSet = false;
89
91 bool m_scalingStrategyHasBeenSet = false;
92 };
93
94} // namespace Model
95} // namespace EMR
96} // namespace Aws
ManagedScalingPolicy & WithUtilizationPerformanceIndex(int value)
AWS_EMR_API ManagedScalingPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetComputeLimits(ComputeLimitsT &&value)
const ComputeLimits & GetComputeLimits() const
AWS_EMR_API ManagedScalingPolicy(Aws::Utils::Json::JsonView jsonValue)
ManagedScalingPolicy & WithScalingStrategy(ScalingStrategy value)
AWS_EMR_API ManagedScalingPolicy()=default
void SetScalingStrategy(ScalingStrategy value)
ManagedScalingPolicy & WithComputeLimits(ComputeLimitsT &&value)
Aws::Utils::Json::JsonValue JsonValue