7#include <aws/application-autoscaling/ApplicationAutoScaling_EXPORTS.h>
8#include <aws/application-autoscaling/model/PredictiveScalingCustomizedMetricSpecification.h>
9#include <aws/application-autoscaling/model/PredictiveScalingPredefinedLoadMetricSpecification.h>
10#include <aws/application-autoscaling/model/PredictiveScalingPredefinedMetricPairSpecification.h>
11#include <aws/application-autoscaling/model/PredictiveScalingPredefinedScalingMetricSpecification.h>
22namespace ApplicationAutoScaling {
50 m_targetValueHasBeenSet =
true;
51 m_targetValue = value;
65 return m_predefinedMetricPairSpecification;
68 template <
typename PredefinedMetricPairSpecificationT = PredictiveScalingPredefinedMetricPairSpecification>
70 m_predefinedMetricPairSpecificationHasBeenSet =
true;
71 m_predefinedMetricPairSpecification = std::forward<PredefinedMetricPairSpecificationT>(value);
73 template <
typename PredefinedMetricPairSpecificationT = PredictiveScalingPredefinedMetricPairSpecification>
85 return m_predefinedScalingMetricSpecification;
88 template <
typename PredefinedScalingMetricSpecificationT = PredictiveScalingPredefinedScalingMetricSpecification>
90 m_predefinedScalingMetricSpecificationHasBeenSet =
true;
91 m_predefinedScalingMetricSpecification = std::forward<PredefinedScalingMetricSpecificationT>(value);
93 template <
typename PredefinedScalingMetricSpecificationT = PredictiveScalingPredefinedScalingMetricSpecification>
105 return m_predefinedLoadMetricSpecification;
108 template <
typename PredefinedLoadMetricSpecificationT = PredictiveScalingPredefinedLoadMetricSpecification>
110 m_predefinedLoadMetricSpecificationHasBeenSet =
true;
111 m_predefinedLoadMetricSpecification = std::forward<PredefinedLoadMetricSpecificationT>(value);
113 template <
typename PredefinedLoadMetricSpecificationT = PredictiveScalingPredefinedLoadMetricSpecification>
125 return m_customizedScalingMetricSpecification;
128 template <
typename CustomizedScalingMetricSpecificationT = PredictiveScalingCustomizedMetricSpecification>
130 m_customizedScalingMetricSpecificationHasBeenSet =
true;
131 m_customizedScalingMetricSpecification = std::forward<CustomizedScalingMetricSpecificationT>(value);
133 template <
typename CustomizedScalingMetricSpecificationT = PredictiveScalingCustomizedMetricSpecification>
145 return m_customizedLoadMetricSpecification;
148 template <
typename CustomizedLoadMetricSpecificationT = PredictiveScalingCustomizedMetricSpecification>
150 m_customizedLoadMetricSpecificationHasBeenSet =
true;
151 m_customizedLoadMetricSpecification = std::forward<CustomizedLoadMetricSpecificationT>(value);
153 template <
typename CustomizedLoadMetricSpecificationT = PredictiveScalingCustomizedMetricSpecification>
165 return m_customizedCapacityMetricSpecification;
168 template <
typename CustomizedCapacityMetricSpecificationT = PredictiveScalingCustomizedMetricSpecification>
170 m_customizedCapacityMetricSpecificationHasBeenSet =
true;
171 m_customizedCapacityMetricSpecification = std::forward<CustomizedCapacityMetricSpecificationT>(value);
173 template <
typename CustomizedCapacityMetricSpecificationT = PredictiveScalingCustomizedMetricSpecification>
180 double m_targetValue{0.0};
182 PredictiveScalingPredefinedMetricPairSpecification m_predefinedMetricPairSpecification;
184 PredictiveScalingPredefinedScalingMetricSpecification m_predefinedScalingMetricSpecification;
186 PredictiveScalingPredefinedLoadMetricSpecification m_predefinedLoadMetricSpecification;
188 PredictiveScalingCustomizedMetricSpecification m_customizedScalingMetricSpecification;
190 PredictiveScalingCustomizedMetricSpecification m_customizedLoadMetricSpecification;
192 PredictiveScalingCustomizedMetricSpecification m_customizedCapacityMetricSpecification;
193 bool m_targetValueHasBeenSet =
false;
194 bool m_predefinedMetricPairSpecificationHasBeenSet =
false;
195 bool m_predefinedScalingMetricSpecificationHasBeenSet =
false;
196 bool m_predefinedLoadMetricSpecificationHasBeenSet =
false;
197 bool m_customizedScalingMetricSpecificationHasBeenSet =
false;
198 bool m_customizedLoadMetricSpecificationHasBeenSet =
false;
199 bool m_customizedCapacityMetricSpecificationHasBeenSet =
false;
bool PredefinedMetricPairSpecificationHasBeenSet() const
const PredictiveScalingCustomizedMetricSpecification & GetCustomizedLoadMetricSpecification() const
void SetCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT &&value)
void SetPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT &&value)
void SetPredefinedLoadMetricSpecification(PredefinedLoadMetricSpecificationT &&value)
bool CustomizedLoadMetricSpecificationHasBeenSet() const
bool PredefinedScalingMetricSpecificationHasBeenSet() const
AWS_APPLICATIONAUTOSCALING_API Aws::Utils::Json::JsonValue Jsonize() const
PredictiveScalingMetricSpecification & WithCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT &&value)
bool PredefinedLoadMetricSpecificationHasBeenSet() const
const PredictiveScalingCustomizedMetricSpecification & GetCustomizedScalingMetricSpecification() const
void SetPredefinedMetricPairSpecification(PredefinedMetricPairSpecificationT &&value)
AWS_APPLICATIONAUTOSCALING_API PredictiveScalingMetricSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
PredictiveScalingMetricSpecification & WithCustomizedLoadMetricSpecification(CustomizedLoadMetricSpecificationT &&value)
AWS_APPLICATIONAUTOSCALING_API PredictiveScalingMetricSpecification(Aws::Utils::Json::JsonView jsonValue)
bool CustomizedScalingMetricSpecificationHasBeenSet() const
PredictiveScalingMetricSpecification & WithTargetValue(double value)
void SetTargetValue(double value)
bool CustomizedCapacityMetricSpecificationHasBeenSet() const
AWS_APPLICATIONAUTOSCALING_API PredictiveScalingMetricSpecification()=default
const PredictiveScalingCustomizedMetricSpecification & GetCustomizedCapacityMetricSpecification() const
PredictiveScalingMetricSpecification & WithPredefinedLoadMetricSpecification(PredefinedLoadMetricSpecificationT &&value)
PredictiveScalingMetricSpecification & WithPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT &&value)
double GetTargetValue() const
const PredictiveScalingPredefinedLoadMetricSpecification & GetPredefinedLoadMetricSpecification() const
void SetCustomizedCapacityMetricSpecification(CustomizedCapacityMetricSpecificationT &&value)
PredictiveScalingMetricSpecification & WithCustomizedCapacityMetricSpecification(CustomizedCapacityMetricSpecificationT &&value)
bool TargetValueHasBeenSet() const
const PredictiveScalingPredefinedMetricPairSpecification & GetPredefinedMetricPairSpecification() const
const PredictiveScalingPredefinedScalingMetricSpecification & GetPredefinedScalingMetricSpecification() const
void SetCustomizedLoadMetricSpecification(CustomizedLoadMetricSpecificationT &&value)
PredictiveScalingMetricSpecification & WithPredefinedMetricPairSpecification(PredefinedMetricPairSpecificationT &&value)
Aws::Utils::Json::JsonValue JsonValue