AWS SDK for C++

AWS SDK for C++ Version 1.11.695

Loading...
Searching...
No Matches
AutoScalingConfiguration.h
1
6#pragma once
7#include <aws/finspace/Finspace_EXPORTS.h>
8#include <aws/finspace/model/AutoScalingMetric.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace finspace {
20namespace Model {
21
29 public:
30 AWS_FINSPACE_API AutoScalingConfiguration() = default;
33 AWS_FINSPACE_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
41 inline int GetMinNodeCount() const { return m_minNodeCount; }
42 inline bool MinNodeCountHasBeenSet() const { return m_minNodeCountHasBeenSet; }
43 inline void SetMinNodeCount(int value) {
44 m_minNodeCountHasBeenSet = true;
45 m_minNodeCount = value;
46 }
48 SetMinNodeCount(value);
49 return *this;
50 }
52
54
58 inline int GetMaxNodeCount() const { return m_maxNodeCount; }
59 inline bool MaxNodeCountHasBeenSet() const { return m_maxNodeCountHasBeenSet; }
60 inline void SetMaxNodeCount(int value) {
61 m_maxNodeCountHasBeenSet = true;
62 m_maxNodeCount = value;
63 }
65 SetMaxNodeCount(value);
66 return *this;
67 }
69
71
76 inline AutoScalingMetric GetAutoScalingMetric() const { return m_autoScalingMetric; }
77 inline bool AutoScalingMetricHasBeenSet() const { return m_autoScalingMetricHasBeenSet; }
79 m_autoScalingMetricHasBeenSet = true;
80 m_autoScalingMetric = value;
81 }
84 return *this;
85 }
87
89
95 inline double GetMetricTarget() const { return m_metricTarget; }
96 inline bool MetricTargetHasBeenSet() const { return m_metricTargetHasBeenSet; }
97 inline void SetMetricTarget(double value) {
98 m_metricTargetHasBeenSet = true;
99 m_metricTarget = value;
100 }
102 SetMetricTarget(value);
103 return *this;
104 }
106
108
112 inline double GetScaleInCooldownSeconds() const { return m_scaleInCooldownSeconds; }
113 inline bool ScaleInCooldownSecondsHasBeenSet() const { return m_scaleInCooldownSecondsHasBeenSet; }
114 inline void SetScaleInCooldownSeconds(double value) {
115 m_scaleInCooldownSecondsHasBeenSet = true;
116 m_scaleInCooldownSeconds = value;
117 }
120 return *this;
121 }
123
125
129 inline double GetScaleOutCooldownSeconds() const { return m_scaleOutCooldownSeconds; }
130 inline bool ScaleOutCooldownSecondsHasBeenSet() const { return m_scaleOutCooldownSecondsHasBeenSet; }
131 inline void SetScaleOutCooldownSeconds(double value) {
132 m_scaleOutCooldownSecondsHasBeenSet = true;
133 m_scaleOutCooldownSeconds = value;
134 }
137 return *this;
138 }
140 private:
141 int m_minNodeCount{0};
142 bool m_minNodeCountHasBeenSet = false;
143
144 int m_maxNodeCount{0};
145 bool m_maxNodeCountHasBeenSet = false;
146
148 bool m_autoScalingMetricHasBeenSet = false;
149
150 double m_metricTarget{0.0};
151 bool m_metricTargetHasBeenSet = false;
152
153 double m_scaleInCooldownSeconds{0.0};
154 bool m_scaleInCooldownSecondsHasBeenSet = false;
155
156 double m_scaleOutCooldownSeconds{0.0};
157 bool m_scaleOutCooldownSecondsHasBeenSet = false;
158};
159
160} // namespace Model
161} // namespace finspace
162} // namespace Aws
AWS_FINSPACE_API AutoScalingConfiguration()=default
AutoScalingConfiguration & WithMinNodeCount(int value)
AWS_FINSPACE_API Aws::Utils::Json::JsonValue Jsonize() const
AutoScalingConfiguration & WithScaleInCooldownSeconds(double value)
AutoScalingConfiguration & WithMaxNodeCount(int value)
AutoScalingConfiguration & WithAutoScalingMetric(AutoScalingMetric value)
AWS_FINSPACE_API AutoScalingConfiguration(Aws::Utils::Json::JsonView jsonValue)
AutoScalingConfiguration & WithScaleOutCooldownSeconds(double value)
AWS_FINSPACE_API AutoScalingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AutoScalingConfiguration & WithMetricTarget(double value)
Aws::Utils::Json::JsonValue JsonValue