AWS SDK for C++  1.9.123
AWS SDK for C++
CreateThingGroupRequest.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/iot/IoT_EXPORTS.h>
8 #include <aws/iot/IoTRequest.h>
12 #include <aws/iot/model/Tag.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace IoT
18 {
19 namespace Model
20 {
21 
25  {
26  public:
28 
29  // Service request name is the Operation name which will send this request out,
30  // each operation should has unique request name, so that we can get operation's name from this request.
31  // Note: this is not true for response, multiple operations may have the same response name,
32  // so we can not get operation's name from response.
33  inline virtual const char* GetServiceRequestName() const override { return "CreateThingGroup"; }
34 
35  Aws::String SerializePayload() const override;
36 
37 
41  inline const Aws::String& GetThingGroupName() const{ return m_thingGroupName; }
42 
46  inline bool ThingGroupNameHasBeenSet() const { return m_thingGroupNameHasBeenSet; }
47 
51  inline void SetThingGroupName(const Aws::String& value) { m_thingGroupNameHasBeenSet = true; m_thingGroupName = value; }
52 
56  inline void SetThingGroupName(Aws::String&& value) { m_thingGroupNameHasBeenSet = true; m_thingGroupName = std::move(value); }
57 
61  inline void SetThingGroupName(const char* value) { m_thingGroupNameHasBeenSet = true; m_thingGroupName.assign(value); }
62 
66  inline CreateThingGroupRequest& WithThingGroupName(const Aws::String& value) { SetThingGroupName(value); return *this;}
67 
71  inline CreateThingGroupRequest& WithThingGroupName(Aws::String&& value) { SetThingGroupName(std::move(value)); return *this;}
72 
76  inline CreateThingGroupRequest& WithThingGroupName(const char* value) { SetThingGroupName(value); return *this;}
77 
78 
82  inline const Aws::String& GetParentGroupName() const{ return m_parentGroupName; }
83 
87  inline bool ParentGroupNameHasBeenSet() const { return m_parentGroupNameHasBeenSet; }
88 
92  inline void SetParentGroupName(const Aws::String& value) { m_parentGroupNameHasBeenSet = true; m_parentGroupName = value; }
93 
97  inline void SetParentGroupName(Aws::String&& value) { m_parentGroupNameHasBeenSet = true; m_parentGroupName = std::move(value); }
98 
102  inline void SetParentGroupName(const char* value) { m_parentGroupNameHasBeenSet = true; m_parentGroupName.assign(value); }
103 
107  inline CreateThingGroupRequest& WithParentGroupName(const Aws::String& value) { SetParentGroupName(value); return *this;}
108 
112  inline CreateThingGroupRequest& WithParentGroupName(Aws::String&& value) { SetParentGroupName(std::move(value)); return *this;}
113 
117  inline CreateThingGroupRequest& WithParentGroupName(const char* value) { SetParentGroupName(value); return *this;}
118 
119 
123  inline const ThingGroupProperties& GetThingGroupProperties() const{ return m_thingGroupProperties; }
124 
128  inline bool ThingGroupPropertiesHasBeenSet() const { return m_thingGroupPropertiesHasBeenSet; }
129 
133  inline void SetThingGroupProperties(const ThingGroupProperties& value) { m_thingGroupPropertiesHasBeenSet = true; m_thingGroupProperties = value; }
134 
138  inline void SetThingGroupProperties(ThingGroupProperties&& value) { m_thingGroupPropertiesHasBeenSet = true; m_thingGroupProperties = std::move(value); }
139 
143  inline CreateThingGroupRequest& WithThingGroupProperties(const ThingGroupProperties& value) { SetThingGroupProperties(value); return *this;}
144 
148  inline CreateThingGroupRequest& WithThingGroupProperties(ThingGroupProperties&& value) { SetThingGroupProperties(std::move(value)); return *this;}
149 
150 
154  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
155 
159  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
160 
164  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
165 
169  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
170 
174  inline CreateThingGroupRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
175 
179  inline CreateThingGroupRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
180 
184  inline CreateThingGroupRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
185 
189  inline CreateThingGroupRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
190 
191  private:
192 
193  Aws::String m_thingGroupName;
194  bool m_thingGroupNameHasBeenSet;
195 
196  Aws::String m_parentGroupName;
197  bool m_parentGroupNameHasBeenSet;
198 
199  ThingGroupProperties m_thingGroupProperties;
200  bool m_thingGroupPropertiesHasBeenSet;
201 
202  Aws::Vector<Tag> m_tags;
203  bool m_tagsHasBeenSet;
204  };
205 
206 } // namespace Model
207 } // namespace IoT
208 } // namespace Aws
Aws::IoT::Model::CreateThingGroupRequest::ThingGroupNameHasBeenSet
bool ThingGroupNameHasBeenSet() const
Definition: CreateThingGroupRequest.h:46
Aws::IoT::Model::CreateThingGroupRequest::CreateThingGroupRequest
CreateThingGroupRequest()
Aws::IoT::Model::CreateThingGroupRequest::WithTags
CreateThingGroupRequest & WithTags(const Aws::Vector< Tag > &value)
Definition: CreateThingGroupRequest.h:174
Aws::IoT::Model::CreateThingGroupRequest::WithThingGroupName
CreateThingGroupRequest & WithThingGroupName(const char *value)
Definition: CreateThingGroupRequest.h:76
Aws::IoT::Model::CreateThingGroupRequest::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: CreateThingGroupRequest.h:169
Aws::IoT::Model::CreateThingGroupRequest::GetThingGroupName
const Aws::String & GetThingGroupName() const
Definition: CreateThingGroupRequest.h:41
Aws::IoT::Model::CreateThingGroupRequest::WithThingGroupName
CreateThingGroupRequest & WithThingGroupName(Aws::String &&value)
Definition: CreateThingGroupRequest.h:71
Aws::IoT::Model::CreateThingGroupRequest::GetParentGroupName
const Aws::String & GetParentGroupName() const
Definition: CreateThingGroupRequest.h:82
Aws::IoT::Model::CreateThingGroupRequest::SetThingGroupName
void SetThingGroupName(const char *value)
Definition: CreateThingGroupRequest.h:61
Aws::IoT::Model::CreateThingGroupRequest::SetParentGroupName
void SetParentGroupName(const Aws::String &value)
Definition: CreateThingGroupRequest.h:92
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::IoT::Model::CreateThingGroupRequest::AddTags
CreateThingGroupRequest & AddTags(Tag &&value)
Definition: CreateThingGroupRequest.h:189
AWSVector.h
Aws::IoT::Model::CreateThingGroupRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: CreateThingGroupRequest.h:33
Aws::IoT::Model::CreateThingGroupRequest::SetThingGroupProperties
void SetThingGroupProperties(const ThingGroupProperties &value)
Definition: CreateThingGroupRequest.h:133
Aws::IoT::Model::Tag
Definition: Tag.h:33
Aws::IoT::Model::CreateThingGroupRequest::SetThingGroupName
void SetThingGroupName(Aws::String &&value)
Definition: CreateThingGroupRequest.h:56
Aws::IoT::Model::CreateThingGroupRequest::WithThingGroupProperties
CreateThingGroupRequest & WithThingGroupProperties(const ThingGroupProperties &value)
Definition: CreateThingGroupRequest.h:143
Aws::IoT::Model::CreateThingGroupRequest::ThingGroupPropertiesHasBeenSet
bool ThingGroupPropertiesHasBeenSet() const
Definition: CreateThingGroupRequest.h:128
Aws::IoT::Model::CreateThingGroupRequest::SetParentGroupName
void SetParentGroupName(Aws::String &&value)
Definition: CreateThingGroupRequest.h:97
Aws::IoT::Model::CreateThingGroupRequest::SetParentGroupName
void SetParentGroupName(const char *value)
Definition: CreateThingGroupRequest.h:102
AWSString.h
ThingGroupProperties.h
Aws::IoT::IoTRequest
Definition: IoTRequest.h:17
Aws::IoT::Model::ThingGroupProperties
Definition: ThingGroupProperties.h:33
Aws::IoT::Model::CreateThingGroupRequest::WithParentGroupName
CreateThingGroupRequest & WithParentGroupName(const char *value)
Definition: CreateThingGroupRequest.h:117
Aws::IoT::Model::CreateThingGroupRequest::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: CreateThingGroupRequest.h:164
Aws::IoT::Model::CreateThingGroupRequest::WithParentGroupName
CreateThingGroupRequest & WithParentGroupName(const Aws::String &value)
Definition: CreateThingGroupRequest.h:107
Aws::IoT::Model::CreateThingGroupRequest::AddTags
CreateThingGroupRequest & AddTags(const Tag &value)
Definition: CreateThingGroupRequest.h:184
Aws::IoT::Model::CreateThingGroupRequest::SetThingGroupProperties
void SetThingGroupProperties(ThingGroupProperties &&value)
Definition: CreateThingGroupRequest.h:138
Aws::IoT::Model::CreateThingGroupRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::IoT::Model::CreateThingGroupRequest::WithTags
CreateThingGroupRequest & WithTags(Aws::Vector< Tag > &&value)
Definition: CreateThingGroupRequest.h:179
Aws
Definition: AccessManagementClient.h:15
Aws::IoT::Model::CreateThingGroupRequest::WithThingGroupName
CreateThingGroupRequest & WithThingGroupName(const Aws::String &value)
Definition: CreateThingGroupRequest.h:66
Aws::IoT::Model::CreateThingGroupRequest::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: CreateThingGroupRequest.h:154
Aws::IoT::Model::CreateThingGroupRequest::WithThingGroupProperties
CreateThingGroupRequest & WithThingGroupProperties(ThingGroupProperties &&value)
Definition: CreateThingGroupRequest.h:148
Aws::IoT::Model::CreateThingGroupRequest
Definition: CreateThingGroupRequest.h:25
AWS_IOT_API
#define AWS_IOT_API
Definition: IoT_EXPORTS.h:28
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::IoT::Model::CreateThingGroupRequest::GetThingGroupProperties
const ThingGroupProperties & GetThingGroupProperties() const
Definition: CreateThingGroupRequest.h:123
IoTRequest.h
Aws::IoT::Model::CreateThingGroupRequest::WithParentGroupName
CreateThingGroupRequest & WithParentGroupName(Aws::String &&value)
Definition: CreateThingGroupRequest.h:112
Aws::IoT::Model::CreateThingGroupRequest::ParentGroupNameHasBeenSet
bool ParentGroupNameHasBeenSet() const
Definition: CreateThingGroupRequest.h:87
Aws::IoT::Model::CreateThingGroupRequest::SetThingGroupName
void SetThingGroupName(const Aws::String &value)
Definition: CreateThingGroupRequest.h:51
Aws::IoT::Model::CreateThingGroupRequest::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: CreateThingGroupRequest.h:159
Tag.h
IoT_EXPORTS.h