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/BlobAttributeValue.h>
14#include <aws/ec2/model/InstanceAttributeName.h>
15#include <aws/ec2/model/InstanceBlockDeviceMappingSpecification.h>
52 template <
typename SourceDestCheckT = AttributeBooleanValue>
54 m_sourceDestCheckHasBeenSet =
true;
55 m_sourceDestCheck = std::forward<SourceDestCheckT>(value);
57 template <
typename SourceDestCheckT = AttributeBooleanValue>
73 template <
typename DisableApiStopT = AttributeBooleanValue>
75 m_disableApiStopHasBeenSet =
true;
76 m_disableApiStop = std::forward<DisableApiStopT>(value);
78 template <
typename DisableApiStopT = AttributeBooleanValue>
95 m_dryRunHasBeenSet =
true;
110 template <
typename InstanceIdT = Aws::String>
112 m_instanceIdHasBeenSet =
true;
113 m_instanceId = std::forward<InstanceIdT>(value);
115 template <
typename InstanceIdT = Aws::String>
141 m_attributeHasBeenSet =
true;
158 template <
typename ValueT = Aws::String>
160 m_valueHasBeenSet =
true;
161 m_value = std::forward<ValueT>(value);
163 template <
typename ValueT = Aws::String>
165 SetValue(std::forward<ValueT>(value));
186 template <
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMappingSpecification>>
188 m_blockDeviceMappingsHasBeenSet =
true;
189 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
191 template <
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMappingSpecification>>
196 template <
typename BlockDeviceMappingsT = InstanceBlockDeviceMappingSpecification>
198 m_blockDeviceMappingsHasBeenSet =
true;
199 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
213 template <
typename DisableApiTerminationT = AttributeBooleanValue>
215 m_disableApiTerminationHasBeenSet =
true;
216 m_disableApiTermination = std::forward<DisableApiTerminationT>(value);
218 template <
typename DisableApiTerminationT = AttributeBooleanValue>
235 template <
typename InstanceTypeT = AttributeValue>
237 m_instanceTypeHasBeenSet =
true;
238 m_instanceType = std::forward<InstanceTypeT>(value);
240 template <
typename InstanceTypeT = AttributeValue>
255 template <
typename KernelT = AttributeValue>
257 m_kernelHasBeenSet =
true;
258 m_kernel = std::forward<KernelT>(value);
260 template <
typename KernelT = AttributeValue>
275 template <
typename RamdiskT = AttributeValue>
277 m_ramdiskHasBeenSet =
true;
278 m_ramdisk = std::forward<RamdiskT>(value);
280 template <
typename RamdiskT = AttributeValue>
297 template <
typename UserDataT = BlobAttributeValue>
299 m_userDataHasBeenSet =
true;
300 m_userData = std::forward<UserDataT>(value);
302 template <
typename UserDataT = BlobAttributeValue>
316 template <
typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
318 m_instanceInitiatedShutdownBehaviorHasBeenSet =
true;
319 m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value);
321 template <
typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
336 template <
typename GroupsT = Aws::Vector<Aws::String>>
338 m_groupsHasBeenSet =
true;
339 m_groups = std::forward<GroupsT>(value);
341 template <
typename GroupsT = Aws::Vector<Aws::String>>
346 template <
typename GroupsT = Aws::String>
348 m_groupsHasBeenSet =
true;
349 m_groups.emplace_back(std::forward<GroupsT>(value));
364 template <
typename EbsOptimizedT = AttributeBooleanValue>
366 m_ebsOptimizedHasBeenSet =
true;
367 m_ebsOptimized = std::forward<EbsOptimizedT>(value);
369 template <
typename EbsOptimizedT = AttributeBooleanValue>
386 template <
typename SriovNetSupportT = AttributeValue>
388 m_sriovNetSupportHasBeenSet =
true;
389 m_sriovNetSupport = std::forward<SriovNetSupportT>(value);
391 template <
typename SriovNetSupportT = AttributeValue>
406 template <
typename EnaSupportT = AttributeBooleanValue>
408 m_enaSupportHasBeenSet =
true;
409 m_enaSupport = std::forward<EnaSupportT>(value);
411 template <
typename EnaSupportT = AttributeBooleanValue>
422 bool m_dryRun{
false};
432 AttributeBooleanValue m_disableApiTermination;
434 AttributeValue m_instanceType;
436 AttributeValue m_kernel;
438 AttributeValue m_ramdisk;
440 BlobAttributeValue m_userData;
442 AttributeValue m_instanceInitiatedShutdownBehavior;
446 AttributeBooleanValue m_ebsOptimized;
448 AttributeValue m_sriovNetSupport;
450 AttributeBooleanValue m_enaSupport;
451 bool m_sourceDestCheckHasBeenSet =
false;
452 bool m_disableApiStopHasBeenSet =
false;
453 bool m_dryRunHasBeenSet =
false;
454 bool m_instanceIdHasBeenSet =
false;
455 bool m_attributeHasBeenSet =
false;
456 bool m_valueHasBeenSet =
false;
457 bool m_blockDeviceMappingsHasBeenSet =
false;
458 bool m_disableApiTerminationHasBeenSet =
false;
459 bool m_instanceTypeHasBeenSet =
false;
460 bool m_kernelHasBeenSet =
false;
461 bool m_ramdiskHasBeenSet =
false;
462 bool m_userDataHasBeenSet =
false;
463 bool m_instanceInitiatedShutdownBehaviorHasBeenSet =
false;
464 bool m_groupsHasBeenSet =
false;
465 bool m_ebsOptimizedHasBeenSet =
false;
466 bool m_sriovNetSupportHasBeenSet =
false;
467 bool m_enaSupportHasBeenSet =
false;
const Aws::Vector< Aws::String > & GetGroups() const
bool DryRunHasBeenSet() const
ModifyInstanceAttributeRequest & WithInstanceId(InstanceIdT &&value)
bool EnaSupportHasBeenSet() const
ModifyInstanceAttributeRequest & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
AWS_EC2_API ModifyInstanceAttributeRequest()=default
void SetSourceDestCheck(SourceDestCheckT &&value)
void SetGroups(GroupsT &&value)
void SetUserData(UserDataT &&value)
InstanceAttributeName GetAttribute() const
void SetKernel(KernelT &&value)
void SetValue(ValueT &&value)
bool UserDataHasBeenSet() const
ModifyInstanceAttributeRequest & WithDisableApiTermination(DisableApiTerminationT &&value)
ModifyInstanceAttributeRequest & WithInstanceType(InstanceTypeT &&value)
ModifyInstanceAttributeRequest & WithSriovNetSupport(SriovNetSupportT &&value)
bool KernelHasBeenSet() const
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
void SetEnaSupport(EnaSupportT &&value)
bool EbsOptimizedHasBeenSet() const
ModifyInstanceAttributeRequest & WithKernel(KernelT &&value)
ModifyInstanceAttributeRequest & WithDisableApiStop(DisableApiStopT &&value)
bool ValueHasBeenSet() const
void SetInstanceType(InstanceTypeT &&value)
void SetSriovNetSupport(SriovNetSupportT &&value)
void SetInstanceId(InstanceIdT &&value)
const AttributeValue & GetInstanceType() const
bool InstanceIdHasBeenSet() const
bool BlockDeviceMappingsHasBeenSet() const
bool DisableApiTerminationHasBeenSet() const
bool SriovNetSupportHasBeenSet() const
bool AttributeHasBeenSet() const
ModifyInstanceAttributeRequest & WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
virtual const char * GetServiceRequestName() const override
const AttributeBooleanValue & GetEbsOptimized() const
void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const AttributeValue & GetKernel() const
const AttributeBooleanValue & GetDisableApiStop() const
ModifyInstanceAttributeRequest & WithUserData(UserDataT &&value)
const AttributeBooleanValue & GetEnaSupport() const
ModifyInstanceAttributeRequest & WithRamdisk(RamdiskT &&value)
const AttributeValue & GetInstanceInitiatedShutdownBehavior() const
const BlobAttributeValue & GetUserData() const
const Aws::String & GetInstanceId() const
ModifyInstanceAttributeRequest & WithEnaSupport(EnaSupportT &&value)
void SetDisableApiStop(DisableApiStopT &&value)
bool GroupsHasBeenSet() const
void SetEbsOptimized(EbsOptimizedT &&value)
const AttributeValue & GetSriovNetSupport() const
bool RamdiskHasBeenSet() const
ModifyInstanceAttributeRequest & WithSourceDestCheck(SourceDestCheckT &&value)
void SetDryRun(bool value)
const AttributeValue & GetRamdisk() const
ModifyInstanceAttributeRequest & WithAttribute(InstanceAttributeName value)
AWS_EC2_API Aws::String SerializePayload() const override
bool SourceDestCheckHasBeenSet() const
ModifyInstanceAttributeRequest & WithValue(ValueT &&value)
bool InstanceInitiatedShutdownBehaviorHasBeenSet() const
bool InstanceTypeHasBeenSet() const
ModifyInstanceAttributeRequest & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
ModifyInstanceAttributeRequest & WithDryRun(bool value)
const Aws::String & GetValue() const
void SetAttribute(InstanceAttributeName value)
const Aws::Vector< InstanceBlockDeviceMappingSpecification > & GetBlockDeviceMappings() const
void SetRamdisk(RamdiskT &&value)
ModifyInstanceAttributeRequest & WithEbsOptimized(EbsOptimizedT &&value)
ModifyInstanceAttributeRequest & AddGroups(GroupsT &&value)
void SetDisableApiTermination(DisableApiTerminationT &&value)
ModifyInstanceAttributeRequest & WithGroups(GroupsT &&value)
bool DisableApiStopHasBeenSet() const
const AttributeBooleanValue & GetSourceDestCheck() const
const AttributeBooleanValue & GetDisableApiTermination() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector