7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/ArchitectureValues.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/HypervisorType.h>
13#include <aws/ec2/model/IamInstanceProfile.h>
14#include <aws/ec2/model/InstanceLifecycleType.h>
15#include <aws/ec2/model/DeviceType.h>
16#include <aws/ec2/model/StateReason.h>
17#include <aws/ec2/model/VirtualizationType.h>
18#include <aws/ec2/model/CpuOptions.h>
19#include <aws/ec2/model/CapacityReservationSpecificationResponse.h>
20#include <aws/ec2/model/HibernationOptions.h>
21#include <aws/ec2/model/InstanceMetadataOptionsResponse.h>
22#include <aws/ec2/model/EnclaveOptions.h>
23#include <aws/ec2/model/BootModeValues.h>
24#include <aws/core/utils/DateTime.h>
25#include <aws/ec2/model/PrivateDnsNameOptionsResponse.h>
26#include <aws/ec2/model/InstanceMaintenanceOptions.h>
27#include <aws/ec2/model/InstanceBootModeValues.h>
28#include <aws/ec2/model/InstanceState.h>
29#include <aws/ec2/model/InstanceType.h>
30#include <aws/ec2/model/Placement.h>
31#include <aws/ec2/model/PlatformValues.h>
32#include <aws/ec2/model/Monitoring.h>
33#include <aws/ec2/model/InstanceBlockDeviceMapping.h>
34#include <aws/ec2/model/ElasticGpuAssociation.h>
35#include <aws/ec2/model/ElasticInferenceAcceleratorAssociation.h>
36#include <aws/ec2/model/InstanceNetworkInterface.h>
37#include <aws/ec2/model/GroupIdentifier.h>
38#include <aws/ec2/model/Tag.h>
39#include <aws/ec2/model/LicenseConfiguration.h>
40#include <aws/ec2/model/ProductCode.h>
108 inline void SetClientToken(
const char* value) { m_clientTokenHasBeenSet =
true; m_clientToken.assign(value); }
124 inline void SetEbsOptimized(
bool value) { m_ebsOptimizedHasBeenSet =
true; m_ebsOptimized = value; }
134 inline void SetEnaSupport(
bool value) { m_enaSupportHasBeenSet =
true; m_enaSupport = value; }
227 inline void SetOutpostArn(
const char* value) { m_outpostArnHasBeenSet =
true; m_outpostArn.assign(value); }
242 inline void SetRootDeviceName(
const char* value) { m_rootDeviceNameHasBeenSet =
true; m_rootDeviceName.assign(value); }
281 inline void SetSourceDestCheck(
bool value) { m_sourceDestCheckHasBeenSet =
true; m_sourceDestCheck = value; }
293 inline void SetSpotInstanceRequestId(
const char* value) { m_spotInstanceRequestIdHasBeenSet =
true; m_spotInstanceRequestId.assign(value); }
308 inline void SetSriovNetSupport(
const char* value) { m_sriovNetSupportHasBeenSet =
true; m_sriovNetSupport.assign(value); }
336 inline Instance&
AddTags(
const Tag& value) { m_tagsHasBeenSet =
true; m_tags.push_back(value);
return *
this; }
337 inline Instance&
AddTags(
Tag&& value) { m_tagsHasBeenSet =
true; m_tags.push_back(std::move(value));
return *
this; }
372 inline void SetCapacityReservationId(
const char* value) { m_capacityReservationIdHasBeenSet =
true; m_capacityReservationId.assign(value); }
470 inline void SetPlatformDetails(
const char* value) { m_platformDetailsHasBeenSet =
true; m_platformDetails.assign(value); }
486 inline void SetUsageOperation(
const char* value) { m_usageOperationHasBeenSet =
true; m_usageOperation.assign(value); }
524 inline void SetIpv6Address(
const char* value) { m_ipv6AddressHasBeenSet =
true; m_ipv6Address.assign(value); }
541 inline void SetTpmSupport(
const char* value) { m_tpmSupportHasBeenSet =
true; m_tpmSupport.assign(value); }
583 inline void SetInstanceId(
const char* value) { m_instanceIdHasBeenSet =
true; m_instanceId.assign(value); }
597 inline void SetImageId(
const char* value) { m_imageIdHasBeenSet =
true; m_imageId.assign(value); }
629 inline void SetPrivateDnsName(
const char* value) { m_privateDnsNameHasBeenSet =
true; m_privateDnsName.assign(value); }
645 inline void SetPublicDnsName(
const char* value) { m_publicDnsNameHasBeenSet =
true; m_publicDnsName.assign(value); }
660 inline void SetStateTransitionReason(
const char* value) { m_stateTransitionReasonHasBeenSet =
true; m_stateTransitionReason.assign(value); }
675 inline void SetKeyName(
const char* value) { m_keyNameHasBeenSet =
true; m_keyName.assign(value); }
688 inline void SetAmiLaunchIndex(
int value) { m_amiLaunchIndexHasBeenSet =
true; m_amiLaunchIndex = value; }
750 inline void SetKernelId(
const char* value) { m_kernelIdHasBeenSet =
true; m_kernelId.assign(value); }
764 inline void SetRamdiskId(
const char* value) { m_ramdiskIdHasBeenSet =
true; m_ramdiskId.assign(value); }
803 inline void SetSubnetId(
const char* value) { m_subnetIdHasBeenSet =
true; m_subnetId.assign(value); }
817 inline void SetVpcId(
const char* value) { m_vpcIdHasBeenSet =
true; m_vpcId.assign(value); }
831 inline void SetPrivateIpAddress(
const char* value) { m_privateIpAddressHasBeenSet =
true; m_privateIpAddress.assign(value); }
847 inline void SetPublicIpAddress(
const char* value) { m_publicIpAddressHasBeenSet =
true; m_publicIpAddress.assign(value); }
855 bool m_architectureHasBeenSet =
false;
858 bool m_blockDeviceMappingsHasBeenSet =
false;
861 bool m_clientTokenHasBeenSet =
false;
864 bool m_ebsOptimizedHasBeenSet =
false;
867 bool m_enaSupportHasBeenSet =
false;
870 bool m_hypervisorHasBeenSet =
false;
873 bool m_iamInstanceProfileHasBeenSet =
false;
876 bool m_instanceLifecycleHasBeenSet =
false;
879 bool m_elasticGpuAssociationsHasBeenSet =
false;
882 bool m_elasticInferenceAcceleratorAssociationsHasBeenSet =
false;
885 bool m_networkInterfacesHasBeenSet =
false;
888 bool m_outpostArnHasBeenSet =
false;
891 bool m_rootDeviceNameHasBeenSet =
false;
894 bool m_rootDeviceTypeHasBeenSet =
false;
897 bool m_securityGroupsHasBeenSet =
false;
899 bool m_sourceDestCheck;
900 bool m_sourceDestCheckHasBeenSet =
false;
903 bool m_spotInstanceRequestIdHasBeenSet =
false;
906 bool m_sriovNetSupportHasBeenSet =
false;
909 bool m_stateReasonHasBeenSet =
false;
912 bool m_tagsHasBeenSet =
false;
915 bool m_virtualizationTypeHasBeenSet =
false;
918 bool m_cpuOptionsHasBeenSet =
false;
921 bool m_capacityReservationIdHasBeenSet =
false;
924 bool m_capacityReservationSpecificationHasBeenSet =
false;
927 bool m_hibernationOptionsHasBeenSet =
false;
930 bool m_licensesHasBeenSet =
false;
933 bool m_metadataOptionsHasBeenSet =
false;
936 bool m_enclaveOptionsHasBeenSet =
false;
939 bool m_bootModeHasBeenSet =
false;
942 bool m_platformDetailsHasBeenSet =
false;
945 bool m_usageOperationHasBeenSet =
false;
948 bool m_usageOperationUpdateTimeHasBeenSet =
false;
951 bool m_privateDnsNameOptionsHasBeenSet =
false;
954 bool m_ipv6AddressHasBeenSet =
false;
957 bool m_tpmSupportHasBeenSet =
false;
960 bool m_maintenanceOptionsHasBeenSet =
false;
963 bool m_currentInstanceBootModeHasBeenSet =
false;
966 bool m_instanceIdHasBeenSet =
false;
969 bool m_imageIdHasBeenSet =
false;
972 bool m_stateHasBeenSet =
false;
975 bool m_privateDnsNameHasBeenSet =
false;
978 bool m_publicDnsNameHasBeenSet =
false;
981 bool m_stateTransitionReasonHasBeenSet =
false;
984 bool m_keyNameHasBeenSet =
false;
986 int m_amiLaunchIndex;
987 bool m_amiLaunchIndexHasBeenSet =
false;
990 bool m_productCodesHasBeenSet =
false;
993 bool m_instanceTypeHasBeenSet =
false;
996 bool m_launchTimeHasBeenSet =
false;
999 bool m_placementHasBeenSet =
false;
1002 bool m_kernelIdHasBeenSet =
false;
1005 bool m_ramdiskIdHasBeenSet =
false;
1008 bool m_platformHasBeenSet =
false;
1011 bool m_monitoringHasBeenSet =
false;
1014 bool m_subnetIdHasBeenSet =
false;
1017 bool m_vpcIdHasBeenSet =
false;
1020 bool m_privateIpAddressHasBeenSet =
false;
1023 bool m_publicIpAddressHasBeenSet =
false;
Instance & WithUsageOperation(Aws::String &&value)
void SetTpmSupport(const char *value)
const Aws::Vector< InstanceBlockDeviceMapping > & GetBlockDeviceMappings() const
bool StateTransitionReasonHasBeenSet() const
Instance & WithCpuOptions(CpuOptions &&value)
Instance & WithStateTransitionReason(const char *value)
Instance & WithIamInstanceProfile(IamInstanceProfile &&value)
Instance & WithMetadataOptions(const InstanceMetadataOptionsResponse &value)
Instance & WithUsageOperationUpdateTime(const Aws::Utils::DateTime &value)
Instance & WithEnclaveOptions(EnclaveOptions &&value)
Instance & WithKernelId(const Aws::String &value)
const BootModeValues & GetBootMode() const
void SetCurrentInstanceBootMode(InstanceBootModeValues &&value)
void SetCapacityReservationSpecification(const CapacityReservationSpecificationResponse &value)
bool RootDeviceNameHasBeenSet() const
void SetIpv6Address(Aws::String &&value)
Instance & WithPlacement(Placement &&value)
Instance & WithPrivateIpAddress(const Aws::String &value)
bool PrivateDnsNameOptionsHasBeenSet() const
void SetIpv6Address(const Aws::String &value)
Instance & WithPrivateDnsNameOptions(const PrivateDnsNameOptionsResponse &value)
const InstanceState & GetState() const
void SetInstanceType(InstanceType &&value)
void SetCurrentInstanceBootMode(const InstanceBootModeValues &value)
Instance & WithPlatform(const PlatformValues &value)
Instance & WithRootDeviceName(const char *value)
Instance & WithPrivateDnsNameOptions(PrivateDnsNameOptionsResponse &&value)
Instance & WithElasticInferenceAcceleratorAssociations(const Aws::Vector< ElasticInferenceAcceleratorAssociation > &value)
void SetKernelId(const Aws::String &value)
void SetSpotInstanceRequestId(const Aws::String &value)
bool ElasticInferenceAcceleratorAssociationsHasBeenSet() const
Instance & AddElasticGpuAssociations(const ElasticGpuAssociation &value)
Instance & AddBlockDeviceMappings(const InstanceBlockDeviceMapping &value)
bool BlockDeviceMappingsHasBeenSet() const
void SetVirtualizationType(VirtualizationType &&value)
Instance & WithMaintenanceOptions(const InstanceMaintenanceOptions &value)
bool GetEnaSupport() const
void SetEnclaveOptions(const EnclaveOptions &value)
void SetCapacityReservationId(const Aws::String &value)
void SetPlatformDetails(Aws::String &&value)
const Aws::String & GetKeyName() const
void SetIpv6Address(const char *value)
Instance & WithPlatformDetails(Aws::String &&value)
Instance & WithSecurityGroups(const Aws::Vector< GroupIdentifier > &value)
const Aws::String & GetIpv6Address() const
void SetIamInstanceProfile(const IamInstanceProfile &value)
void SetTags(Aws::Vector< Tag > &&value)
Instance & WithMonitoring(const Monitoring &value)
bool LicensesHasBeenSet() const
Instance & WithBootMode(const BootModeValues &value)
void SetRamdiskId(const char *value)
void SetStateTransitionReason(const Aws::String &value)
void SetHypervisor(HypervisorType &&value)
Instance & WithSubnetId(const Aws::String &value)
void SetStateTransitionReason(Aws::String &&value)
void SetBlockDeviceMappings(Aws::Vector< InstanceBlockDeviceMapping > &&value)
bool Ipv6AddressHasBeenSet() const
void SetKeyName(const Aws::String &value)
Instance & WithVirtualizationType(const VirtualizationType &value)
void SetImageId(const Aws::String &value)
Instance & WithRootDeviceType(const DeviceType &value)
bool HibernationOptionsHasBeenSet() const
Instance & WithStateTransitionReason(const Aws::String &value)
Instance & AddTags(const Tag &value)
void SetInstanceId(const char *value)
void SetLicenses(const Aws::Vector< LicenseConfiguration > &value)
Instance & WithPrivateDnsName(Aws::String &&value)
Instance & WithRootDeviceName(Aws::String &&value)
Instance & AddLicenses(const LicenseConfiguration &value)
bool KeyNameHasBeenSet() const
Instance & WithKeyName(Aws::String &&value)
void SetOutpostArn(const char *value)
void SetImageId(Aws::String &&value)
void SetKeyName(Aws::String &&value)
void SetTags(const Aws::Vector< Tag > &value)
bool PlatformDetailsHasBeenSet() const
const Aws::Vector< LicenseConfiguration > & GetLicenses() const
void SetSriovNetSupport(const Aws::String &value)
Instance & WithCapacityReservationSpecification(CapacityReservationSpecificationResponse &&value)
const HypervisorType & GetHypervisor() const
void SetEnaSupport(bool value)
Instance & AddProductCodes(const ProductCode &value)
Instance & WithPublicIpAddress(Aws::String &&value)
const Aws::Vector< ProductCode > & GetProductCodes() const
const Aws::String & GetVpcId() const
void SetPublicDnsName(const char *value)
Instance & WithStateReason(const StateReason &value)
void SetNetworkInterfaces(const Aws::Vector< InstanceNetworkInterface > &value)
Instance & WithTpmSupport(const char *value)
Instance & WithKeyName(const Aws::String &value)
void SetElasticInferenceAcceleratorAssociations(const Aws::Vector< ElasticInferenceAcceleratorAssociation > &value)
Instance & WithSourceDestCheck(bool value)
bool CurrentInstanceBootModeHasBeenSet() const
void SetBlockDeviceMappings(const Aws::Vector< InstanceBlockDeviceMapping > &value)
const Aws::Vector< ElasticGpuAssociation > & GetElasticGpuAssociations() const
void SetElasticGpuAssociations(Aws::Vector< ElasticGpuAssociation > &&value)
Instance & WithBlockDeviceMappings(const Aws::Vector< InstanceBlockDeviceMapping > &value)
void SetCapacityReservationId(const char *value)
void SetUsageOperation(const char *value)
Instance & WithPublicDnsName(Aws::String &&value)
Instance & WithPublicDnsName(const char *value)
Instance & WithVpcId(const Aws::String &value)
Instance & WithPrivateDnsName(const Aws::String &value)
Instance & WithInstanceId(const char *value)
Instance & AddBlockDeviceMappings(InstanceBlockDeviceMapping &&value)
void SetInstanceLifecycle(InstanceLifecycleType &&value)
bool EnaSupportHasBeenSet() const
void SetUsageOperationUpdateTime(const Aws::Utils::DateTime &value)
void SetPlacement(Placement &&value)
void SetBootMode(const BootModeValues &value)
const Aws::String & GetCapacityReservationId() const
Instance & WithMetadataOptions(InstanceMetadataOptionsResponse &&value)
Instance & WithRootDeviceType(DeviceType &&value)
Instance & WithStateReason(StateReason &&value)
void SetSecurityGroups(Aws::Vector< GroupIdentifier > &&value)
const StateReason & GetStateReason() const
void SetClientToken(const char *value)
const Aws::String & GetPrivateDnsName() const
bool MonitoringHasBeenSet() const
bool AmiLaunchIndexHasBeenSet() const
Instance & AddSecurityGroups(GroupIdentifier &&value)
Instance & WithKeyName(const char *value)
Instance & WithProductCodes(Aws::Vector< ProductCode > &&value)
bool InstanceLifecycleHasBeenSet() const
Instance & WithElasticGpuAssociations(const Aws::Vector< ElasticGpuAssociation > &value)
void SetTpmSupport(const Aws::String &value)
void SetPlatformDetails(const Aws::String &value)
bool PublicIpAddressHasBeenSet() const
Instance & WithSriovNetSupport(Aws::String &&value)
void SetPrivateDnsName(const char *value)
Instance & WithHypervisor(const HypervisorType &value)
Instance & WithInstanceLifecycle(const InstanceLifecycleType &value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetInstanceType(const InstanceType &value)
const Aws::String & GetPublicDnsName() const
void SetEnclaveOptions(EnclaveOptions &&value)
Instance & WithProductCodes(const Aws::Vector< ProductCode > &value)
Instance & WithOutpostArn(const char *value)
void SetSecurityGroups(const Aws::Vector< GroupIdentifier > &value)
void SetStateReason(const StateReason &value)
const Aws::Utils::DateTime & GetUsageOperationUpdateTime() const
void SetVpcId(const Aws::String &value)
Instance & WithSubnetId(Aws::String &&value)
const Aws::String & GetOutpostArn() const
void SetInstanceId(const Aws::String &value)
Instance & WithStateTransitionReason(Aws::String &&value)
void SetKernelId(const char *value)
void SetPublicIpAddress(const Aws::String &value)
const Aws::String & GetPublicIpAddress() const
const Placement & GetPlacement() const
void SetImageId(const char *value)
void SetElasticGpuAssociations(const Aws::Vector< ElasticGpuAssociation > &value)
void SetInstanceLifecycle(const InstanceLifecycleType &value)
void SetPrivateDnsName(Aws::String &&value)
Instance & WithPublicIpAddress(const Aws::String &value)
void SetCpuOptions(CpuOptions &&value)
Instance & AddNetworkInterfaces(const InstanceNetworkInterface &value)
void SetVpcId(Aws::String &&value)
void SetVpcId(const char *value)
void SetRamdiskId(Aws::String &&value)
void SetClientToken(Aws::String &&value)
bool SubnetIdHasBeenSet() const
const Aws::String & GetKernelId() const
Instance & WithVpcId(Aws::String &&value)
Instance & WithNetworkInterfaces(Aws::Vector< InstanceNetworkInterface > &&value)
Instance & WithInstanceLifecycle(InstanceLifecycleType &&value)
void SetStateReason(StateReason &&value)
void SetState(InstanceState &&value)
void SetInstanceId(Aws::String &&value)
Instance & WithLicenses(Aws::Vector< LicenseConfiguration > &&value)
Instance & WithImageId(const Aws::String &value)
bool LaunchTimeHasBeenSet() const
Instance & WithRamdiskId(const char *value)
bool CapacityReservationSpecificationHasBeenSet() const
void SetClientToken(const Aws::String &value)
void SetSubnetId(const Aws::String &value)
bool PublicDnsNameHasBeenSet() const
Instance & WithState(InstanceState &&value)
bool TagsHasBeenSet() const
const Aws::Utils::DateTime & GetLaunchTime() const
bool SriovNetSupportHasBeenSet() const
Instance & WithPlatformDetails(const char *value)
bool RootDeviceTypeHasBeenSet() const
void SetRootDeviceName(const char *value)
Instance & WithLaunchTime(Aws::Utils::DateTime &&value)
Instance & AddElasticInferenceAcceleratorAssociations(const ElasticInferenceAcceleratorAssociation &value)
const Aws::String & GetSriovNetSupport() const
const Aws::String & GetRootDeviceName() const
Instance & WithInstanceId(const Aws::String &value)
Instance & WithArchitecture(const ArchitectureValues &value)
void SetLaunchTime(Aws::Utils::DateTime &&value)
Instance & WithHypervisor(HypervisorType &&value)
Instance & WithInstanceType(const InstanceType &value)
void SetPublicIpAddress(const char *value)
const Aws::String & GetImageId() const
void SetArchitecture(const ArchitectureValues &value)
Instance & WithSubnetId(const char *value)
Instance & WithMaintenanceOptions(InstanceMaintenanceOptions &&value)
bool PrivateIpAddressHasBeenSet() const
void SetSriovNetSupport(const char *value)
Instance & WithSpotInstanceRequestId(Aws::String &&value)
void SetLaunchTime(const Aws::Utils::DateTime &value)
Instance & WithMonitoring(Monitoring &&value)
Instance & WithEnaSupport(bool value)
Instance & WithSriovNetSupport(const Aws::String &value)
int GetAmiLaunchIndex() const
void SetPublicIpAddress(Aws::String &&value)
const InstanceMaintenanceOptions & GetMaintenanceOptions() const
Instance & WithUsageOperation(const char *value)
void SetState(const InstanceState &value)
bool InstanceIdHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
void SetSubnetId(Aws::String &&value)
bool EbsOptimizedHasBeenSet() const
bool GetEbsOptimized() const
void SetRootDeviceType(const DeviceType &value)
void SetPrivateDnsNameOptions(PrivateDnsNameOptionsResponse &&value)
bool SpotInstanceRequestIdHasBeenSet() const
Instance & WithCapacityReservationId(const Aws::String &value)
bool TpmSupportHasBeenSet() const
bool CpuOptionsHasBeenSet() const
bool SourceDestCheckHasBeenSet() const
bool ClientTokenHasBeenSet() const
Instance & AddElasticInferenceAcceleratorAssociations(ElasticInferenceAcceleratorAssociation &&value)
void SetTpmSupport(Aws::String &&value)
const Aws::String & GetRamdiskId() const
bool VpcIdHasBeenSet() const
void SetKeyName(const char *value)
void SetPublicDnsName(Aws::String &&value)
void SetUsageOperation(Aws::String &&value)
Instance & WithElasticGpuAssociations(Aws::Vector< ElasticGpuAssociation > &&value)
const InstanceLifecycleType & GetInstanceLifecycle() const
Instance & WithClientToken(const Aws::String &value)
const Aws::String & GetPrivateIpAddress() const
void SetElasticInferenceAcceleratorAssociations(Aws::Vector< ElasticInferenceAcceleratorAssociation > &&value)
Instance & WithEnclaveOptions(const EnclaveOptions &value)
bool PrivateDnsNameHasBeenSet() const
bool StateReasonHasBeenSet() const
Instance & WithPublicDnsName(const Aws::String &value)
Instance & AddElasticGpuAssociations(ElasticGpuAssociation &&value)
void SetVirtualizationType(const VirtualizationType &value)
Instance & WithClientToken(Aws::String &&value)
const EnclaveOptions & GetEnclaveOptions() const
Instance & WithSriovNetSupport(const char *value)
void SetPrivateDnsNameOptions(const PrivateDnsNameOptionsResponse &value)
bool EnclaveOptionsHasBeenSet() const
void SetPlatform(PlatformValues &&value)
Instance & WithCurrentInstanceBootMode(const InstanceBootModeValues &value)
Instance & WithSecurityGroups(Aws::Vector< GroupIdentifier > &&value)
Instance & WithArchitecture(ArchitectureValues &&value)
Instance & WithImageId(const char *value)
void SetMetadataOptions(InstanceMetadataOptionsResponse &&value)
void SetMetadataOptions(const InstanceMetadataOptionsResponse &value)
void SetIamInstanceProfile(IamInstanceProfile &&value)
AWS_EC2_API Instance & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const HibernationOptions & GetHibernationOptions() const
const Aws::String & GetSubnetId() const
void SetRootDeviceName(Aws::String &&value)
void SetHibernationOptions(const HibernationOptions &value)
Instance & WithPublicIpAddress(const char *value)
Instance & AddSecurityGroups(const GroupIdentifier &value)
const IamInstanceProfile & GetIamInstanceProfile() const
bool ImageIdHasBeenSet() const
void SetLicenses(Aws::Vector< LicenseConfiguration > &&value)
const PrivateDnsNameOptionsResponse & GetPrivateDnsNameOptions() const
Instance & WithLaunchTime(const Aws::Utils::DateTime &value)
const InstanceBootModeValues & GetCurrentInstanceBootMode() const
void SetOutpostArn(Aws::String &&value)
Instance & WithRamdiskId(const Aws::String &value)
bool MaintenanceOptionsHasBeenSet() const
void SetMonitoring(const Monitoring &value)
void SetNetworkInterfaces(Aws::Vector< InstanceNetworkInterface > &&value)
Instance & WithUsageOperationUpdateTime(Aws::Utils::DateTime &&value)
void SetSubnetId(const char *value)
Instance & WithInstanceId(Aws::String &&value)
bool ArchitectureHasBeenSet() const
const Aws::Vector< GroupIdentifier > & GetSecurityGroups() const
void SetEbsOptimized(bool value)
void SetRootDeviceName(const Aws::String &value)
void SetHypervisor(const HypervisorType &value)
const VirtualizationType & GetVirtualizationType() const
void SetRootDeviceType(DeviceType &&value)
const Aws::Vector< InstanceNetworkInterface > & GetNetworkInterfaces() const
bool VirtualizationTypeHasBeenSet() const
Instance & AddLicenses(LicenseConfiguration &&value)
void SetPlatformDetails(const char *value)
bool BootModeHasBeenSet() const
const CpuOptions & GetCpuOptions() const
void SetCapacityReservationSpecification(CapacityReservationSpecificationResponse &&value)
void SetMaintenanceOptions(const InstanceMaintenanceOptions &value)
const Aws::String & GetPlatformDetails() const
bool ElasticGpuAssociationsHasBeenSet() const
Instance & WithCpuOptions(const CpuOptions &value)
Instance & WithCapacityReservationId(const char *value)
Instance & WithAmiLaunchIndex(int value)
void SetPlatform(const PlatformValues &value)
void SetKernelId(Aws::String &&value)
void SetProductCodes(Aws::Vector< ProductCode > &&value)
void SetSpotInstanceRequestId(Aws::String &&value)
bool MetadataOptionsHasBeenSet() const
const InstanceMetadataOptionsResponse & GetMetadataOptions() const
Instance & WithKernelId(Aws::String &&value)
Instance & WithTags(Aws::Vector< Tag > &&value)
Instance & WithRamdiskId(Aws::String &&value)
Instance & AddTags(Tag &&value)
void SetCapacityReservationId(Aws::String &&value)
void SetArchitecture(ArchitectureValues &&value)
const Aws::String & GetUsageOperation() const
bool StateHasBeenSet() const
void SetHibernationOptions(HibernationOptions &&value)
bool UsageOperationUpdateTimeHasBeenSet() const
Instance & WithTpmSupport(const Aws::String &value)
bool InstanceTypeHasBeenSet() const
Instance & WithPrivateIpAddress(const char *value)
bool PlacementHasBeenSet() const
bool HypervisorHasBeenSet() const
void SetSourceDestCheck(bool value)
Instance & WithVirtualizationType(VirtualizationType &&value)
Instance & WithImageId(Aws::String &&value)
void SetBootMode(BootModeValues &&value)
bool KernelIdHasBeenSet() const
Instance & WithPlatform(PlatformValues &&value)
Instance & WithElasticInferenceAcceleratorAssociations(Aws::Vector< ElasticInferenceAcceleratorAssociation > &&value)
void SetCpuOptions(const CpuOptions &value)
void SetPrivateIpAddress(const Aws::String &value)
Instance & WithLicenses(const Aws::Vector< LicenseConfiguration > &value)
const Aws::String & GetStateTransitionReason() const
Instance & WithPlatformDetails(const Aws::String &value)
void SetUsageOperation(const Aws::String &value)
bool RamdiskIdHasBeenSet() const
Instance & WithHibernationOptions(HibernationOptions &&value)
bool SecurityGroupsHasBeenSet() const
void SetPublicDnsName(const Aws::String &value)
void SetMaintenanceOptions(InstanceMaintenanceOptions &&value)
Instance & WithRootDeviceName(const Aws::String &value)
const DeviceType & GetRootDeviceType() const
void SetPlacement(const Placement &value)
Instance & AddNetworkInterfaces(InstanceNetworkInterface &&value)
Instance & WithCurrentInstanceBootMode(InstanceBootModeValues &&value)
bool ProductCodesHasBeenSet() const
void SetPrivateIpAddress(Aws::String &&value)
Instance & WithUsageOperation(const Aws::String &value)
Instance & WithPrivateDnsName(const char *value)
Instance & WithBlockDeviceMappings(Aws::Vector< InstanceBlockDeviceMapping > &&value)
const ArchitectureValues & GetArchitecture() const
void SetOutpostArn(const Aws::String &value)
bool OutpostArnHasBeenSet() const
void SetProductCodes(const Aws::Vector< ProductCode > &value)
bool UsageOperationHasBeenSet() const
const Monitoring & GetMonitoring() const
Instance & WithVpcId(const char *value)
const Aws::Vector< ElasticInferenceAcceleratorAssociation > & GetElasticInferenceAcceleratorAssociations() const
Instance & WithBootMode(BootModeValues &&value)
Instance & WithIpv6Address(Aws::String &&value)
const Aws::String & GetSpotInstanceRequestId() const
Instance & WithInstanceType(InstanceType &&value)
void SetAmiLaunchIndex(int value)
bool PlatformHasBeenSet() const
void SetPrivateDnsName(const Aws::String &value)
bool GetSourceDestCheck() const
const PlatformValues & GetPlatform() const
Instance & WithTpmSupport(Aws::String &&value)
const Aws::String & GetInstanceId() const
Instance & WithState(const InstanceState &value)
Instance & WithEbsOptimized(bool value)
void SetStateTransitionReason(const char *value)
void SetUsageOperationUpdateTime(Aws::Utils::DateTime &&value)
Instance & WithIpv6Address(const Aws::String &value)
bool IamInstanceProfileHasBeenSet() const
Instance & WithOutpostArn(Aws::String &&value)
Instance & WithSpotInstanceRequestId(const Aws::String &value)
void SetMonitoring(Monitoring &&value)
Instance & WithNetworkInterfaces(const Aws::Vector< InstanceNetworkInterface > &value)
void SetSriovNetSupport(Aws::String &&value)
bool NetworkInterfacesHasBeenSet() const
const Aws::String & GetClientToken() const
Instance & WithCapacityReservationId(Aws::String &&value)
Instance & WithTags(const Aws::Vector< Tag > &value)
Instance & WithPrivateIpAddress(Aws::String &&value)
const InstanceType & GetInstanceType() const
Instance & WithHibernationOptions(const HibernationOptions &value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Instance & WithCapacityReservationSpecification(const CapacityReservationSpecificationResponse &value)
Instance & WithKernelId(const char *value)
Instance & WithSpotInstanceRequestId(const char *value)
void SetSpotInstanceRequestId(const char *value)
Instance & WithPlacement(const Placement &value)
bool CapacityReservationIdHasBeenSet() const
AWS_EC2_API Instance(const Aws::Utils::Xml::XmlNode &xmlNode)
Instance & WithIpv6Address(const char *value)
Instance & AddProductCodes(ProductCode &&value)
Instance & WithClientToken(const char *value)
const CapacityReservationSpecificationResponse & GetCapacityReservationSpecification() const
const Aws::String & GetTpmSupport() const
void SetPrivateIpAddress(const char *value)
void SetRamdiskId(const Aws::String &value)
Instance & WithOutpostArn(const Aws::String &value)
Instance & WithIamInstanceProfile(const IamInstanceProfile &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream