AWS SDK for C++

AWS SDK for C++ Version 1.11.899

Loading...
Searching...
No Matches
Node.h
1
6#pragma once
7#include <aws/cloudwatchomni/CloudWatchOmni_EXPORTS.h>
8#include <aws/cloudwatchomni/model/Edge.h>
9#include <aws/cloudwatchomni/model/Metadata.h>
10#include <aws/cloudwatchomni/model/NodeProperties.h>
11#include <aws/cloudwatchomni/model/NodeType.h>
12#include <aws/cloudwatchomni/model/Signal.h>
13#include <aws/cloudwatchomni/model/Source.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/core/utils/memory/stl/AWSMap.h>
16#include <aws/core/utils/memory/stl/AWSString.h>
17#include <aws/core/utils/memory/stl/AWSVector.h>
18#include <aws/crt/cbor/Cbor.h>
19
20#include <utility>
21
22namespace Aws {
23namespace Utils {
24namespace Cbor {
25class CborValue;
26} // namespace Cbor
27} // namespace Utils
28namespace CloudWatchOmni {
29namespace Model {
30
37class Node {
38 public:
39 AWS_CLOUDWATCHOMNI_API Node() = default;
40 AWS_CLOUDWATCHOMNI_API Node(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
41 AWS_CLOUDWATCHOMNI_API Node& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
42 AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
43
45
48 inline const Aws::String& GetNodeId() const { return m_nodeId; }
49 inline bool NodeIdHasBeenSet() const { return m_nodeIdHasBeenSet; }
50 template <typename NodeIdT = Aws::String>
51 void SetNodeId(NodeIdT&& value) {
52 m_nodeIdHasBeenSet = true;
53 m_nodeId = std::forward<NodeIdT>(value);
54 }
55 template <typename NodeIdT = Aws::String>
56 Node& WithNodeId(NodeIdT&& value) {
57 SetNodeId(std::forward<NodeIdT>(value));
58 return *this;
59 }
61
63
66 inline NodeType GetNodeType() const { return m_nodeType; }
67 inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; }
68 inline void SetNodeType(NodeType value) {
69 m_nodeTypeHasBeenSet = true;
70 m_nodeType = value;
71 }
72 inline Node& WithNodeType(NodeType value) {
73 SetNodeType(value);
74 return *this;
75 }
77
79
82 inline const Aws::String& GetName() const { return m_name; }
83 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
84 template <typename NameT = Aws::String>
85 void SetName(NameT&& value) {
86 m_nameHasBeenSet = true;
87 m_name = std::forward<NameT>(value);
88 }
89 template <typename NameT = Aws::String>
90 Node& WithName(NameT&& value) {
91 SetName(std::forward<NameT>(value));
92 return *this;
93 }
95
97
102 inline const Aws::Vector<Aws::String>& GetAlternateNames() const { return m_alternateNames; }
103 inline bool AlternateNamesHasBeenSet() const { return m_alternateNamesHasBeenSet; }
104 template <typename AlternateNamesT = Aws::Vector<Aws::String>>
105 void SetAlternateNames(AlternateNamesT&& value) {
106 m_alternateNamesHasBeenSet = true;
107 m_alternateNames = std::forward<AlternateNamesT>(value);
108 }
109 template <typename AlternateNamesT = Aws::Vector<Aws::String>>
110 Node& WithAlternateNames(AlternateNamesT&& value) {
111 SetAlternateNames(std::forward<AlternateNamesT>(value));
112 return *this;
113 }
114 template <typename AlternateNamesT = Aws::String>
115 Node& AddAlternateNames(AlternateNamesT&& value) {
116 m_alternateNamesHasBeenSet = true;
117 m_alternateNames.emplace_back(std::forward<AlternateNamesT>(value));
118 return *this;
119 }
121
123
126 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
127 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
128 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
129 void SetTags(TagsT&& value) {
130 m_tagsHasBeenSet = true;
131 m_tags = std::forward<TagsT>(value);
132 }
133 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
134 Node& WithTags(TagsT&& value) {
135 SetTags(std::forward<TagsT>(value));
136 return *this;
137 }
138 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
139 Node& AddTags(TagsKeyT&& key, TagsValueT&& value) {
140 m_tagsHasBeenSet = true;
141 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
142 return *this;
143 }
145
147
151 inline const NodeProperties& GetNodeProperties() const { return m_nodeProperties; }
152 inline bool NodePropertiesHasBeenSet() const { return m_nodePropertiesHasBeenSet; }
153 template <typename NodePropertiesT = NodeProperties>
154 void SetNodeProperties(NodePropertiesT&& value) {
155 m_nodePropertiesHasBeenSet = true;
156 m_nodeProperties = std::forward<NodePropertiesT>(value);
157 }
158 template <typename NodePropertiesT = NodeProperties>
159 Node& WithNodeProperties(NodePropertiesT&& value) {
160 SetNodeProperties(std::forward<NodePropertiesT>(value));
161 return *this;
162 }
164
166
172 inline const Aws::Map<Aws::String, Aws::String>& GetTelemetryAttributes() const { return m_telemetryAttributes; }
173 inline bool TelemetryAttributesHasBeenSet() const { return m_telemetryAttributesHasBeenSet; }
174 template <typename TelemetryAttributesT = Aws::Map<Aws::String, Aws::String>>
175 void SetTelemetryAttributes(TelemetryAttributesT&& value) {
176 m_telemetryAttributesHasBeenSet = true;
177 m_telemetryAttributes = std::forward<TelemetryAttributesT>(value);
178 }
179 template <typename TelemetryAttributesT = Aws::Map<Aws::String, Aws::String>>
180 Node& WithTelemetryAttributes(TelemetryAttributesT&& value) {
181 SetTelemetryAttributes(std::forward<TelemetryAttributesT>(value));
182 return *this;
183 }
184 template <typename TelemetryAttributesKeyT = Aws::String, typename TelemetryAttributesValueT = Aws::String>
185 Node& AddTelemetryAttributes(TelemetryAttributesKeyT&& key, TelemetryAttributesValueT&& value) {
186 m_telemetryAttributesHasBeenSet = true;
187 m_telemetryAttributes.emplace(std::forward<TelemetryAttributesKeyT>(key), std::forward<TelemetryAttributesValueT>(value));
188 return *this;
189 }
191
193
198 return m_operationDetails;
199 }
200 inline bool OperationDetailsHasBeenSet() const { return m_operationDetailsHasBeenSet; }
201 template <typename OperationDetailsT = Aws::Map<Aws::String, Aws::Vector<Aws::Map<Aws::String, Aws::String>>>>
202 void SetOperationDetails(OperationDetailsT&& value) {
203 m_operationDetailsHasBeenSet = true;
204 m_operationDetails = std::forward<OperationDetailsT>(value);
205 }
206 template <typename OperationDetailsT = Aws::Map<Aws::String, Aws::Vector<Aws::Map<Aws::String, Aws::String>>>>
207 Node& WithOperationDetails(OperationDetailsT&& value) {
208 SetOperationDetails(std::forward<OperationDetailsT>(value));
209 return *this;
210 }
211 template <typename OperationDetailsKeyT = Aws::String, typename OperationDetailsValueT = Aws::Vector<Aws::Map<Aws::String, Aws::String>>>
212 Node& AddOperationDetails(OperationDetailsKeyT&& key, OperationDetailsValueT&& value) {
213 m_operationDetailsHasBeenSet = true;
214 m_operationDetails.emplace(std::forward<OperationDetailsKeyT>(key), std::forward<OperationDetailsValueT>(value));
215 return *this;
216 }
218
220
223 inline const Aws::Vector<Signal>& GetSignalTypes() const { return m_signalTypes; }
224 inline bool SignalTypesHasBeenSet() const { return m_signalTypesHasBeenSet; }
225 template <typename SignalTypesT = Aws::Vector<Signal>>
226 void SetSignalTypes(SignalTypesT&& value) {
227 m_signalTypesHasBeenSet = true;
228 m_signalTypes = std::forward<SignalTypesT>(value);
229 }
230 template <typename SignalTypesT = Aws::Vector<Signal>>
231 Node& WithSignalTypes(SignalTypesT&& value) {
232 SetSignalTypes(std::forward<SignalTypesT>(value));
233 return *this;
234 }
235 inline Node& AddSignalTypes(Signal value) {
236 m_signalTypesHasBeenSet = true;
237 m_signalTypes.push_back(value);
238 return *this;
239 }
241
243
246 inline const Aws::Vector<Source>& GetSources() const { return m_sources; }
247 inline bool SourcesHasBeenSet() const { return m_sourcesHasBeenSet; }
248 template <typename SourcesT = Aws::Vector<Source>>
249 void SetSources(SourcesT&& value) {
250 m_sourcesHasBeenSet = true;
251 m_sources = std::forward<SourcesT>(value);
252 }
253 template <typename SourcesT = Aws::Vector<Source>>
254 Node& WithSources(SourcesT&& value) {
255 SetSources(std::forward<SourcesT>(value));
256 return *this;
257 }
258 inline Node& AddSources(Source value) {
259 m_sourcesHasBeenSet = true;
260 m_sources.push_back(value);
261 return *this;
262 }
264
266
270 inline const Metadata& GetMetadata() const { return m_metadata; }
271 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
272 template <typename MetadataT = Metadata>
273 void SetMetadata(MetadataT&& value) {
274 m_metadataHasBeenSet = true;
275 m_metadata = std::forward<MetadataT>(value);
276 }
277 template <typename MetadataT = Metadata>
278 Node& WithMetadata(MetadataT&& value) {
279 SetMetadata(std::forward<MetadataT>(value));
280 return *this;
281 }
283
285
289 inline const Aws::Utils::DateTime& GetFirstObservedAt() const { return m_firstObservedAt; }
290 inline bool FirstObservedAtHasBeenSet() const { return m_firstObservedAtHasBeenSet; }
291 template <typename FirstObservedAtT = Aws::Utils::DateTime>
292 void SetFirstObservedAt(FirstObservedAtT&& value) {
293 m_firstObservedAtHasBeenSet = true;
294 m_firstObservedAt = std::forward<FirstObservedAtT>(value);
295 }
296 template <typename FirstObservedAtT = Aws::Utils::DateTime>
297 Node& WithFirstObservedAt(FirstObservedAtT&& value) {
298 SetFirstObservedAt(std::forward<FirstObservedAtT>(value));
299 return *this;
300 }
302
304
309 inline const Aws::Utils::DateTime& GetLastObservedAt() const { return m_lastObservedAt; }
310 inline bool LastObservedAtHasBeenSet() const { return m_lastObservedAtHasBeenSet; }
311 template <typename LastObservedAtT = Aws::Utils::DateTime>
312 void SetLastObservedAt(LastObservedAtT&& value) {
313 m_lastObservedAtHasBeenSet = true;
314 m_lastObservedAt = std::forward<LastObservedAtT>(value);
315 }
316 template <typename LastObservedAtT = Aws::Utils::DateTime>
317 Node& WithLastObservedAt(LastObservedAtT&& value) {
318 SetLastObservedAt(std::forward<LastObservedAtT>(value));
319 return *this;
320 }
322
324
328 inline const Aws::Vector<Edge>& GetEdges() const { return m_edges; }
329 inline bool EdgesHasBeenSet() const { return m_edgesHasBeenSet; }
330 template <typename EdgesT = Aws::Vector<Edge>>
331 void SetEdges(EdgesT&& value) {
332 m_edgesHasBeenSet = true;
333 m_edges = std::forward<EdgesT>(value);
334 }
335 template <typename EdgesT = Aws::Vector<Edge>>
336 Node& WithEdges(EdgesT&& value) {
337 SetEdges(std::forward<EdgesT>(value));
338 return *this;
339 }
340 template <typename EdgesT = Edge>
341 Node& AddEdges(EdgesT&& value) {
342 m_edgesHasBeenSet = true;
343 m_edges.emplace_back(std::forward<EdgesT>(value));
344 return *this;
345 }
347 private:
348 Aws::String m_nodeId;
349
350 NodeType m_nodeType{NodeType::NOT_SET};
351
352 Aws::String m_name;
353
354 Aws::Vector<Aws::String> m_alternateNames;
355
357
358 NodeProperties m_nodeProperties;
359
360 Aws::Map<Aws::String, Aws::String> m_telemetryAttributes;
361
363
364 Aws::Vector<Signal> m_signalTypes;
365
366 Aws::Vector<Source> m_sources;
367
368 Metadata m_metadata;
369
370 Aws::Utils::DateTime m_firstObservedAt{};
371
372 Aws::Utils::DateTime m_lastObservedAt{};
373
374 Aws::Vector<Edge> m_edges;
375 bool m_nodeIdHasBeenSet = false;
376 bool m_nodeTypeHasBeenSet = false;
377 bool m_nameHasBeenSet = false;
378 bool m_alternateNamesHasBeenSet = false;
379 bool m_tagsHasBeenSet = false;
380 bool m_nodePropertiesHasBeenSet = false;
381 bool m_telemetryAttributesHasBeenSet = false;
382 bool m_operationDetailsHasBeenSet = false;
383 bool m_signalTypesHasBeenSet = false;
384 bool m_sourcesHasBeenSet = false;
385 bool m_metadataHasBeenSet = false;
386 bool m_firstObservedAtHasBeenSet = false;
387 bool m_lastObservedAtHasBeenSet = false;
388 bool m_edgesHasBeenSet = false;
389};
390
391} // namespace Model
392} // namespace CloudWatchOmni
393} // namespace Aws
Node & AddSignalTypes(Signal value)
Definition Node.h:235
const Aws::Map< Aws::String, Aws::Vector< Aws::Map< Aws::String, Aws::String > > > & GetOperationDetails() const
Definition Node.h:197
AWS_CLOUDWATCHOMNI_API Node(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
Node & WithSources(SourcesT &&value)
Definition Node.h:254
bool NodeIdHasBeenSet() const
Definition Node.h:49
void SetAlternateNames(AlternateNamesT &&value)
Definition Node.h:105
bool LastObservedAtHasBeenSet() const
Definition Node.h:310
bool TelemetryAttributesHasBeenSet() const
Definition Node.h:173
void SetName(NameT &&value)
Definition Node.h:85
bool SourcesHasBeenSet() const
Definition Node.h:247
Node & WithName(NameT &&value)
Definition Node.h:90
Node & WithSignalTypes(SignalTypesT &&value)
Definition Node.h:231
Node & WithAlternateNames(AlternateNamesT &&value)
Definition Node.h:110
Node & WithNodeType(NodeType value)
Definition Node.h:72
void SetNodeId(NodeIdT &&value)
Definition Node.h:51
Node & AddAlternateNames(AlternateNamesT &&value)
Definition Node.h:115
void SetSources(SourcesT &&value)
Definition Node.h:249
void SetTags(TagsT &&value)
Definition Node.h:129
Node & AddOperationDetails(OperationDetailsKeyT &&key, OperationDetailsValueT &&value)
Definition Node.h:212
Node & WithLastObservedAt(LastObservedAtT &&value)
Definition Node.h:317
void SetFirstObservedAt(FirstObservedAtT &&value)
Definition Node.h:292
const Aws::Vector< Edge > & GetEdges() const
Definition Node.h:328
void SetNodeProperties(NodePropertiesT &&value)
Definition Node.h:154
AWS_CLOUDWATCHOMNI_API Node & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
const Aws::String & GetName() const
Definition Node.h:82
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition Node.h:126
const Aws::Utils::DateTime & GetFirstObservedAt() const
Definition Node.h:289
const Aws::String & GetNodeId() const
Definition Node.h:48
void SetLastObservedAt(LastObservedAtT &&value)
Definition Node.h:312
Node & WithOperationDetails(OperationDetailsT &&value)
Definition Node.h:207
void SetEdges(EdgesT &&value)
Definition Node.h:331
Node & AddEdges(EdgesT &&value)
Definition Node.h:341
bool MetadataHasBeenSet() const
Definition Node.h:271
bool NameHasBeenSet() const
Definition Node.h:83
bool NodeTypeHasBeenSet() const
Definition Node.h:67
Node & WithEdges(EdgesT &&value)
Definition Node.h:336
bool AlternateNamesHasBeenSet() const
Definition Node.h:103
AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
AWS_CLOUDWATCHOMNI_API Node()=default
bool OperationDetailsHasBeenSet() const
Definition Node.h:200
const Aws::Vector< Source > & GetSources() const
Definition Node.h:246
const Aws::Utils::DateTime & GetLastObservedAt() const
Definition Node.h:309
Node & WithTags(TagsT &&value)
Definition Node.h:134
Node & AddTags(TagsKeyT &&key, TagsValueT &&value)
Definition Node.h:139
bool FirstObservedAtHasBeenSet() const
Definition Node.h:290
void SetOperationDetails(OperationDetailsT &&value)
Definition Node.h:202
Node & WithTelemetryAttributes(TelemetryAttributesT &&value)
Definition Node.h:180
const Metadata & GetMetadata() const
Definition Node.h:270
void SetSignalTypes(SignalTypesT &&value)
Definition Node.h:226
const Aws::Map< Aws::String, Aws::String > & GetTelemetryAttributes() const
Definition Node.h:172
Node & AddSources(Source value)
Definition Node.h:258
void SetTelemetryAttributes(TelemetryAttributesT &&value)
Definition Node.h:175
NodeType GetNodeType() const
Definition Node.h:66
bool NodePropertiesHasBeenSet() const
Definition Node.h:152
const Aws::Vector< Aws::String > & GetAlternateNames() const
Definition Node.h:102
bool SignalTypesHasBeenSet() const
Definition Node.h:224
Node & WithNodeProperties(NodePropertiesT &&value)
Definition Node.h:159
const Aws::Vector< Signal > & GetSignalTypes() const
Definition Node.h:223
const NodeProperties & GetNodeProperties() const
Definition Node.h:151
Node & WithNodeId(NodeIdT &&value)
Definition Node.h:56
Node & WithMetadata(MetadataT &&value)
Definition Node.h:278
Node & AddTelemetryAttributes(TelemetryAttributesKeyT &&key, TelemetryAttributesValueT &&value)
Definition Node.h:185
Node & WithFirstObservedAt(FirstObservedAtT &&value)
Definition Node.h:297
void SetMetadata(MetadataT &&value)
Definition Node.h:273
void SetNodeType(NodeType value)
Definition Node.h:68
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector