7#include <aws/autoscaling-plans/AutoScalingPlans_EXPORTS.h>
8#include <aws/autoscaling-plans/model/PredefinedScalingMetricSpecification.h>
9#include <aws/autoscaling-plans/model/CustomizedScalingMetricSpecification.h>
22namespace AutoScalingPlans
50 template<
typename PredefinedScalingMetricSpecificationT = PredefinedScalingMetricSpecification>
51 void SetPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT&& value) { m_predefinedScalingMetricSpecificationHasBeenSet =
true; m_predefinedScalingMetricSpecification = std::forward<PredefinedScalingMetricSpecificationT>(value); }
52 template<
typename PredefinedScalingMetricSpecificationT = PredefinedScalingMetricSpecification>
63 template<
typename CustomizedScalingMetricSpecificationT = CustomizedScalingMetricSpecification>
64 void SetCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT&& value) { m_customizedScalingMetricSpecificationHasBeenSet =
true; m_customizedScalingMetricSpecification = std::forward<CustomizedScalingMetricSpecificationT>(value); }
65 template<
typename CustomizedScalingMetricSpecificationT = CustomizedScalingMetricSpecification>
77 inline void SetTargetValue(
double value) { m_targetValueHasBeenSet =
true; m_targetValue = value; }
91 inline void SetDisableScaleIn(
bool value) { m_disableScaleInHasBeenSet =
true; m_disableScaleIn = value; }
108 inline void SetScaleOutCooldown(
int value) { m_scaleOutCooldownHasBeenSet =
true; m_scaleOutCooldown = value; }
126 inline void SetScaleInCooldown(
int value) { m_scaleInCooldownHasBeenSet =
true; m_scaleInCooldown = value; }
144 bool m_predefinedScalingMetricSpecificationHasBeenSet =
false;
147 bool m_customizedScalingMetricSpecificationHasBeenSet =
false;
149 double m_targetValue{0.0};
150 bool m_targetValueHasBeenSet =
false;
152 bool m_disableScaleIn{
false};
153 bool m_disableScaleInHasBeenSet =
false;
155 int m_scaleOutCooldown{0};
156 bool m_scaleOutCooldownHasBeenSet =
false;
158 int m_scaleInCooldown{0};
159 bool m_scaleInCooldownHasBeenSet =
false;
161 int m_estimatedInstanceWarmup{0};
162 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