7#include <aws/application-autoscaling/ApplicationAutoScaling_EXPORTS.h>
8#include <aws/application-autoscaling/model/PredictiveScalingMaxCapacityBreachBehavior.h>
9#include <aws/application-autoscaling/model/PredictiveScalingMetricSpecification.h>
10#include <aws/application-autoscaling/model/PredictiveScalingMode.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
22namespace ApplicationAutoScaling {
48 template <
typename MetricSpecificationsT = Aws::Vector<PredictiveScalingMetricSpecification>>
50 m_metricSpecificationsHasBeenSet =
true;
51 m_metricSpecifications = std::forward<MetricSpecificationsT>(value);
53 template <
typename MetricSpecificationsT = Aws::Vector<PredictiveScalingMetricSpecification>>
58 template <
typename MetricSpecificationsT = PredictiveScalingMetricSpecification>
60 m_metricSpecificationsHasBeenSet =
true;
61 m_metricSpecifications.emplace_back(std::forward<MetricSpecificationsT>(value));
74 m_modeHasBeenSet =
true;
92 m_schedulingBufferTimeHasBeenSet =
true;
93 m_schedulingBufferTime = value;
110 m_maxCapacityBreachBehaviorHasBeenSet =
true;
111 m_maxCapacityBreachBehavior = value;
132 m_maxCapacityBufferHasBeenSet =
true;
133 m_maxCapacityBuffer = value;
145 int m_schedulingBufferTime{0};
149 int m_maxCapacityBuffer{0};
150 bool m_metricSpecificationsHasBeenSet =
false;
151 bool m_modeHasBeenSet =
false;
152 bool m_schedulingBufferTimeHasBeenSet =
false;
153 bool m_maxCapacityBreachBehaviorHasBeenSet =
false;
154 bool m_maxCapacityBufferHasBeenSet =
false;
bool MaxCapacityBufferHasBeenSet() const
bool ModeHasBeenSet() const
const Aws::Vector< PredictiveScalingMetricSpecification > & GetMetricSpecifications() const
int GetMaxCapacityBuffer() const
bool MaxCapacityBreachBehaviorHasBeenSet() const
PredictiveScalingPolicyConfiguration & WithMode(PredictiveScalingMode value)
PredictiveScalingPolicyConfiguration & WithSchedulingBufferTime(int value)
void SetMetricSpecifications(MetricSpecificationsT &&value)
PredictiveScalingMaxCapacityBreachBehavior GetMaxCapacityBreachBehavior() const
PredictiveScalingMode GetMode() const
PredictiveScalingPolicyConfiguration & WithMetricSpecifications(MetricSpecificationsT &&value)
PredictiveScalingPolicyConfiguration & WithMaxCapacityBuffer(int value)
PredictiveScalingPolicyConfiguration & WithMaxCapacityBreachBehavior(PredictiveScalingMaxCapacityBreachBehavior value)
bool MetricSpecificationsHasBeenSet() const
void SetMaxCapacityBreachBehavior(PredictiveScalingMaxCapacityBreachBehavior value)
AWS_APPLICATIONAUTOSCALING_API PredictiveScalingPolicyConfiguration()=default
bool SchedulingBufferTimeHasBeenSet() const
PredictiveScalingPolicyConfiguration & AddMetricSpecifications(MetricSpecificationsT &&value)
void SetMode(PredictiveScalingMode value)
AWS_APPLICATIONAUTOSCALING_API PredictiveScalingPolicyConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_APPLICATIONAUTOSCALING_API PredictiveScalingPolicyConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
int GetSchedulingBufferTime() const
AWS_APPLICATIONAUTOSCALING_API Aws::Utils::Json::JsonValue Jsonize() const
void SetMaxCapacityBuffer(int value)
void SetSchedulingBufferTime(int value)
PredictiveScalingMaxCapacityBreachBehavior
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue