7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/LaunchTemplateIamInstanceProfileSpecificationRequest.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/InstanceType.h>
13#include <aws/ec2/model/LaunchTemplatesMonitoringRequest.h>
14#include <aws/ec2/model/LaunchTemplatePlacementRequest.h>
15#include <aws/ec2/model/ShutdownBehavior.h>
16#include <aws/ec2/model/LaunchTemplateInstanceMarketOptionsRequest.h>
17#include <aws/ec2/model/CreditSpecificationRequest.h>
18#include <aws/ec2/model/LaunchTemplateCpuOptionsRequest.h>
19#include <aws/ec2/model/LaunchTemplateCapacityReservationSpecificationRequest.h>
20#include <aws/ec2/model/LaunchTemplateHibernationOptionsRequest.h>
21#include <aws/ec2/model/LaunchTemplateInstanceMetadataOptionsRequest.h>
22#include <aws/ec2/model/LaunchTemplateEnclaveOptionsRequest.h>
23#include <aws/ec2/model/InstanceRequirementsRequest.h>
24#include <aws/ec2/model/LaunchTemplatePrivateDnsNameOptionsRequest.h>
25#include <aws/ec2/model/LaunchTemplateInstanceMaintenanceOptionsRequest.h>
26#include <aws/ec2/model/OperatorRequest.h>
27#include <aws/ec2/model/LaunchTemplateNetworkPerformanceOptionsRequest.h>
28#include <aws/ec2/model/LaunchTemplateBlockDeviceMappingRequest.h>
29#include <aws/ec2/model/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.h>
30#include <aws/ec2/model/LaunchTemplateTagSpecificationRequest.h>
31#include <aws/ec2/model/ElasticGpuSpecification.h>
32#include <aws/ec2/model/LaunchTemplateElasticInferenceAccelerator.h>
33#include <aws/ec2/model/LaunchTemplateLicenseConfigurationRequest.h>
77 template<
typename KernelIdT = Aws::String>
78 void SetKernelId(KernelIdT&& value) { m_kernelIdHasBeenSet =
true; m_kernelId = std::forward<KernelIdT>(value); }
79 template<
typename KernelIdT = Aws::String>
93 inline void SetEbsOptimized(
bool value) { m_ebsOptimizedHasBeenSet =
true; m_ebsOptimized = value; }
103 template<
typename IamInstanceProfileT = LaunchTemplateIamInstanceProfileSpecificationRequest>
104 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet =
true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
105 template<
typename IamInstanceProfileT = LaunchTemplateIamInstanceProfileSpecificationRequest>
115 template<
typename BlockDeviceMappingsT = Aws::Vector<LaunchTemplateBlockDeviceMappingRequest>>
116 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
117 template<
typename BlockDeviceMappingsT = Aws::Vector<LaunchTemplateBlockDeviceMappingRequest>>
119 template<
typename BlockDeviceMappingsT = LaunchTemplateBlockDeviceMappingRequest>
129 template<
typename NetworkInterfacesT = Aws::Vector<LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>>
130 void SetNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces = std::forward<NetworkInterfacesT>(value); }
131 template<
typename NetworkInterfacesT = Aws::Vector<LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>>
133 template<
typename NetworkInterfacesT = LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>
163 template<
typename ImageIdT = Aws::String>
164 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet =
true; m_imageId = std::forward<ImageIdT>(value); }
165 template<
typename ImageIdT = Aws::String>
195 template<
typename KeyNameT = Aws::String>
196 void SetKeyName(KeyNameT&& value) { m_keyNameHasBeenSet =
true; m_keyName = std::forward<KeyNameT>(value); }
197 template<
typename KeyNameT = Aws::String>
207 template<
typename MonitoringT = LaunchTemplatesMonitoringRequest>
208 void SetMonitoring(MonitoringT&& value) { m_monitoringHasBeenSet =
true; m_monitoring = std::forward<MonitoringT>(value); }
209 template<
typename MonitoringT = LaunchTemplatesMonitoringRequest>
219 template<
typename PlacementT = LaunchTemplatePlacementRequest>
220 void SetPlacement(PlacementT&& value) { m_placementHasBeenSet =
true; m_placement = std::forward<PlacementT>(value); }
221 template<
typename PlacementT = LaunchTemplatePlacementRequest>
234 template<
typename RamDiskIdT = Aws::String>
235 void SetRamDiskId(RamDiskIdT&& value) { m_ramDiskIdHasBeenSet =
true; m_ramDiskId = std::forward<RamDiskIdT>(value); }
236 template<
typename RamDiskIdT = Aws::String>
281 template<
typename UserDataT = Aws::String>
282 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet =
true; m_userData = std::forward<UserDataT>(value); }
283 template<
typename UserDataT = Aws::String>
294 template<
typename TagSpecificationsT = Aws::Vector<LaunchTemplateTagSpecificationRequest>>
295 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet =
true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
296 template<
typename TagSpecificationsT = Aws::Vector<LaunchTemplateTagSpecificationRequest>>
298 template<
typename TagSpecificationsT = LaunchTemplateTagSpecificationRequest>
309 template<
typename ElasticGpuSpecificationsT = Aws::Vector<ElasticGpuSpecification>>
310 void SetElasticGpuSpecifications(ElasticGpuSpecificationsT&& value) { m_elasticGpuSpecificationsHasBeenSet =
true; m_elasticGpuSpecifications = std::forward<ElasticGpuSpecificationsT>(value); }
311 template<
typename ElasticGpuSpecificationsT = Aws::Vector<ElasticGpuSpecification>>
313 template<
typename ElasticGpuSpecificationsT = ElasticGpuSpecification>
327 template<
typename ElasticInferenceAcceleratorsT = Aws::Vector<LaunchTemplateElasticInferenceAccelerator>>
328 void SetElasticInferenceAccelerators(ElasticInferenceAcceleratorsT&& value) { m_elasticInferenceAcceleratorsHasBeenSet =
true; m_elasticInferenceAccelerators = std::forward<ElasticInferenceAcceleratorsT>(value); }
329 template<
typename ElasticInferenceAcceleratorsT = Aws::Vector<LaunchTemplateElasticInferenceAccelerator>>
331 template<
typename ElasticInferenceAcceleratorsT = LaunchTemplateElasticInferenceAccelerator>
343 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
344 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
345 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
347 template<
typename SecurityGroupIdsT = Aws::String>
360 template<
typename SecurityGroupsT = Aws::Vector<Aws::String>>
361 void SetSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet =
true; m_securityGroups = std::forward<SecurityGroupsT>(value); }
362 template<
typename SecurityGroupsT = Aws::Vector<Aws::String>>
364 template<
typename SecurityGroupsT = Aws::String>
374 template<
typename InstanceMarketOptionsT = LaunchTemplateInstanceMarketOptionsRequest>
375 void SetInstanceMarketOptions(InstanceMarketOptionsT&& value) { m_instanceMarketOptionsHasBeenSet =
true; m_instanceMarketOptions = std::forward<InstanceMarketOptionsT>(value); }
376 template<
typename InstanceMarketOptionsT = LaunchTemplateInstanceMarketOptionsRequest>
387 template<
typename CreditSpecificationT = CreditSpecificationRequest>
388 void SetCreditSpecification(CreditSpecificationT&& value) { m_creditSpecificationHasBeenSet =
true; m_creditSpecification = std::forward<CreditSpecificationT>(value); }
389 template<
typename CreditSpecificationT = CreditSpecificationRequest>
401 template<
typename CpuOptionsT = LaunchTemplateCpuOptionsRequest>
402 void SetCpuOptions(CpuOptionsT&& value) { m_cpuOptionsHasBeenSet =
true; m_cpuOptions = std::forward<CpuOptionsT>(value); }
403 template<
typename CpuOptionsT = LaunchTemplateCpuOptionsRequest>
416 template<
typename CapacityReservationSpecificationT = LaunchTemplateCapacityReservationSpecificationRequest>
417 void SetCapacityReservationSpecification(CapacityReservationSpecificationT&& value) { m_capacityReservationSpecificationHasBeenSet =
true; m_capacityReservationSpecification = std::forward<CapacityReservationSpecificationT>(value); }
418 template<
typename CapacityReservationSpecificationT = LaunchTemplateCapacityReservationSpecificationRequest>
428 template<
typename LicenseSpecificationsT = Aws::Vector<LaunchTemplateLicenseConfigurationRequest>>
429 void SetLicenseSpecifications(LicenseSpecificationsT&& value) { m_licenseSpecificationsHasBeenSet =
true; m_licenseSpecifications = std::forward<LicenseSpecificationsT>(value); }
430 template<
typename LicenseSpecificationsT = Aws::Vector<LaunchTemplateLicenseConfigurationRequest>>
432 template<
typename LicenseSpecificationsT = LaunchTemplateLicenseConfigurationRequest>
447 template<
typename HibernationOptionsT = LaunchTemplateHibernationOptionsRequest>
448 void SetHibernationOptions(HibernationOptionsT&& value) { m_hibernationOptionsHasBeenSet =
true; m_hibernationOptions = std::forward<HibernationOptionsT>(value); }
449 template<
typename HibernationOptionsT = LaunchTemplateHibernationOptionsRequest>
462 template<
typename MetadataOptionsT = LaunchTemplateInstanceMetadataOptionsRequest>
463 void SetMetadataOptions(MetadataOptionsT&& value) { m_metadataOptionsHasBeenSet =
true; m_metadataOptions = std::forward<MetadataOptionsT>(value); }
464 template<
typename MetadataOptionsT = LaunchTemplateInstanceMetadataOptionsRequest>
479 template<
typename EnclaveOptionsT = LaunchTemplateEnclaveOptionsRequest>
480 void SetEnclaveOptions(EnclaveOptionsT&& value) { m_enclaveOptionsHasBeenSet =
true; m_enclaveOptions = std::forward<EnclaveOptionsT>(value); }
481 template<
typename EnclaveOptionsT = LaunchTemplateEnclaveOptionsRequest>
519 template<
typename InstanceRequirementsT = InstanceRequirementsRequest>
520 void SetInstanceRequirements(InstanceRequirementsT&& value) { m_instanceRequirementsHasBeenSet =
true; m_instanceRequirements = std::forward<InstanceRequirementsT>(value); }
521 template<
typename InstanceRequirementsT = InstanceRequirementsRequest>
532 template<
typename PrivateDnsNameOptionsT = LaunchTemplatePrivateDnsNameOptionsRequest>
533 void SetPrivateDnsNameOptions(PrivateDnsNameOptionsT&& value) { m_privateDnsNameOptionsHasBeenSet =
true; m_privateDnsNameOptions = std::forward<PrivateDnsNameOptionsT>(value); }
534 template<
typename PrivateDnsNameOptionsT = LaunchTemplatePrivateDnsNameOptionsRequest>
544 template<
typename Ma
intenanceOptionsT = LaunchTemplateInstanceMa
intenanceOptionsRequest>
545 void SetMaintenanceOptions(MaintenanceOptionsT&& value) { m_maintenanceOptionsHasBeenSet =
true; m_maintenanceOptions = std::forward<MaintenanceOptionsT>(value); }
546 template<
typename Ma
intenanceOptionsT = LaunchTemplateInstanceMa
intenanceOptionsRequest>
560 inline void SetDisableApiStop(
bool value) { m_disableApiStopHasBeenSet =
true; m_disableApiStop = value; }
570 template<
typename OperatorT = OperatorRequest>
571 void SetOperator(OperatorT&& value) { m_operatorHasBeenSet =
true; m_operator = std::forward<OperatorT>(value); }
572 template<
typename OperatorT = OperatorRequest>
583 template<
typename NetworkPerformanceOptionsT = LaunchTemplateNetworkPerformanceOptionsRequest>
584 void SetNetworkPerformanceOptions(NetworkPerformanceOptionsT&& value) { m_networkPerformanceOptionsHasBeenSet =
true; m_networkPerformanceOptions = std::forward<NetworkPerformanceOptionsT>(value); }
585 template<
typename NetworkPerformanceOptionsT = LaunchTemplateNetworkPerformanceOptionsRequest>
591 bool m_kernelIdHasBeenSet =
false;
593 bool m_ebsOptimized{
false};
594 bool m_ebsOptimizedHasBeenSet =
false;
596 LaunchTemplateIamInstanceProfileSpecificationRequest m_iamInstanceProfile;
597 bool m_iamInstanceProfileHasBeenSet =
false;
600 bool m_blockDeviceMappingsHasBeenSet =
false;
603 bool m_networkInterfacesHasBeenSet =
false;
606 bool m_imageIdHasBeenSet =
false;
609 bool m_instanceTypeHasBeenSet =
false;
612 bool m_keyNameHasBeenSet =
false;
614 LaunchTemplatesMonitoringRequest m_monitoring;
615 bool m_monitoringHasBeenSet =
false;
617 LaunchTemplatePlacementRequest m_placement;
618 bool m_placementHasBeenSet =
false;
621 bool m_ramDiskIdHasBeenSet =
false;
623 bool m_disableApiTermination{
false};
624 bool m_disableApiTerminationHasBeenSet =
false;
627 bool m_instanceInitiatedShutdownBehaviorHasBeenSet =
false;
630 bool m_userDataHasBeenSet =
false;
633 bool m_tagSpecificationsHasBeenSet =
false;
636 bool m_elasticGpuSpecificationsHasBeenSet =
false;
639 bool m_elasticInferenceAcceleratorsHasBeenSet =
false;
642 bool m_securityGroupIdsHasBeenSet =
false;
645 bool m_securityGroupsHasBeenSet =
false;
647 LaunchTemplateInstanceMarketOptionsRequest m_instanceMarketOptions;
648 bool m_instanceMarketOptionsHasBeenSet =
false;
650 CreditSpecificationRequest m_creditSpecification;
651 bool m_creditSpecificationHasBeenSet =
false;
653 LaunchTemplateCpuOptionsRequest m_cpuOptions;
654 bool m_cpuOptionsHasBeenSet =
false;
656 LaunchTemplateCapacityReservationSpecificationRequest m_capacityReservationSpecification;
657 bool m_capacityReservationSpecificationHasBeenSet =
false;
660 bool m_licenseSpecificationsHasBeenSet =
false;
662 LaunchTemplateHibernationOptionsRequest m_hibernationOptions;
663 bool m_hibernationOptionsHasBeenSet =
false;
665 LaunchTemplateInstanceMetadataOptionsRequest m_metadataOptions;
666 bool m_metadataOptionsHasBeenSet =
false;
668 LaunchTemplateEnclaveOptionsRequest m_enclaveOptions;
669 bool m_enclaveOptionsHasBeenSet =
false;
671 InstanceRequirementsRequest m_instanceRequirements;
672 bool m_instanceRequirementsHasBeenSet =
false;
674 LaunchTemplatePrivateDnsNameOptionsRequest m_privateDnsNameOptions;
675 bool m_privateDnsNameOptionsHasBeenSet =
false;
677 LaunchTemplateInstanceMaintenanceOptionsRequest m_maintenanceOptions;
678 bool m_maintenanceOptionsHasBeenSet =
false;
680 bool m_disableApiStop{
false};
681 bool m_disableApiStopHasBeenSet =
false;
683 OperatorRequest m_operator;
684 bool m_operatorHasBeenSet =
false;
686 LaunchTemplateNetworkPerformanceOptionsRequest m_networkPerformanceOptions;
687 bool m_networkPerformanceOptionsHasBeenSet =
false;
bool NetworkPerformanceOptionsHasBeenSet() const
bool HibernationOptionsHasBeenSet() const
bool OperatorHasBeenSet() const
RequestLaunchTemplateData & WithTagSpecifications(TagSpecificationsT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
const Aws::Vector< LaunchTemplateElasticInferenceAccelerator > & GetElasticInferenceAccelerators() const
bool InstanceRequirementsHasBeenSet() const
const LaunchTemplateInstanceMarketOptionsRequest & GetInstanceMarketOptions() const
bool EbsOptimizedHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
RequestLaunchTemplateData & AddTagSpecifications(TagSpecificationsT &&value)
RequestLaunchTemplateData & WithInstanceInitiatedShutdownBehavior(ShutdownBehavior value)
const Aws::String & GetKeyName() const
void SetKeyName(KeyNameT &&value)
RequestLaunchTemplateData & WithUserData(UserDataT &&value)
void SetOperator(OperatorT &&value)
const Aws::Vector< LaunchTemplateLicenseConfigurationRequest > & GetLicenseSpecifications() const
bool SecurityGroupIdsHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const LaunchTemplatePlacementRequest & GetPlacement() const
void SetNetworkPerformanceOptions(NetworkPerformanceOptionsT &&value)
RequestLaunchTemplateData & WithNetworkInterfaces(NetworkInterfacesT &&value)
bool PlacementHasBeenSet() const
RequestLaunchTemplateData & AddLicenseSpecifications(LicenseSpecificationsT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroups() const
const LaunchTemplatesMonitoringRequest & GetMonitoring() const
void SetIamInstanceProfile(IamInstanceProfileT &&value)
void SetImageId(ImageIdT &&value)
RequestLaunchTemplateData & AddElasticInferenceAccelerators(ElasticInferenceAcceleratorsT &&value)
void SetElasticGpuSpecifications(ElasticGpuSpecificationsT &&value)
bool GetEbsOptimized() const
RequestLaunchTemplateData & AddElasticGpuSpecifications(ElasticGpuSpecificationsT &&value)
bool RamDiskIdHasBeenSet() const
void SetMonitoring(MonitoringT &&value)
void SetNetworkInterfaces(NetworkInterfacesT &&value)
RequestLaunchTemplateData & WithImageId(ImageIdT &&value)
bool MaintenanceOptionsHasBeenSet() const
bool KernelIdHasBeenSet() const
bool CpuOptionsHasBeenSet() const
InstanceType GetInstanceType() const
RequestLaunchTemplateData & WithInstanceType(InstanceType value)
const InstanceRequirementsRequest & GetInstanceRequirements() const
bool CreditSpecificationHasBeenSet() const
RequestLaunchTemplateData & WithInstanceRequirements(InstanceRequirementsT &&value)
bool InstanceMarketOptionsHasBeenSet() const
const Aws::String & GetUserData() const
void SetPrivateDnsNameOptions(PrivateDnsNameOptionsT &&value)
const Aws::String & GetRamDiskId() const
RequestLaunchTemplateData & WithCapacityReservationSpecification(CapacityReservationSpecificationT &&value)
RequestLaunchTemplateData & WithNetworkPerformanceOptions(NetworkPerformanceOptionsT &&value)
void SetCapacityReservationSpecification(CapacityReservationSpecificationT &&value)
const CreditSpecificationRequest & GetCreditSpecification() const
bool PrivateDnsNameOptionsHasBeenSet() const
void SetKernelId(KernelIdT &&value)
RequestLaunchTemplateData & WithMonitoring(MonitoringT &&value)
void SetUserData(UserDataT &&value)
void SetMetadataOptions(MetadataOptionsT &&value)
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
bool DisableApiTerminationHasBeenSet() const
void SetSecurityGroups(SecurityGroupsT &&value)
bool BlockDeviceMappingsHasBeenSet() const
const Aws::Vector< ElasticGpuSpecification > & GetElasticGpuSpecifications() const
bool ImageIdHasBeenSet() const
const LaunchTemplateInstanceMaintenanceOptionsRequest & GetMaintenanceOptions() const
const LaunchTemplateIamInstanceProfileSpecificationRequest & GetIamInstanceProfile() const
RequestLaunchTemplateData & AddSecurityGroups(SecurityGroupsT &&value)
const LaunchTemplateCapacityReservationSpecificationRequest & GetCapacityReservationSpecification() const
RequestLaunchTemplateData & WithIamInstanceProfile(IamInstanceProfileT &&value)
AWS_EC2_API RequestLaunchTemplateData & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetInstanceInitiatedShutdownBehavior(ShutdownBehavior value)
bool NetworkInterfacesHasBeenSet() const
RequestLaunchTemplateData & AddSecurityGroupIds(SecurityGroupIdsT &&value)
bool InstanceTypeHasBeenSet() const
bool DisableApiStopHasBeenSet() const
RequestLaunchTemplateData & WithKeyName(KeyNameT &&value)
RequestLaunchTemplateData & WithElasticInferenceAccelerators(ElasticInferenceAcceleratorsT &&value)
RequestLaunchTemplateData & WithRamDiskId(RamDiskIdT &&value)
void SetPlacement(PlacementT &&value)
RequestLaunchTemplateData & AddNetworkInterfaces(NetworkInterfacesT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
bool UserDataHasBeenSet() const
const Aws::Vector< LaunchTemplateInstanceNetworkInterfaceSpecificationRequest > & GetNetworkInterfaces() const
RequestLaunchTemplateData & WithEnclaveOptions(EnclaveOptionsT &&value)
const Aws::String & GetImageId() const
RequestLaunchTemplateData & WithPrivateDnsNameOptions(PrivateDnsNameOptionsT &&value)
bool TagSpecificationsHasBeenSet() const
const OperatorRequest & GetOperator() const
void SetEbsOptimized(bool value)
bool IamInstanceProfileHasBeenSet() const
const LaunchTemplateInstanceMetadataOptionsRequest & GetMetadataOptions() const
bool ElasticGpuSpecificationsHasBeenSet() const
RequestLaunchTemplateData & WithOperator(OperatorT &&value)
AWS_EC2_API RequestLaunchTemplateData()=default
const Aws::Vector< LaunchTemplateTagSpecificationRequest > & GetTagSpecifications() const
RequestLaunchTemplateData & WithSecurityGroupIds(SecurityGroupIdsT &&value)
void SetInstanceType(InstanceType value)
void SetHibernationOptions(HibernationOptionsT &&value)
const Aws::Vector< LaunchTemplateBlockDeviceMappingRequest > & GetBlockDeviceMappings() const
void SetRamDiskId(RamDiskIdT &&value)
RequestLaunchTemplateData & WithCpuOptions(CpuOptionsT &&value)
RequestLaunchTemplateData & WithCreditSpecification(CreditSpecificationT &&value)
bool EnclaveOptionsHasBeenSet() const
const LaunchTemplatePrivateDnsNameOptionsRequest & GetPrivateDnsNameOptions() const
RequestLaunchTemplateData & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
RequestLaunchTemplateData & WithMaintenanceOptions(MaintenanceOptionsT &&value)
void SetTagSpecifications(TagSpecificationsT &&value)
bool CapacityReservationSpecificationHasBeenSet() const
void SetElasticInferenceAccelerators(ElasticInferenceAcceleratorsT &&value)
RequestLaunchTemplateData & WithPlacement(PlacementT &&value)
RequestLaunchTemplateData & WithKernelId(KernelIdT &&value)
bool MonitoringHasBeenSet() const
void SetDisableApiStop(bool value)
RequestLaunchTemplateData & WithMetadataOptions(MetadataOptionsT &&value)
AWS_EC2_API RequestLaunchTemplateData(const Aws::Utils::Xml::XmlNode &xmlNode)
RequestLaunchTemplateData & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
ShutdownBehavior GetInstanceInitiatedShutdownBehavior() const
void SetDisableApiTermination(bool value)
RequestLaunchTemplateData & WithDisableApiStop(bool value)
void SetInstanceRequirements(InstanceRequirementsT &&value)
RequestLaunchTemplateData & WithInstanceMarketOptions(InstanceMarketOptionsT &&value)
bool GetDisableApiTermination() const
const LaunchTemplateNetworkPerformanceOptionsRequest & GetNetworkPerformanceOptions() const
bool MetadataOptionsHasBeenSet() const
const Aws::String & GetKernelId() const
const LaunchTemplateCpuOptionsRequest & GetCpuOptions() const
RequestLaunchTemplateData & WithSecurityGroups(SecurityGroupsT &&value)
const LaunchTemplateEnclaveOptionsRequest & GetEnclaveOptions() const
RequestLaunchTemplateData & WithDisableApiTermination(bool value)
bool KeyNameHasBeenSet() const
void SetEnclaveOptions(EnclaveOptionsT &&value)
void SetCpuOptions(CpuOptionsT &&value)
void SetMaintenanceOptions(MaintenanceOptionsT &&value)
void SetCreditSpecification(CreditSpecificationT &&value)
void SetInstanceMarketOptions(InstanceMarketOptionsT &&value)
bool ElasticInferenceAcceleratorsHasBeenSet() const
RequestLaunchTemplateData & WithLicenseSpecifications(LicenseSpecificationsT &&value)
RequestLaunchTemplateData & WithEbsOptimized(bool value)
const LaunchTemplateHibernationOptionsRequest & GetHibernationOptions() const
bool LicenseSpecificationsHasBeenSet() const
RequestLaunchTemplateData & WithElasticGpuSpecifications(ElasticGpuSpecificationsT &&value)
void SetLicenseSpecifications(LicenseSpecificationsT &&value)
bool InstanceInitiatedShutdownBehaviorHasBeenSet() const
bool SecurityGroupsHasBeenSet() const
bool GetDisableApiStop() const
RequestLaunchTemplateData & WithHibernationOptions(HibernationOptionsT &&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