AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
Variant.h
1
6#pragma once
7#include <aws/iotsitewise/IoTSiteWise_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iotsitewise/model/PropertyValueNullValue.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace IoTSiteWise
23{
24namespace Model
25{
26
33 class Variant
34 {
35 public:
36 AWS_IOTSITEWISE_API Variant() = default;
37 AWS_IOTSITEWISE_API Variant(Aws::Utils::Json::JsonView jsonValue);
38 AWS_IOTSITEWISE_API Variant& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
47 inline const Aws::String& GetStringValue() const { return m_stringValue; }
48 inline bool StringValueHasBeenSet() const { return m_stringValueHasBeenSet; }
49 template<typename StringValueT = Aws::String>
50 void SetStringValue(StringValueT&& value) { m_stringValueHasBeenSet = true; m_stringValue = std::forward<StringValueT>(value); }
51 template<typename StringValueT = Aws::String>
52 Variant& WithStringValue(StringValueT&& value) { SetStringValue(std::forward<StringValueT>(value)); return *this;}
54
56
59 inline int GetIntegerValue() const { return m_integerValue; }
60 inline bool IntegerValueHasBeenSet() const { return m_integerValueHasBeenSet; }
61 inline void SetIntegerValue(int value) { m_integerValueHasBeenSet = true; m_integerValue = value; }
62 inline Variant& WithIntegerValue(int value) { SetIntegerValue(value); return *this;}
64
66
70 inline double GetDoubleValue() const { return m_doubleValue; }
71 inline bool DoubleValueHasBeenSet() const { return m_doubleValueHasBeenSet; }
72 inline void SetDoubleValue(double value) { m_doubleValueHasBeenSet = true; m_doubleValue = value; }
73 inline Variant& WithDoubleValue(double value) { SetDoubleValue(value); return *this;}
75
77
80 inline bool GetBooleanValue() const { return m_booleanValue; }
81 inline bool BooleanValueHasBeenSet() const { return m_booleanValueHasBeenSet; }
82 inline void SetBooleanValue(bool value) { m_booleanValueHasBeenSet = true; m_booleanValue = value; }
83 inline Variant& WithBooleanValue(bool value) { SetBooleanValue(value); return *this;}
85
87
90 inline const PropertyValueNullValue& GetNullValue() const { return m_nullValue; }
91 inline bool NullValueHasBeenSet() const { return m_nullValueHasBeenSet; }
92 template<typename NullValueT = PropertyValueNullValue>
93 void SetNullValue(NullValueT&& value) { m_nullValueHasBeenSet = true; m_nullValue = std::forward<NullValueT>(value); }
94 template<typename NullValueT = PropertyValueNullValue>
95 Variant& WithNullValue(NullValueT&& value) { SetNullValue(std::forward<NullValueT>(value)); return *this;}
97 private:
98
99 Aws::String m_stringValue;
100 bool m_stringValueHasBeenSet = false;
101
102 int m_integerValue{0};
103 bool m_integerValueHasBeenSet = false;
104
105 double m_doubleValue{0.0};
106 bool m_doubleValueHasBeenSet = false;
107
108 bool m_booleanValue{false};
109 bool m_booleanValueHasBeenSet = false;
110
111 PropertyValueNullValue m_nullValue;
112 bool m_nullValueHasBeenSet = false;
113 };
114
115} // namespace Model
116} // namespace IoTSiteWise
117} // namespace Aws
Variant & WithBooleanValue(bool value)
Definition Variant.h:83
Variant & WithIntegerValue(int value)
Definition Variant.h:62
AWS_IOTSITEWISE_API Variant()=default
bool BooleanValueHasBeenSet() const
Definition Variant.h:81
bool StringValueHasBeenSet() const
Definition Variant.h:48
const Aws::String & GetStringValue() const
Definition Variant.h:47
Variant & WithStringValue(StringValueT &&value)
Definition Variant.h:52
void SetIntegerValue(int value)
Definition Variant.h:61
Variant & WithNullValue(NullValueT &&value)
Definition Variant.h:95
void SetStringValue(StringValueT &&value)
Definition Variant.h:50
void SetDoubleValue(double value)
Definition Variant.h:72
void SetNullValue(NullValueT &&value)
Definition Variant.h:93
Variant & WithDoubleValue(double value)
Definition Variant.h:73
double GetDoubleValue() const
Definition Variant.h:70
bool IntegerValueHasBeenSet() const
Definition Variant.h:60
void SetBooleanValue(bool value)
Definition Variant.h:82
bool DoubleValueHasBeenSet() const
Definition Variant.h:71
const PropertyValueNullValue & GetNullValue() const
Definition Variant.h:90
AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IOTSITEWISE_API Variant(Aws::Utils::Json::JsonView jsonValue)
AWS_IOTSITEWISE_API Variant & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue