7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/CreditSpecificationRequest.h>
12#include <aws/ec2/model/InstanceRequirementsRequest.h>
13#include <aws/ec2/model/InstanceType.h>
14#include <aws/ec2/model/LaunchTemplateBlockDeviceMappingRequest.h>
15#include <aws/ec2/model/LaunchTemplateCapacityReservationSpecificationRequest.h>
16#include <aws/ec2/model/LaunchTemplateCpuOptionsRequest.h>
17#include <aws/ec2/model/LaunchTemplateEnclaveOptionsRequest.h>
18#include <aws/ec2/model/LaunchTemplateHibernationOptionsRequest.h>
19#include <aws/ec2/model/LaunchTemplateIamInstanceProfileSpecificationRequest.h>
20#include <aws/ec2/model/LaunchTemplateInstanceMaintenanceOptionsRequest.h>
21#include <aws/ec2/model/LaunchTemplateInstanceMarketOptionsRequest.h>
22#include <aws/ec2/model/LaunchTemplateInstanceMetadataOptionsRequest.h>
23#include <aws/ec2/model/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.h>
24#include <aws/ec2/model/LaunchTemplateInstanceSecondaryInterfaceSpecificationRequest.h>
25#include <aws/ec2/model/LaunchTemplateLicenseConfigurationRequest.h>
26#include <aws/ec2/model/LaunchTemplateNetworkPerformanceOptionsRequest.h>
27#include <aws/ec2/model/LaunchTemplatePlacementRequest.h>
28#include <aws/ec2/model/LaunchTemplatePrivateDnsNameOptionsRequest.h>
29#include <aws/ec2/model/LaunchTemplateTagSpecificationRequest.h>
30#include <aws/ec2/model/LaunchTemplatesMonitoringRequest.h>
31#include <aws/ec2/model/OperatorRequest.h>
32#include <aws/ec2/model/ShutdownBehavior.h>
70 template <
typename KernelIdT = Aws::String>
72 m_kernelIdHasBeenSet =
true;
73 m_kernelId = std::forward<KernelIdT>(value);
75 template <
typename KernelIdT = Aws::String>
93 m_ebsOptimizedHasBeenSet =
true;
94 m_ebsOptimized = value;
108 template <
typename IamInstanceProfileT = LaunchTemplateIamInstanceProfileSpecificationRequest>
110 m_iamInstanceProfileHasBeenSet =
true;
111 m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value);
113 template <
typename IamInstanceProfileT = LaunchTemplateIamInstanceProfileSpecificationRequest>
126 template <
typename BlockDeviceMappingsT = Aws::Vector<LaunchTemplateBlockDeviceMappingRequest>>
128 m_blockDeviceMappingsHasBeenSet =
true;
129 m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value);
131 template <
typename BlockDeviceMappingsT = Aws::Vector<LaunchTemplateBlockDeviceMappingRequest>>
136 template <
typename BlockDeviceMappingsT = LaunchTemplateBlockDeviceMappingRequest>
138 m_blockDeviceMappingsHasBeenSet =
true;
139 m_blockDeviceMappings.emplace_back(std::forward<BlockDeviceMappingsT>(value));
149 return m_networkInterfaces;
152 template <
typename NetworkInterfacesT = Aws::Vector<LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>>
154 m_networkInterfacesHasBeenSet =
true;
155 m_networkInterfaces = std::forward<NetworkInterfacesT>(value);
157 template <
typename NetworkInterfacesT = Aws::Vector<LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>>
162 template <
typename NetworkInterfacesT = LaunchTemplateInstanceNetworkInterfaceSpecificationRequest>
164 m_networkInterfacesHasBeenSet =
true;
165 m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
196 template <
typename ImageIdT = Aws::String>
198 m_imageIdHasBeenSet =
true;
199 m_imageId = std::forward<ImageIdT>(value);
201 template <
typename ImageIdT = Aws::String>
219 m_instanceTypeHasBeenSet =
true;
220 m_instanceType = value;
240 template <
typename KeyNameT = Aws::String>
242 m_keyNameHasBeenSet =
true;
243 m_keyName = std::forward<KeyNameT>(value);
245 template <
typename KeyNameT = Aws::String>
258 template <
typename MonitoringT = LaunchTemplatesMonitoringRequest>
260 m_monitoringHasBeenSet =
true;
261 m_monitoring = std::forward<MonitoringT>(value);
263 template <
typename MonitoringT = LaunchTemplatesMonitoringRequest>
276 template <
typename PlacementT = LaunchTemplatePlacementRequest>
278 m_placementHasBeenSet =
true;
279 m_placement = std::forward<PlacementT>(value);
281 template <
typename PlacementT = LaunchTemplatePlacementRequest>
297 template <
typename RamDiskIdT = Aws::String>
299 m_ramDiskIdHasBeenSet =
true;
300 m_ramDiskId = std::forward<RamDiskIdT>(value);
302 template <
typename RamDiskIdT = Aws::String>
320 m_disableApiTerminationHasBeenSet =
true;
321 m_disableApiTermination = value;
338 m_instanceInitiatedShutdownBehaviorHasBeenSet =
true;
339 m_instanceInitiatedShutdownBehavior = value;
362 template <
typename UserDataT = Aws::String>
364 m_userDataHasBeenSet =
true;
365 m_userData = std::forward<UserDataT>(value);
367 template <
typename UserDataT = Aws::String>
381 template <
typename TagSpecificationsT = Aws::Vector<LaunchTemplateTagSpecificationRequest>>
383 m_tagSpecificationsHasBeenSet =
true;
384 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
386 template <
typename TagSpecificationsT = Aws::Vector<LaunchTemplateTagSpecificationRequest>>
391 template <
typename TagSpecificationsT = LaunchTemplateTagSpecificationRequest>
393 m_tagSpecificationsHasBeenSet =
true;
394 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
407 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
409 m_securityGroupIdsHasBeenSet =
true;
410 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
412 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
417 template <
typename SecurityGroupIdsT = Aws::String>
419 m_securityGroupIdsHasBeenSet =
true;
420 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
434 template <
typename SecurityGroupsT = Aws::Vector<Aws::String>>
436 m_securityGroupsHasBeenSet =
true;
437 m_securityGroups = std::forward<SecurityGroupsT>(value);
439 template <
typename SecurityGroupsT = Aws::Vector<Aws::String>>
444 template <
typename SecurityGroupsT = Aws::String>
446 m_securityGroupsHasBeenSet =
true;
447 m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value));
458 template <
typename InstanceMarketOptionsT = LaunchTemplateInstanceMarketOptionsRequest>
460 m_instanceMarketOptionsHasBeenSet =
true;
461 m_instanceMarketOptions = std::forward<InstanceMarketOptionsT>(value);
463 template <
typename InstanceMarketOptionsT = LaunchTemplateInstanceMarketOptionsRequest>
477 template <
typename CreditSpecificationT = CreditSpecificationRequest>
479 m_creditSpecificationHasBeenSet =
true;
480 m_creditSpecification = std::forward<CreditSpecificationT>(value);
482 template <
typename CreditSpecificationT = CreditSpecificationRequest>
497 template <
typename CpuOptionsT = LaunchTemplateCpuOptionsRequest>
499 m_cpuOptionsHasBeenSet =
true;
500 m_cpuOptions = std::forward<CpuOptionsT>(value);
502 template <
typename CpuOptionsT = LaunchTemplateCpuOptionsRequest>
517 return m_capacityReservationSpecification;
520 template <
typename CapacityReservationSpecificationT = LaunchTemplateCapacityReservationSpecificationRequest>
522 m_capacityReservationSpecificationHasBeenSet =
true;
523 m_capacityReservationSpecification = std::forward<CapacityReservationSpecificationT>(value);
525 template <
typename CapacityReservationSpecificationT = LaunchTemplateCapacityReservationSpecificationRequest>
538 template <
typename LicenseSpecificationsT = Aws::Vector<LaunchTemplateLicenseConfigurationRequest>>
540 m_licenseSpecificationsHasBeenSet =
true;
541 m_licenseSpecifications = std::forward<LicenseSpecificationsT>(value);
543 template <
typename LicenseSpecificationsT = Aws::Vector<LaunchTemplateLicenseConfigurationRequest>>
548 template <
typename LicenseSpecificationsT = LaunchTemplateLicenseConfigurationRequest>
550 m_licenseSpecificationsHasBeenSet =
true;
551 m_licenseSpecifications.emplace_back(std::forward<LicenseSpecificationsT>(value));
567 template <
typename HibernationOptionsT = LaunchTemplateHibernationOptionsRequest>
569 m_hibernationOptionsHasBeenSet =
true;
570 m_hibernationOptions = std::forward<HibernationOptionsT>(value);
572 template <
typename HibernationOptionsT = LaunchTemplateHibernationOptionsRequest>
588 template <
typename MetadataOptionsT = LaunchTemplateInstanceMetadataOptionsRequest>
590 m_metadataOptionsHasBeenSet =
true;
591 m_metadataOptions = std::forward<MetadataOptionsT>(value);
593 template <
typename MetadataOptionsT = LaunchTemplateInstanceMetadataOptionsRequest>
611 template <
typename EnclaveOptionsT = LaunchTemplateEnclaveOptionsRequest>
613 m_enclaveOptionsHasBeenSet =
true;
614 m_enclaveOptions = std::forward<EnclaveOptionsT>(value);
616 template <
typename EnclaveOptionsT = LaunchTemplateEnclaveOptionsRequest>
657 template <
typename InstanceRequirementsT = InstanceRequirementsRequest>
659 m_instanceRequirementsHasBeenSet =
true;
660 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
662 template <
typename InstanceRequirementsT = InstanceRequirementsRequest>
676 template <
typename PrivateDnsNameOptionsT = LaunchTemplatePrivateDnsNameOptionsRequest>
678 m_privateDnsNameOptionsHasBeenSet =
true;
679 m_privateDnsNameOptions = std::forward<PrivateDnsNameOptionsT>(value);
681 template <
typename PrivateDnsNameOptionsT = LaunchTemplatePrivateDnsNameOptionsRequest>
694 template <
typename Ma
intenanceOptionsT = LaunchTemplateInstanceMa
intenanceOptionsRequest>
696 m_maintenanceOptionsHasBeenSet =
true;
697 m_maintenanceOptions = std::forward<MaintenanceOptionsT>(value);
699 template <
typename Ma
intenanceOptionsT = LaunchTemplateInstanceMa
intenanceOptionsRequest>
717 m_disableApiStopHasBeenSet =
true;
718 m_disableApiStop = value;
732 template <
typename OperatorT = OperatorRequest>
734 m_operatorHasBeenSet =
true;
735 m_operator = std::forward<OperatorT>(value);
737 template <
typename OperatorT = OperatorRequest>
751 template <
typename NetworkPerformanceOptionsT = LaunchTemplateNetworkPerformanceOptionsRequest>
753 m_networkPerformanceOptionsHasBeenSet =
true;
754 m_networkPerformanceOptions = std::forward<NetworkPerformanceOptionsT>(value);
756 template <
typename NetworkPerformanceOptionsT = LaunchTemplateNetworkPerformanceOptionsRequest>
769 return m_secondaryInterfaces;
772 template <
typename SecondaryInterfacesT = Aws::Vector<LaunchTemplateInstanceSecondaryInterfaceSpecificationRequest>>
774 m_secondaryInterfacesHasBeenSet =
true;
775 m_secondaryInterfaces = std::forward<SecondaryInterfacesT>(value);
777 template <
typename SecondaryInterfacesT = Aws::Vector<LaunchTemplateInstanceSecondaryInterfaceSpecificationRequest>>
782 template <
typename SecondaryInterfacesT = LaunchTemplateInstanceSecondaryInterfaceSpecificationRequest>
784 m_secondaryInterfacesHasBeenSet =
true;
785 m_secondaryInterfaces.emplace_back(std::forward<SecondaryInterfacesT>(value));
792 bool m_ebsOptimized{
false};
794 LaunchTemplateIamInstanceProfileSpecificationRequest m_iamInstanceProfile;
806 LaunchTemplatesMonitoringRequest m_monitoring;
808 LaunchTemplatePlacementRequest m_placement;
812 bool m_disableApiTermination{
false};
824 LaunchTemplateInstanceMarketOptionsRequest m_instanceMarketOptions;
826 CreditSpecificationRequest m_creditSpecification;
828 LaunchTemplateCpuOptionsRequest m_cpuOptions;
830 LaunchTemplateCapacityReservationSpecificationRequest m_capacityReservationSpecification;
834 LaunchTemplateHibernationOptionsRequest m_hibernationOptions;
836 LaunchTemplateInstanceMetadataOptionsRequest m_metadataOptions;
838 LaunchTemplateEnclaveOptionsRequest m_enclaveOptions;
840 InstanceRequirementsRequest m_instanceRequirements;
842 LaunchTemplatePrivateDnsNameOptionsRequest m_privateDnsNameOptions;
844 LaunchTemplateInstanceMaintenanceOptionsRequest m_maintenanceOptions;
846 bool m_disableApiStop{
false};
848 OperatorRequest m_operator;
850 LaunchTemplateNetworkPerformanceOptionsRequest m_networkPerformanceOptions;
853 bool m_kernelIdHasBeenSet =
false;
854 bool m_ebsOptimizedHasBeenSet =
false;
855 bool m_iamInstanceProfileHasBeenSet =
false;
856 bool m_blockDeviceMappingsHasBeenSet =
false;
857 bool m_networkInterfacesHasBeenSet =
false;
858 bool m_imageIdHasBeenSet =
false;
859 bool m_instanceTypeHasBeenSet =
false;
860 bool m_keyNameHasBeenSet =
false;
861 bool m_monitoringHasBeenSet =
false;
862 bool m_placementHasBeenSet =
false;
863 bool m_ramDiskIdHasBeenSet =
false;
864 bool m_disableApiTerminationHasBeenSet =
false;
865 bool m_instanceInitiatedShutdownBehaviorHasBeenSet =
false;
866 bool m_userDataHasBeenSet =
false;
867 bool m_tagSpecificationsHasBeenSet =
false;
868 bool m_securityGroupIdsHasBeenSet =
false;
869 bool m_securityGroupsHasBeenSet =
false;
870 bool m_instanceMarketOptionsHasBeenSet =
false;
871 bool m_creditSpecificationHasBeenSet =
false;
872 bool m_cpuOptionsHasBeenSet =
false;
873 bool m_capacityReservationSpecificationHasBeenSet =
false;
874 bool m_licenseSpecificationsHasBeenSet =
false;
875 bool m_hibernationOptionsHasBeenSet =
false;
876 bool m_metadataOptionsHasBeenSet =
false;
877 bool m_enclaveOptionsHasBeenSet =
false;
878 bool m_instanceRequirementsHasBeenSet =
false;
879 bool m_privateDnsNameOptionsHasBeenSet =
false;
880 bool m_maintenanceOptionsHasBeenSet =
false;
881 bool m_disableApiStopHasBeenSet =
false;
882 bool m_operatorHasBeenSet =
false;
883 bool m_networkPerformanceOptionsHasBeenSet =
false;
884 bool m_secondaryInterfacesHasBeenSet =
false;
bool NetworkPerformanceOptionsHasBeenSet() const
bool HibernationOptionsHasBeenSet() const
bool OperatorHasBeenSet() const
RequestLaunchTemplateData & WithTagSpecifications(TagSpecificationsT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
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)
bool GetEbsOptimized() const
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::Vector< LaunchTemplateInstanceSecondaryInterfaceSpecificationRequest > & GetSecondaryInterfaces() 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
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 & 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
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)
void SetSecondaryInterfaces(SecondaryInterfacesT &&value)
bool CapacityReservationSpecificationHasBeenSet() const
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
RequestLaunchTemplateData & AddSecondaryInterfaces(SecondaryInterfacesT &&value)
const LaunchTemplateNetworkPerformanceOptionsRequest & GetNetworkPerformanceOptions() const
bool MetadataOptionsHasBeenSet() const
const Aws::String & GetKernelId() const
bool SecondaryInterfacesHasBeenSet() 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)
RequestLaunchTemplateData & WithLicenseSpecifications(LicenseSpecificationsT &&value)
RequestLaunchTemplateData & WithEbsOptimized(bool value)
const LaunchTemplateHibernationOptionsRequest & GetHibernationOptions() const
bool LicenseSpecificationsHasBeenSet() const
RequestLaunchTemplateData & WithSecondaryInterfaces(SecondaryInterfacesT &&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