7#include <aws/iotsitewise/IoTSiteWise_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSAllocator.h>
38 AWS_IOTSITEWISE_API
Datum() =
default;
51 template<
typename ScalarValueT = Aws::String>
52 void SetScalarValue(ScalarValueT&& value) { m_scalarValueHasBeenSet =
true; m_scalarValue = std::forward<ScalarValueT>(value); }
53 template<
typename ScalarValueT = Aws::String>
63 template<
typename ArrayValueT = Aws::Vector<Datum>>
64 void SetArrayValue(ArrayValueT&& value) { m_arrayValueHasBeenSet =
true; m_arrayValue = std::forward<ArrayValueT>(value); }
65 template<
typename ArrayValueT = Aws::Vector<Datum>>
67 template<
typename ArrayValueT = Datum>
68 Datum&
AddArrayValue(ArrayValueT&& value) { m_arrayValueHasBeenSet =
true; m_arrayValue.emplace_back(std::forward<ArrayValueT>(value));
return *
this; }
79 template<
typename RowValueT = Row>
81 m_rowValueHasBeenSet =
true;
82 m_rowValue = Aws::MakeShared<Row>(
"Datum", std::forward<RowValueT>(value));
84 template<
typename RowValueT = Row>
94 inline void SetNullValue(
bool value) { m_nullValueHasBeenSet =
true; m_nullValue = value; }
100 bool m_scalarValueHasBeenSet =
false;
103 bool m_arrayValueHasBeenSet =
false;
105 std::shared_ptr<Row> m_rowValue;
106 bool m_rowValueHasBeenSet =
false;
108 bool m_nullValue{
false};
109 bool m_nullValueHasBeenSet =
false;
Datum & WithNullValue(bool value)
bool ArrayValueHasBeenSet() const
const Row & GetRowValue() const
bool ScalarValueHasBeenSet() const
AWS_IOTSITEWISE_API Datum(Aws::Utils::Json::JsonView jsonValue)
bool RowValueHasBeenSet() const
const Aws::String & GetScalarValue() const
void SetNullValue(bool value)
void SetArrayValue(ArrayValueT &&value)
AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const
bool GetNullValue() const
AWS_IOTSITEWISE_API Datum & operator=(Aws::Utils::Json::JsonView jsonValue)
Datum & AddArrayValue(ArrayValueT &&value)
bool NullValueHasBeenSet() const
void SetRowValue(RowValueT &&value)
Datum & WithArrayValue(ArrayValueT &&value)
Datum & WithRowValue(RowValueT &&value)
AWS_IOTSITEWISE_API Datum()=default
Datum & WithScalarValue(ScalarValueT &&value)
void SetScalarValue(ScalarValueT &&value)
const Aws::Vector< Datum > & GetArrayValue() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue