AWS SDK for C++

AWS SDK for C++ Version 1.11.909

Loading...
Searching...
No Matches
UpdateInfrastructureConfigurationRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/imagebuilder/ImagebuilderRequest.h>
12#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
13#include <aws/imagebuilder/model/InstanceMetadataOptions.h>
14#include <aws/imagebuilder/model/Logging.h>
15#include <aws/imagebuilder/model/Placement.h>
16
17#include <utility>
18
19namespace Aws {
20namespace imagebuilder {
21namespace Model {
22
26 public:
27 AWS_IMAGEBUILDER_API UpdateInfrastructureConfigurationRequest() = default;
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 "UpdateInfrastructureConfiguration"; }
34
35 AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override;
36
38
42 inline const Aws::String& GetInfrastructureConfigurationArn() const { return m_infrastructureConfigurationArn; }
43 inline bool InfrastructureConfigurationArnHasBeenSet() const { return m_infrastructureConfigurationArnHasBeenSet; }
44 template <typename InfrastructureConfigurationArnT = Aws::String>
45 void SetInfrastructureConfigurationArn(InfrastructureConfigurationArnT&& value) {
46 m_infrastructureConfigurationArnHasBeenSet = true;
47 m_infrastructureConfigurationArn = std::forward<InfrastructureConfigurationArnT>(value);
48 }
49 template <typename InfrastructureConfigurationArnT = Aws::String>
51 SetInfrastructureConfigurationArn(std::forward<InfrastructureConfigurationArnT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetDescription() const { return m_description; }
61 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
62 template <typename DescriptionT = Aws::String>
63 void SetDescription(DescriptionT&& value) {
64 m_descriptionHasBeenSet = true;
65 m_description = std::forward<DescriptionT>(value);
66 }
67 template <typename DescriptionT = Aws::String>
69 SetDescription(std::forward<DescriptionT>(value));
70 return *this;
71 }
73
75
83 inline const Aws::Vector<Aws::String>& GetInstanceTypes() const { return m_instanceTypes; }
84 inline bool InstanceTypesHasBeenSet() const { return m_instanceTypesHasBeenSet; }
85 template <typename InstanceTypesT = Aws::Vector<Aws::String>>
86 void SetInstanceTypes(InstanceTypesT&& value) {
87 m_instanceTypesHasBeenSet = true;
88 m_instanceTypes = std::forward<InstanceTypesT>(value);
89 }
90 template <typename InstanceTypesT = Aws::Vector<Aws::String>>
92 SetInstanceTypes(std::forward<InstanceTypesT>(value));
93 return *this;
94 }
95 template <typename InstanceTypesT = Aws::String>
97 m_instanceTypesHasBeenSet = true;
98 m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value));
99 return *this;
100 }
102
104
108 inline const Aws::String& GetInstanceProfileName() const { return m_instanceProfileName; }
109 inline bool InstanceProfileNameHasBeenSet() const { return m_instanceProfileNameHasBeenSet; }
110 template <typename InstanceProfileNameT = Aws::String>
111 void SetInstanceProfileName(InstanceProfileNameT&& value) {
112 m_instanceProfileNameHasBeenSet = true;
113 m_instanceProfileName = std::forward<InstanceProfileNameT>(value);
114 }
115 template <typename InstanceProfileNameT = Aws::String>
117 SetInstanceProfileName(std::forward<InstanceProfileNameT>(value));
118 return *this;
119 }
121
123
127 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
128 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
129 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
130 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
131 m_securityGroupIdsHasBeenSet = true;
132 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
133 }
134 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
136 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
137 return *this;
138 }
139 template <typename SecurityGroupIdsT = Aws::String>
141 m_securityGroupIdsHasBeenSet = true;
142 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
143 return *this;
144 }
146
148
154 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
155 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
156 template <typename SubnetIdT = Aws::String>
157 void SetSubnetId(SubnetIdT&& value) {
158 m_subnetIdHasBeenSet = true;
159 m_subnetId = std::forward<SubnetIdT>(value);
160 }
161 template <typename SubnetIdT = Aws::String>
163 SetSubnetId(std::forward<SubnetIdT>(value));
164 return *this;
165 }
167
169
174 inline const Logging& GetLogging() const { return m_logging; }
175 inline bool LoggingHasBeenSet() const { return m_loggingHasBeenSet; }
176 template <typename LoggingT = Logging>
177 void SetLogging(LoggingT&& value) {
178 m_loggingHasBeenSet = true;
179 m_logging = std::forward<LoggingT>(value);
180 }
181 template <typename LoggingT = Logging>
183 SetLogging(std::forward<LoggingT>(value));
184 return *this;
185 }
187
189
193 inline const Aws::String& GetKeyPair() const { return m_keyPair; }
194 inline bool KeyPairHasBeenSet() const { return m_keyPairHasBeenSet; }
195 template <typename KeyPairT = Aws::String>
196 void SetKeyPair(KeyPairT&& value) {
197 m_keyPairHasBeenSet = true;
198 m_keyPair = std::forward<KeyPairT>(value);
199 }
200 template <typename KeyPairT = Aws::String>
202 SetKeyPair(std::forward<KeyPairT>(value));
203 return *this;
204 }
206
208
213 inline bool GetTerminateInstanceOnFailure() const { return m_terminateInstanceOnFailure; }
214 inline bool TerminateInstanceOnFailureHasBeenSet() const { return m_terminateInstanceOnFailureHasBeenSet; }
215 inline void SetTerminateInstanceOnFailure(bool value) {
216 m_terminateInstanceOnFailureHasBeenSet = true;
217 m_terminateInstanceOnFailure = value;
218 }
221 return *this;
222 }
224
226
235 inline const Aws::String& GetSnsTopicArn() const { return m_snsTopicArn; }
236 inline bool SnsTopicArnHasBeenSet() const { return m_snsTopicArnHasBeenSet; }
237 template <typename SnsTopicArnT = Aws::String>
238 void SetSnsTopicArn(SnsTopicArnT&& value) {
239 m_snsTopicArnHasBeenSet = true;
240 m_snsTopicArn = std::forward<SnsTopicArnT>(value);
241 }
242 template <typename SnsTopicArnT = Aws::String>
244 SetSnsTopicArn(std::forward<SnsTopicArnT>(value));
245 return *this;
246 }
248
250
257 inline const Aws::Map<Aws::String, Aws::String>& GetResourceTags() const { return m_resourceTags; }
258 inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; }
259 template <typename ResourceTagsT = Aws::Map<Aws::String, Aws::String>>
260 void SetResourceTags(ResourceTagsT&& value) {
261 m_resourceTagsHasBeenSet = true;
262 m_resourceTags = std::forward<ResourceTagsT>(value);
263 }
264 template <typename ResourceTagsT = Aws::Map<Aws::String, Aws::String>>
266 SetResourceTags(std::forward<ResourceTagsT>(value));
267 return *this;
268 }
269 template <typename ResourceTagsKeyT = Aws::String, typename ResourceTagsValueT = Aws::String>
270 UpdateInfrastructureConfigurationRequest& AddResourceTags(ResourceTagsKeyT&& key, ResourceTagsValueT&& value) {
271 m_resourceTagsHasBeenSet = true;
272 m_resourceTags.emplace(std::forward<ResourceTagsKeyT>(key), std::forward<ResourceTagsValueT>(value));
273 return *this;
274 }
276
278
291 inline const InstanceMetadataOptions& GetInstanceMetadataOptions() const { return m_instanceMetadataOptions; }
292 inline bool InstanceMetadataOptionsHasBeenSet() const { return m_instanceMetadataOptionsHasBeenSet; }
293 template <typename InstanceMetadataOptionsT = InstanceMetadataOptions>
294 void SetInstanceMetadataOptions(InstanceMetadataOptionsT&& value) {
295 m_instanceMetadataOptionsHasBeenSet = true;
296 m_instanceMetadataOptions = std::forward<InstanceMetadataOptionsT>(value);
297 }
298 template <typename InstanceMetadataOptionsT = InstanceMetadataOptions>
300 SetInstanceMetadataOptions(std::forward<InstanceMetadataOptionsT>(value));
301 return *this;
302 }
304
306
311 inline const Placement& GetPlacement() const { return m_placement; }
312 inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
313 template <typename PlacementT = Placement>
314 void SetPlacement(PlacementT&& value) {
315 m_placementHasBeenSet = true;
316 m_placement = std::forward<PlacementT>(value);
317 }
318 template <typename PlacementT = Placement>
320 SetPlacement(std::forward<PlacementT>(value));
321 return *this;
322 }
324
326
334 inline const Aws::String& GetClientToken() const { return m_clientToken; }
335 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
336 template <typename ClientTokenT = Aws::String>
337 void SetClientToken(ClientTokenT&& value) {
338 m_clientTokenHasBeenSet = true;
339 m_clientToken = std::forward<ClientTokenT>(value);
340 }
341 template <typename ClientTokenT = Aws::String>
343 SetClientToken(std::forward<ClientTokenT>(value));
344 return *this;
345 }
347 private:
348 Aws::String m_infrastructureConfigurationArn;
349
350 Aws::String m_description;
351
352 Aws::Vector<Aws::String> m_instanceTypes;
353
354 Aws::String m_instanceProfileName;
355
356 Aws::Vector<Aws::String> m_securityGroupIds;
357
358 Aws::String m_subnetId;
359
360 Logging m_logging;
361
362 Aws::String m_keyPair;
363
364 bool m_terminateInstanceOnFailure{false};
365
366 Aws::String m_snsTopicArn;
367
369
370 InstanceMetadataOptions m_instanceMetadataOptions;
371
372 Placement m_placement;
373
375 bool m_infrastructureConfigurationArnHasBeenSet = false;
376 bool m_descriptionHasBeenSet = false;
377 bool m_instanceTypesHasBeenSet = false;
378 bool m_instanceProfileNameHasBeenSet = false;
379 bool m_securityGroupIdsHasBeenSet = false;
380 bool m_subnetIdHasBeenSet = false;
381 bool m_loggingHasBeenSet = false;
382 bool m_keyPairHasBeenSet = false;
383 bool m_terminateInstanceOnFailureHasBeenSet = false;
384 bool m_snsTopicArnHasBeenSet = false;
385 bool m_resourceTagsHasBeenSet = false;
386 bool m_instanceMetadataOptionsHasBeenSet = false;
387 bool m_placementHasBeenSet = false;
388 bool m_clientTokenHasBeenSet = true;
389};
390
391} // namespace Model
392} // namespace imagebuilder
393} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
UpdateInfrastructureConfigurationRequest & WithInstanceMetadataOptions(InstanceMetadataOptionsT &&value)
UpdateInfrastructureConfigurationRequest & WithPlacement(PlacementT &&value)
UpdateInfrastructureConfigurationRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
UpdateInfrastructureConfigurationRequest & WithDescription(DescriptionT &&value)
UpdateInfrastructureConfigurationRequest & WithSnsTopicArn(SnsTopicArnT &&value)
UpdateInfrastructureConfigurationRequest & WithInstanceTypes(InstanceTypesT &&value)
UpdateInfrastructureConfigurationRequest & WithResourceTags(ResourceTagsT &&value)
UpdateInfrastructureConfigurationRequest & WithClientToken(ClientTokenT &&value)
UpdateInfrastructureConfigurationRequest & WithInfrastructureConfigurationArn(InfrastructureConfigurationArnT &&value)
UpdateInfrastructureConfigurationRequest & WithInstanceProfileName(InstanceProfileNameT &&value)
UpdateInfrastructureConfigurationRequest & AddResourceTags(ResourceTagsKeyT &&key, ResourceTagsValueT &&value)
UpdateInfrastructureConfigurationRequest & WithSubnetId(SubnetIdT &&value)
AWS_IMAGEBUILDER_API Aws::String SerializePayload() const override
UpdateInfrastructureConfigurationRequest & AddInstanceTypes(InstanceTypesT &&value)
UpdateInfrastructureConfigurationRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
UpdateInfrastructureConfigurationRequest & WithTerminateInstanceOnFailure(bool value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector