AWS SDK for C++

AWS SDK for C++ Version 1.11.749

Loading...
Searching...
No Matches
LoadForecast.h
1
6#pragma once
7#include <aws/application-autoscaling/ApplicationAutoScaling_EXPORTS.h>
8#include <aws/application-autoscaling/model/PredictiveScalingMetricSpecification.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace ApplicationAutoScaling {
22namespace Model {
23
33 public:
34 AWS_APPLICATIONAUTOSCALING_API LoadForecast() = default;
35 AWS_APPLICATIONAUTOSCALING_API LoadForecast(Aws::Utils::Json::JsonView jsonValue);
36 AWS_APPLICATIONAUTOSCALING_API LoadForecast& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_APPLICATIONAUTOSCALING_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::Vector<Aws::Utils::DateTime>& GetTimestamps() const { return m_timestamps; }
44 inline bool TimestampsHasBeenSet() const { return m_timestampsHasBeenSet; }
45 template <typename TimestampsT = Aws::Vector<Aws::Utils::DateTime>>
46 void SetTimestamps(TimestampsT&& value) {
47 m_timestampsHasBeenSet = true;
48 m_timestamps = std::forward<TimestampsT>(value);
49 }
50 template <typename TimestampsT = Aws::Vector<Aws::Utils::DateTime>>
51 LoadForecast& WithTimestamps(TimestampsT&& value) {
52 SetTimestamps(std::forward<TimestampsT>(value));
53 return *this;
54 }
55 template <typename TimestampsT = Aws::Utils::DateTime>
56 LoadForecast& AddTimestamps(TimestampsT&& value) {
57 m_timestampsHasBeenSet = true;
58 m_timestamps.emplace_back(std::forward<TimestampsT>(value));
59 return *this;
60 }
62
64
67 inline const Aws::Vector<double>& GetValues() const { return m_values; }
68 inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; }
69 template <typename ValuesT = Aws::Vector<double>>
70 void SetValues(ValuesT&& value) {
71 m_valuesHasBeenSet = true;
72 m_values = std::forward<ValuesT>(value);
73 }
74 template <typename ValuesT = Aws::Vector<double>>
75 LoadForecast& WithValues(ValuesT&& value) {
76 SetValues(std::forward<ValuesT>(value));
77 return *this;
78 }
79 inline LoadForecast& AddValues(double value) {
80 m_valuesHasBeenSet = true;
81 m_values.push_back(value);
82 return *this;
83 }
85
87
90 inline const PredictiveScalingMetricSpecification& GetMetricSpecification() const { return m_metricSpecification; }
91 inline bool MetricSpecificationHasBeenSet() const { return m_metricSpecificationHasBeenSet; }
92 template <typename MetricSpecificationT = PredictiveScalingMetricSpecification>
93 void SetMetricSpecification(MetricSpecificationT&& value) {
94 m_metricSpecificationHasBeenSet = true;
95 m_metricSpecification = std::forward<MetricSpecificationT>(value);
96 }
97 template <typename MetricSpecificationT = PredictiveScalingMetricSpecification>
98 LoadForecast& WithMetricSpecification(MetricSpecificationT&& value) {
99 SetMetricSpecification(std::forward<MetricSpecificationT>(value));
100 return *this;
101 }
103 private:
105
106 Aws::Vector<double> m_values;
107
108 PredictiveScalingMetricSpecification m_metricSpecification;
109 bool m_timestampsHasBeenSet = false;
110 bool m_valuesHasBeenSet = false;
111 bool m_metricSpecificationHasBeenSet = false;
112};
113
114} // namespace Model
115} // namespace ApplicationAutoScaling
116} // namespace Aws
AWS_APPLICATIONAUTOSCALING_API LoadForecast(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::Utils::DateTime > & GetTimestamps() const
AWS_APPLICATIONAUTOSCALING_API Aws::Utils::Json::JsonValue Jsonize() const
LoadForecast & WithMetricSpecification(MetricSpecificationT &&value)
AWS_APPLICATIONAUTOSCALING_API LoadForecast & operator=(Aws::Utils::Json::JsonView jsonValue)
const PredictiveScalingMetricSpecification & GetMetricSpecification() const
void SetMetricSpecification(MetricSpecificationT &&value)
LoadForecast & WithValues(ValuesT &&value)
AWS_APPLICATIONAUTOSCALING_API LoadForecast()=default
LoadForecast & AddTimestamps(TimestampsT &&value)
LoadForecast & WithTimestamps(TimestampsT &&value)
const Aws::Vector< double > & GetValues() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue