AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
ECSServiceProjectedMetric.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/ECSServiceMetricName.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/DateTime.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ComputeOptimizer
24{
25namespace Model
26{
27
37 {
38 public:
39 AWS_COMPUTEOPTIMIZER_API ECSServiceProjectedMetric() = default;
40 AWS_COMPUTEOPTIMIZER_API ECSServiceProjectedMetric(Aws::Utils::Json::JsonView jsonValue);
42 AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
53 inline ECSServiceMetricName GetName() const { return m_name; }
54 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
55 inline void SetName(ECSServiceMetricName value) { m_nameHasBeenSet = true; m_name = value; }
56 inline ECSServiceProjectedMetric& WithName(ECSServiceMetricName value) { SetName(value); return *this;}
58
60
63 inline const Aws::Vector<Aws::Utils::DateTime>& GetTimestamps() const { return m_timestamps; }
64 inline bool TimestampsHasBeenSet() const { return m_timestampsHasBeenSet; }
65 template<typename TimestampsT = Aws::Vector<Aws::Utils::DateTime>>
66 void SetTimestamps(TimestampsT&& value) { m_timestampsHasBeenSet = true; m_timestamps = std::forward<TimestampsT>(value); }
67 template<typename TimestampsT = Aws::Vector<Aws::Utils::DateTime>>
68 ECSServiceProjectedMetric& WithTimestamps(TimestampsT&& value) { SetTimestamps(std::forward<TimestampsT>(value)); return *this;}
69 template<typename TimestampsT = Aws::Utils::DateTime>
70 ECSServiceProjectedMetric& AddTimestamps(TimestampsT&& value) { m_timestampsHasBeenSet = true; m_timestamps.emplace_back(std::forward<TimestampsT>(value)); return *this; }
72
74
77 inline const Aws::Vector<double>& GetUpperBoundValues() const { return m_upperBoundValues; }
78 inline bool UpperBoundValuesHasBeenSet() const { return m_upperBoundValuesHasBeenSet; }
79 template<typename UpperBoundValuesT = Aws::Vector<double>>
80 void SetUpperBoundValues(UpperBoundValuesT&& value) { m_upperBoundValuesHasBeenSet = true; m_upperBoundValues = std::forward<UpperBoundValuesT>(value); }
81 template<typename UpperBoundValuesT = Aws::Vector<double>>
82 ECSServiceProjectedMetric& WithUpperBoundValues(UpperBoundValuesT&& value) { SetUpperBoundValues(std::forward<UpperBoundValuesT>(value)); return *this;}
83 inline ECSServiceProjectedMetric& AddUpperBoundValues(double value) { m_upperBoundValuesHasBeenSet = true; m_upperBoundValues.push_back(value); return *this; }
85
87
90 inline const Aws::Vector<double>& GetLowerBoundValues() const { return m_lowerBoundValues; }
91 inline bool LowerBoundValuesHasBeenSet() const { return m_lowerBoundValuesHasBeenSet; }
92 template<typename LowerBoundValuesT = Aws::Vector<double>>
93 void SetLowerBoundValues(LowerBoundValuesT&& value) { m_lowerBoundValuesHasBeenSet = true; m_lowerBoundValues = std::forward<LowerBoundValuesT>(value); }
94 template<typename LowerBoundValuesT = Aws::Vector<double>>
95 ECSServiceProjectedMetric& WithLowerBoundValues(LowerBoundValuesT&& value) { SetLowerBoundValues(std::forward<LowerBoundValuesT>(value)); return *this;}
96 inline ECSServiceProjectedMetric& AddLowerBoundValues(double value) { m_lowerBoundValuesHasBeenSet = true; m_lowerBoundValues.push_back(value); return *this; }
98 private:
99
101 bool m_nameHasBeenSet = false;
102
104 bool m_timestampsHasBeenSet = false;
105
106 Aws::Vector<double> m_upperBoundValues;
107 bool m_upperBoundValuesHasBeenSet = false;
108
109 Aws::Vector<double> m_lowerBoundValues;
110 bool m_lowerBoundValuesHasBeenSet = false;
111 };
112
113} // namespace Model
114} // namespace ComputeOptimizer
115} // namespace Aws
ECSServiceProjectedMetric & WithName(ECSServiceMetricName value)
AWS_COMPUTEOPTIMIZER_API ECSServiceProjectedMetric()=default
const Aws::Vector< Aws::Utils::DateTime > & GetTimestamps() const
AWS_COMPUTEOPTIMIZER_API ECSServiceProjectedMetric & operator=(Aws::Utils::Json::JsonView jsonValue)
ECSServiceProjectedMetric & AddTimestamps(TimestampsT &&value)
AWS_COMPUTEOPTIMIZER_API ECSServiceProjectedMetric(Aws::Utils::Json::JsonView jsonValue)
ECSServiceProjectedMetric & WithUpperBoundValues(UpperBoundValuesT &&value)
ECSServiceProjectedMetric & WithLowerBoundValues(LowerBoundValuesT &&value)
ECSServiceProjectedMetric & AddLowerBoundValues(double value)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
ECSServiceProjectedMetric & WithTimestamps(TimestampsT &&value)
ECSServiceProjectedMetric & AddUpperBoundValues(double value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue