AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
ResponseLaunchTemplateData.h
1
6#pragma once
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/LaunchTemplateIamInstanceProfileSpecification.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/InstanceType.h>
13#include <aws/ec2/model/LaunchTemplatesMonitoring.h>
14#include <aws/ec2/model/LaunchTemplatePlacement.h>
15#include <aws/ec2/model/ShutdownBehavior.h>
16#include <aws/ec2/model/LaunchTemplateInstanceMarketOptions.h>
17#include <aws/ec2/model/CreditSpecification.h>
18#include <aws/ec2/model/LaunchTemplateCpuOptions.h>
19#include <aws/ec2/model/LaunchTemplateCapacityReservationSpecificationResponse.h>
20#include <aws/ec2/model/LaunchTemplateHibernationOptions.h>
21#include <aws/ec2/model/LaunchTemplateInstanceMetadataOptions.h>
22#include <aws/ec2/model/LaunchTemplateEnclaveOptions.h>
23#include <aws/ec2/model/InstanceRequirements.h>
24#include <aws/ec2/model/LaunchTemplatePrivateDnsNameOptions.h>
25#include <aws/ec2/model/LaunchTemplateInstanceMaintenanceOptions.h>
26#include <aws/ec2/model/LaunchTemplateBlockDeviceMapping.h>
27#include <aws/ec2/model/LaunchTemplateInstanceNetworkInterfaceSpecification.h>
28#include <aws/ec2/model/LaunchTemplateTagSpecification.h>
29#include <aws/ec2/model/ElasticGpuSpecificationResponse.h>
30#include <aws/ec2/model/LaunchTemplateElasticInferenceAcceleratorResponse.h>
31#include <aws/ec2/model/LaunchTemplateLicenseConfiguration.h>
32#include <utility>
33
34namespace Aws
35{
36namespace Utils
37{
38namespace Xml
39{
40 class XmlNode;
41} // namespace Xml
42} // namespace Utils
43namespace EC2
44{
45namespace Model
46{
47
54 {
55 public:
59
60 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
61 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
62
63
65
68 inline const Aws::String& GetKernelId() const{ return m_kernelId; }
69 inline bool KernelIdHasBeenSet() const { return m_kernelIdHasBeenSet; }
70 inline void SetKernelId(const Aws::String& value) { m_kernelIdHasBeenSet = true; m_kernelId = value; }
71 inline void SetKernelId(Aws::String&& value) { m_kernelIdHasBeenSet = true; m_kernelId = std::move(value); }
72 inline void SetKernelId(const char* value) { m_kernelIdHasBeenSet = true; m_kernelId.assign(value); }
73 inline ResponseLaunchTemplateData& WithKernelId(const Aws::String& value) { SetKernelId(value); return *this;}
74 inline ResponseLaunchTemplateData& WithKernelId(Aws::String&& value) { SetKernelId(std::move(value)); return *this;}
75 inline ResponseLaunchTemplateData& WithKernelId(const char* value) { SetKernelId(value); return *this;}
77
79
82 inline bool GetEbsOptimized() const{ return m_ebsOptimized; }
83 inline bool EbsOptimizedHasBeenSet() const { return m_ebsOptimizedHasBeenSet; }
84 inline void SetEbsOptimized(bool value) { m_ebsOptimizedHasBeenSet = true; m_ebsOptimized = value; }
85 inline ResponseLaunchTemplateData& WithEbsOptimized(bool value) { SetEbsOptimized(value); return *this;}
87
89
92 inline const LaunchTemplateIamInstanceProfileSpecification& GetIamInstanceProfile() const{ return m_iamInstanceProfile; }
93 inline bool IamInstanceProfileHasBeenSet() const { return m_iamInstanceProfileHasBeenSet; }
94 inline void SetIamInstanceProfile(const LaunchTemplateIamInstanceProfileSpecification& value) { m_iamInstanceProfileHasBeenSet = true; m_iamInstanceProfile = value; }
95 inline void SetIamInstanceProfile(LaunchTemplateIamInstanceProfileSpecification&& value) { m_iamInstanceProfileHasBeenSet = true; m_iamInstanceProfile = std::move(value); }
99
101
104 inline const Aws::Vector<LaunchTemplateBlockDeviceMapping>& GetBlockDeviceMappings() const{ return m_blockDeviceMappings; }
105 inline bool BlockDeviceMappingsHasBeenSet() const { return m_blockDeviceMappingsHasBeenSet; }
106 inline void SetBlockDeviceMappings(const Aws::Vector<LaunchTemplateBlockDeviceMapping>& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings = value; }
107 inline void SetBlockDeviceMappings(Aws::Vector<LaunchTemplateBlockDeviceMapping>&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings = std::move(value); }
110 inline ResponseLaunchTemplateData& AddBlockDeviceMappings(const LaunchTemplateBlockDeviceMapping& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings.push_back(value); return *this; }
111 inline ResponseLaunchTemplateData& AddBlockDeviceMappings(LaunchTemplateBlockDeviceMapping&& value) { m_blockDeviceMappingsHasBeenSet = true; m_blockDeviceMappings.push_back(std::move(value)); return *this; }
113
115
119 inline bool NetworkInterfacesHasBeenSet() const { return m_networkInterfacesHasBeenSet; }
120 inline void SetNetworkInterfaces(const Aws::Vector<LaunchTemplateInstanceNetworkInterfaceSpecification>& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = value; }
121 inline void SetNetworkInterfaces(Aws::Vector<LaunchTemplateInstanceNetworkInterfaceSpecification>&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces = std::move(value); }
124 inline ResponseLaunchTemplateData& AddNetworkInterfaces(const LaunchTemplateInstanceNetworkInterfaceSpecification& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(value); return *this; }
125 inline ResponseLaunchTemplateData& AddNetworkInterfaces(LaunchTemplateInstanceNetworkInterfaceSpecification&& value) { m_networkInterfacesHasBeenSet = true; m_networkInterfaces.push_back(std::move(value)); return *this; }
127
129
144 inline const Aws::String& GetImageId() const{ return m_imageId; }
145 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
146 inline void SetImageId(const Aws::String& value) { m_imageIdHasBeenSet = true; m_imageId = value; }
147 inline void SetImageId(Aws::String&& value) { m_imageIdHasBeenSet = true; m_imageId = std::move(value); }
148 inline void SetImageId(const char* value) { m_imageIdHasBeenSet = true; m_imageId.assign(value); }
149 inline ResponseLaunchTemplateData& WithImageId(const Aws::String& value) { SetImageId(value); return *this;}
150 inline ResponseLaunchTemplateData& WithImageId(Aws::String&& value) { SetImageId(std::move(value)); return *this;}
151 inline ResponseLaunchTemplateData& WithImageId(const char* value) { SetImageId(value); return *this;}
153
155
158 inline const InstanceType& GetInstanceType() const{ return m_instanceType; }
159 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
160 inline void SetInstanceType(const InstanceType& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
161 inline void SetInstanceType(InstanceType&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); }
162 inline ResponseLaunchTemplateData& WithInstanceType(const InstanceType& value) { SetInstanceType(value); return *this;}
163 inline ResponseLaunchTemplateData& WithInstanceType(InstanceType&& value) { SetInstanceType(std::move(value)); return *this;}
165
167
170 inline const Aws::String& GetKeyName() const{ return m_keyName; }
171 inline bool KeyNameHasBeenSet() const { return m_keyNameHasBeenSet; }
172 inline void SetKeyName(const Aws::String& value) { m_keyNameHasBeenSet = true; m_keyName = value; }
173 inline void SetKeyName(Aws::String&& value) { m_keyNameHasBeenSet = true; m_keyName = std::move(value); }
174 inline void SetKeyName(const char* value) { m_keyNameHasBeenSet = true; m_keyName.assign(value); }
175 inline ResponseLaunchTemplateData& WithKeyName(const Aws::String& value) { SetKeyName(value); return *this;}
176 inline ResponseLaunchTemplateData& WithKeyName(Aws::String&& value) { SetKeyName(std::move(value)); return *this;}
177 inline ResponseLaunchTemplateData& WithKeyName(const char* value) { SetKeyName(value); return *this;}
179
181
184 inline const LaunchTemplatesMonitoring& GetMonitoring() const{ return m_monitoring; }
185 inline bool MonitoringHasBeenSet() const { return m_monitoringHasBeenSet; }
186 inline void SetMonitoring(const LaunchTemplatesMonitoring& value) { m_monitoringHasBeenSet = true; m_monitoring = value; }
187 inline void SetMonitoring(LaunchTemplatesMonitoring&& value) { m_monitoringHasBeenSet = true; m_monitoring = std::move(value); }
189 inline ResponseLaunchTemplateData& WithMonitoring(LaunchTemplatesMonitoring&& value) { SetMonitoring(std::move(value)); return *this;}
191
193
196 inline const LaunchTemplatePlacement& GetPlacement() const{ return m_placement; }
197 inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
198 inline void SetPlacement(const LaunchTemplatePlacement& value) { m_placementHasBeenSet = true; m_placement = value; }
199 inline void SetPlacement(LaunchTemplatePlacement&& value) { m_placementHasBeenSet = true; m_placement = std::move(value); }
201 inline ResponseLaunchTemplateData& WithPlacement(LaunchTemplatePlacement&& value) { SetPlacement(std::move(value)); return *this;}
203
205
208 inline const Aws::String& GetRamDiskId() const{ return m_ramDiskId; }
209 inline bool RamDiskIdHasBeenSet() const { return m_ramDiskIdHasBeenSet; }
210 inline void SetRamDiskId(const Aws::String& value) { m_ramDiskIdHasBeenSet = true; m_ramDiskId = value; }
211 inline void SetRamDiskId(Aws::String&& value) { m_ramDiskIdHasBeenSet = true; m_ramDiskId = std::move(value); }
212 inline void SetRamDiskId(const char* value) { m_ramDiskIdHasBeenSet = true; m_ramDiskId.assign(value); }
213 inline ResponseLaunchTemplateData& WithRamDiskId(const Aws::String& value) { SetRamDiskId(value); return *this;}
214 inline ResponseLaunchTemplateData& WithRamDiskId(Aws::String&& value) { SetRamDiskId(std::move(value)); return *this;}
215 inline ResponseLaunchTemplateData& WithRamDiskId(const char* value) { SetRamDiskId(value); return *this;}
217
219
223 inline bool GetDisableApiTermination() const{ return m_disableApiTermination; }
224 inline bool DisableApiTerminationHasBeenSet() const { return m_disableApiTerminationHasBeenSet; }
225 inline void SetDisableApiTermination(bool value) { m_disableApiTerminationHasBeenSet = true; m_disableApiTermination = value; }
228
230
234 inline const ShutdownBehavior& GetInstanceInitiatedShutdownBehavior() const{ return m_instanceInitiatedShutdownBehavior; }
235 inline bool InstanceInitiatedShutdownBehaviorHasBeenSet() const { return m_instanceInitiatedShutdownBehaviorHasBeenSet; }
236 inline void SetInstanceInitiatedShutdownBehavior(const ShutdownBehavior& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior = value; }
237 inline void SetInstanceInitiatedShutdownBehavior(ShutdownBehavior&& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior = std::move(value); }
241
243
246 inline const Aws::String& GetUserData() const{ return m_userData; }
247 inline bool UserDataHasBeenSet() const { return m_userDataHasBeenSet; }
248 inline void SetUserData(const Aws::String& value) { m_userDataHasBeenSet = true; m_userData = value; }
249 inline void SetUserData(Aws::String&& value) { m_userDataHasBeenSet = true; m_userData = std::move(value); }
250 inline void SetUserData(const char* value) { m_userDataHasBeenSet = true; m_userData.assign(value); }
251 inline ResponseLaunchTemplateData& WithUserData(const Aws::String& value) { SetUserData(value); return *this;}
252 inline ResponseLaunchTemplateData& WithUserData(Aws::String&& value) { SetUserData(std::move(value)); return *this;}
253 inline ResponseLaunchTemplateData& WithUserData(const char* value) { SetUserData(value); return *this;}
255
257
261 inline const Aws::Vector<LaunchTemplateTagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
262 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
263 inline void SetTagSpecifications(const Aws::Vector<LaunchTemplateTagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
264 inline void SetTagSpecifications(Aws::Vector<LaunchTemplateTagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
267 inline ResponseLaunchTemplateData& AddTagSpecifications(const LaunchTemplateTagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
268 inline ResponseLaunchTemplateData& AddTagSpecifications(LaunchTemplateTagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
270
272
277 inline const Aws::Vector<ElasticGpuSpecificationResponse>& GetElasticGpuSpecifications() const{ return m_elasticGpuSpecifications; }
278 inline bool ElasticGpuSpecificationsHasBeenSet() const { return m_elasticGpuSpecificationsHasBeenSet; }
279 inline void SetElasticGpuSpecifications(const Aws::Vector<ElasticGpuSpecificationResponse>& value) { m_elasticGpuSpecificationsHasBeenSet = true; m_elasticGpuSpecifications = value; }
280 inline void SetElasticGpuSpecifications(Aws::Vector<ElasticGpuSpecificationResponse>&& value) { m_elasticGpuSpecificationsHasBeenSet = true; m_elasticGpuSpecifications = std::move(value); }
283 inline ResponseLaunchTemplateData& AddElasticGpuSpecifications(const ElasticGpuSpecificationResponse& value) { m_elasticGpuSpecificationsHasBeenSet = true; m_elasticGpuSpecifications.push_back(value); return *this; }
284 inline ResponseLaunchTemplateData& AddElasticGpuSpecifications(ElasticGpuSpecificationResponse&& value) { m_elasticGpuSpecificationsHasBeenSet = true; m_elasticGpuSpecifications.push_back(std::move(value)); return *this; }
286
288
303 inline const Aws::Vector<LaunchTemplateElasticInferenceAcceleratorResponse>& GetElasticInferenceAccelerators() const{ return m_elasticInferenceAccelerators; }
304 inline bool ElasticInferenceAcceleratorsHasBeenSet() const { return m_elasticInferenceAcceleratorsHasBeenSet; }
305 inline void SetElasticInferenceAccelerators(const Aws::Vector<LaunchTemplateElasticInferenceAcceleratorResponse>& value) { m_elasticInferenceAcceleratorsHasBeenSet = true; m_elasticInferenceAccelerators = value; }
306 inline void SetElasticInferenceAccelerators(Aws::Vector<LaunchTemplateElasticInferenceAcceleratorResponse>&& value) { m_elasticInferenceAcceleratorsHasBeenSet = true; m_elasticInferenceAccelerators = std::move(value); }
309 inline ResponseLaunchTemplateData& AddElasticInferenceAccelerators(const LaunchTemplateElasticInferenceAcceleratorResponse& value) { m_elasticInferenceAcceleratorsHasBeenSet = true; m_elasticInferenceAccelerators.push_back(value); return *this; }
310 inline ResponseLaunchTemplateData& AddElasticInferenceAccelerators(LaunchTemplateElasticInferenceAcceleratorResponse&& value) { m_elasticInferenceAcceleratorsHasBeenSet = true; m_elasticInferenceAccelerators.push_back(std::move(value)); return *this; }
312
314
317 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const{ return m_securityGroupIds; }
318 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
319 inline void SetSecurityGroupIds(const Aws::Vector<Aws::String>& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; }
320 inline void SetSecurityGroupIds(Aws::Vector<Aws::String>&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); }
323 inline ResponseLaunchTemplateData& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
324 inline ResponseLaunchTemplateData& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; }
325 inline ResponseLaunchTemplateData& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; }
327
329
332 inline const Aws::Vector<Aws::String>& GetSecurityGroups() const{ return m_securityGroups; }
333 inline bool SecurityGroupsHasBeenSet() const { return m_securityGroupsHasBeenSet; }
334 inline void SetSecurityGroups(const Aws::Vector<Aws::String>& value) { m_securityGroupsHasBeenSet = true; m_securityGroups = value; }
335 inline void SetSecurityGroups(Aws::Vector<Aws::String>&& value) { m_securityGroupsHasBeenSet = true; m_securityGroups = std::move(value); }
338 inline ResponseLaunchTemplateData& AddSecurityGroups(const Aws::String& value) { m_securityGroupsHasBeenSet = true; m_securityGroups.push_back(value); return *this; }
339 inline ResponseLaunchTemplateData& AddSecurityGroups(Aws::String&& value) { m_securityGroupsHasBeenSet = true; m_securityGroups.push_back(std::move(value)); return *this; }
340 inline ResponseLaunchTemplateData& AddSecurityGroups(const char* value) { m_securityGroupsHasBeenSet = true; m_securityGroups.push_back(value); return *this; }
342
344
347 inline const LaunchTemplateInstanceMarketOptions& GetInstanceMarketOptions() const{ return m_instanceMarketOptions; }
348 inline bool InstanceMarketOptionsHasBeenSet() const { return m_instanceMarketOptionsHasBeenSet; }
349 inline void SetInstanceMarketOptions(const LaunchTemplateInstanceMarketOptions& value) { m_instanceMarketOptionsHasBeenSet = true; m_instanceMarketOptions = value; }
350 inline void SetInstanceMarketOptions(LaunchTemplateInstanceMarketOptions&& value) { m_instanceMarketOptionsHasBeenSet = true; m_instanceMarketOptions = std::move(value); }
354
356
359 inline const CreditSpecification& GetCreditSpecification() const{ return m_creditSpecification; }
360 inline bool CreditSpecificationHasBeenSet() const { return m_creditSpecificationHasBeenSet; }
361 inline void SetCreditSpecification(const CreditSpecification& value) { m_creditSpecificationHasBeenSet = true; m_creditSpecification = value; }
362 inline void SetCreditSpecification(CreditSpecification&& value) { m_creditSpecificationHasBeenSet = true; m_creditSpecification = std::move(value); }
366
368
373 inline const LaunchTemplateCpuOptions& GetCpuOptions() const{ return m_cpuOptions; }
374 inline bool CpuOptionsHasBeenSet() const { return m_cpuOptionsHasBeenSet; }
375 inline void SetCpuOptions(const LaunchTemplateCpuOptions& value) { m_cpuOptionsHasBeenSet = true; m_cpuOptions = value; }
376 inline void SetCpuOptions(LaunchTemplateCpuOptions&& value) { m_cpuOptionsHasBeenSet = true; m_cpuOptions = std::move(value); }
378 inline ResponseLaunchTemplateData& WithCpuOptions(LaunchTemplateCpuOptions&& value) { SetCpuOptions(std::move(value)); return *this;}
380
382
385 inline const LaunchTemplateCapacityReservationSpecificationResponse& GetCapacityReservationSpecification() const{ return m_capacityReservationSpecification; }
386 inline bool CapacityReservationSpecificationHasBeenSet() const { return m_capacityReservationSpecificationHasBeenSet; }
387 inline void SetCapacityReservationSpecification(const LaunchTemplateCapacityReservationSpecificationResponse& value) { m_capacityReservationSpecificationHasBeenSet = true; m_capacityReservationSpecification = value; }
388 inline void SetCapacityReservationSpecification(LaunchTemplateCapacityReservationSpecificationResponse&& value) { m_capacityReservationSpecificationHasBeenSet = true; m_capacityReservationSpecification = std::move(value); }
392
394
397 inline const Aws::Vector<LaunchTemplateLicenseConfiguration>& GetLicenseSpecifications() const{ return m_licenseSpecifications; }
398 inline bool LicenseSpecificationsHasBeenSet() const { return m_licenseSpecificationsHasBeenSet; }
399 inline void SetLicenseSpecifications(const Aws::Vector<LaunchTemplateLicenseConfiguration>& value) { m_licenseSpecificationsHasBeenSet = true; m_licenseSpecifications = value; }
400 inline void SetLicenseSpecifications(Aws::Vector<LaunchTemplateLicenseConfiguration>&& value) { m_licenseSpecificationsHasBeenSet = true; m_licenseSpecifications = std::move(value); }
403 inline ResponseLaunchTemplateData& AddLicenseSpecifications(const LaunchTemplateLicenseConfiguration& value) { m_licenseSpecificationsHasBeenSet = true; m_licenseSpecifications.push_back(value); return *this; }
404 inline ResponseLaunchTemplateData& AddLicenseSpecifications(LaunchTemplateLicenseConfiguration&& value) { m_licenseSpecificationsHasBeenSet = true; m_licenseSpecifications.push_back(std::move(value)); return *this; }
406
408
414 inline const LaunchTemplateHibernationOptions& GetHibernationOptions() const{ return m_hibernationOptions; }
415 inline bool HibernationOptionsHasBeenSet() const { return m_hibernationOptionsHasBeenSet; }
416 inline void SetHibernationOptions(const LaunchTemplateHibernationOptions& value) { m_hibernationOptionsHasBeenSet = true; m_hibernationOptions = value; }
417 inline void SetHibernationOptions(LaunchTemplateHibernationOptions&& value) { m_hibernationOptionsHasBeenSet = true; m_hibernationOptions = std::move(value); }
421
423
428 inline const LaunchTemplateInstanceMetadataOptions& GetMetadataOptions() const{ return m_metadataOptions; }
429 inline bool MetadataOptionsHasBeenSet() const { return m_metadataOptionsHasBeenSet; }
430 inline void SetMetadataOptions(const LaunchTemplateInstanceMetadataOptions& value) { m_metadataOptionsHasBeenSet = true; m_metadataOptions = value; }
431 inline void SetMetadataOptions(LaunchTemplateInstanceMetadataOptions&& value) { m_metadataOptionsHasBeenSet = true; m_metadataOptions = std::move(value); }
435
437
441 inline const LaunchTemplateEnclaveOptions& GetEnclaveOptions() const{ return m_enclaveOptions; }
442 inline bool EnclaveOptionsHasBeenSet() const { return m_enclaveOptionsHasBeenSet; }
443 inline void SetEnclaveOptions(const LaunchTemplateEnclaveOptions& value) { m_enclaveOptionsHasBeenSet = true; m_enclaveOptions = value; }
444 inline void SetEnclaveOptions(LaunchTemplateEnclaveOptions&& value) { m_enclaveOptionsHasBeenSet = true; m_enclaveOptions = std::move(value); }
448
450
456 inline const InstanceRequirements& GetInstanceRequirements() const{ return m_instanceRequirements; }
457 inline bool InstanceRequirementsHasBeenSet() const { return m_instanceRequirementsHasBeenSet; }
458 inline void SetInstanceRequirements(const InstanceRequirements& value) { m_instanceRequirementsHasBeenSet = true; m_instanceRequirements = value; }
459 inline void SetInstanceRequirements(InstanceRequirements&& value) { m_instanceRequirementsHasBeenSet = true; m_instanceRequirements = std::move(value); }
463
465
468 inline const LaunchTemplatePrivateDnsNameOptions& GetPrivateDnsNameOptions() const{ return m_privateDnsNameOptions; }
469 inline bool PrivateDnsNameOptionsHasBeenSet() const { return m_privateDnsNameOptionsHasBeenSet; }
470 inline void SetPrivateDnsNameOptions(const LaunchTemplatePrivateDnsNameOptions& value) { m_privateDnsNameOptionsHasBeenSet = true; m_privateDnsNameOptions = value; }
471 inline void SetPrivateDnsNameOptions(LaunchTemplatePrivateDnsNameOptions&& value) { m_privateDnsNameOptionsHasBeenSet = true; m_privateDnsNameOptions = std::move(value); }
475
477
480 inline const LaunchTemplateInstanceMaintenanceOptions& GetMaintenanceOptions() const{ return m_maintenanceOptions; }
481 inline bool MaintenanceOptionsHasBeenSet() const { return m_maintenanceOptionsHasBeenSet; }
482 inline void SetMaintenanceOptions(const LaunchTemplateInstanceMaintenanceOptions& value) { m_maintenanceOptionsHasBeenSet = true; m_maintenanceOptions = value; }
483 inline void SetMaintenanceOptions(LaunchTemplateInstanceMaintenanceOptions&& value) { m_maintenanceOptionsHasBeenSet = true; m_maintenanceOptions = std::move(value); }
487
489
495 inline bool GetDisableApiStop() const{ return m_disableApiStop; }
496 inline bool DisableApiStopHasBeenSet() const { return m_disableApiStopHasBeenSet; }
497 inline void SetDisableApiStop(bool value) { m_disableApiStopHasBeenSet = true; m_disableApiStop = value; }
498 inline ResponseLaunchTemplateData& WithDisableApiStop(bool value) { SetDisableApiStop(value); return *this;}
500 private:
501
502 Aws::String m_kernelId;
503 bool m_kernelIdHasBeenSet = false;
504
505 bool m_ebsOptimized;
506 bool m_ebsOptimizedHasBeenSet = false;
507
509 bool m_iamInstanceProfileHasBeenSet = false;
510
512 bool m_blockDeviceMappingsHasBeenSet = false;
513
515 bool m_networkInterfacesHasBeenSet = false;
516
517 Aws::String m_imageId;
518 bool m_imageIdHasBeenSet = false;
519
520 InstanceType m_instanceType;
521 bool m_instanceTypeHasBeenSet = false;
522
523 Aws::String m_keyName;
524 bool m_keyNameHasBeenSet = false;
525
526 LaunchTemplatesMonitoring m_monitoring;
527 bool m_monitoringHasBeenSet = false;
528
529 LaunchTemplatePlacement m_placement;
530 bool m_placementHasBeenSet = false;
531
532 Aws::String m_ramDiskId;
533 bool m_ramDiskIdHasBeenSet = false;
534
535 bool m_disableApiTermination;
536 bool m_disableApiTerminationHasBeenSet = false;
537
538 ShutdownBehavior m_instanceInitiatedShutdownBehavior;
539 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
540
541 Aws::String m_userData;
542 bool m_userDataHasBeenSet = false;
543
545 bool m_tagSpecificationsHasBeenSet = false;
546
547 Aws::Vector<ElasticGpuSpecificationResponse> m_elasticGpuSpecifications;
548 bool m_elasticGpuSpecificationsHasBeenSet = false;
549
551 bool m_elasticInferenceAcceleratorsHasBeenSet = false;
552
553 Aws::Vector<Aws::String> m_securityGroupIds;
554 bool m_securityGroupIdsHasBeenSet = false;
555
556 Aws::Vector<Aws::String> m_securityGroups;
557 bool m_securityGroupsHasBeenSet = false;
558
559 LaunchTemplateInstanceMarketOptions m_instanceMarketOptions;
560 bool m_instanceMarketOptionsHasBeenSet = false;
561
562 CreditSpecification m_creditSpecification;
563 bool m_creditSpecificationHasBeenSet = false;
564
565 LaunchTemplateCpuOptions m_cpuOptions;
566 bool m_cpuOptionsHasBeenSet = false;
567
568 LaunchTemplateCapacityReservationSpecificationResponse m_capacityReservationSpecification;
569 bool m_capacityReservationSpecificationHasBeenSet = false;
570
572 bool m_licenseSpecificationsHasBeenSet = false;
573
574 LaunchTemplateHibernationOptions m_hibernationOptions;
575 bool m_hibernationOptionsHasBeenSet = false;
576
578 bool m_metadataOptionsHasBeenSet = false;
579
580 LaunchTemplateEnclaveOptions m_enclaveOptions;
581 bool m_enclaveOptionsHasBeenSet = false;
582
583 InstanceRequirements m_instanceRequirements;
584 bool m_instanceRequirementsHasBeenSet = false;
585
586 LaunchTemplatePrivateDnsNameOptions m_privateDnsNameOptions;
587 bool m_privateDnsNameOptionsHasBeenSet = false;
588
589 LaunchTemplateInstanceMaintenanceOptions m_maintenanceOptions;
590 bool m_maintenanceOptionsHasBeenSet = false;
591
592 bool m_disableApiStop;
593 bool m_disableApiStopHasBeenSet = false;
594 };
595
596} // namespace Model
597} // namespace EC2
598} // namespace Aws
ResponseLaunchTemplateData & AddElasticGpuSpecifications(ElasticGpuSpecificationResponse &&value)
const LaunchTemplateCpuOptions & GetCpuOptions() const
ResponseLaunchTemplateData & WithHibernationOptions(LaunchTemplateHibernationOptions &&value)
void SetMaintenanceOptions(LaunchTemplateInstanceMaintenanceOptions &&value)
const LaunchTemplatesMonitoring & GetMonitoring() const
AWS_EC2_API ResponseLaunchTemplateData & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ResponseLaunchTemplateData & WithInstanceRequirements(InstanceRequirements &&value)
ResponseLaunchTemplateData & WithPrivateDnsNameOptions(const LaunchTemplatePrivateDnsNameOptions &value)
const ShutdownBehavior & GetInstanceInitiatedShutdownBehavior() const
void SetElasticGpuSpecifications(const Aws::Vector< ElasticGpuSpecificationResponse > &value)
ResponseLaunchTemplateData & WithCpuOptions(LaunchTemplateCpuOptions &&value)
ResponseLaunchTemplateData & WithNetworkInterfaces(const Aws::Vector< LaunchTemplateInstanceNetworkInterfaceSpecification > &value)
ResponseLaunchTemplateData & AddSecurityGroupIds(Aws::String &&value)
void SetPrivateDnsNameOptions(LaunchTemplatePrivateDnsNameOptions &&value)
const InstanceRequirements & GetInstanceRequirements() const
void SetMonitoring(LaunchTemplatesMonitoring &&value)
ResponseLaunchTemplateData & WithNetworkInterfaces(Aws::Vector< LaunchTemplateInstanceNetworkInterfaceSpecification > &&value)
const LaunchTemplateInstanceMetadataOptions & GetMetadataOptions() const
ResponseLaunchTemplateData & AddSecurityGroups(Aws::String &&value)
ResponseLaunchTemplateData & WithCreditSpecification(const CreditSpecification &value)
void SetEnclaveOptions(const LaunchTemplateEnclaveOptions &value)
const LaunchTemplateInstanceMaintenanceOptions & GetMaintenanceOptions() const
void SetCapacityReservationSpecification(const LaunchTemplateCapacityReservationSpecificationResponse &value)
ResponseLaunchTemplateData & AddNetworkInterfaces(LaunchTemplateInstanceNetworkInterfaceSpecification &&value)
ResponseLaunchTemplateData & WithImageId(const Aws::String &value)
void SetSecurityGroupIds(Aws::Vector< Aws::String > &&value)
ResponseLaunchTemplateData & WithRamDiskId(Aws::String &&value)
void SetNetworkInterfaces(const Aws::Vector< LaunchTemplateInstanceNetworkInterfaceSpecification > &value)
const LaunchTemplatePrivateDnsNameOptions & GetPrivateDnsNameOptions() const
const LaunchTemplateInstanceMarketOptions & GetInstanceMarketOptions() const
void SetCreditSpecification(const CreditSpecification &value)
void SetBlockDeviceMappings(Aws::Vector< LaunchTemplateBlockDeviceMapping > &&value)
ResponseLaunchTemplateData & WithKernelId(const Aws::String &value)
void SetPrivateDnsNameOptions(const LaunchTemplatePrivateDnsNameOptions &value)
void SetInstanceMarketOptions(LaunchTemplateInstanceMarketOptions &&value)
const Aws::Vector< LaunchTemplateBlockDeviceMapping > & GetBlockDeviceMappings() const
ResponseLaunchTemplateData & WithMonitoring(const LaunchTemplatesMonitoring &value)
void SetInstanceMarketOptions(const LaunchTemplateInstanceMarketOptions &value)
void SetCreditSpecification(CreditSpecification &&value)
ResponseLaunchTemplateData & WithEnclaveOptions(const LaunchTemplateEnclaveOptions &value)
void SetInstanceRequirements(InstanceRequirements &&value)
AWS_EC2_API ResponseLaunchTemplateData(const Aws::Utils::Xml::XmlNode &xmlNode)
ResponseLaunchTemplateData & WithKeyName(const Aws::String &value)
ResponseLaunchTemplateData & AddBlockDeviceMappings(const LaunchTemplateBlockDeviceMapping &value)
ResponseLaunchTemplateData & WithSecurityGroupIds(const Aws::Vector< Aws::String > &value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::Vector< LaunchTemplateLicenseConfiguration > & GetLicenseSpecifications() const
void SetLicenseSpecifications(Aws::Vector< LaunchTemplateLicenseConfiguration > &&value)
ResponseLaunchTemplateData & WithDisableApiTermination(bool value)
const CreditSpecification & GetCreditSpecification() const
void SetBlockDeviceMappings(const Aws::Vector< LaunchTemplateBlockDeviceMapping > &value)
void SetIamInstanceProfile(LaunchTemplateIamInstanceProfileSpecification &&value)
ResponseLaunchTemplateData & WithLicenseSpecifications(const Aws::Vector< LaunchTemplateLicenseConfiguration > &value)
ResponseLaunchTemplateData & WithIamInstanceProfile(LaunchTemplateIamInstanceProfileSpecification &&value)
ResponseLaunchTemplateData & WithHibernationOptions(const LaunchTemplateHibernationOptions &value)
const Aws::Vector< ElasticGpuSpecificationResponse > & GetElasticGpuSpecifications() const
ResponseLaunchTemplateData & WithDisableApiStop(bool value)
ResponseLaunchTemplateData & WithInstanceMarketOptions(LaunchTemplateInstanceMarketOptions &&value)
void SetHibernationOptions(const LaunchTemplateHibernationOptions &value)
ResponseLaunchTemplateData & WithSecurityGroupIds(Aws::Vector< Aws::String > &&value)
ResponseLaunchTemplateData & WithMetadataOptions(LaunchTemplateInstanceMetadataOptions &&value)
void SetSecurityGroups(Aws::Vector< Aws::String > &&value)
void SetIamInstanceProfile(const LaunchTemplateIamInstanceProfileSpecification &value)
void SetMonitoring(const LaunchTemplatesMonitoring &value)
ResponseLaunchTemplateData & AddSecurityGroupIds(const Aws::String &value)
const LaunchTemplateIamInstanceProfileSpecification & GetIamInstanceProfile() const
ResponseLaunchTemplateData & AddSecurityGroups(const char *value)
ResponseLaunchTemplateData & WithKeyName(const char *value)
ResponseLaunchTemplateData & WithCapacityReservationSpecification(const LaunchTemplateCapacityReservationSpecificationResponse &value)
void SetElasticGpuSpecifications(Aws::Vector< ElasticGpuSpecificationResponse > &&value)
ResponseLaunchTemplateData & WithImageId(Aws::String &&value)
void SetInstanceInitiatedShutdownBehavior(ShutdownBehavior &&value)
ResponseLaunchTemplateData & WithInstanceType(InstanceType &&value)
void SetHibernationOptions(LaunchTemplateHibernationOptions &&value)
void SetEnclaveOptions(LaunchTemplateEnclaveOptions &&value)
const Aws::Vector< LaunchTemplateElasticInferenceAcceleratorResponse > & GetElasticInferenceAccelerators() const
ResponseLaunchTemplateData & WithTagSpecifications(const Aws::Vector< LaunchTemplateTagSpecification > &value)
ResponseLaunchTemplateData & WithPlacement(LaunchTemplatePlacement &&value)
ResponseLaunchTemplateData & WithSecurityGroups(Aws::Vector< Aws::String > &&value)
ResponseLaunchTemplateData & WithRamDiskId(const Aws::String &value)
void SetPlacement(const LaunchTemplatePlacement &value)
void SetMaintenanceOptions(const LaunchTemplateInstanceMaintenanceOptions &value)
ResponseLaunchTemplateData & WithKeyName(Aws::String &&value)
ResponseLaunchTemplateData & WithPrivateDnsNameOptions(LaunchTemplatePrivateDnsNameOptions &&value)
ResponseLaunchTemplateData & WithElasticInferenceAccelerators(Aws::Vector< LaunchTemplateElasticInferenceAcceleratorResponse > &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ResponseLaunchTemplateData & WithElasticGpuSpecifications(Aws::Vector< ElasticGpuSpecificationResponse > &&value)
ResponseLaunchTemplateData & AddElasticGpuSpecifications(const ElasticGpuSpecificationResponse &value)
void SetElasticInferenceAccelerators(const Aws::Vector< LaunchTemplateElasticInferenceAcceleratorResponse > &value)
const Aws::Vector< Aws::String > & GetSecurityGroups() const
ResponseLaunchTemplateData & WithBlockDeviceMappings(const Aws::Vector< LaunchTemplateBlockDeviceMapping > &value)
ResponseLaunchTemplateData & WithMetadataOptions(const LaunchTemplateInstanceMetadataOptions &value)
ResponseLaunchTemplateData & AddTagSpecifications(LaunchTemplateTagSpecification &&value)
ResponseLaunchTemplateData & WithMaintenanceOptions(const LaunchTemplateInstanceMaintenanceOptions &value)
ResponseLaunchTemplateData & AddSecurityGroups(const Aws::String &value)
ResponseLaunchTemplateData & WithCpuOptions(const LaunchTemplateCpuOptions &value)
const Aws::Vector< LaunchTemplateTagSpecification > & GetTagSpecifications() const
void SetCpuOptions(const LaunchTemplateCpuOptions &value)
void SetMetadataOptions(LaunchTemplateInstanceMetadataOptions &&value)
ResponseLaunchTemplateData & WithRamDiskId(const char *value)
void SetCpuOptions(LaunchTemplateCpuOptions &&value)
void SetElasticInferenceAccelerators(Aws::Vector< LaunchTemplateElasticInferenceAcceleratorResponse > &&value)
ResponseLaunchTemplateData & WithInstanceInitiatedShutdownBehavior(ShutdownBehavior &&value)
ResponseLaunchTemplateData & WithMaintenanceOptions(LaunchTemplateInstanceMaintenanceOptions &&value)
void SetCapacityReservationSpecification(LaunchTemplateCapacityReservationSpecificationResponse &&value)
ResponseLaunchTemplateData & WithSecurityGroups(const Aws::Vector< Aws::String > &value)
ResponseLaunchTemplateData & AddNetworkInterfaces(const LaunchTemplateInstanceNetworkInterfaceSpecification &value)
void SetMetadataOptions(const LaunchTemplateInstanceMetadataOptions &value)
void SetNetworkInterfaces(Aws::Vector< LaunchTemplateInstanceNetworkInterfaceSpecification > &&value)
ResponseLaunchTemplateData & WithInstanceMarketOptions(const LaunchTemplateInstanceMarketOptions &value)
ResponseLaunchTemplateData & WithPlacement(const LaunchTemplatePlacement &value)
void SetInstanceRequirements(const InstanceRequirements &value)
ResponseLaunchTemplateData & AddBlockDeviceMappings(LaunchTemplateBlockDeviceMapping &&value)
ResponseLaunchTemplateData & WithUserData(const char *value)
ResponseLaunchTemplateData & WithCapacityReservationSpecification(LaunchTemplateCapacityReservationSpecificationResponse &&value)
ResponseLaunchTemplateData & WithLicenseSpecifications(Aws::Vector< LaunchTemplateLicenseConfiguration > &&value)
ResponseLaunchTemplateData & WithElasticInferenceAccelerators(const Aws::Vector< LaunchTemplateElasticInferenceAcceleratorResponse > &value)
ResponseLaunchTemplateData & WithInstanceType(const InstanceType &value)
ResponseLaunchTemplateData & WithUserData(Aws::String &&value)
ResponseLaunchTemplateData & WithElasticGpuSpecifications(const Aws::Vector< ElasticGpuSpecificationResponse > &value)
ResponseLaunchTemplateData & WithInstanceRequirements(const InstanceRequirements &value)
ResponseLaunchTemplateData & WithBlockDeviceMappings(Aws::Vector< LaunchTemplateBlockDeviceMapping > &&value)
ResponseLaunchTemplateData & WithIamInstanceProfile(const LaunchTemplateIamInstanceProfileSpecification &value)
ResponseLaunchTemplateData & WithUserData(const Aws::String &value)
ResponseLaunchTemplateData & WithKernelId(Aws::String &&value)
void SetTagSpecifications(Aws::Vector< LaunchTemplateTagSpecification > &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
const LaunchTemplatePlacement & GetPlacement() const
void SetPlacement(LaunchTemplatePlacement &&value)
ResponseLaunchTemplateData & WithEbsOptimized(bool value)
ResponseLaunchTemplateData & WithCreditSpecification(CreditSpecification &&value)
ResponseLaunchTemplateData & AddElasticInferenceAccelerators(const LaunchTemplateElasticInferenceAcceleratorResponse &value)
const Aws::Vector< LaunchTemplateInstanceNetworkInterfaceSpecification > & GetNetworkInterfaces() const
ResponseLaunchTemplateData & AddElasticInferenceAccelerators(LaunchTemplateElasticInferenceAcceleratorResponse &&value)
const LaunchTemplateCapacityReservationSpecificationResponse & GetCapacityReservationSpecification() const
void SetSecurityGroups(const Aws::Vector< Aws::String > &value)
ResponseLaunchTemplateData & AddTagSpecifications(const LaunchTemplateTagSpecification &value)
ResponseLaunchTemplateData & WithInstanceInitiatedShutdownBehavior(const ShutdownBehavior &value)
ResponseLaunchTemplateData & AddLicenseSpecifications(LaunchTemplateLicenseConfiguration &&value)
void SetLicenseSpecifications(const Aws::Vector< LaunchTemplateLicenseConfiguration > &value)
ResponseLaunchTemplateData & WithEnclaveOptions(LaunchTemplateEnclaveOptions &&value)
ResponseLaunchTemplateData & AddLicenseSpecifications(const LaunchTemplateLicenseConfiguration &value)
ResponseLaunchTemplateData & WithImageId(const char *value)
const LaunchTemplateEnclaveOptions & GetEnclaveOptions() const
void SetSecurityGroupIds(const Aws::Vector< Aws::String > &value)
ResponseLaunchTemplateData & AddSecurityGroupIds(const char *value)
const LaunchTemplateHibernationOptions & GetHibernationOptions() const
ResponseLaunchTemplateData & WithMonitoring(LaunchTemplatesMonitoring &&value)
ResponseLaunchTemplateData & WithKernelId(const char *value)
void SetTagSpecifications(const Aws::Vector< LaunchTemplateTagSpecification > &value)
void SetInstanceInitiatedShutdownBehavior(const ShutdownBehavior &value)
ResponseLaunchTemplateData & WithTagSpecifications(Aws::Vector< LaunchTemplateTagSpecification > &&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