AWS SDK for C++

AWS SDK for C++ Version 1.11.752

Loading...
Searching...
No Matches
DataModel.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/DimensionMapping.h>
11#include <aws/timestream-write/model/MixedMeasureMapping.h>
12#include <aws/timestream-write/model/MultiMeasureMappings.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
32class DataModel {
33 public:
34 AWS_TIMESTREAMWRITE_API DataModel() = default;
35 AWS_TIMESTREAMWRITE_API DataModel(Aws::Utils::Json::JsonView jsonValue);
36 AWS_TIMESTREAMWRITE_API DataModel& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_TIMESTREAMWRITE_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetTimeColumn() const { return m_timeColumn; }
44 inline bool TimeColumnHasBeenSet() const { return m_timeColumnHasBeenSet; }
45 template <typename TimeColumnT = Aws::String>
46 void SetTimeColumn(TimeColumnT&& value) {
47 m_timeColumnHasBeenSet = true;
48 m_timeColumn = std::forward<TimeColumnT>(value);
49 }
50 template <typename TimeColumnT = Aws::String>
51 DataModel& WithTimeColumn(TimeColumnT&& value) {
52 SetTimeColumn(std::forward<TimeColumnT>(value));
53 return *this;
54 }
56
58
63 inline TimeUnit GetTimeUnit() const { return m_timeUnit; }
64 inline bool TimeUnitHasBeenSet() const { return m_timeUnitHasBeenSet; }
65 inline void SetTimeUnit(TimeUnit value) {
66 m_timeUnitHasBeenSet = true;
67 m_timeUnit = value;
68 }
70 SetTimeUnit(value);
71 return *this;
72 }
74
76
79 inline const Aws::Vector<DimensionMapping>& GetDimensionMappings() const { return m_dimensionMappings; }
80 inline bool DimensionMappingsHasBeenSet() const { return m_dimensionMappingsHasBeenSet; }
81 template <typename DimensionMappingsT = Aws::Vector<DimensionMapping>>
82 void SetDimensionMappings(DimensionMappingsT&& value) {
83 m_dimensionMappingsHasBeenSet = true;
84 m_dimensionMappings = std::forward<DimensionMappingsT>(value);
85 }
86 template <typename DimensionMappingsT = Aws::Vector<DimensionMapping>>
87 DataModel& WithDimensionMappings(DimensionMappingsT&& value) {
88 SetDimensionMappings(std::forward<DimensionMappingsT>(value));
89 return *this;
90 }
91 template <typename DimensionMappingsT = DimensionMapping>
92 DataModel& AddDimensionMappings(DimensionMappingsT&& value) {
93 m_dimensionMappingsHasBeenSet = true;
94 m_dimensionMappings.emplace_back(std::forward<DimensionMappingsT>(value));
95 return *this;
96 }
98
100
103 inline const MultiMeasureMappings& GetMultiMeasureMappings() const { return m_multiMeasureMappings; }
104 inline bool MultiMeasureMappingsHasBeenSet() const { return m_multiMeasureMappingsHasBeenSet; }
105 template <typename MultiMeasureMappingsT = MultiMeasureMappings>
106 void SetMultiMeasureMappings(MultiMeasureMappingsT&& value) {
107 m_multiMeasureMappingsHasBeenSet = true;
108 m_multiMeasureMappings = std::forward<MultiMeasureMappingsT>(value);
109 }
110 template <typename MultiMeasureMappingsT = MultiMeasureMappings>
111 DataModel& WithMultiMeasureMappings(MultiMeasureMappingsT&& value) {
112 SetMultiMeasureMappings(std::forward<MultiMeasureMappingsT>(value));
113 return *this;
114 }
116
118
121 inline const Aws::Vector<MixedMeasureMapping>& GetMixedMeasureMappings() const { return m_mixedMeasureMappings; }
122 inline bool MixedMeasureMappingsHasBeenSet() const { return m_mixedMeasureMappingsHasBeenSet; }
123 template <typename MixedMeasureMappingsT = Aws::Vector<MixedMeasureMapping>>
124 void SetMixedMeasureMappings(MixedMeasureMappingsT&& value) {
125 m_mixedMeasureMappingsHasBeenSet = true;
126 m_mixedMeasureMappings = std::forward<MixedMeasureMappingsT>(value);
127 }
128 template <typename MixedMeasureMappingsT = Aws::Vector<MixedMeasureMapping>>
129 DataModel& WithMixedMeasureMappings(MixedMeasureMappingsT&& value) {
130 SetMixedMeasureMappings(std::forward<MixedMeasureMappingsT>(value));
131 return *this;
132 }
133 template <typename MixedMeasureMappingsT = MixedMeasureMapping>
134 DataModel& AddMixedMeasureMappings(MixedMeasureMappingsT&& value) {
135 m_mixedMeasureMappingsHasBeenSet = true;
136 m_mixedMeasureMappings.emplace_back(std::forward<MixedMeasureMappingsT>(value));
137 return *this;
138 }
140
142
145 inline const Aws::String& GetMeasureNameColumn() const { return m_measureNameColumn; }
146 inline bool MeasureNameColumnHasBeenSet() const { return m_measureNameColumnHasBeenSet; }
147 template <typename MeasureNameColumnT = Aws::String>
148 void SetMeasureNameColumn(MeasureNameColumnT&& value) {
149 m_measureNameColumnHasBeenSet = true;
150 m_measureNameColumn = std::forward<MeasureNameColumnT>(value);
151 }
152 template <typename MeasureNameColumnT = Aws::String>
153 DataModel& WithMeasureNameColumn(MeasureNameColumnT&& value) {
154 SetMeasureNameColumn(std::forward<MeasureNameColumnT>(value));
155 return *this;
156 }
158 private:
159 Aws::String m_timeColumn;
160
161 TimeUnit m_timeUnit{TimeUnit::NOT_SET};
162
163 Aws::Vector<DimensionMapping> m_dimensionMappings;
164
165 MultiMeasureMappings m_multiMeasureMappings;
166
167 Aws::Vector<MixedMeasureMapping> m_mixedMeasureMappings;
168
169 Aws::String m_measureNameColumn;
170 bool m_timeColumnHasBeenSet = false;
171 bool m_timeUnitHasBeenSet = false;
172 bool m_dimensionMappingsHasBeenSet = false;
173 bool m_multiMeasureMappingsHasBeenSet = false;
174 bool m_mixedMeasureMappingsHasBeenSet = false;
175 bool m_measureNameColumnHasBeenSet = false;
176};
177
178} // namespace Model
179} // namespace TimestreamWrite
180} // namespace Aws
const Aws::Vector< DimensionMapping > & GetDimensionMappings() const
Definition DataModel.h:79
const Aws::Vector< MixedMeasureMapping > & GetMixedMeasureMappings() const
Definition DataModel.h:121
void SetMixedMeasureMappings(MixedMeasureMappingsT &&value)
Definition DataModel.h:124
AWS_TIMESTREAMWRITE_API DataModel & operator=(Aws::Utils::Json::JsonView jsonValue)
DataModel & WithMixedMeasureMappings(MixedMeasureMappingsT &&value)
Definition DataModel.h:129
const Aws::String & GetMeasureNameColumn() const
Definition DataModel.h:145
DataModel & WithTimeColumn(TimeColumnT &&value)
Definition DataModel.h:51
DataModel & WithMultiMeasureMappings(MultiMeasureMappingsT &&value)
Definition DataModel.h:111
DataModel & WithDimensionMappings(DimensionMappingsT &&value)
Definition DataModel.h:87
const MultiMeasureMappings & GetMultiMeasureMappings() const
Definition DataModel.h:103
DataModel & AddDimensionMappings(DimensionMappingsT &&value)
Definition DataModel.h:92
DataModel & AddMixedMeasureMappings(MixedMeasureMappingsT &&value)
Definition DataModel.h:134
const Aws::String & GetTimeColumn() const
Definition DataModel.h:43
void SetDimensionMappings(DimensionMappingsT &&value)
Definition DataModel.h:82
AWS_TIMESTREAMWRITE_API DataModel()=default
DataModel & WithTimeUnit(TimeUnit value)
Definition DataModel.h:69
DataModel & WithMeasureNameColumn(MeasureNameColumnT &&value)
Definition DataModel.h:153
void SetMultiMeasureMappings(MultiMeasureMappingsT &&value)
Definition DataModel.h:106
void SetMeasureNameColumn(MeasureNameColumnT &&value)
Definition DataModel.h:148
AWS_TIMESTREAMWRITE_API DataModel(Aws::Utils::Json::JsonView jsonValue)
AWS_TIMESTREAMWRITE_API Aws::Utils::Json::JsonValue Jsonize() const
void SetTimeColumn(TimeColumnT &&value)
Definition DataModel.h:46
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue