AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PredictiveScalingMetricSpecification.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/autoscaling/model/PredictiveScalingPredefinedMetricPair.h>
10#include <aws/autoscaling/model/PredictiveScalingPredefinedScalingMetric.h>
11#include <aws/autoscaling/model/PredictiveScalingPredefinedLoadMetric.h>
12#include <aws/autoscaling/model/PredictiveScalingCustomizedScalingMetric.h>
13#include <aws/autoscaling/model/PredictiveScalingCustomizedLoadMetric.h>
14#include <aws/autoscaling/model/PredictiveScalingCustomizedCapacityMetric.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace AutoScaling
27{
28namespace Model
29{
30
66 {
67 public:
68 AWS_AUTOSCALING_API PredictiveScalingMetricSpecification() = default;
71
72 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
73 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
74
75
77
85 inline double GetTargetValue() const { return m_targetValue; }
86 inline bool TargetValueHasBeenSet() const { return m_targetValueHasBeenSet; }
87 inline void SetTargetValue(double value) { m_targetValueHasBeenSet = true; m_targetValue = value; }
88 inline PredictiveScalingMetricSpecification& WithTargetValue(double value) { SetTargetValue(value); return *this;}
90
92
96 inline const PredictiveScalingPredefinedMetricPair& GetPredefinedMetricPairSpecification() const { return m_predefinedMetricPairSpecification; }
97 inline bool PredefinedMetricPairSpecificationHasBeenSet() const { return m_predefinedMetricPairSpecificationHasBeenSet; }
98 template<typename PredefinedMetricPairSpecificationT = PredictiveScalingPredefinedMetricPair>
99 void SetPredefinedMetricPairSpecification(PredefinedMetricPairSpecificationT&& value) { m_predefinedMetricPairSpecificationHasBeenSet = true; m_predefinedMetricPairSpecification = std::forward<PredefinedMetricPairSpecificationT>(value); }
100 template<typename PredefinedMetricPairSpecificationT = PredictiveScalingPredefinedMetricPair>
101 PredictiveScalingMetricSpecification& WithPredefinedMetricPairSpecification(PredefinedMetricPairSpecificationT&& value) { SetPredefinedMetricPairSpecification(std::forward<PredefinedMetricPairSpecificationT>(value)); return *this;}
103
105
108 inline const PredictiveScalingPredefinedScalingMetric& GetPredefinedScalingMetricSpecification() const { return m_predefinedScalingMetricSpecification; }
109 inline bool PredefinedScalingMetricSpecificationHasBeenSet() const { return m_predefinedScalingMetricSpecificationHasBeenSet; }
110 template<typename PredefinedScalingMetricSpecificationT = PredictiveScalingPredefinedScalingMetric>
111 void SetPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT&& value) { m_predefinedScalingMetricSpecificationHasBeenSet = true; m_predefinedScalingMetricSpecification = std::forward<PredefinedScalingMetricSpecificationT>(value); }
112 template<typename PredefinedScalingMetricSpecificationT = PredictiveScalingPredefinedScalingMetric>
113 PredictiveScalingMetricSpecification& WithPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT&& value) { SetPredefinedScalingMetricSpecification(std::forward<PredefinedScalingMetricSpecificationT>(value)); return *this;}
115
117
120 inline const PredictiveScalingPredefinedLoadMetric& GetPredefinedLoadMetricSpecification() const { return m_predefinedLoadMetricSpecification; }
121 inline bool PredefinedLoadMetricSpecificationHasBeenSet() const { return m_predefinedLoadMetricSpecificationHasBeenSet; }
122 template<typename PredefinedLoadMetricSpecificationT = PredictiveScalingPredefinedLoadMetric>
123 void SetPredefinedLoadMetricSpecification(PredefinedLoadMetricSpecificationT&& value) { m_predefinedLoadMetricSpecificationHasBeenSet = true; m_predefinedLoadMetricSpecification = std::forward<PredefinedLoadMetricSpecificationT>(value); }
124 template<typename PredefinedLoadMetricSpecificationT = PredictiveScalingPredefinedLoadMetric>
125 PredictiveScalingMetricSpecification& WithPredefinedLoadMetricSpecification(PredefinedLoadMetricSpecificationT&& value) { SetPredefinedLoadMetricSpecification(std::forward<PredefinedLoadMetricSpecificationT>(value)); return *this;}
127
129
132 inline const PredictiveScalingCustomizedScalingMetric& GetCustomizedScalingMetricSpecification() const { return m_customizedScalingMetricSpecification; }
133 inline bool CustomizedScalingMetricSpecificationHasBeenSet() const { return m_customizedScalingMetricSpecificationHasBeenSet; }
134 template<typename CustomizedScalingMetricSpecificationT = PredictiveScalingCustomizedScalingMetric>
135 void SetCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT&& value) { m_customizedScalingMetricSpecificationHasBeenSet = true; m_customizedScalingMetricSpecification = std::forward<CustomizedScalingMetricSpecificationT>(value); }
136 template<typename CustomizedScalingMetricSpecificationT = PredictiveScalingCustomizedScalingMetric>
137 PredictiveScalingMetricSpecification& WithCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT&& value) { SetCustomizedScalingMetricSpecification(std::forward<CustomizedScalingMetricSpecificationT>(value)); return *this;}
139
141
144 inline const PredictiveScalingCustomizedLoadMetric& GetCustomizedLoadMetricSpecification() const { return m_customizedLoadMetricSpecification; }
145 inline bool CustomizedLoadMetricSpecificationHasBeenSet() const { return m_customizedLoadMetricSpecificationHasBeenSet; }
146 template<typename CustomizedLoadMetricSpecificationT = PredictiveScalingCustomizedLoadMetric>
147 void SetCustomizedLoadMetricSpecification(CustomizedLoadMetricSpecificationT&& value) { m_customizedLoadMetricSpecificationHasBeenSet = true; m_customizedLoadMetricSpecification = std::forward<CustomizedLoadMetricSpecificationT>(value); }
148 template<typename CustomizedLoadMetricSpecificationT = PredictiveScalingCustomizedLoadMetric>
149 PredictiveScalingMetricSpecification& WithCustomizedLoadMetricSpecification(CustomizedLoadMetricSpecificationT&& value) { SetCustomizedLoadMetricSpecification(std::forward<CustomizedLoadMetricSpecificationT>(value)); return *this;}
151
153
156 inline const PredictiveScalingCustomizedCapacityMetric& GetCustomizedCapacityMetricSpecification() const { return m_customizedCapacityMetricSpecification; }
157 inline bool CustomizedCapacityMetricSpecificationHasBeenSet() const { return m_customizedCapacityMetricSpecificationHasBeenSet; }
158 template<typename CustomizedCapacityMetricSpecificationT = PredictiveScalingCustomizedCapacityMetric>
159 void SetCustomizedCapacityMetricSpecification(CustomizedCapacityMetricSpecificationT&& value) { m_customizedCapacityMetricSpecificationHasBeenSet = true; m_customizedCapacityMetricSpecification = std::forward<CustomizedCapacityMetricSpecificationT>(value); }
160 template<typename CustomizedCapacityMetricSpecificationT = PredictiveScalingCustomizedCapacityMetric>
161 PredictiveScalingMetricSpecification& WithCustomizedCapacityMetricSpecification(CustomizedCapacityMetricSpecificationT&& value) { SetCustomizedCapacityMetricSpecification(std::forward<CustomizedCapacityMetricSpecificationT>(value)); return *this;}
163 private:
164
165 double m_targetValue{0.0};
166 bool m_targetValueHasBeenSet = false;
167
168 PredictiveScalingPredefinedMetricPair m_predefinedMetricPairSpecification;
169 bool m_predefinedMetricPairSpecificationHasBeenSet = false;
170
171 PredictiveScalingPredefinedScalingMetric m_predefinedScalingMetricSpecification;
172 bool m_predefinedScalingMetricSpecificationHasBeenSet = false;
173
174 PredictiveScalingPredefinedLoadMetric m_predefinedLoadMetricSpecification;
175 bool m_predefinedLoadMetricSpecificationHasBeenSet = false;
176
177 PredictiveScalingCustomizedScalingMetric m_customizedScalingMetricSpecification;
178 bool m_customizedScalingMetricSpecificationHasBeenSet = false;
179
180 PredictiveScalingCustomizedLoadMetric m_customizedLoadMetricSpecification;
181 bool m_customizedLoadMetricSpecificationHasBeenSet = false;
182
183 PredictiveScalingCustomizedCapacityMetric m_customizedCapacityMetricSpecification;
184 bool m_customizedCapacityMetricSpecificationHasBeenSet = false;
185 };
186
187} // namespace Model
188} // namespace AutoScaling
189} // namespace Aws
PredictiveScalingMetricSpecification & WithCustomizedLoadMetricSpecification(CustomizedLoadMetricSpecificationT &&value)
AWS_AUTOSCALING_API PredictiveScalingMetricSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
PredictiveScalingMetricSpecification & WithPredefinedMetricPairSpecification(PredefinedMetricPairSpecificationT &&value)
PredictiveScalingMetricSpecification & WithPredefinedLoadMetricSpecification(PredefinedLoadMetricSpecificationT &&value)
const PredictiveScalingCustomizedScalingMetric & GetCustomizedScalingMetricSpecification() const
void SetCustomizedCapacityMetricSpecification(CustomizedCapacityMetricSpecificationT &&value)
PredictiveScalingMetricSpecification & WithPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT &&value)
AWS_AUTOSCALING_API PredictiveScalingMetricSpecification()=default
void SetPredefinedLoadMetricSpecification(PredefinedLoadMetricSpecificationT &&value)
void SetPredefinedMetricPairSpecification(PredefinedMetricPairSpecificationT &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetPredefinedScalingMetricSpecification(PredefinedScalingMetricSpecificationT &&value)
const PredictiveScalingPredefinedLoadMetric & GetPredefinedLoadMetricSpecification() const
AWS_AUTOSCALING_API PredictiveScalingMetricSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
PredictiveScalingMetricSpecification & WithCustomizedCapacityMetricSpecification(CustomizedCapacityMetricSpecificationT &&value)
const PredictiveScalingCustomizedCapacityMetric & GetCustomizedCapacityMetricSpecification() const
const PredictiveScalingPredefinedMetricPair & GetPredefinedMetricPairSpecification() const
void SetCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT &&value)
void SetCustomizedLoadMetricSpecification(CustomizedLoadMetricSpecificationT &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
PredictiveScalingMetricSpecification & WithCustomizedScalingMetricSpecification(CustomizedScalingMetricSpecificationT &&value)
const PredictiveScalingCustomizedLoadMetric & GetCustomizedLoadMetricSpecification() const
const PredictiveScalingPredefinedScalingMetric & GetPredefinedScalingMetricSpecification() const
std::basic_ostream< char, std::char_traits< char > > OStream