AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
CreateWirelessDeviceRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/iotwireless/IoTWirelessRequest.h>
11#include <aws/iotwireless/IoTWireless_EXPORTS.h>
12#include <aws/iotwireless/model/LoRaWANDevice.h>
13#include <aws/iotwireless/model/PositioningConfigStatus.h>
14#include <aws/iotwireless/model/SidewalkCreateWirelessDevice.h>
15#include <aws/iotwireless/model/Tag.h>
16#include <aws/iotwireless/model/WirelessDeviceType.h>
17
18#include <utility>
19
20namespace Aws {
21namespace IoTWireless {
22namespace Model {
23
27 public:
28 AWS_IOTWIRELESS_API CreateWirelessDeviceRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateWirelessDevice"; }
35
36 AWS_IOTWIRELESS_API Aws::String SerializePayload() const override;
37
39
42 inline WirelessDeviceType GetType() const { return m_type; }
43 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
44 inline void SetType(WirelessDeviceType value) {
45 m_typeHasBeenSet = true;
46 m_type = value;
47 }
49 SetType(value);
50 return *this;
51 }
53
55
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template <typename NameT = Aws::String>
62 void SetName(NameT&& value) {
63 m_nameHasBeenSet = true;
64 m_name = std::forward<NameT>(value);
65 }
66 template <typename NameT = Aws::String>
68 SetName(std::forward<NameT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetDescription() const { return m_description; }
78 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
79 template <typename DescriptionT = Aws::String>
80 void SetDescription(DescriptionT&& value) {
81 m_descriptionHasBeenSet = true;
82 m_description = std::forward<DescriptionT>(value);
83 }
84 template <typename DescriptionT = Aws::String>
86 SetDescription(std::forward<DescriptionT>(value));
87 return *this;
88 }
90
92
95 inline const Aws::String& GetDestinationName() const { return m_destinationName; }
96 inline bool DestinationNameHasBeenSet() const { return m_destinationNameHasBeenSet; }
97 template <typename DestinationNameT = Aws::String>
98 void SetDestinationName(DestinationNameT&& value) {
99 m_destinationNameHasBeenSet = true;
100 m_destinationName = std::forward<DestinationNameT>(value);
101 }
102 template <typename DestinationNameT = Aws::String>
104 SetDestinationName(std::forward<DestinationNameT>(value));
105 return *this;
106 }
108
110
121 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
122 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
123 template <typename ClientRequestTokenT = Aws::String>
124 void SetClientRequestToken(ClientRequestTokenT&& value) {
125 m_clientRequestTokenHasBeenSet = true;
126 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
127 }
128 template <typename ClientRequestTokenT = Aws::String>
130 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
131 return *this;
132 }
134
136
140 inline const LoRaWANDevice& GetLoRaWAN() const { return m_loRaWAN; }
141 inline bool LoRaWANHasBeenSet() const { return m_loRaWANHasBeenSet; }
142 template <typename LoRaWANT = LoRaWANDevice>
143 void SetLoRaWAN(LoRaWANT&& value) {
144 m_loRaWANHasBeenSet = true;
145 m_loRaWAN = std::forward<LoRaWANT>(value);
146 }
147 template <typename LoRaWANT = LoRaWANDevice>
149 SetLoRaWAN(std::forward<LoRaWANT>(value));
150 return *this;
151 }
153
155
159 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
160 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
161 template <typename TagsT = Aws::Vector<Tag>>
162 void SetTags(TagsT&& value) {
163 m_tagsHasBeenSet = true;
164 m_tags = std::forward<TagsT>(value);
165 }
166 template <typename TagsT = Aws::Vector<Tag>>
168 SetTags(std::forward<TagsT>(value));
169 return *this;
170 }
171 template <typename TagsT = Tag>
173 m_tagsHasBeenSet = true;
174 m_tags.emplace_back(std::forward<TagsT>(value));
175 return *this;
176 }
178
180
184 inline PositioningConfigStatus GetPositioning() const { return m_positioning; }
185 inline bool PositioningHasBeenSet() const { return m_positioningHasBeenSet; }
187 m_positioningHasBeenSet = true;
188 m_positioning = value;
189 }
191 SetPositioning(value);
192 return *this;
193 }
195
197
201 inline const SidewalkCreateWirelessDevice& GetSidewalk() const { return m_sidewalk; }
202 inline bool SidewalkHasBeenSet() const { return m_sidewalkHasBeenSet; }
203 template <typename SidewalkT = SidewalkCreateWirelessDevice>
204 void SetSidewalk(SidewalkT&& value) {
205 m_sidewalkHasBeenSet = true;
206 m_sidewalk = std::forward<SidewalkT>(value);
207 }
208 template <typename SidewalkT = SidewalkCreateWirelessDevice>
210 SetSidewalk(std::forward<SidewalkT>(value));
211 return *this;
212 }
214 private:
216
217 Aws::String m_name;
218
219 Aws::String m_description;
220
221 Aws::String m_destinationName;
222
223 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
224
225 LoRaWANDevice m_loRaWAN;
226
227 Aws::Vector<Tag> m_tags;
228
230
231 SidewalkCreateWirelessDevice m_sidewalk;
232 bool m_typeHasBeenSet = false;
233 bool m_nameHasBeenSet = false;
234 bool m_descriptionHasBeenSet = false;
235 bool m_destinationNameHasBeenSet = false;
236 bool m_clientRequestTokenHasBeenSet = true;
237 bool m_loRaWANHasBeenSet = false;
238 bool m_tagsHasBeenSet = false;
239 bool m_positioningHasBeenSet = false;
240 bool m_sidewalkHasBeenSet = false;
241};
242
243} // namespace Model
244} // namespace IoTWireless
245} // namespace Aws
AWS_IOTWIRELESS_API Aws::String SerializePayload() const override
CreateWirelessDeviceRequest & WithDestinationName(DestinationNameT &&value)
CreateWirelessDeviceRequest & WithPositioning(PositioningConfigStatus value)
CreateWirelessDeviceRequest & AddTags(TagsT &&value)
CreateWirelessDeviceRequest & WithType(WirelessDeviceType value)
AWS_IOTWIRELESS_API CreateWirelessDeviceRequest()=default
CreateWirelessDeviceRequest & WithLoRaWAN(LoRaWANT &&value)
CreateWirelessDeviceRequest & WithName(NameT &&value)
CreateWirelessDeviceRequest & WithSidewalk(SidewalkT &&value)
CreateWirelessDeviceRequest & WithDescription(DescriptionT &&value)
CreateWirelessDeviceRequest & WithTags(TagsT &&value)
CreateWirelessDeviceRequest & WithClientRequestToken(ClientRequestTokenT &&value)
const SidewalkCreateWirelessDevice & GetSidewalk() const
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector