AWS SDK for C++

AWS SDK for C++ Version 1.11.757

Loading...
Searching...
No Matches
Record.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/timestream-write/TimestreamWrite_EXPORTS.h>
10#include <aws/timestream-write/model/Dimension.h>
11#include <aws/timestream-write/model/MeasureValue.h>
12#include <aws/timestream-write/model/MeasureValueType.h>
13#include <aws/timestream-write/model/TimeUnit.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace TimestreamWrite {
25namespace Model {
26
47class Record {
48 public:
49 AWS_TIMESTREAMWRITE_API Record() = default;
50 AWS_TIMESTREAMWRITE_API Record(Aws::Utils::Json::JsonView jsonValue);
51 AWS_TIMESTREAMWRITE_API Record& operator=(Aws::Utils::Json::JsonView jsonValue);
52 AWS_TIMESTREAMWRITE_API Aws::Utils::Json::JsonValue Jsonize() const;
53
55
58 inline const Aws::Vector<Dimension>& GetDimensions() const { return m_dimensions; }
59 inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; }
60 template <typename DimensionsT = Aws::Vector<Dimension>>
61 void SetDimensions(DimensionsT&& value) {
62 m_dimensionsHasBeenSet = true;
63 m_dimensions = std::forward<DimensionsT>(value);
64 }
65 template <typename DimensionsT = Aws::Vector<Dimension>>
66 Record& WithDimensions(DimensionsT&& value) {
67 SetDimensions(std::forward<DimensionsT>(value));
68 return *this;
69 }
70 template <typename DimensionsT = Dimension>
71 Record& AddDimensions(DimensionsT&& value) {
72 m_dimensionsHasBeenSet = true;
73 m_dimensions.emplace_back(std::forward<DimensionsT>(value));
74 return *this;
75 }
77
79
84 inline const Aws::String& GetMeasureName() const { return m_measureName; }
85 inline bool MeasureNameHasBeenSet() const { return m_measureNameHasBeenSet; }
86 template <typename MeasureNameT = Aws::String>
87 void SetMeasureName(MeasureNameT&& value) {
88 m_measureNameHasBeenSet = true;
89 m_measureName = std::forward<MeasureNameT>(value);
90 }
91 template <typename MeasureNameT = Aws::String>
92 Record& WithMeasureName(MeasureNameT&& value) {
93 SetMeasureName(std::forward<MeasureNameT>(value));
94 return *this;
95 }
97
99
102 inline const Aws::String& GetMeasureValue() const { return m_measureValue; }
103 inline bool MeasureValueHasBeenSet() const { return m_measureValueHasBeenSet; }
104 template <typename MeasureValueT = Aws::String>
105 void SetMeasureValue(MeasureValueT&& value) {
106 m_measureValueHasBeenSet = true;
107 m_measureValue = std::forward<MeasureValueT>(value);
108 }
109 template <typename MeasureValueT = Aws::String>
110 Record& WithMeasureValue(MeasureValueT&& value) {
111 SetMeasureValue(std::forward<MeasureValueT>(value));
112 return *this;
113 }
115
117
123 inline MeasureValueType GetMeasureValueType() const { return m_measureValueType; }
124 inline bool MeasureValueTypeHasBeenSet() const { return m_measureValueTypeHasBeenSet; }
126 m_measureValueTypeHasBeenSet = true;
127 m_measureValueType = value;
128 }
130 SetMeasureValueType(value);
131 return *this;
132 }
134
136
142 inline const Aws::String& GetTime() const { return m_time; }
143 inline bool TimeHasBeenSet() const { return m_timeHasBeenSet; }
144 template <typename TimeT = Aws::String>
145 void SetTime(TimeT&& value) {
146 m_timeHasBeenSet = true;
147 m_time = std::forward<TimeT>(value);
148 }
149 template <typename TimeT = Aws::String>
150 Record& WithTime(TimeT&& value) {
151 SetTime(std::forward<TimeT>(value));
152 return *this;
153 }
155
157
162 inline TimeUnit GetTimeUnit() const { return m_timeUnit; }
163 inline bool TimeUnitHasBeenSet() const { return m_timeUnitHasBeenSet; }
164 inline void SetTimeUnit(TimeUnit value) {
165 m_timeUnitHasBeenSet = true;
166 m_timeUnit = value;
167 }
168 inline Record& WithTimeUnit(TimeUnit value) {
169 SetTimeUnit(value);
170 return *this;
171 }
173
175
183 inline long long GetVersion() const { return m_version; }
184 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
185 inline void SetVersion(long long value) {
186 m_versionHasBeenSet = true;
187 m_version = value;
188 }
189 inline Record& WithVersion(long long value) {
190 SetVersion(value);
191 return *this;
192 }
194
196
201 inline const Aws::Vector<MeasureValue>& GetMeasureValues() const { return m_measureValues; }
202 inline bool MeasureValuesHasBeenSet() const { return m_measureValuesHasBeenSet; }
203 template <typename MeasureValuesT = Aws::Vector<MeasureValue>>
204 void SetMeasureValues(MeasureValuesT&& value) {
205 m_measureValuesHasBeenSet = true;
206 m_measureValues = std::forward<MeasureValuesT>(value);
207 }
208 template <typename MeasureValuesT = Aws::Vector<MeasureValue>>
209 Record& WithMeasureValues(MeasureValuesT&& value) {
210 SetMeasureValues(std::forward<MeasureValuesT>(value));
211 return *this;
212 }
213 template <typename MeasureValuesT = MeasureValue>
214 Record& AddMeasureValues(MeasureValuesT&& value) {
215 m_measureValuesHasBeenSet = true;
216 m_measureValues.emplace_back(std::forward<MeasureValuesT>(value));
217 return *this;
218 }
220 private:
221 Aws::Vector<Dimension> m_dimensions;
222
223 Aws::String m_measureName;
224
225 Aws::String m_measureValue;
226
228
229 Aws::String m_time;
230
231 TimeUnit m_timeUnit{TimeUnit::NOT_SET};
232
233 long long m_version{0};
234
235 Aws::Vector<MeasureValue> m_measureValues;
236 bool m_dimensionsHasBeenSet = false;
237 bool m_measureNameHasBeenSet = false;
238 bool m_measureValueHasBeenSet = false;
239 bool m_measureValueTypeHasBeenSet = false;
240 bool m_timeHasBeenSet = false;
241 bool m_timeUnitHasBeenSet = false;
242 bool m_versionHasBeenSet = false;
243 bool m_measureValuesHasBeenSet = false;
244};
245
246} // namespace Model
247} // namespace TimestreamWrite
248} // namespace Aws
bool MeasureValueTypeHasBeenSet() const
Definition Record.h:124
Record & WithMeasureName(MeasureNameT &&value)
Definition Record.h:92
Record & AddDimensions(DimensionsT &&value)
Definition Record.h:71
Record & WithDimensions(DimensionsT &&value)
Definition Record.h:66
void SetMeasureValueType(MeasureValueType value)
Definition Record.h:125
Record & AddMeasureValues(MeasureValuesT &&value)
Definition Record.h:214
void SetDimensions(DimensionsT &&value)
Definition Record.h:61
Record & WithMeasureValue(MeasureValueT &&value)
Definition Record.h:110
const Aws::String & GetMeasureName() const
Definition Record.h:84
Record & WithTimeUnit(TimeUnit value)
Definition Record.h:168
void SetMeasureValues(MeasureValuesT &&value)
Definition Record.h:204
AWS_TIMESTREAMWRITE_API Record(Aws::Utils::Json::JsonView jsonValue)
void SetMeasureName(MeasureNameT &&value)
Definition Record.h:87
Record & WithVersion(long long value)
Definition Record.h:189
void SetTime(TimeT &&value)
Definition Record.h:145
AWS_TIMESTREAMWRITE_API Record & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetTime() const
Definition Record.h:142
void SetMeasureValue(MeasureValueT &&value)
Definition Record.h:105
const Aws::Vector< MeasureValue > & GetMeasureValues() const
Definition Record.h:201
Record & WithMeasureValues(MeasureValuesT &&value)
Definition Record.h:209
void SetVersion(long long value)
Definition Record.h:185
AWS_TIMESTREAMWRITE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Dimension > & GetDimensions() const
Definition Record.h:58
const Aws::String & GetMeasureValue() const
Definition Record.h:102
Record & WithTime(TimeT &&value)
Definition Record.h:150
AWS_TIMESTREAMWRITE_API Record()=default
MeasureValueType GetMeasureValueType() const
Definition Record.h:123
Record & WithMeasureValueType(MeasureValueType value)
Definition Record.h:129
void SetTimeUnit(TimeUnit value)
Definition Record.h:164
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue