AWS SDK for C++  1.9.123
AWS SDK for C++
UpdateThingGroupsForThingRequest.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>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace IoT
16 {
17 namespace Model
18 {
19 
23  {
24  public:
26 
27  // Service request name is the Operation name which will send this request out,
28  // each operation should has unique request name, so that we can get operation's name from this request.
29  // Note: this is not true for response, multiple operations may have the same response name,
30  // so we can not get operation's name from response.
31  inline virtual const char* GetServiceRequestName() const override { return "UpdateThingGroupsForThing"; }
32 
33  Aws::String SerializePayload() const override;
34 
35 
39  inline const Aws::String& GetThingName() const{ return m_thingName; }
40 
44  inline bool ThingNameHasBeenSet() const { return m_thingNameHasBeenSet; }
45 
49  inline void SetThingName(const Aws::String& value) { m_thingNameHasBeenSet = true; m_thingName = value; }
50 
54  inline void SetThingName(Aws::String&& value) { m_thingNameHasBeenSet = true; m_thingName = std::move(value); }
55 
59  inline void SetThingName(const char* value) { m_thingNameHasBeenSet = true; m_thingName.assign(value); }
60 
64  inline UpdateThingGroupsForThingRequest& WithThingName(const Aws::String& value) { SetThingName(value); return *this;}
65 
69  inline UpdateThingGroupsForThingRequest& WithThingName(Aws::String&& value) { SetThingName(std::move(value)); return *this;}
70 
74  inline UpdateThingGroupsForThingRequest& WithThingName(const char* value) { SetThingName(value); return *this;}
75 
76 
80  inline const Aws::Vector<Aws::String>& GetThingGroupsToAdd() const{ return m_thingGroupsToAdd; }
81 
85  inline bool ThingGroupsToAddHasBeenSet() const { return m_thingGroupsToAddHasBeenSet; }
86 
90  inline void SetThingGroupsToAdd(const Aws::Vector<Aws::String>& value) { m_thingGroupsToAddHasBeenSet = true; m_thingGroupsToAdd = value; }
91 
95  inline void SetThingGroupsToAdd(Aws::Vector<Aws::String>&& value) { m_thingGroupsToAddHasBeenSet = true; m_thingGroupsToAdd = std::move(value); }
96 
100  inline UpdateThingGroupsForThingRequest& WithThingGroupsToAdd(const Aws::Vector<Aws::String>& value) { SetThingGroupsToAdd(value); return *this;}
101 
105  inline UpdateThingGroupsForThingRequest& WithThingGroupsToAdd(Aws::Vector<Aws::String>&& value) { SetThingGroupsToAdd(std::move(value)); return *this;}
106 
110  inline UpdateThingGroupsForThingRequest& AddThingGroupsToAdd(const Aws::String& value) { m_thingGroupsToAddHasBeenSet = true; m_thingGroupsToAdd.push_back(value); return *this; }
111 
115  inline UpdateThingGroupsForThingRequest& AddThingGroupsToAdd(Aws::String&& value) { m_thingGroupsToAddHasBeenSet = true; m_thingGroupsToAdd.push_back(std::move(value)); return *this; }
116 
120  inline UpdateThingGroupsForThingRequest& AddThingGroupsToAdd(const char* value) { m_thingGroupsToAddHasBeenSet = true; m_thingGroupsToAdd.push_back(value); return *this; }
121 
122 
126  inline const Aws::Vector<Aws::String>& GetThingGroupsToRemove() const{ return m_thingGroupsToRemove; }
127 
131  inline bool ThingGroupsToRemoveHasBeenSet() const { return m_thingGroupsToRemoveHasBeenSet; }
132 
136  inline void SetThingGroupsToRemove(const Aws::Vector<Aws::String>& value) { m_thingGroupsToRemoveHasBeenSet = true; m_thingGroupsToRemove = value; }
137 
141  inline void SetThingGroupsToRemove(Aws::Vector<Aws::String>&& value) { m_thingGroupsToRemoveHasBeenSet = true; m_thingGroupsToRemove = std::move(value); }
142 
146  inline UpdateThingGroupsForThingRequest& WithThingGroupsToRemove(const Aws::Vector<Aws::String>& value) { SetThingGroupsToRemove(value); return *this;}
147 
151  inline UpdateThingGroupsForThingRequest& WithThingGroupsToRemove(Aws::Vector<Aws::String>&& value) { SetThingGroupsToRemove(std::move(value)); return *this;}
152 
156  inline UpdateThingGroupsForThingRequest& AddThingGroupsToRemove(const Aws::String& value) { m_thingGroupsToRemoveHasBeenSet = true; m_thingGroupsToRemove.push_back(value); return *this; }
157 
161  inline UpdateThingGroupsForThingRequest& AddThingGroupsToRemove(Aws::String&& value) { m_thingGroupsToRemoveHasBeenSet = true; m_thingGroupsToRemove.push_back(std::move(value)); return *this; }
162 
166  inline UpdateThingGroupsForThingRequest& AddThingGroupsToRemove(const char* value) { m_thingGroupsToRemoveHasBeenSet = true; m_thingGroupsToRemove.push_back(value); return *this; }
167 
168 
175  inline bool GetOverrideDynamicGroups() const{ return m_overrideDynamicGroups; }
176 
183  inline bool OverrideDynamicGroupsHasBeenSet() const { return m_overrideDynamicGroupsHasBeenSet; }
184 
191  inline void SetOverrideDynamicGroups(bool value) { m_overrideDynamicGroupsHasBeenSet = true; m_overrideDynamicGroups = value; }
192 
199  inline UpdateThingGroupsForThingRequest& WithOverrideDynamicGroups(bool value) { SetOverrideDynamicGroups(value); return *this;}
200 
201  private:
202 
203  Aws::String m_thingName;
204  bool m_thingNameHasBeenSet;
205 
206  Aws::Vector<Aws::String> m_thingGroupsToAdd;
207  bool m_thingGroupsToAddHasBeenSet;
208 
209  Aws::Vector<Aws::String> m_thingGroupsToRemove;
210  bool m_thingGroupsToRemoveHasBeenSet;
211 
212  bool m_overrideDynamicGroups;
213  bool m_overrideDynamicGroupsHasBeenSet;
214  };
215 
216 } // namespace Model
217 } // namespace IoT
218 } // namespace Aws
Aws::IoT::Model::UpdateThingGroupsForThingRequest::AddThingGroupsToRemove
UpdateThingGroupsForThingRequest & AddThingGroupsToRemove(Aws::String &&value)
Definition: UpdateThingGroupsForThingRequest.h:161
Aws::IoT::Model::UpdateThingGroupsForThingRequest::ThingNameHasBeenSet
bool ThingNameHasBeenSet() const
Definition: UpdateThingGroupsForThingRequest.h:44
Aws::IoT::Model::UpdateThingGroupsForThingRequest::AddThingGroupsToAdd
UpdateThingGroupsForThingRequest & AddThingGroupsToAdd(Aws::String &&value)
Definition: UpdateThingGroupsForThingRequest.h:115
Aws::IoT::Model::UpdateThingGroupsForThingRequest::GetServiceRequestName
virtual const char * GetServiceRequestName() const override
Definition: UpdateThingGroupsForThingRequest.h:31
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingName
UpdateThingGroupsForThingRequest & WithThingName(Aws::String &&value)
Definition: UpdateThingGroupsForThingRequest.h:69
Aws::IoT::Model::UpdateThingGroupsForThingRequest::ThingGroupsToAddHasBeenSet
bool ThingGroupsToAddHasBeenSet() const
Definition: UpdateThingGroupsForThingRequest.h:85
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingGroupsToAdd
void SetThingGroupsToAdd(const Aws::Vector< Aws::String > &value)
Definition: UpdateThingGroupsForThingRequest.h:90
Aws::IoT::Model::UpdateThingGroupsForThingRequest::OverrideDynamicGroupsHasBeenSet
bool OverrideDynamicGroupsHasBeenSet() const
Definition: UpdateThingGroupsForThingRequest.h:183
Aws::IoT::Model::UpdateThingGroupsForThingRequest::AddThingGroupsToRemove
UpdateThingGroupsForThingRequest & AddThingGroupsToRemove(const Aws::String &value)
Definition: UpdateThingGroupsForThingRequest.h:156
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingGroupsToAdd
UpdateThingGroupsForThingRequest & WithThingGroupsToAdd(Aws::Vector< Aws::String > &&value)
Definition: UpdateThingGroupsForThingRequest.h:105
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingGroupsToAdd
UpdateThingGroupsForThingRequest & WithThingGroupsToAdd(const Aws::Vector< Aws::String > &value)
Definition: UpdateThingGroupsForThingRequest.h:100
Aws::IoT::Model::UpdateThingGroupsForThingRequest::GetOverrideDynamicGroups
bool GetOverrideDynamicGroups() const
Definition: UpdateThingGroupsForThingRequest.h:175
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingName
UpdateThingGroupsForThingRequest & WithThingName(const Aws::String &value)
Definition: UpdateThingGroupsForThingRequest.h:64
AWSVector.h
Aws::IoT::Model::UpdateThingGroupsForThingRequest
Definition: UpdateThingGroupsForThingRequest.h:23
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingName
void SetThingName(const char *value)
Definition: UpdateThingGroupsForThingRequest.h:59
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingGroupsToRemove
UpdateThingGroupsForThingRequest & WithThingGroupsToRemove(const Aws::Vector< Aws::String > &value)
Definition: UpdateThingGroupsForThingRequest.h:146
Aws::IoT::Model::UpdateThingGroupsForThingRequest::GetThingGroupsToRemove
const Aws::Vector< Aws::String > & GetThingGroupsToRemove() const
Definition: UpdateThingGroupsForThingRequest.h:126
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingName
UpdateThingGroupsForThingRequest & WithThingName(const char *value)
Definition: UpdateThingGroupsForThingRequest.h:74
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithThingGroupsToRemove
UpdateThingGroupsForThingRequest & WithThingGroupsToRemove(Aws::Vector< Aws::String > &&value)
Definition: UpdateThingGroupsForThingRequest.h:151
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingGroupsToAdd
void SetThingGroupsToAdd(Aws::Vector< Aws::String > &&value)
Definition: UpdateThingGroupsForThingRequest.h:95
Aws::IoT::Model::UpdateThingGroupsForThingRequest::UpdateThingGroupsForThingRequest
UpdateThingGroupsForThingRequest()
Aws::IoT::Model::UpdateThingGroupsForThingRequest::AddThingGroupsToRemove
UpdateThingGroupsForThingRequest & AddThingGroupsToRemove(const char *value)
Definition: UpdateThingGroupsForThingRequest.h:166
AWSString.h
Aws::IoT::IoTRequest
Definition: IoTRequest.h:17
Aws::IoT::Model::UpdateThingGroupsForThingRequest::GetThingName
const Aws::String & GetThingName() const
Definition: UpdateThingGroupsForThingRequest.h:39
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingGroupsToRemove
void SetThingGroupsToRemove(const Aws::Vector< Aws::String > &value)
Definition: UpdateThingGroupsForThingRequest.h:136
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingName
void SetThingName(const Aws::String &value)
Definition: UpdateThingGroupsForThingRequest.h:49
Aws::IoT::Model::UpdateThingGroupsForThingRequest::AddThingGroupsToAdd
UpdateThingGroupsForThingRequest & AddThingGroupsToAdd(const Aws::String &value)
Definition: UpdateThingGroupsForThingRequest.h:110
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetOverrideDynamicGroups
void SetOverrideDynamicGroups(bool value)
Definition: UpdateThingGroupsForThingRequest.h:191
Aws
Definition: AccessManagementClient.h:15
Aws::IoT::Model::UpdateThingGroupsForThingRequest::ThingGroupsToRemoveHasBeenSet
bool ThingGroupsToRemoveHasBeenSet() const
Definition: UpdateThingGroupsForThingRequest.h:131
Aws::IoT::Model::UpdateThingGroupsForThingRequest::AddThingGroupsToAdd
UpdateThingGroupsForThingRequest & AddThingGroupsToAdd(const char *value)
Definition: UpdateThingGroupsForThingRequest.h:120
Aws::IoT::Model::UpdateThingGroupsForThingRequest::WithOverrideDynamicGroups
UpdateThingGroupsForThingRequest & WithOverrideDynamicGroups(bool value)
Definition: UpdateThingGroupsForThingRequest.h:199
AWS_IOT_API
#define AWS_IOT_API
Definition: IoT_EXPORTS.h:28
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SerializePayload
Aws::String SerializePayload() const override
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingName
void SetThingName(Aws::String &&value)
Definition: UpdateThingGroupsForThingRequest.h:54
IoTRequest.h
Aws::IoT::Model::UpdateThingGroupsForThingRequest::SetThingGroupsToRemove
void SetThingGroupsToRemove(Aws::Vector< Aws::String > &&value)
Definition: UpdateThingGroupsForThingRequest.h:141
IoT_EXPORTS.h
Aws::IoT::Model::UpdateThingGroupsForThingRequest::GetThingGroupsToAdd
const Aws::Vector< Aws::String > & GetThingGroupsToAdd() const
Definition: UpdateThingGroupsForThingRequest.h:80