7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/model/AttributeBooleanValue.h>
10#include <aws/ec2/model/EnclaveOptions.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/AttributeValue.h>
13#include <aws/ec2/model/ResponseMetadata.h>
14#include <aws/ec2/model/InstanceBlockDeviceMapping.h>
15#include <aws/ec2/model/ProductCode.h>
16#include <aws/ec2/model/GroupIdentifier.h>
21template<
typename RESULT_TYPE>
22class AmazonWebServiceResult;
53 template<
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
54 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
55 template<
typename BlockDeviceMappingsT = Aws::Vector<InstanceBlockDeviceMapping>>
57 template<
typename BlockDeviceMappingsT = InstanceBlockDeviceMapping>
68 template<
typename DisableApiTerminationT = AttributeBooleanValue>
69 void SetDisableApiTermination(DisableApiTerminationT&& value) { m_disableApiTerminationHasBeenSet =
true; m_disableApiTermination = std::forward<DisableApiTerminationT>(value); }
70 template<
typename DisableApiTerminationT = AttributeBooleanValue>
79 template<
typename EnaSupportT = AttributeBooleanValue>
80 void SetEnaSupport(EnaSupportT&& value) { m_enaSupportHasBeenSet =
true; m_enaSupport = std::forward<EnaSupportT>(value); }
81 template<
typename EnaSupportT = AttributeBooleanValue>
91 template<
typename EnclaveOptionsT = EnclaveOptions>
92 void SetEnclaveOptions(EnclaveOptionsT&& value) { m_enclaveOptionsHasBeenSet =
true; m_enclaveOptions = std::forward<EnclaveOptionsT>(value); }
93 template<
typename EnclaveOptionsT = EnclaveOptions>
102 template<
typename EbsOptimizedT = AttributeBooleanValue>
103 void SetEbsOptimized(EbsOptimizedT&& value) { m_ebsOptimizedHasBeenSet =
true; m_ebsOptimized = std::forward<EbsOptimizedT>(value); }
104 template<
typename EbsOptimizedT = AttributeBooleanValue>
113 template<
typename InstanceIdT = Aws::String>
114 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet =
true; m_instanceId = std::forward<InstanceIdT>(value); }
115 template<
typename InstanceIdT = Aws::String>
125 template<
typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
126 void SetInstanceInitiatedShutdownBehavior(InstanceInitiatedShutdownBehaviorT&& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet =
true; m_instanceInitiatedShutdownBehavior = std::forward<InstanceInitiatedShutdownBehaviorT>(value); }
127 template<
typename InstanceInitiatedShutdownBehaviorT = AttributeValue>
136 template<
typename InstanceTypeT = AttributeValue>
137 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
138 template<
typename InstanceTypeT = AttributeValue>
147 template<
typename KernelIdT = AttributeValue>
148 void SetKernelId(KernelIdT&& value) { m_kernelIdHasBeenSet =
true; m_kernelId = std::forward<KernelIdT>(value); }
149 template<
typename KernelIdT = AttributeValue>
158 template<
typename ProductCodesT = Aws::Vector<ProductCode>>
159 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet =
true; m_productCodes = std::forward<ProductCodesT>(value); }
160 template<
typename ProductCodesT = Aws::Vector<ProductCode>>
162 template<
typename ProductCodesT = ProductCode>
171 template<
typename RamdiskIdT = AttributeValue>
172 void SetRamdiskId(RamdiskIdT&& value) { m_ramdiskIdHasBeenSet =
true; m_ramdiskId = std::forward<RamdiskIdT>(value); }
173 template<
typename RamdiskIdT = AttributeValue>
183 template<
typename RootDeviceNameT = AttributeValue>
184 void SetRootDeviceName(RootDeviceNameT&& value) { m_rootDeviceNameHasBeenSet =
true; m_rootDeviceName = std::forward<RootDeviceNameT>(value); }
185 template<
typename RootDeviceNameT = AttributeValue>
194 template<
typename SourceDestCheckT = AttributeBooleanValue>
195 void SetSourceDestCheck(SourceDestCheckT&& value) { m_sourceDestCheckHasBeenSet =
true; m_sourceDestCheck = std::forward<SourceDestCheckT>(value); }
196 template<
typename SourceDestCheckT = AttributeBooleanValue>
206 template<
typename SriovNetSupportT = AttributeValue>
207 void SetSriovNetSupport(SriovNetSupportT&& value) { m_sriovNetSupportHasBeenSet =
true; m_sriovNetSupport = std::forward<SriovNetSupportT>(value); }
208 template<
typename SriovNetSupportT = AttributeValue>
217 template<
typename UserDataT = AttributeValue>
218 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet =
true; m_userData = std::forward<UserDataT>(value); }
219 template<
typename UserDataT = AttributeValue>
228 template<
typename DisableApiStopT = AttributeBooleanValue>
229 void SetDisableApiStop(DisableApiStopT&& value) { m_disableApiStopHasBeenSet =
true; m_disableApiStop = std::forward<DisableApiStopT>(value); }
230 template<
typename DisableApiStopT = AttributeBooleanValue>
239 template<
typename GroupsT = Aws::Vector<GroupIdentifier>>
240 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet =
true; m_groups = std::forward<GroupsT>(value); }
241 template<
typename GroupsT = Aws::Vector<GroupIdentifier>>
243 template<
typename GroupsT = GroupIdentifier>
250 template<
typename ResponseMetadataT = ResponseMetadata>
251 void SetResponseMetadata(ResponseMetadataT&& value) { m_responseMetadataHasBeenSet =
true; m_responseMetadata = std::forward<ResponseMetadataT>(value); }
252 template<
typename ResponseMetadataT = ResponseMetadata>
258 bool m_blockDeviceMappingsHasBeenSet =
false;
261 bool m_disableApiTerminationHasBeenSet =
false;
264 bool m_enaSupportHasBeenSet =
false;
267 bool m_enclaveOptionsHasBeenSet =
false;
270 bool m_ebsOptimizedHasBeenSet =
false;
273 bool m_instanceIdHasBeenSet =
false;
276 bool m_instanceInitiatedShutdownBehaviorHasBeenSet =
false;
279 bool m_instanceTypeHasBeenSet =
false;
282 bool m_kernelIdHasBeenSet =
false;
285 bool m_productCodesHasBeenSet =
false;
288 bool m_ramdiskIdHasBeenSet =
false;
291 bool m_rootDeviceNameHasBeenSet =
false;
294 bool m_sourceDestCheckHasBeenSet =
false;
297 bool m_sriovNetSupportHasBeenSet =
false;
300 bool m_userDataHasBeenSet =
false;
303 bool m_disableApiStopHasBeenSet =
false;
306 bool m_groupsHasBeenSet =
false;
309 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