7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/autoscaling/model/CustomizedMetricSpecification.h>
9#include <aws/autoscaling/model/PredefinedMetricSpecification.h>
10#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
20namespace AutoScaling {
45 template <
typename PredefinedMetricSpecificationT = PredefinedMetricSpecification>
47 m_predefinedMetricSpecificationHasBeenSet =
true;
48 m_predefinedMetricSpecification = std::forward<PredefinedMetricSpecificationT>(value);
50 template <
typename PredefinedMetricSpecificationT = PredefinedMetricSpecification>
64 template <
typename CustomizedMetricSpecificationT = CustomizedMetricSpecification>
66 m_customizedMetricSpecificationHasBeenSet =
true;
67 m_customizedMetricSpecification = std::forward<CustomizedMetricSpecificationT>(value);
69 template <
typename CustomizedMetricSpecificationT = CustomizedMetricSpecification>
88 m_targetValueHasBeenSet =
true;
89 m_targetValue = value;
108 m_disableScaleInHasBeenSet =
true;
109 m_disableScaleIn = value;
121 double m_targetValue{0.0};
123 bool m_disableScaleIn{
false};
124 bool m_predefinedMetricSpecificationHasBeenSet =
false;
125 bool m_customizedMetricSpecificationHasBeenSet =
false;
126 bool m_targetValueHasBeenSet =
false;
127 bool m_disableScaleInHasBeenSet =
false;
TargetTrackingConfiguration & WithPredefinedMetricSpecification(PredefinedMetricSpecificationT &&value)
void SetPredefinedMetricSpecification(PredefinedMetricSpecificationT &&value)
void SetDisableScaleIn(bool value)
AWS_AUTOSCALING_API TargetTrackingConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool PredefinedMetricSpecificationHasBeenSet() const
const PredefinedMetricSpecification & GetPredefinedMetricSpecification() const
const CustomizedMetricSpecification & GetCustomizedMetricSpecification() const
AWS_AUTOSCALING_API TargetTrackingConfiguration()=default
AWS_AUTOSCALING_API TargetTrackingConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool DisableScaleInHasBeenSet() const
double GetTargetValue() const
void SetCustomizedMetricSpecification(CustomizedMetricSpecificationT &&value)
bool GetDisableScaleIn() const
bool CustomizedMetricSpecificationHasBeenSet() const
bool TargetValueHasBeenSet() const
TargetTrackingConfiguration & WithTargetValue(double value)
TargetTrackingConfiguration & WithCustomizedMetricSpecification(CustomizedMetricSpecificationT &&value)
TargetTrackingConfiguration & WithDisableScaleIn(bool value)
void SetTargetValue(double value)
std::basic_ostream< char, std::char_traits< char > > OStream