AWS SDK for C++

AWS SDK for C++ Version 1.11.685

Loading...
Searching...
No Matches
CreateThingGroupRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/iot/IoTRequest.h>
10#include <aws/iot/IoT_EXPORTS.h>
11#include <aws/iot/model/Tag.h>
12#include <aws/iot/model/ThingGroupProperties.h>
13
14#include <utility>
15
16namespace Aws {
17namespace IoT {
18namespace Model {
19
23 public:
24 AWS_IOT_API CreateThingGroupRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "CreateThingGroup"; }
31
32 AWS_IOT_API Aws::String SerializePayload() const override;
33
35
38 inline const Aws::String& GetThingGroupName() const { return m_thingGroupName; }
39 inline bool ThingGroupNameHasBeenSet() const { return m_thingGroupNameHasBeenSet; }
40 template <typename ThingGroupNameT = Aws::String>
41 void SetThingGroupName(ThingGroupNameT&& value) {
42 m_thingGroupNameHasBeenSet = true;
43 m_thingGroupName = std::forward<ThingGroupNameT>(value);
44 }
45 template <typename ThingGroupNameT = Aws::String>
46 CreateThingGroupRequest& WithThingGroupName(ThingGroupNameT&& value) {
47 SetThingGroupName(std::forward<ThingGroupNameT>(value));
48 return *this;
49 }
51
53
56 inline const Aws::String& GetParentGroupName() const { return m_parentGroupName; }
57 inline bool ParentGroupNameHasBeenSet() const { return m_parentGroupNameHasBeenSet; }
58 template <typename ParentGroupNameT = Aws::String>
59 void SetParentGroupName(ParentGroupNameT&& value) {
60 m_parentGroupNameHasBeenSet = true;
61 m_parentGroupName = std::forward<ParentGroupNameT>(value);
62 }
63 template <typename ParentGroupNameT = Aws::String>
64 CreateThingGroupRequest& WithParentGroupName(ParentGroupNameT&& value) {
65 SetParentGroupName(std::forward<ParentGroupNameT>(value));
66 return *this;
67 }
69
71
74 inline const ThingGroupProperties& GetThingGroupProperties() const { return m_thingGroupProperties; }
75 inline bool ThingGroupPropertiesHasBeenSet() const { return m_thingGroupPropertiesHasBeenSet; }
76 template <typename ThingGroupPropertiesT = ThingGroupProperties>
77 void SetThingGroupProperties(ThingGroupPropertiesT&& value) {
78 m_thingGroupPropertiesHasBeenSet = true;
79 m_thingGroupProperties = std::forward<ThingGroupPropertiesT>(value);
80 }
81 template <typename ThingGroupPropertiesT = ThingGroupProperties>
82 CreateThingGroupRequest& WithThingGroupProperties(ThingGroupPropertiesT&& value) {
83 SetThingGroupProperties(std::forward<ThingGroupPropertiesT>(value));
84 return *this;
85 }
87
89
92 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
93 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
94 template <typename TagsT = Aws::Vector<Tag>>
95 void SetTags(TagsT&& value) {
96 m_tagsHasBeenSet = true;
97 m_tags = std::forward<TagsT>(value);
98 }
99 template <typename TagsT = Aws::Vector<Tag>>
101 SetTags(std::forward<TagsT>(value));
102 return *this;
103 }
104 template <typename TagsT = Tag>
106 m_tagsHasBeenSet = true;
107 m_tags.emplace_back(std::forward<TagsT>(value));
108 return *this;
109 }
111 private:
112 Aws::String m_thingGroupName;
113 bool m_thingGroupNameHasBeenSet = false;
114
115 Aws::String m_parentGroupName;
116 bool m_parentGroupNameHasBeenSet = false;
117
118 ThingGroupProperties m_thingGroupProperties;
119 bool m_thingGroupPropertiesHasBeenSet = false;
120
121 Aws::Vector<Tag> m_tags;
122 bool m_tagsHasBeenSet = false;
123};
124
125} // namespace Model
126} // namespace IoT
127} // namespace Aws
virtual const char * GetServiceRequestName() const override
void SetParentGroupName(ParentGroupNameT &&value)
const ThingGroupProperties & GetThingGroupProperties() const
void SetThingGroupName(ThingGroupNameT &&value)
CreateThingGroupRequest & WithTags(TagsT &&value)
CreateThingGroupRequest & AddTags(TagsT &&value)
CreateThingGroupRequest & WithParentGroupName(ParentGroupNameT &&value)
CreateThingGroupRequest & WithThingGroupProperties(ThingGroupPropertiesT &&value)
AWS_IOT_API Aws::String SerializePayload() const override
CreateThingGroupRequest & WithThingGroupName(ThingGroupNameT &&value)
void SetThingGroupProperties(ThingGroupPropertiesT &&value)
const Aws::Vector< Tag > & GetTags() const
AWS_IOT_API CreateThingGroupRequest()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector