AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
AssetProperty.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/core/utils/memory/stl/AWSVector.h>
12#include <aws/iotsitewise/model/AssetPropertyPathSegment.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace IoTSiteWise
26{
27namespace Model
28{
29
36 {
37 public:
38 AWS_IOTSITEWISE_API AssetProperty() = default;
39 AWS_IOTSITEWISE_API AssetProperty(Aws::Utils::Json::JsonView jsonValue);
40 AWS_IOTSITEWISE_API AssetProperty& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetId() const { return m_id; }
49 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
50 template<typename IdT = Aws::String>
51 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
52 template<typename IdT = Aws::String>
53 AssetProperty& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
55
57
60 inline const Aws::String& GetName() const { return m_name; }
61 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 template<typename NameT = Aws::String>
63 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
64 template<typename NameT = Aws::String>
65 AssetProperty& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
67
69
77 inline const Aws::String& GetAlias() const { return m_alias; }
78 inline bool AliasHasBeenSet() const { return m_aliasHasBeenSet; }
79 template<typename AliasT = Aws::String>
80 void SetAlias(AliasT&& value) { m_aliasHasBeenSet = true; m_alias = std::forward<AliasT>(value); }
81 template<typename AliasT = Aws::String>
82 AssetProperty& WithAlias(AliasT&& value) { SetAlias(std::forward<AliasT>(value)); return *this;}
84
86
91 inline const PropertyNotification& GetNotification() const { return m_notification; }
92 inline bool NotificationHasBeenSet() const { return m_notificationHasBeenSet; }
93 template<typename NotificationT = PropertyNotification>
94 void SetNotification(NotificationT&& value) { m_notificationHasBeenSet = true; m_notification = std::forward<NotificationT>(value); }
95 template<typename NotificationT = PropertyNotification>
96 AssetProperty& WithNotification(NotificationT&& value) { SetNotification(std::forward<NotificationT>(value)); return *this;}
98
100
103 inline PropertyDataType GetDataType() const { return m_dataType; }
104 inline bool DataTypeHasBeenSet() const { return m_dataTypeHasBeenSet; }
105 inline void SetDataType(PropertyDataType value) { m_dataTypeHasBeenSet = true; m_dataType = value; }
106 inline AssetProperty& WithDataType(PropertyDataType value) { SetDataType(value); return *this;}
108
110
114 inline const Aws::String& GetDataTypeSpec() const { return m_dataTypeSpec; }
115 inline bool DataTypeSpecHasBeenSet() const { return m_dataTypeSpecHasBeenSet; }
116 template<typename DataTypeSpecT = Aws::String>
117 void SetDataTypeSpec(DataTypeSpecT&& value) { m_dataTypeSpecHasBeenSet = true; m_dataTypeSpec = std::forward<DataTypeSpecT>(value); }
118 template<typename DataTypeSpecT = Aws::String>
119 AssetProperty& WithDataTypeSpec(DataTypeSpecT&& value) { SetDataTypeSpec(std::forward<DataTypeSpecT>(value)); return *this;}
121
123
127 inline const Aws::String& GetUnit() const { return m_unit; }
128 inline bool UnitHasBeenSet() const { return m_unitHasBeenSet; }
129 template<typename UnitT = Aws::String>
130 void SetUnit(UnitT&& value) { m_unitHasBeenSet = true; m_unit = std::forward<UnitT>(value); }
131 template<typename UnitT = Aws::String>
132 AssetProperty& WithUnit(UnitT&& value) { SetUnit(std::forward<UnitT>(value)); return *this;}
134
136
139 inline const Aws::Vector<AssetPropertyPathSegment>& GetPath() const { return m_path; }
140 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
141 template<typename PathT = Aws::Vector<AssetPropertyPathSegment>>
142 void SetPath(PathT&& value) { m_pathHasBeenSet = true; m_path = std::forward<PathT>(value); }
143 template<typename PathT = Aws::Vector<AssetPropertyPathSegment>>
144 AssetProperty& WithPath(PathT&& value) { SetPath(std::forward<PathT>(value)); return *this;}
145 template<typename PathT = AssetPropertyPathSegment>
146 AssetProperty& AddPath(PathT&& value) { m_pathHasBeenSet = true; m_path.emplace_back(std::forward<PathT>(value)); return *this; }
148
150
155 inline const Aws::String& GetExternalId() const { return m_externalId; }
156 inline bool ExternalIdHasBeenSet() const { return m_externalIdHasBeenSet; }
157 template<typename ExternalIdT = Aws::String>
158 void SetExternalId(ExternalIdT&& value) { m_externalIdHasBeenSet = true; m_externalId = std::forward<ExternalIdT>(value); }
159 template<typename ExternalIdT = Aws::String>
160 AssetProperty& WithExternalId(ExternalIdT&& value) { SetExternalId(std::forward<ExternalIdT>(value)); return *this;}
162 private:
163
164 Aws::String m_id;
165 bool m_idHasBeenSet = false;
166
167 Aws::String m_name;
168 bool m_nameHasBeenSet = false;
169
170 Aws::String m_alias;
171 bool m_aliasHasBeenSet = false;
172
173 PropertyNotification m_notification;
174 bool m_notificationHasBeenSet = false;
175
177 bool m_dataTypeHasBeenSet = false;
178
179 Aws::String m_dataTypeSpec;
180 bool m_dataTypeSpecHasBeenSet = false;
181
182 Aws::String m_unit;
183 bool m_unitHasBeenSet = false;
184
186 bool m_pathHasBeenSet = false;
187
188 Aws::String m_externalId;
189 bool m_externalIdHasBeenSet = false;
190 };
191
192} // namespace Model
193} // namespace IoTSiteWise
194} // namespace Aws
const Aws::String & GetUnit() const
const Aws::String & GetExternalId() const
AssetProperty & WithPath(PathT &&value)
void SetDataType(PropertyDataType value)
AssetProperty & WithDataTypeSpec(DataTypeSpecT &&value)
AssetProperty & WithExternalId(ExternalIdT &&value)
void SetDataTypeSpec(DataTypeSpecT &&value)
AssetProperty & WithDataType(PropertyDataType value)
const Aws::String & GetDataTypeSpec() const
void SetNotification(NotificationT &&value)
void SetExternalId(ExternalIdT &&value)
AssetProperty & WithName(NameT &&value)
AWS_IOTSITEWISE_API AssetProperty(Aws::Utils::Json::JsonView jsonValue)
AssetProperty & AddPath(PathT &&value)
AssetProperty & WithUnit(UnitT &&value)
const Aws::String & GetAlias() const
AWS_IOTSITEWISE_API Aws::Utils::Json::JsonValue Jsonize() const
AssetProperty & WithAlias(AliasT &&value)
AssetProperty & WithNotification(NotificationT &&value)
const PropertyNotification & GetNotification() const
AWS_IOTSITEWISE_API AssetProperty & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
const Aws::String & GetId() const
AssetProperty & WithId(IdT &&value)
AWS_IOTSITEWISE_API AssetProperty()=default
PropertyDataType GetDataType() const
const Aws::Vector< AssetPropertyPathSegment > & GetPath() 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