AWS SDK for C++

AWS SDK for C++ Version 1.11.685

Loading...
Searching...
No Matches
UpdateThingRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/iot/IoTRequest.h>
9#include <aws/iot/IoT_EXPORTS.h>
10#include <aws/iot/model/AttributePayload.h>
11
12#include <utility>
13
14namespace Aws {
15namespace IoT {
16namespace Model {
17
24 public:
25 AWS_IOT_API UpdateThingRequest() = default;
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 "UpdateThing"; }
32
33 AWS_IOT_API Aws::String SerializePayload() const override;
34
36
41 inline const Aws::String& GetThingName() const { return m_thingName; }
42 inline bool ThingNameHasBeenSet() const { return m_thingNameHasBeenSet; }
43 template <typename ThingNameT = Aws::String>
44 void SetThingName(ThingNameT&& value) {
45 m_thingNameHasBeenSet = true;
46 m_thingName = std::forward<ThingNameT>(value);
47 }
48 template <typename ThingNameT = Aws::String>
49 UpdateThingRequest& WithThingName(ThingNameT&& value) {
50 SetThingName(std::forward<ThingNameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetThingTypeName() const { return m_thingTypeName; }
60 inline bool ThingTypeNameHasBeenSet() const { return m_thingTypeNameHasBeenSet; }
61 template <typename ThingTypeNameT = Aws::String>
62 void SetThingTypeName(ThingTypeNameT&& value) {
63 m_thingTypeNameHasBeenSet = true;
64 m_thingTypeName = std::forward<ThingTypeNameT>(value);
65 }
66 template <typename ThingTypeNameT = Aws::String>
67 UpdateThingRequest& WithThingTypeName(ThingTypeNameT&& value) {
68 SetThingTypeName(std::forward<ThingTypeNameT>(value));
69 return *this;
70 }
72
74
79 inline const AttributePayload& GetAttributePayload() const { return m_attributePayload; }
80 inline bool AttributePayloadHasBeenSet() const { return m_attributePayloadHasBeenSet; }
81 template <typename AttributePayloadT = AttributePayload>
82 void SetAttributePayload(AttributePayloadT&& value) {
83 m_attributePayloadHasBeenSet = true;
84 m_attributePayload = std::forward<AttributePayloadT>(value);
85 }
86 template <typename AttributePayloadT = AttributePayload>
87 UpdateThingRequest& WithAttributePayload(AttributePayloadT&& value) {
88 SetAttributePayload(std::forward<AttributePayloadT>(value));
89 return *this;
90 }
92
94
100 inline long long GetExpectedVersion() const { return m_expectedVersion; }
101 inline bool ExpectedVersionHasBeenSet() const { return m_expectedVersionHasBeenSet; }
102 inline void SetExpectedVersion(long long value) {
103 m_expectedVersionHasBeenSet = true;
104 m_expectedVersion = value;
105 }
106 inline UpdateThingRequest& WithExpectedVersion(long long value) {
107 SetExpectedVersion(value);
108 return *this;
109 }
111
113
117 inline bool GetRemoveThingType() const { return m_removeThingType; }
118 inline bool RemoveThingTypeHasBeenSet() const { return m_removeThingTypeHasBeenSet; }
119 inline void SetRemoveThingType(bool value) {
120 m_removeThingTypeHasBeenSet = true;
121 m_removeThingType = value;
122 }
124 SetRemoveThingType(value);
125 return *this;
126 }
128 private:
129 Aws::String m_thingName;
130 bool m_thingNameHasBeenSet = false;
131
132 Aws::String m_thingTypeName;
133 bool m_thingTypeNameHasBeenSet = false;
134
135 AttributePayload m_attributePayload;
136 bool m_attributePayloadHasBeenSet = false;
137
138 long long m_expectedVersion{0};
139 bool m_expectedVersionHasBeenSet = false;
140
141 bool m_removeThingType{false};
142 bool m_removeThingTypeHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace IoT
147} // namespace Aws
const Aws::String & GetThingTypeName() const
virtual const char * GetServiceRequestName() const override
const Aws::String & GetThingName() const
UpdateThingRequest & WithExpectedVersion(long long value)
UpdateThingRequest & WithRemoveThingType(bool value)
AWS_IOT_API Aws::String SerializePayload() const override
void SetAttributePayload(AttributePayloadT &&value)
void SetThingTypeName(ThingTypeNameT &&value)
UpdateThingRequest & WithThingTypeName(ThingTypeNameT &&value)
AWS_IOT_API UpdateThingRequest()=default
UpdateThingRequest & WithThingName(ThingNameT &&value)
void SetThingName(ThingNameT &&value)
UpdateThingRequest & WithAttributePayload(AttributePayloadT &&value)
const AttributePayload & GetAttributePayload() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String