AWS SDK for C++

AWS SDK for C++ Version 1.11.812

Loading...
Searching...
No Matches
ModifyInstanceAttributeRequest.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/ec2/EC2Request.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/AttributeBooleanValue.h>
12#include <aws/ec2/model/AttributeValue.h>
13#include <aws/ec2/model/EnclaveOptionsRequest.h>
14#include <aws/ec2/model/InstanceAttributeName.h>
15#include <aws/ec2/model/InstanceBlockDeviceMappingSpecification.h>
16#include <aws/ec2/model/SecureBlobAttributeValue.h>
17
18#include <utility>
19
20namespace Aws {
21namespace EC2 {
22namespace Model {
23
27 public:
28 AWS_EC2_API ModifyInstanceAttributeRequest() = 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 "ModifyInstanceAttribute"; }
35
36 AWS_EC2_API Aws::String SerializePayload() const override;
37
38 protected:
39 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
40
41 public:
43
51 inline const AttributeBooleanValue& GetSourceDestCheck() const { return m_sourceDestCheck; }
52 inline bool SourceDestCheckHasBeenSet() const { return m_sourceDestCheckHasBeenSet; }
53 template <typename SourceDestCheckT = AttributeBooleanValue>
54 void SetSourceDestCheck(SourceDestCheckT&& value) {
55 m_sourceDestCheckHasBeenSet = true;
56 m_sourceDestCheck = std::forward<SourceDestCheckT>(value);
57 }
58 template <typename SourceDestCheckT = AttributeBooleanValue>
60 SetSourceDestCheck(std::forward<SourceDestCheckT>(value));
61 return *this;
62 }
64
66
72 inline const EnclaveOptionsRequest& GetEnclaveOptions() const { return m_enclaveOptions; }
73 inline bool EnclaveOptionsHasBeenSet() const { return m_enclaveOptionsHasBeenSet; }
74 template <typename EnclaveOptionsT = EnclaveOptionsRequest>
75 void SetEnclaveOptions(EnclaveOptionsT&& value) {
76 m_enclaveOptionsHasBeenSet = true;
77 m_enclaveOptions = std::forward<EnclaveOptionsT>(value);
78 }
79 template <typename EnclaveOptionsT = EnclaveOptionsRequest>
81 SetEnclaveOptions(std::forward<EnclaveOptionsT>(value));
82 return *this;
83 }
85
87
93 inline const AttributeBooleanValue& GetDisableApiStop() const { return m_disableApiStop; }
94 inline bool DisableApiStopHasBeenSet() const { return m_disableApiStopHasBeenSet; }
95 template <typename DisableApiStopT = AttributeBooleanValue>
96 void SetDisableApiStop(DisableApiStopT&& value) {
97 m_disableApiStopHasBeenSet = true;
98 m_disableApiStop = std::forward<DisableApiStopT>(value);
99 }
100 template <typename DisableApiStopT = AttributeBooleanValue>
102 SetDisableApiStop(std::forward<DisableApiStopT>(value));
103 return *this;
104 }
106
108
114 inline bool GetDryRun() const { return m_dryRun; }
115 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
116 inline void SetDryRun(bool value) {
117 m_dryRunHasBeenSet = true;
118 m_dryRun = value;
119 }
121 SetDryRun(value);
122 return *this;
123 }
125
127
130 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
131 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
132 template <typename InstanceIdT = Aws::String>
133 void SetInstanceId(InstanceIdT&& value) {
134 m_instanceIdHasBeenSet = true;
135 m_instanceId = std::forward<InstanceIdT>(value);
136 }
137 template <typename InstanceIdT = Aws::String>
139 SetInstanceId(std::forward<InstanceIdT>(value));
140 return *this;
141 }
143
145
160 inline InstanceAttributeName GetAttribute() const { return m_attribute; }
161 inline bool AttributeHasBeenSet() const { return m_attributeHasBeenSet; }
163 m_attributeHasBeenSet = true;
164 m_attribute = value;
165 }
167 SetAttribute(value);
168 return *this;
169 }
171
173
178 inline const Aws::String& GetValue() const { return m_value; }
179 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
180 template <typename ValueT = Aws::String>
181 void SetValue(ValueT&& value) {
182 m_valueHasBeenSet = true;
183 m_value = std::forward<ValueT>(value);
184 }
185 template <typename ValueT = Aws::String>
187 SetValue(std::forward<ValueT>(value));
188 return *this;
189 }
191
193
206 inline const Aws::Vector<InstanceBlockDeviceMappingSpecification>& GetBlockDeviceMappings() const { return m_blockDeviceMappings; }
207 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
208 template <typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMappingSpecification>>
209 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) {
210 m_blockDeviceMappingsHasBeenSet = true;
211 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
212 }
213 template <typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMappingSpecification>>
215 SetBlockDeviceMappings(std::forward<BlockDeviceMappingsT>(value));
216 return *this;
217 }
218 template <typename BlockDeviceMappingsT = InstanceBlockDeviceMappingSpecification>
220 m_blockDeviceMappingsHasBeenSet = true;
221 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
222 return *this;
223 }
225
227
233 inline const AttributeBooleanValue& GetDisableApiTermination() const { return m_disableApiTermination; }
234 inline bool DisableApiTerminationHasBeenSet() const { return m_disableApiTerminationHasBeenSet; }
235 template <typename DisableApiTerminationT = AttributeBooleanValue>
236 void SetDisableApiTermination(DisableApiTerminationT&& value) {
237 m_disableApiTerminationHasBeenSet = true;
238 m_disableApiTermination = std::forward<DisableApiTerminationT>(value);
239 }
240 template <typename DisableApiTerminationT = AttributeBooleanValue>
242 SetDisableApiTermination(std::forward<DisableApiTerminationT>(value));
243 return *this;
244 }
246
248
255 inline const AttributeValue& GetInstanceType() const { return m_instanceType; }
256 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
257 template <typename InstanceTypeT = AttributeValue>
258 void SetInstanceType(InstanceTypeT&& value) {
259 m_instanceTypeHasBeenSet = true;
260 m_instanceType = std::forward<InstanceTypeT>(value);
261 }
262 template <typename InstanceTypeT = AttributeValue>
264 SetInstanceType(std::forward<InstanceTypeT>(value));
265 return *this;
266 }
268
270
275 inline const AttributeValue& GetKernel() const { return m_kernel; }
276 inline bool KernelHasBeenSet() const { return m_kernelHasBeenSet; }
277 template <typename KernelT = AttributeValue>
278 void SetKernel(KernelT&& value) {
279 m_kernelHasBeenSet = true;
280 m_kernel = std::forward<KernelT>(value);
281 }
282 template <typename KernelT = AttributeValue>
284 SetKernel(std::forward<KernelT>(value));
285 return *this;
286 }
288
290
295 inline const AttributeValue& GetRamdisk() const { return m_ramdisk; }
296 inline bool RamdiskHasBeenSet() const { return m_ramdiskHasBeenSet; }
297 template <typename RamdiskT = AttributeValue>
298 void SetRamdisk(RamdiskT&& value) {
299 m_ramdiskHasBeenSet = true;
300 m_ramdisk = std::forward<RamdiskT>(value);
301 }
302 template <typename RamdiskT = AttributeValue>
304 SetRamdisk(std::forward<RamdiskT>(value));
305 return *this;
306 }
308
310
317 inline const SecureBlobAttributeValue& GetUserData() const { return m_userData; }
318 inline bool UserDataHasBeenSet() const { return m_userDataHasBeenSet; }
319 template <typename UserDataT = SecureBlobAttributeValue>
320 void SetUserData(UserDataT&& value) {
321 m_userDataHasBeenSet = true;
322 m_userData = std::forward<UserDataT>(value);
323 }
324 template <typename UserDataT = SecureBlobAttributeValue>
326 SetUserData(std::forward<UserDataT>(value));
327 return *this;
328 }
330
332
336 inline const AttributeValue& GetInstanceInitiatedShutdownBehavior() const { return m_instanceInitiatedShutdownBehavior; }
337 inline bool InstanceInitiatedShutdownBehaviorHasBeenSet() const { return m_instanceInitiatedShutdownBehaviorHasBeenSet; }
338 template <typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
339 void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) {
340 m_instanceInitiatedShutdownBehaviorHasBeenSet = true;
341 m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value);
342 }
343 template <typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
344 ModifyInstanceAttributeRequest& WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) {
345 SetInstanceInitiatedShutdownBehavior(std::forward<InstanceInitiatedShutdownBehaviorT>(value));
346 return *this;
347 }
349
351
356 inline const Aws::Vector<Aws::String>& GetGroups() const { return m_groups; }
357 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
358 template <typename GroupsT = Aws::Vector<Aws::String>>
359 void SetGroups(GroupsT&& value) {
360 m_groupsHasBeenSet = true;
361 m_groups = std::forward<GroupsT>(value);
362 }
363 template <typename GroupsT = Aws::Vector<Aws::String>>
365 SetGroups(std::forward<GroupsT>(value));
366 return *this;
367 }
368 template <typename GroupsT = Aws::String>
370 m_groupsHasBeenSet = true;
371 m_groups.emplace_back(std::forward<GroupsT>(value));
372 return *this;
373 }
375
377
384 inline const AttributeBooleanValue& GetEbsOptimized() const { return m_ebsOptimized; }
385 inline bool EbsOptimizedHasBeenSet() const { return m_ebsOptimizedHasBeenSet; }
386 template <typename EbsOptimizedT = AttributeBooleanValue>
387 void SetEbsOptimized(EbsOptimizedT&& value) {
388 m_ebsOptimizedHasBeenSet = true;
389 m_ebsOptimized = std::forward<EbsOptimizedT>(value);
390 }
391 template <typename EbsOptimizedT = AttributeBooleanValue>
393 SetEbsOptimized(std::forward<EbsOptimizedT>(value));
394 return *this;
395 }
397
399
406 inline const AttributeValue& GetSriovNetSupport() const { return m_sriovNetSupport; }
407 inline bool SriovNetSupportHasBeenSet() const { return m_sriovNetSupportHasBeenSet; }
408 template <typename SriovNetSupportT = AttributeValue>
409 void SetSriovNetSupport(SriovNetSupportT&& value) {
410 m_sriovNetSupportHasBeenSet = true;
411 m_sriovNetSupport = std::forward<SriovNetSupportT>(value);
412 }
413 template <typename SriovNetSupportT = AttributeValue>
415 SetSriovNetSupport(std::forward<SriovNetSupportT>(value));
416 return *this;
417 }
419
421
426 inline const AttributeBooleanValue& GetEnaSupport() const { return m_enaSupport; }
427 inline bool EnaSupportHasBeenSet() const { return m_enaSupportHasBeenSet; }
428 template <typename EnaSupportT = AttributeBooleanValue>
429 void SetEnaSupport(EnaSupportT&& value) {
430 m_enaSupportHasBeenSet = true;
431 m_enaSupport = std::forward<EnaSupportT>(value);
432 }
433 template <typename EnaSupportT = AttributeBooleanValue>
435 SetEnaSupport(std::forward<EnaSupportT>(value));
436 return *this;
437 }
439 private:
440 AttributeBooleanValue m_sourceDestCheck;
441
442 EnclaveOptionsRequest m_enclaveOptions;
443
444 AttributeBooleanValue m_disableApiStop;
445
446 bool m_dryRun{false};
447
448 Aws::String m_instanceId;
449
451
452 Aws::String m_value;
453
455
456 AttributeBooleanValue m_disableApiTermination;
457
458 AttributeValue m_instanceType;
459
460 AttributeValue m_kernel;
461
462 AttributeValue m_ramdisk;
463
464 SecureBlobAttributeValue m_userData;
465
466 AttributeValue m_instanceInitiatedShutdownBehavior;
467
469
470 AttributeBooleanValue m_ebsOptimized;
471
472 AttributeValue m_sriovNetSupport;
473
474 AttributeBooleanValue m_enaSupport;
475 bool m_sourceDestCheckHasBeenSet = false;
476 bool m_enclaveOptionsHasBeenSet = false;
477 bool m_disableApiStopHasBeenSet = false;
478 bool m_dryRunHasBeenSet = false;
479 bool m_instanceIdHasBeenSet = false;
480 bool m_attributeHasBeenSet = false;
481 bool m_valueHasBeenSet = false;
482 bool m_blockDeviceMappingsHasBeenSet = false;
483 bool m_disableApiTerminationHasBeenSet = false;
484 bool m_instanceTypeHasBeenSet = false;
485 bool m_kernelHasBeenSet = false;
486 bool m_ramdiskHasBeenSet = false;
487 bool m_userDataHasBeenSet = false;
488 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
489 bool m_groupsHasBeenSet = false;
490 bool m_ebsOptimizedHasBeenSet = false;
491 bool m_sriovNetSupportHasBeenSet = false;
492 bool m_enaSupportHasBeenSet = false;
493};
494
495} // namespace Model
496} // namespace EC2
497} // namespace Aws
const Aws::Vector< Aws::String > & GetGroups() const
ModifyInstanceAttributeRequest & WithInstanceId(InstanceIdT &&value)
ModifyInstanceAttributeRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
ModifyInstanceAttributeRequest & WithDisableApiTermination(DisableApiTerminationT &&value)
ModifyInstanceAttributeRequest & WithInstanceType(InstanceTypeT &&value)
ModifyInstanceAttributeRequest & WithSriovNetSupport(SriovNetSupportT &&value)
ModifyInstanceAttributeRequest & WithKernel(KernelT &&value)
ModifyInstanceAttributeRequest & WithDisableApiStop(DisableApiStopT &&value)
ModifyInstanceAttributeRequest & WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
virtual const char * GetServiceRequestName() const override
void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
ModifyInstanceAttributeRequest & WithUserData(UserDataT &&value)
ModifyInstanceAttributeRequest & WithRamdisk(RamdiskT &&value)
ModifyInstanceAttributeRequest & WithEnaSupport(EnaSupportT &&value)
ModifyInstanceAttributeRequest & WithSourceDestCheck(SourceDestCheckT &&value)
ModifyInstanceAttributeRequest & WithAttribute(InstanceAttributeName value)
AWS_EC2_API Aws::String SerializePayload() const override
ModifyInstanceAttributeRequest & WithValue(ValueT &&value)
ModifyInstanceAttributeRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
ModifyInstanceAttributeRequest & WithDryRun(bool value)
ModifyInstanceAttributeRequest & WithEnclaveOptions(EnclaveOptionsT &&value)
const Aws::Vector< InstanceBlockDeviceMappingSpecification > & GetBlockDeviceMappings() const
ModifyInstanceAttributeRequest & WithEbsOptimized(EbsOptimizedT &&value)
ModifyInstanceAttributeRequest & AddGroups(GroupsT &&value)
ModifyInstanceAttributeRequest & WithGroups(GroupsT &&value)
const AttributeBooleanValue & GetDisableApiTermination() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector