AWS SDK for C++

AWS SDK for C++ Version 1.11.613

Loading...
Searching...
No Matches
Property.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/PropertyNotification.h>
10#include <aws/iotsitewise/model/PropertyDataType.h>
11#include <aws/iotsitewise/model/PropertyType.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/iotsitewise/model/AssetPropertyPathSegment.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace IoTSiteWise
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_IOTSITEWISE_API Property() = default;
40 AWS_IOTSITEWISE_API Property(Aws::Utils::Json::JsonView jsonValue);
41 AWS_IOTSITEWISE_API Property& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::String& GetId() const { return m_id; }
50 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
51 template<typename IdT = Aws::String>
52 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
53 template<typename IdT = Aws::String>
54 Property& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
56
58
63 inline const Aws::String& GetExternalId() const { return m_externalId; }
64 inline bool ExternalIdHasBeenSet() const { return m_externalIdHasBeenSet; }
65 template<typename ExternalIdT = Aws::String>
66 void SetExternalId(ExternalIdT&& value) { m_externalIdHasBeenSet = true; m_externalId = std::forward<ExternalIdT>(value); }
67 template<typename ExternalIdT = Aws::String>
68 Property& WithExternalId(ExternalIdT&& value) { SetExternalId(std::forward<ExternalIdT>(value)); return *this;}
70
72
75 inline const Aws::String& GetName() const { return m_name; }
76 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
77 template<typename NameT = Aws::String>
78 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
79 template<typename NameT = Aws::String>
80 Property& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
82
84
92 inline const Aws::String& GetAlias() const { return m_alias; }
93 inline bool AliasHasBeenSet() const { return m_aliasHasBeenSet; }
94 template<typename AliasT = Aws::String>
95 void SetAlias(AliasT&& value) { m_aliasHasBeenSet = true; m_alias = std::forward<AliasT>(value); }
96 template<typename AliasT = Aws::String>
97 Property& WithAlias(AliasT&& value) { SetAlias(std::forward<AliasT>(value)); return *this;}
99
101
106 inline const PropertyNotification& GetNotification() const { return m_notification; }
107 inline bool NotificationHasBeenSet() const { return m_notificationHasBeenSet; }
108 template<typename NotificationT = PropertyNotification>
109 void SetNotification(NotificationT&& value) { m_notificationHasBeenSet = true; m_notification = std::forward<NotificationT>(value); }
110 template<typename NotificationT = PropertyNotification>
111 Property& WithNotification(NotificationT&& value) { SetNotification(std::forward<NotificationT>(value)); return *this;}
113
115
118 inline PropertyDataType GetDataType() const { return m_dataType; }
119 inline bool DataTypeHasBeenSet() const { return m_dataTypeHasBeenSet; }
120 inline void SetDataType(PropertyDataType value) { m_dataTypeHasBeenSet = true; m_dataType = value; }
121 inline Property& WithDataType(PropertyDataType value) { SetDataType(value); return *this;}
123
125
129 inline const Aws::String& GetUnit() const { return m_unit; }
130 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
131 template<typename UnitT = Aws::String>
132 void SetUnit(UnitT&& value) { m_unitHasBeenSet = true; m_unit = std::forward<UnitT>(value); }
133 template<typename UnitT = Aws::String>
134 Property& WithUnit(UnitT&& value) { SetUnit(std::forward<UnitT>(value)); return *this;}
136
138
142 inline const PropertyType& GetType() const { return m_type; }
143 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
144 template<typename TypeT = PropertyType>
145 void SetType(TypeT&& value) { m_typeHasBeenSet = true; m_type = std::forward<TypeT>(value); }
146 template<typename TypeT = PropertyType>
147 Property& WithType(TypeT&& value) { SetType(std::forward<TypeT>(value)); return *this;}
149
151
154 inline const Aws::Vector<AssetPropertyPathSegment>& GetPath() const { return m_path; }
155 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
156 template<typename PathT = Aws::Vector<AssetPropertyPathSegment>>
157 void SetPath(PathT&& value) { m_pathHasBeenSet = true; m_path = std::forward<PathT>(value); }
158 template<typename PathT = Aws::Vector<AssetPropertyPathSegment>>
159 Property& WithPath(PathT&& value) { SetPath(std::forward<PathT>(value)); return *this;}
160 template<typename PathT = AssetPropertyPathSegment>
161 Property& AddPath(PathT&& value) { m_pathHasBeenSet = true; m_path.emplace_back(std::forward<PathT>(value)); return *this; }
163 private:
164
165 Aws::String m_id;
166 bool m_idHasBeenSet = false;
167
168 Aws::String m_externalId;
169 bool m_externalIdHasBeenSet = false;
170
171 Aws::String m_name;
172 bool m_nameHasBeenSet = false;
173
174 Aws::String m_alias;
175 bool m_aliasHasBeenSet = false;
176
177 PropertyNotification m_notification;
178 bool m_notificationHasBeenSet = false;
179
181 bool m_dataTypeHasBeenSet = false;
182
183 Aws::String m_unit;
184 bool m_unitHasBeenSet = false;
185
186 PropertyType m_type;
187 bool m_typeHasBeenSet = false;
188
190 bool m_pathHasBeenSet = false;
191 };
192
193} // namespace Model
194} // namespace IoTSiteWise
195} // namespace Aws
void SetDataType(PropertyDataType value)
Definition Property.h:120
Property & WithName(NameT &&value)
Definition Property.h:80
const Aws::String & GetName() const
Definition Property.h:75
Property & WithNotification(NotificationT &&value)
Definition Property.h:111
Property & WithPath(PathT &&value)
Definition Property.h:159
const PropertyType & GetType() const
Definition Property.h:142
void SetName(NameT &&value)
Definition Property.h:78
AWS_IOTSITEWISE_API Property(Aws::Utils::Json::JsonView jsonValue)
AWS_IOTSITEWISE_API Property()=default
Property & AddPath(PathT &&value)
Definition Property.h:161
AWS_IOTSITEWISE_API Property & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetUnit() const
Definition Property.h:129
const PropertyNotification & GetNotification() const
Definition Property.h:106
void SetType(TypeT &&value)
Definition Property.h:145
Property & WithExternalId(ExternalIdT &&value)
Definition Property.h:68
PropertyDataType GetDataType() const
Definition Property.h:118
Property & WithType(TypeT &&value)
Definition Property.h:147
void SetPath(PathT &&value)
Definition Property.h:157
Property & WithId(IdT &&value)
Definition Property.h:54
Property & WithUnit(UnitT &&value)
Definition Property.h:134
void SetAlias(AliasT &&value)
Definition Property.h:95
Property & WithAlias(AliasT &&value)
Definition Property.h:97
Property & WithDataType(PropertyDataType value)
Definition Property.h:121
const Aws::String & GetId() const
Definition Property.h:49
void SetNotification(NotificationT &&value)
Definition Property.h:109
const Aws::String & GetExternalId() const
Definition Property.h:63
void SetExternalId(ExternalIdT &&value)
Definition Property.h:66
const Aws::String & GetAlias() const
Definition Property.h:92
void SetUnit(UnitT &&value)
Definition Property.h:132
AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< AssetPropertyPathSegment > & GetPath() const
Definition Property.h:154
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue