7#include <aws/autoscaling-plans/AutoScalingPlans_EXPORTS.h>
8#include <aws/autoscaling-plans/model/CustomizedScalingMetricSpecification.h>
9#include <aws/autoscaling-plans/model/PredefinedScalingMetricSpecification.h>
20namespace AutoScalingPlans {
43 return m_predefinedScalingMetricSpecification;
46 template <
typename PredefinedScalingMetricSpecificationT = PredefinedScalingMetricSpecification>
48 m_predefinedScalingMetricSpecificationHasBeenSet =
true;
49 m_predefinedScalingMetricSpecification = std::forward<PredefinedScalingMetricSpecificationT>(value);
51 template <
typename PredefinedScalingMetricSpecificationT = PredefinedScalingMetricSpecification>
64 return m_customizedScalingMetricSpecification;
67 template <
typename CustomizedScalingMetricSpecificationT = CustomizedScalingMetricSpecification>
69 m_customizedScalingMetricSpecificationHasBeenSet =
true;
70 m_customizedScalingMetricSpecification = std::forward<CustomizedScalingMetricSpecificationT>(value);
72 template <
typename CustomizedScalingMetricSpecificationT = CustomizedScalingMetricSpecification>
88 m_targetValueHasBeenSet =
true;
89 m_targetValue = value;
108 m_disableScaleInHasBeenSet =
true;
109 m_disableScaleIn = value;
131 m_scaleOutCooldownHasBeenSet =
true;
132 m_scaleOutCooldown = value;
155 m_scaleInCooldownHasBeenSet =
true;
156 m_scaleInCooldown = value;
173 m_estimatedInstanceWarmupHasBeenSet =
true;
174 m_estimatedInstanceWarmup = value;
186 double m_targetValue{0.0};
188 bool m_disableScaleIn{
false};
190 int m_scaleOutCooldown{0};
192 int m_scaleInCooldown{0};
194 int m_estimatedInstanceWarmup{0};
195 bool m_predefinedScalingMetricSpecificationHasBeenSet =
false;
196 bool m_customizedScalingMetricSpecificationHasBeenSet =
false;
197 bool m_targetValueHasBeenSet =
false;
198 bool m_disableScaleInHasBeenSet =
false;
199 bool m_scaleOutCooldownHasBeenSet =
false;
200 bool m_scaleInCooldownHasBeenSet =
false;
201 bool m_estimatedInstanceWarmupHasBeenSet =
false;
int GetScaleInCooldown() const
TargetTrackingConfiguration & WithScaleInCooldown(int value)
bool TargetValueHasBeenSet() const
int GetEstimatedInstanceWarmup() const
void SetCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT &&value)
bool GetDisableScaleIn() const
TargetTrackingConfiguration & WithPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT &&value)
double GetTargetValue() const
void SetPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT &&value)
AWS_AUTOSCALINGPLANS_API TargetTrackingConfiguration()=default
bool PredefinedScalingMetricSpecificationHasBeenSet() const
TargetTrackingConfiguration & WithScaleOutCooldown(int value)
void SetScaleOutCooldown(int value)
bool ScaleOutCooldownHasBeenSet() const
void SetTargetValue(double value)
TargetTrackingConfiguration & WithTargetValue(double value)
bool CustomizedScalingMetricSpecificationHasBeenSet() const
TargetTrackingConfiguration & WithCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT &&value)
AWS_AUTOSCALINGPLANS_API TargetTrackingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const
const PredefinedScalingMetricSpecification & GetPredefinedScalingMetricSpecification() const
TargetTrackingConfiguration & WithEstimatedInstanceWarmup(int value)
void SetEstimatedInstanceWarmup(int value)
AWS_AUTOSCALINGPLANS_API TargetTrackingConfiguration(Aws::Utils::Json::JsonView jsonValue)
TargetTrackingConfiguration & WithDisableScaleIn(bool value)
bool DisableScaleInHasBeenSet() const
const CustomizedScalingMetricSpecification & GetCustomizedScalingMetricSpecification() const
bool EstimatedInstanceWarmupHasBeenSet() const
int GetScaleOutCooldown() const
void SetDisableScaleIn(bool value)
bool ScaleInCooldownHasBeenSet() const
void SetScaleInCooldown(int value)
Aws::Utils::Json::JsonValue JsonValue