7#include <aws/core/utils/memory/stl/AWSAllocator.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/timestream-query/TimestreamQuery_EXPORTS.h>
11#include <aws/timestream-query/model/TimeSeriesDataPoint.h>
22namespace TimestreamQuery {
25class TimeSeriesDataPoint;
35 AWS_TIMESTREAMQUERY_API
Datum() =
default;
47 template <
typename ScalarValueT = Aws::String>
49 m_scalarValueHasBeenSet =
true;
50 m_scalarValue = std::forward<ScalarValueT>(value);
52 template <
typename ScalarValueT = Aws::String>
65 template <
typename TimeSeriesValueT = Aws::Vector<TimeSeriesDataPo
int>>
67 m_timeSeriesValueHasBeenSet =
true;
68 m_timeSeriesValue = std::forward<TimeSeriesValueT>(value);
70 template <
typename TimeSeriesValueT = Aws::Vector<TimeSeriesDataPo
int>>
75 template <
typename TimeSeriesValueT = TimeSeriesDataPo
int>
77 m_timeSeriesValueHasBeenSet =
true;
78 m_timeSeriesValue.emplace_back(std::forward<TimeSeriesValueT>(value));
89 template <
typename ArrayValueT = Aws::Vector<Datum>>
91 m_arrayValueHasBeenSet =
true;
92 m_arrayValue = std::forward<ArrayValueT>(value);
94 template <
typename ArrayValueT = Aws::Vector<Datum>>
99 template <
typename ArrayValueT = Datum>
101 m_arrayValueHasBeenSet =
true;
102 m_arrayValue.emplace_back(std::forward<ArrayValueT>(value));
113 template <
typename RowValueT = Row>
115 m_rowValueHasBeenSet =
true;
118 template <
typename RowValueT = Row>
132 m_nullValueHasBeenSet =
true;
147 std::shared_ptr<Row> m_rowValue;
149 bool m_nullValue{
false};
150 bool m_scalarValueHasBeenSet =
false;
151 bool m_timeSeriesValueHasBeenSet =
false;
152 bool m_arrayValueHasBeenSet =
false;
153 bool m_rowValueHasBeenSet =
false;
154 bool m_nullValueHasBeenSet =
false;
void SetRowValue(RowValueT &&value)
AWS_TIMESTREAMQUERY_API Datum & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetScalarValue() const
Datum & WithNullValue(bool value)
AWS_TIMESTREAMQUERY_API Datum()=default
void SetArrayValue(ArrayValueT &&value)
AWS_TIMESTREAMQUERY_API Aws::Utils::Json::JsonValue Jsonize() const
bool NullValueHasBeenSet() const
Datum & AddArrayValue(ArrayValueT &&value)
Datum & WithScalarValue(ScalarValueT &&value)
bool TimeSeriesValueHasBeenSet() const
void SetNullValue(bool value)
void SetScalarValue(ScalarValueT &&value)
AWS_TIMESTREAMQUERY_API Datum(Aws::Utils::Json::JsonView jsonValue)
Datum & WithTimeSeriesValue(TimeSeriesValueT &&value)
void SetTimeSeriesValue(TimeSeriesValueT &&value)
const Aws::Vector< Datum > & GetArrayValue() const
Datum & AddTimeSeriesValue(TimeSeriesValueT &&value)
bool ScalarValueHasBeenSet() const
bool RowValueHasBeenSet() const
bool GetNullValue() const
bool ArrayValueHasBeenSet() const
Datum & WithArrayValue(ArrayValueT &&value)
Datum & WithRowValue(RowValueT &&value)
const Aws::Vector< TimeSeriesDataPoint > & GetTimeSeriesValue() const
const Row & GetRowValue() const
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue