AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
AssetPropertyValue.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/iot/IoT_EXPORTS.h>
9#include <aws/iot/model/AssetPropertyTimestamp.h>
10#include <aws/iot/model/AssetPropertyVariant.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace IoT {
22namespace Model {
23
31 public:
32 AWS_IOT_API AssetPropertyValue() = default;
36
38
41 inline const AssetPropertyVariant& GetValue() const { return m_value; }
42 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
43 template <typename ValueT = AssetPropertyVariant>
44 void SetValue(ValueT&& value) {
45 m_valueHasBeenSet = true;
46 m_value = std::forward<ValueT>(value);
47 }
48 template <typename ValueT = AssetPropertyVariant>
49 AssetPropertyValue& WithValue(ValueT&& value) {
50 SetValue(std::forward<ValueT>(value));
51 return *this;
52 }
54
56
59 inline const AssetPropertyTimestamp& GetTimestamp() const { return m_timestamp; }
60 inline bool TimestampHasBeenSet() const { return m_timestampHasBeenSet; }
61 template <typename TimestampT = AssetPropertyTimestamp>
62 void SetTimestamp(TimestampT&& value) {
63 m_timestampHasBeenSet = true;
64 m_timestamp = std::forward<TimestampT>(value);
65 }
66 template <typename TimestampT = AssetPropertyTimestamp>
67 AssetPropertyValue& WithTimestamp(TimestampT&& value) {
68 SetTimestamp(std::forward<TimestampT>(value));
69 return *this;
70 }
72
74
79 inline const Aws::String& GetQuality() const { return m_quality; }
80 inline bool QualityHasBeenSet() const { return m_qualityHasBeenSet; }
81 template <typename QualityT = Aws::String>
82 void SetQuality(QualityT&& value) {
83 m_qualityHasBeenSet = true;
84 m_quality = std::forward<QualityT>(value);
85 }
86 template <typename QualityT = Aws::String>
87 AssetPropertyValue& WithQuality(QualityT&& value) {
88 SetQuality(std::forward<QualityT>(value));
89 return *this;
90 }
92 private:
94
95 AssetPropertyTimestamp m_timestamp;
96
97 Aws::String m_quality;
98 bool m_valueHasBeenSet = false;
99 bool m_timestampHasBeenSet = false;
100 bool m_qualityHasBeenSet = false;
101};
102
103} // namespace Model
104} // namespace IoT
105} // namespace Aws
AssetPropertyValue & WithValue(ValueT &&value)
const AssetPropertyTimestamp & GetTimestamp() const
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetTimestamp(TimestampT &&value)
const AssetPropertyVariant & GetValue() const
const Aws::String & GetQuality() const
AWS_IOT_API AssetPropertyValue & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_IOT_API AssetPropertyValue()=default
AWS_IOT_API AssetPropertyValue(Aws::Utils::Json::JsonView jsonValue)
AssetPropertyValue & WithQuality(QualityT &&value)
AssetPropertyValue & WithTimestamp(TimestampT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue