AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
ThingGroupDocument.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/iot/IoT_EXPORTS.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
30 public:
31 AWS_IOT_API ThingGroupDocument() = default;
35
37
40 inline const Aws::String& GetThingGroupName() const { return m_thingGroupName; }
41 inline bool ThingGroupNameHasBeenSet() const { return m_thingGroupNameHasBeenSet; }
42 template <typename ThingGroupNameT = Aws::String>
43 void SetThingGroupName(ThingGroupNameT&& value) {
44 m_thingGroupNameHasBeenSet = true;
45 m_thingGroupName = std::forward<ThingGroupNameT>(value);
46 }
47 template <typename ThingGroupNameT = Aws::String>
48 ThingGroupDocument& WithThingGroupName(ThingGroupNameT&& value) {
49 SetThingGroupName(std::forward<ThingGroupNameT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetThingGroupId() const { return m_thingGroupId; }
59 inline bool ThingGroupIdHasBeenSet() const { return m_thingGroupIdHasBeenSet; }
60 template <typename ThingGroupIdT = Aws::String>
61 void SetThingGroupId(ThingGroupIdT&& value) {
62 m_thingGroupIdHasBeenSet = true;
63 m_thingGroupId = std::forward<ThingGroupIdT>(value);
64 }
65 template <typename ThingGroupIdT = Aws::String>
66 ThingGroupDocument& WithThingGroupId(ThingGroupIdT&& value) {
67 SetThingGroupId(std::forward<ThingGroupIdT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::String& GetThingGroupDescription() const { return m_thingGroupDescription; }
77 inline bool ThingGroupDescriptionHasBeenSet() const { return m_thingGroupDescriptionHasBeenSet; }
78 template <typename ThingGroupDescriptionT = Aws::String>
79 void SetThingGroupDescription(ThingGroupDescriptionT&& value) {
80 m_thingGroupDescriptionHasBeenSet = true;
81 m_thingGroupDescription = std::forward<ThingGroupDescriptionT>(value);
82 }
83 template <typename ThingGroupDescriptionT = Aws::String>
84 ThingGroupDocument& WithThingGroupDescription(ThingGroupDescriptionT&& value) {
85 SetThingGroupDescription(std::forward<ThingGroupDescriptionT>(value));
86 return *this;
87 }
89
91
94 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
95 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
96 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
97 void SetAttributes(AttributesT&& value) {
98 m_attributesHasBeenSet = true;
99 m_attributes = std::forward<AttributesT>(value);
100 }
101 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
102 ThingGroupDocument& WithAttributes(AttributesT&& value) {
103 SetAttributes(std::forward<AttributesT>(value));
104 return *this;
105 }
106 template <typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
107 ThingGroupDocument& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
108 m_attributesHasBeenSet = true;
109 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
110 return *this;
111 }
113
115
118 inline const Aws::Vector<Aws::String>& GetParentGroupNames() const { return m_parentGroupNames; }
119 inline bool ParentGroupNamesHasBeenSet() const { return m_parentGroupNamesHasBeenSet; }
120 template <typename ParentGroupNamesT = Aws::Vector<Aws::String>>
121 void SetParentGroupNames(ParentGroupNamesT&& value) {
122 m_parentGroupNamesHasBeenSet = true;
123 m_parentGroupNames = std::forward<ParentGroupNamesT>(value);
124 }
125 template <typename ParentGroupNamesT = Aws::Vector<Aws::String>>
126 ThingGroupDocument& WithParentGroupNames(ParentGroupNamesT&& value) {
127 SetParentGroupNames(std::forward<ParentGroupNamesT>(value));
128 return *this;
129 }
130 template <typename ParentGroupNamesT = Aws::String>
131 ThingGroupDocument& AddParentGroupNames(ParentGroupNamesT&& value) {
132 m_parentGroupNamesHasBeenSet = true;
133 m_parentGroupNames.emplace_back(std::forward<ParentGroupNamesT>(value));
134 return *this;
135 }
137 private:
138 Aws::String m_thingGroupName;
139
140 Aws::String m_thingGroupId;
141
142 Aws::String m_thingGroupDescription;
143
145
146 Aws::Vector<Aws::String> m_parentGroupNames;
147 bool m_thingGroupNameHasBeenSet = false;
148 bool m_thingGroupIdHasBeenSet = false;
149 bool m_thingGroupDescriptionHasBeenSet = false;
150 bool m_attributesHasBeenSet = false;
151 bool m_parentGroupNamesHasBeenSet = false;
152};
153
154} // namespace Model
155} // namespace IoT
156} // namespace Aws
void SetAttributes(AttributesT &&value)
AWS_IOT_API ThingGroupDocument & operator=(Aws::Utils::Json::JsonView jsonValue)
ThingGroupDocument & WithThingGroupDescription(ThingGroupDescriptionT &&value)
const Aws::String & GetThingGroupId() const
ThingGroupDocument & WithThingGroupName(ThingGroupNameT &&value)
const Aws::String & GetThingGroupDescription() const
void SetThingGroupId(ThingGroupIdT &&value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetThingGroupDescription(ThingGroupDescriptionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
const Aws::Vector< Aws::String > & GetParentGroupNames() const
void SetParentGroupNames(ParentGroupNamesT &&value)
AWS_IOT_API ThingGroupDocument(Aws::Utils::Json::JsonView jsonValue)
ThingGroupDocument & WithThingGroupId(ThingGroupIdT &&value)
ThingGroupDocument & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
AWS_IOT_API ThingGroupDocument()=default
void SetThingGroupName(ThingGroupNameT &&value)
ThingGroupDocument & WithParentGroupNames(ParentGroupNamesT &&value)
const Aws::String & GetThingGroupName() const
ThingGroupDocument & AddParentGroupNames(ParentGroupNamesT &&value)
ThingGroupDocument & WithAttributes(AttributesT &&value)
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
Aws::Utils::Json::JsonValue JsonValue