7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/AttributeBooleanValue.h>
11#include <aws/ec2/model/AttributeValue.h>
12#include <aws/ec2/model/EnclaveOptions.h>
13#include <aws/ec2/model/GroupIdentifier.h>
14#include <aws/ec2/model/InstanceBlockDeviceMapping.h>
15#include <aws/ec2/model/ProductCode.h>
16#include <aws/ec2/model/ResponseMetadata.h>
21template <
typename RESULT_TYPE>
22class AmazonWebServiceResult;
47 template <
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
49 m_blockDeviceMappingsHasBeenSet =
true;
50 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
52 template <
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
57 template <
typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
59 m_blockDeviceMappingsHasBeenSet =
true;
60 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
72 template <
typename DisableApiTerminationT = AttributeBooleanValue>
74 m_disableApiTerminationHasBeenSet =
true;
75 m_disableApiTermination = std::forward<DisableApiTerminationT>(value);
77 template <
typename DisableApiTerminationT = AttributeBooleanValue>
89 template <
typename EnaSupportT = AttributeBooleanValue>
91 m_enaSupportHasBeenSet =
true;
92 m_enaSupport = std::forward<EnaSupportT>(value);
94 template <
typename EnaSupportT = AttributeBooleanValue>
107 template <
typename EnclaveOptionsT = EnclaveOptions>
109 m_enclaveOptionsHasBeenSet =
true;
110 m_enclaveOptions = std::forward<EnclaveOptionsT>(value);
112 template <
typename EnclaveOptionsT = EnclaveOptions>
124 template <
typename EbsOptimizedT = AttributeBooleanValue>
126 m_ebsOptimizedHasBeenSet =
true;
127 m_ebsOptimized = std::forward<EbsOptimizedT>(value);
129 template <
typename EbsOptimizedT = AttributeBooleanValue>
141 template <
typename InstanceIdT = Aws::String>
143 m_instanceIdHasBeenSet =
true;
144 m_instanceId = std::forward<InstanceIdT>(value);
146 template <
typename InstanceIdT = Aws::String>
159 template <
typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
161 m_instanceInitiatedShutdownBehaviorHasBeenSet =
true;
162 m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value);
164 template <
typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
176 template <
typename InstanceTypeT = AttributeValue>
178 m_instanceTypeHasBeenSet =
true;
179 m_instanceType = std::forward<InstanceTypeT>(value);
181 template <
typename InstanceTypeT = AttributeValue>
193 template <
typename KernelIdT = AttributeValue>
195 m_kernelIdHasBeenSet =
true;
196 m_kernelId = std::forward<KernelIdT>(value);
198 template <
typename KernelIdT = AttributeValue>
210 template <
typename ProductCodesT = Aws::Vector<ProductCode>>
212 m_productCodesHasBeenSet =
true;
213 m_productCodes = std::forward<ProductCodesT>(value);
215 template <
typename ProductCodesT = Aws::Vector<ProductCode>>
220 template <
typename ProductCodesT = ProductCode>
222 m_productCodesHasBeenSet =
true;
223 m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
233 template <
typename RamdiskIdT = AttributeValue>
235 m_ramdiskIdHasBeenSet =
true;
236 m_ramdiskId = std::forward<RamdiskIdT>(value);
238 template <
typename RamdiskIdT = AttributeValue>
251 template <
typename RootDeviceNameT = AttributeValue>
253 m_rootDeviceNameHasBeenSet =
true;
254 m_rootDeviceName = std::forward<RootDeviceNameT>(value);
256 template <
typename RootDeviceNameT = AttributeValue>
268 template <
typename SourceDestCheckT = AttributeBooleanValue>
270 m_sourceDestCheckHasBeenSet =
true;
271 m_sourceDestCheck = std::forward<SourceDestCheckT>(value);
273 template <
typename SourceDestCheckT = AttributeBooleanValue>
286 template <
typename SriovNetSupportT = AttributeValue>
288 m_sriovNetSupportHasBeenSet =
true;
289 m_sriovNetSupport = std::forward<SriovNetSupportT>(value);
291 template <
typename SriovNetSupportT = AttributeValue>
303 template <
typename UserDataT = AttributeValue>
305 m_userDataHasBeenSet =
true;
306 m_userData = std::forward<UserDataT>(value);
308 template <
typename UserDataT = AttributeValue>
320 template <
typename DisableApiStopT = AttributeBooleanValue>
322 m_disableApiStopHasBeenSet =
true;
323 m_disableApiStop = std::forward<DisableApiStopT>(value);
325 template <
typename DisableApiStopT = AttributeBooleanValue>
337 template <
typename GroupsT = Aws::Vector<GroupIdentifier>>
339 m_groupsHasBeenSet =
true;
340 m_groups = std::forward<GroupsT>(value);
342 template <
typename GroupsT = Aws::Vector<GroupIdentifier>>
347 template <
typename GroupsT = GroupIdentifier>
349 m_groupsHasBeenSet =
true;
350 m_groups.emplace_back(std::forward<GroupsT>(value));
358 template <
typename ResponseMetadataT = ResponseMetadata>
360 m_responseMetadataHasBeenSet =
true;
361 m_responseMetadata = std::forward<ResponseMetadataT>(value);
363 template <
typename ResponseMetadataT = ResponseMetadata>
405 bool m_blockDeviceMappingsHasBeenSet =
false;
406 bool m_disableApiTerminationHasBeenSet =
false;
407 bool m_enaSupportHasBeenSet =
false;
408 bool m_enclaveOptionsHasBeenSet =
false;
409 bool m_ebsOptimizedHasBeenSet =
false;
410 bool m_instanceIdHasBeenSet =
false;
411 bool m_instanceInitiatedShutdownBehaviorHasBeenSet =
false;
412 bool m_instanceTypeHasBeenSet =
false;
413 bool m_kernelIdHasBeenSet =
false;
414 bool m_productCodesHasBeenSet =
false;
415 bool m_ramdiskIdHasBeenSet =
false;
416 bool m_rootDeviceNameHasBeenSet =
false;
417 bool m_sourceDestCheckHasBeenSet =
false;
418 bool m_sriovNetSupportHasBeenSet =
false;
419 bool m_userDataHasBeenSet =
false;
420 bool m_disableApiStopHasBeenSet =
false;
421 bool m_groupsHasBeenSet =
false;
422 bool m_responseMetadataHasBeenSet =
false;
DescribeInstanceAttributeResponse & WithRamdiskId(RamdiskIdT &&value)
DescribeInstanceAttributeResponse & WithDisableApiStop(DisableApiStopT &&value)
DescribeInstanceAttributeResponse & WithDisableApiTermination(DisableApiTerminationT &&value)
DescribeInstanceAttributeResponse & WithInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT &&value)
const AttributeValue & GetInstanceInitiatedShutdownBehavior() const
DescribeInstanceAttributeResponse & AddProductCodes(ProductCodesT &&value)
DescribeInstanceAttributeResponse & WithEnclaveOptions(EnclaveOptionsT &&value)
void SetSriovNetSupport(SriovNetSupportT &&value)
DescribeInstanceAttributeResponse & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
const AttributeBooleanValue & GetEbsOptimized() const
void SetResponseMetadata(ResponseMetadataT &&value)
void SetGroups(GroupsT &&value)
DescribeInstanceAttributeResponse & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
void SetRamdiskId(RamdiskIdT &&value)
void SetKernelId(KernelIdT &&value)
DescribeInstanceAttributeResponse & WithProductCodes(ProductCodesT &&value)
void SetUserData(UserDataT &&value)
const Aws::Vector< GroupIdentifier > & GetGroups() const
const AttributeBooleanValue & GetDisableApiStop() const
const Aws::String & GetInstanceId() const
const AttributeValue & GetRamdiskId() const
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
DescribeInstanceAttributeResponse & WithSourceDestCheck(SourceDestCheckT &&value)
const ResponseMetadata & GetResponseMetadata() const
void SetInstanceId(InstanceIdT &&value)
AWS_EC2_API DescribeInstanceAttributeResponse(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
const AttributeBooleanValue & GetDisableApiTermination() const
DescribeInstanceAttributeResponse & WithInstanceType(InstanceTypeT &&value)
const EnclaveOptions & GetEnclaveOptions() const
const AttributeValue & GetUserData() const
const AttributeValue & GetRootDeviceName() const
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
void SetRootDeviceName(RootDeviceNameT &&value)
DescribeInstanceAttributeResponse & WithRootDeviceName(RootDeviceNameT &&value)
DescribeInstanceAttributeResponse & WithEbsOptimized(EbsOptimizedT &&value)
const AttributeBooleanValue & GetEnaSupport() const
void SetDisableApiTermination(DisableApiTerminationT &&value)
void SetInstanceType(InstanceTypeT &&value)
const Aws::Vector< ProductCode > & GetProductCodes() const
DescribeInstanceAttributeResponse & WithSriovNetSupport(SriovNetSupportT &&value)
const AttributeValue & GetKernelId() const
const AttributeValue & GetInstanceType() const
void SetEbsOptimized(EbsOptimizedT &&value)
const AttributeValue & GetSriovNetSupport() const
void SetSourceDestCheck(SourceDestCheckT &&value)
DescribeInstanceAttributeResponse & AddGroups(GroupsT &&value)
DescribeInstanceAttributeResponse & WithGroups(GroupsT &&value)
AWS_EC2_API DescribeInstanceAttributeResponse()=default
void SetEnclaveOptions(EnclaveOptionsT &&value)
DescribeInstanceAttributeResponse & WithEnaSupport(EnaSupportT &&value)
const AttributeBooleanValue & GetSourceDestCheck() const
AWS_EC2_API DescribeInstanceAttributeResponse & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
void SetDisableApiStop(DisableApiStopT &&value)
DescribeInstanceAttributeResponse & WithResponseMetadata(ResponseMetadataT &&value)
DescribeInstanceAttributeResponse & WithKernelId(KernelIdT &&value)
DescribeInstanceAttributeResponse & WithInstanceId(InstanceIdT &&value)
void SetProductCodes(ProductCodesT &&value)
void SetEnaSupport(EnaSupportT &&value)
DescribeInstanceAttributeResponse & WithUserData(UserDataT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Xml::XmlDocument XmlDocument