AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
AwsEc2LaunchTemplateDataDetails.h
1
6#pragma once
7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/securityhub/model/AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails.h>
10#include <aws/securityhub/model/AwsEc2LaunchTemplateDataCpuOptionsDetails.h>
11#include <aws/securityhub/model/AwsEc2LaunchTemplateDataCreditSpecificationDetails.h>
12#include <aws/securityhub/model/AwsEc2LaunchTemplateDataEnclaveOptionsDetails.h>
13#include <aws/securityhub/model/AwsEc2LaunchTemplateDataHibernationOptionsDetails.h>
14#include <aws/securityhub/model/AwsEc2LaunchTemplateDataIamInstanceProfileDetails.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/securityhub/model/AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails.h>
17#include <aws/securityhub/model/AwsEc2LaunchTemplateDataInstanceRequirementsDetails.h>
18#include <aws/securityhub/model/AwsEc2LaunchTemplateDataMaintenanceOptionsDetails.h>
19#include <aws/securityhub/model/AwsEc2LaunchTemplateDataMetadataOptionsDetails.h>
20#include <aws/securityhub/model/AwsEc2LaunchTemplateDataMonitoringDetails.h>
21#include <aws/securityhub/model/AwsEc2LaunchTemplateDataPlacementDetails.h>
22#include <aws/securityhub/model/AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails.h>
23#include <aws/securityhub/model/AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails.h>
24#include <aws/securityhub/model/AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails.h>
25#include <aws/securityhub/model/AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails.h>
26#include <aws/securityhub/model/AwsEc2LaunchTemplateDataLicenseSetDetails.h>
27#include <aws/securityhub/model/AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails.h>
28#include <utility>
29
30namespace Aws
31{
32namespace Utils
33{
34namespace Json
35{
36 class JsonValue;
37 class JsonView;
38} // namespace Json
39} // namespace Utils
40namespace SecurityHub
41{
42namespace Model
43{
44
52 {
53 public:
54 AWS_SECURITYHUB_API AwsEc2LaunchTemplateDataDetails();
57 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
58
59
61
66 inline bool BlockDeviceMappingSetHasBeenSet() const { return m_blockDeviceMappingSetHasBeenSet; }
67 inline void SetBlockDeviceMappingSet(const Aws::Vector<AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails>& value) { m_blockDeviceMappingSetHasBeenSet = true; m_blockDeviceMappingSet = value; }
68 inline void SetBlockDeviceMappingSet(Aws::Vector<AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails>&& value) { m_blockDeviceMappingSetHasBeenSet = true; m_blockDeviceMappingSet = std::move(value); }
71 inline AwsEc2LaunchTemplateDataDetails& AddBlockDeviceMappingSet(const AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails& value) { m_blockDeviceMappingSetHasBeenSet = true; m_blockDeviceMappingSet.push_back(value); return *this; }
72 inline AwsEc2LaunchTemplateDataDetails& AddBlockDeviceMappingSet(AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails&& value) { m_blockDeviceMappingSetHasBeenSet = true; m_blockDeviceMappingSet.push_back(std::move(value)); return *this; }
74
76
80 inline const AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails& GetCapacityReservationSpecification() const{ return m_capacityReservationSpecification; }
81 inline bool CapacityReservationSpecificationHasBeenSet() const { return m_capacityReservationSpecificationHasBeenSet; }
82 inline void SetCapacityReservationSpecification(const AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails& value) { m_capacityReservationSpecificationHasBeenSet = true; m_capacityReservationSpecification = value; }
83 inline void SetCapacityReservationSpecification(AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails&& value) { m_capacityReservationSpecificationHasBeenSet = true; m_capacityReservationSpecification = std::move(value); }
87
89
94 inline const AwsEc2LaunchTemplateDataCpuOptionsDetails& GetCpuOptions() const{ return m_cpuOptions; }
95 inline bool CpuOptionsHasBeenSet() const { return m_cpuOptionsHasBeenSet; }
96 inline void SetCpuOptions(const AwsEc2LaunchTemplateDataCpuOptionsDetails& value) { m_cpuOptionsHasBeenSet = true; m_cpuOptions = value; }
97 inline void SetCpuOptions(AwsEc2LaunchTemplateDataCpuOptionsDetails&& value) { m_cpuOptionsHasBeenSet = true; m_cpuOptions = std::move(value); }
101
103
106 inline const AwsEc2LaunchTemplateDataCreditSpecificationDetails& GetCreditSpecification() const{ return m_creditSpecification; }
107 inline bool CreditSpecificationHasBeenSet() const { return m_creditSpecificationHasBeenSet; }
108 inline void SetCreditSpecification(const AwsEc2LaunchTemplateDataCreditSpecificationDetails& value) { m_creditSpecificationHasBeenSet = true; m_creditSpecification = value; }
109 inline void SetCreditSpecification(AwsEc2LaunchTemplateDataCreditSpecificationDetails&& value) { m_creditSpecificationHasBeenSet = true; m_creditSpecification = std::move(value); }
113
115
121 inline bool GetDisableApiStop() const{ return m_disableApiStop; }
122 inline bool DisableApiStopHasBeenSet() const { return m_disableApiStopHasBeenSet; }
123 inline void SetDisableApiStop(bool value) { m_disableApiStopHasBeenSet = true; m_disableApiStop = value; }
124 inline AwsEc2LaunchTemplateDataDetails& WithDisableApiStop(bool value) { SetDisableApiStop(value); return *this;}
126
128
133 inline bool GetDisableApiTermination() const{ return m_disableApiTermination; }
134 inline bool DisableApiTerminationHasBeenSet() const { return m_disableApiTerminationHasBeenSet; }
135 inline void SetDisableApiTermination(bool value) { m_disableApiTerminationHasBeenSet = true; m_disableApiTermination = value; }
138
140
143 inline bool GetEbsOptimized() const{ return m_ebsOptimized; }
144 inline bool EbsOptimizedHasBeenSet() const { return m_ebsOptimizedHasBeenSet; }
145 inline void SetEbsOptimized(bool value) { m_ebsOptimizedHasBeenSet = true; m_ebsOptimized = value; }
146 inline AwsEc2LaunchTemplateDataDetails& WithEbsOptimized(bool value) { SetEbsOptimized(value); return *this;}
148
150
155 inline bool ElasticGpuSpecificationSetHasBeenSet() const { return m_elasticGpuSpecificationSetHasBeenSet; }
156 inline void SetElasticGpuSpecificationSet(const Aws::Vector<AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails>& value) { m_elasticGpuSpecificationSetHasBeenSet = true; m_elasticGpuSpecificationSet = value; }
157 inline void SetElasticGpuSpecificationSet(Aws::Vector<AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails>&& value) { m_elasticGpuSpecificationSetHasBeenSet = true; m_elasticGpuSpecificationSet = std::move(value); }
160 inline AwsEc2LaunchTemplateDataDetails& AddElasticGpuSpecificationSet(const AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails& value) { m_elasticGpuSpecificationSetHasBeenSet = true; m_elasticGpuSpecificationSet.push_back(value); return *this; }
161 inline AwsEc2LaunchTemplateDataDetails& AddElasticGpuSpecificationSet(AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails&& value) { m_elasticGpuSpecificationSetHasBeenSet = true; m_elasticGpuSpecificationSet.push_back(std::move(value)); return *this; }
163
165
169 inline bool ElasticInferenceAcceleratorSetHasBeenSet() const { return m_elasticInferenceAcceleratorSetHasBeenSet; }
170 inline void SetElasticInferenceAcceleratorSet(const Aws::Vector<AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails>& value) { m_elasticInferenceAcceleratorSetHasBeenSet = true; m_elasticInferenceAcceleratorSet = value; }
171 inline void SetElasticInferenceAcceleratorSet(Aws::Vector<AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails>&& value) { m_elasticInferenceAcceleratorSetHasBeenSet = true; m_elasticInferenceAcceleratorSet = std::move(value); }
174 inline AwsEc2LaunchTemplateDataDetails& AddElasticInferenceAcceleratorSet(const AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails& value) { m_elasticInferenceAcceleratorSetHasBeenSet = true; m_elasticInferenceAcceleratorSet.push_back(value); return *this; }
175 inline AwsEc2LaunchTemplateDataDetails& AddElasticInferenceAcceleratorSet(AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails&& value) { m_elasticInferenceAcceleratorSetHasBeenSet = true; m_elasticInferenceAcceleratorSet.push_back(std::move(value)); return *this; }
177
179
183 inline const AwsEc2LaunchTemplateDataEnclaveOptionsDetails& GetEnclaveOptions() const{ return m_enclaveOptions; }
184 inline bool EnclaveOptionsHasBeenSet() const { return m_enclaveOptionsHasBeenSet; }
185 inline void SetEnclaveOptions(const AwsEc2LaunchTemplateDataEnclaveOptionsDetails& value) { m_enclaveOptionsHasBeenSet = true; m_enclaveOptions = value; }
186 inline void SetEnclaveOptions(AwsEc2LaunchTemplateDataEnclaveOptionsDetails&& value) { m_enclaveOptionsHasBeenSet = true; m_enclaveOptions = std::move(value); }
190
192
196 inline const AwsEc2LaunchTemplateDataHibernationOptionsDetails& GetHibernationOptions() const{ return m_hibernationOptions; }
197 inline bool HibernationOptionsHasBeenSet() const { return m_hibernationOptionsHasBeenSet; }
198 inline void SetHibernationOptions(const AwsEc2LaunchTemplateDataHibernationOptionsDetails& value) { m_hibernationOptionsHasBeenSet = true; m_hibernationOptions = value; }
199 inline void SetHibernationOptions(AwsEc2LaunchTemplateDataHibernationOptionsDetails&& value) { m_hibernationOptionsHasBeenSet = true; m_hibernationOptions = std::move(value); }
203
205
208 inline const AwsEc2LaunchTemplateDataIamInstanceProfileDetails& GetIamInstanceProfile() const{ return m_iamInstanceProfile; }
209 inline bool IamInstanceProfileHasBeenSet() const { return m_iamInstanceProfileHasBeenSet; }
210 inline void SetIamInstanceProfile(const AwsEc2LaunchTemplateDataIamInstanceProfileDetails& value) { m_iamInstanceProfileHasBeenSet = true; m_iamInstanceProfile = value; }
211 inline void SetIamInstanceProfile(AwsEc2LaunchTemplateDataIamInstanceProfileDetails&& value) { m_iamInstanceProfileHasBeenSet = true; m_iamInstanceProfile = std::move(value); }
215
217
220 inline const Aws::String& GetImageId() const{ return m_imageId; }
221 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
222 inline void SetImageId(const Aws::String& value) { m_imageIdHasBeenSet = true; m_imageId = value; }
223 inline void SetImageId(Aws::String&& value) { m_imageIdHasBeenSet = true; m_imageId = std::move(value); }
224 inline void SetImageId(const char* value) { m_imageIdHasBeenSet = true; m_imageId.assign(value); }
225 inline AwsEc2LaunchTemplateDataDetails& WithImageId(const Aws::String& value) { SetImageId(value); return *this;}
226 inline AwsEc2LaunchTemplateDataDetails& WithImageId(Aws::String&& value) { SetImageId(std::move(value)); return *this;}
227 inline AwsEc2LaunchTemplateDataDetails& WithImageId(const char* value) { SetImageId(value); return *this;}
229
231
235 inline const Aws::String& GetInstanceInitiatedShutdownBehavior() const{ return m_instanceInitiatedShutdownBehavior; }
236 inline bool InstanceInitiatedShutdownBehaviorHasBeenSet() const { return m_instanceInitiatedShutdownBehaviorHasBeenSet; }
237 inline void SetInstanceInitiatedShutdownBehavior(const Aws::String& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior = value; }
238 inline void SetInstanceInitiatedShutdownBehavior(Aws::String&& value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior = std::move(value); }
239 inline void SetInstanceInitiatedShutdownBehavior(const char* value) { m_instanceInitiatedShutdownBehaviorHasBeenSet = true; m_instanceInitiatedShutdownBehavior.assign(value); }
244
246
249 inline const AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails& GetInstanceMarketOptions() const{ return m_instanceMarketOptions; }
250 inline bool InstanceMarketOptionsHasBeenSet() const { return m_instanceMarketOptionsHasBeenSet; }
251 inline void SetInstanceMarketOptions(const AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails& value) { m_instanceMarketOptionsHasBeenSet = true; m_instanceMarketOptions = value; }
252 inline void SetInstanceMarketOptions(AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails&& value) { m_instanceMarketOptionsHasBeenSet = true; m_instanceMarketOptions = std::move(value); }
256
258
264 inline const AwsEc2LaunchTemplateDataInstanceRequirementsDetails& GetInstanceRequirements() const{ return m_instanceRequirements; }
265 inline bool InstanceRequirementsHasBeenSet() const { return m_instanceRequirementsHasBeenSet; }
266 inline void SetInstanceRequirements(const AwsEc2LaunchTemplateDataInstanceRequirementsDetails& value) { m_instanceRequirementsHasBeenSet = true; m_instanceRequirements = value; }
267 inline void SetInstanceRequirements(AwsEc2LaunchTemplateDataInstanceRequirementsDetails&& value) { m_instanceRequirementsHasBeenSet = true; m_instanceRequirements = std::move(value); }
271
273
280 inline const Aws::String& GetInstanceType() const{ return m_instanceType; }
281 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
282 inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
283 inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); }
284 inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); }
286 inline AwsEc2LaunchTemplateDataDetails& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;}
287 inline AwsEc2LaunchTemplateDataDetails& WithInstanceType(const char* value) { SetInstanceType(value); return *this;}
289
291
294 inline const Aws::String& GetKernelId() const{ return m_kernelId; }
295 inline bool KernelIdHasBeenSet() const { return m_kernelIdHasBeenSet; }
296 inline void SetKernelId(const Aws::String& value) { m_kernelIdHasBeenSet = true; m_kernelId = value; }
297 inline void SetKernelId(Aws::String&& value) { m_kernelIdHasBeenSet = true; m_kernelId = std::move(value); }
298 inline void SetKernelId(const char* value) { m_kernelIdHasBeenSet = true; m_kernelId.assign(value); }
299 inline AwsEc2LaunchTemplateDataDetails& WithKernelId(const Aws::String& value) { SetKernelId(value); return *this;}
300 inline AwsEc2LaunchTemplateDataDetails& WithKernelId(Aws::String&& value) { SetKernelId(std::move(value)); return *this;}
301 inline AwsEc2LaunchTemplateDataDetails& WithKernelId(const char* value) { SetKernelId(value); return *this;}
303
305
308 inline const Aws::String& GetKeyName() const{ return m_keyName; }
309 inline bool KeyNameHasBeenSet() const { return m_keyNameHasBeenSet; }
310 inline void SetKeyName(const Aws::String& value) { m_keyNameHasBeenSet = true; m_keyName = value; }
311 inline void SetKeyName(Aws::String&& value) { m_keyNameHasBeenSet = true; m_keyName = std::move(value); }
312 inline void SetKeyName(const char* value) { m_keyNameHasBeenSet = true; m_keyName.assign(value); }
313 inline AwsEc2LaunchTemplateDataDetails& WithKeyName(const Aws::String& value) { SetKeyName(value); return *this;}
314 inline AwsEc2LaunchTemplateDataDetails& WithKeyName(Aws::String&& value) { SetKeyName(std::move(value)); return *this;}
315 inline AwsEc2LaunchTemplateDataDetails& WithKeyName(const char* value) { SetKeyName(value); return *this;}
317
319
322 inline const Aws::Vector<AwsEc2LaunchTemplateDataLicenseSetDetails>& GetLicenseSet() const{ return m_licenseSet; }
323 inline bool LicenseSetHasBeenSet() const { return m_licenseSetHasBeenSet; }
324 inline void SetLicenseSet(const Aws::Vector<AwsEc2LaunchTemplateDataLicenseSetDetails>& value) { m_licenseSetHasBeenSet = true; m_licenseSet = value; }
325 inline void SetLicenseSet(Aws::Vector<AwsEc2LaunchTemplateDataLicenseSetDetails>&& value) { m_licenseSetHasBeenSet = true; m_licenseSet = std::move(value); }
328 inline AwsEc2LaunchTemplateDataDetails& AddLicenseSet(const AwsEc2LaunchTemplateDataLicenseSetDetails& value) { m_licenseSetHasBeenSet = true; m_licenseSet.push_back(value); return *this; }
329 inline AwsEc2LaunchTemplateDataDetails& AddLicenseSet(AwsEc2LaunchTemplateDataLicenseSetDetails&& value) { m_licenseSetHasBeenSet = true; m_licenseSet.push_back(std::move(value)); return *this; }
331
333
336 inline const AwsEc2LaunchTemplateDataMaintenanceOptionsDetails& GetMaintenanceOptions() const{ return m_maintenanceOptions; }
337 inline bool MaintenanceOptionsHasBeenSet() const { return m_maintenanceOptionsHasBeenSet; }
338 inline void SetMaintenanceOptions(const AwsEc2LaunchTemplateDataMaintenanceOptionsDetails& value) { m_maintenanceOptionsHasBeenSet = true; m_maintenanceOptions = value; }
339 inline void SetMaintenanceOptions(AwsEc2LaunchTemplateDataMaintenanceOptionsDetails&& value) { m_maintenanceOptionsHasBeenSet = true; m_maintenanceOptions = std::move(value); }
343
345
350 inline const AwsEc2LaunchTemplateDataMetadataOptionsDetails& GetMetadataOptions() const{ return m_metadataOptions; }
351 inline bool MetadataOptionsHasBeenSet() const { return m_metadataOptionsHasBeenSet; }
352 inline void SetMetadataOptions(const AwsEc2LaunchTemplateDataMetadataOptionsDetails& value) { m_metadataOptionsHasBeenSet = true; m_metadataOptions = value; }
353 inline void SetMetadataOptions(AwsEc2LaunchTemplateDataMetadataOptionsDetails&& value) { m_metadataOptionsHasBeenSet = true; m_metadataOptions = std::move(value); }
357
359
362 inline const AwsEc2LaunchTemplateDataMonitoringDetails& GetMonitoring() const{ return m_monitoring; }
363 inline bool MonitoringHasBeenSet() const { return m_monitoringHasBeenSet; }
364 inline void SetMonitoring(const AwsEc2LaunchTemplateDataMonitoringDetails& value) { m_monitoringHasBeenSet = true; m_monitoring = value; }
365 inline void SetMonitoring(AwsEc2LaunchTemplateDataMonitoringDetails&& value) { m_monitoringHasBeenSet = true; m_monitoring = std::move(value); }
369
371
376 inline bool NetworkInterfaceSetHasBeenSet() const { return m_networkInterfaceSetHasBeenSet; }
377 inline void SetNetworkInterfaceSet(const Aws::Vector<AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails>& value) { m_networkInterfaceSetHasBeenSet = true; m_networkInterfaceSet = value; }
378 inline void SetNetworkInterfaceSet(Aws::Vector<AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails>&& value) { m_networkInterfaceSetHasBeenSet = true; m_networkInterfaceSet = std::move(value); }
381 inline AwsEc2LaunchTemplateDataDetails& AddNetworkInterfaceSet(const AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails& value) { m_networkInterfaceSetHasBeenSet = true; m_networkInterfaceSet.push_back(value); return *this; }
382 inline AwsEc2LaunchTemplateDataDetails& AddNetworkInterfaceSet(AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails&& value) { m_networkInterfaceSetHasBeenSet = true; m_networkInterfaceSet.push_back(std::move(value)); return *this; }
384
386
389 inline const AwsEc2LaunchTemplateDataPlacementDetails& GetPlacement() const{ return m_placement; }
390 inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
391 inline void SetPlacement(const AwsEc2LaunchTemplateDataPlacementDetails& value) { m_placementHasBeenSet = true; m_placement = value; }
392 inline void SetPlacement(AwsEc2LaunchTemplateDataPlacementDetails&& value) { m_placementHasBeenSet = true; m_placement = std::move(value); }
396
398
401 inline const AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails& GetPrivateDnsNameOptions() const{ return m_privateDnsNameOptions; }
402 inline bool PrivateDnsNameOptionsHasBeenSet() const { return m_privateDnsNameOptionsHasBeenSet; }
403 inline void SetPrivateDnsNameOptions(const AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails& value) { m_privateDnsNameOptionsHasBeenSet = true; m_privateDnsNameOptions = value; }
404 inline void SetPrivateDnsNameOptions(AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails&& value) { m_privateDnsNameOptionsHasBeenSet = true; m_privateDnsNameOptions = std::move(value); }
408
410
413 inline const Aws::String& GetRamDiskId() const{ return m_ramDiskId; }
414 inline bool RamDiskIdHasBeenSet() const { return m_ramDiskIdHasBeenSet; }
415 inline void SetRamDiskId(const Aws::String& value) { m_ramDiskIdHasBeenSet = true; m_ramDiskId = value; }
416 inline void SetRamDiskId(Aws::String&& value) { m_ramDiskIdHasBeenSet = true; m_ramDiskId = std::move(value); }
417 inline void SetRamDiskId(const char* value) { m_ramDiskIdHasBeenSet = true; m_ramDiskId.assign(value); }
418 inline AwsEc2LaunchTemplateDataDetails& WithRamDiskId(const Aws::String& value) { SetRamDiskId(value); return *this;}
419 inline AwsEc2LaunchTemplateDataDetails& WithRamDiskId(Aws::String&& value) { SetRamDiskId(std::move(value)); return *this;}
420 inline AwsEc2LaunchTemplateDataDetails& WithRamDiskId(const char* value) { SetRamDiskId(value); return *this;}
422
424
427 inline const Aws::Vector<Aws::String>& GetSecurityGroupIdSet() const{ return m_securityGroupIdSet; }
428 inline bool SecurityGroupIdSetHasBeenSet() const { return m_securityGroupIdSetHasBeenSet; }
429 inline void SetSecurityGroupIdSet(const Aws::Vector<Aws::String>& value) { m_securityGroupIdSetHasBeenSet = true; m_securityGroupIdSet = value; }
430 inline void SetSecurityGroupIdSet(Aws::Vector<Aws::String>&& value) { m_securityGroupIdSetHasBeenSet = true; m_securityGroupIdSet = std::move(value); }
433 inline AwsEc2LaunchTemplateDataDetails& AddSecurityGroupIdSet(const Aws::String& value) { m_securityGroupIdSetHasBeenSet = true; m_securityGroupIdSet.push_back(value); return *this; }
434 inline AwsEc2LaunchTemplateDataDetails& AddSecurityGroupIdSet(Aws::String&& value) { m_securityGroupIdSetHasBeenSet = true; m_securityGroupIdSet.push_back(std::move(value)); return *this; }
435 inline AwsEc2LaunchTemplateDataDetails& AddSecurityGroupIdSet(const char* value) { m_securityGroupIdSetHasBeenSet = true; m_securityGroupIdSet.push_back(value); return *this; }
437
439
444 inline const Aws::Vector<Aws::String>& GetSecurityGroupSet() const{ return m_securityGroupSet; }
445 inline bool SecurityGroupSetHasBeenSet() const { return m_securityGroupSetHasBeenSet; }
446 inline void SetSecurityGroupSet(const Aws::Vector<Aws::String>& value) { m_securityGroupSetHasBeenSet = true; m_securityGroupSet = value; }
447 inline void SetSecurityGroupSet(Aws::Vector<Aws::String>&& value) { m_securityGroupSetHasBeenSet = true; m_securityGroupSet = std::move(value); }
450 inline AwsEc2LaunchTemplateDataDetails& AddSecurityGroupSet(const Aws::String& value) { m_securityGroupSetHasBeenSet = true; m_securityGroupSet.push_back(value); return *this; }
451 inline AwsEc2LaunchTemplateDataDetails& AddSecurityGroupSet(Aws::String&& value) { m_securityGroupSetHasBeenSet = true; m_securityGroupSet.push_back(std::move(value)); return *this; }
452 inline AwsEc2LaunchTemplateDataDetails& AddSecurityGroupSet(const char* value) { m_securityGroupSetHasBeenSet = true; m_securityGroupSet.push_back(value); return *this; }
454
456
459 inline const Aws::String& GetUserData() const{ return m_userData; }
460 inline bool UserDataHasBeenSet() const { return m_userDataHasBeenSet; }
461 inline void SetUserData(const Aws::String& value) { m_userDataHasBeenSet = true; m_userData = value; }
462 inline void SetUserData(Aws::String&& value) { m_userDataHasBeenSet = true; m_userData = std::move(value); }
463 inline void SetUserData(const char* value) { m_userDataHasBeenSet = true; m_userData.assign(value); }
464 inline AwsEc2LaunchTemplateDataDetails& WithUserData(const Aws::String& value) { SetUserData(value); return *this;}
465 inline AwsEc2LaunchTemplateDataDetails& WithUserData(Aws::String&& value) { SetUserData(std::move(value)); return *this;}
466 inline AwsEc2LaunchTemplateDataDetails& WithUserData(const char* value) { SetUserData(value); return *this;}
468 private:
469
471 bool m_blockDeviceMappingSetHasBeenSet = false;
472
474 bool m_capacityReservationSpecificationHasBeenSet = false;
475
477 bool m_cpuOptionsHasBeenSet = false;
478
480 bool m_creditSpecificationHasBeenSet = false;
481
482 bool m_disableApiStop;
483 bool m_disableApiStopHasBeenSet = false;
484
485 bool m_disableApiTermination;
486 bool m_disableApiTerminationHasBeenSet = false;
487
488 bool m_ebsOptimized;
489 bool m_ebsOptimizedHasBeenSet = false;
490
492 bool m_elasticGpuSpecificationSetHasBeenSet = false;
493
495 bool m_elasticInferenceAcceleratorSetHasBeenSet = false;
496
498 bool m_enclaveOptionsHasBeenSet = false;
499
501 bool m_hibernationOptionsHasBeenSet = false;
502
504 bool m_iamInstanceProfileHasBeenSet = false;
505
506 Aws::String m_imageId;
507 bool m_imageIdHasBeenSet = false;
508
509 Aws::String m_instanceInitiatedShutdownBehavior;
510 bool m_instanceInitiatedShutdownBehaviorHasBeenSet = false;
511
513 bool m_instanceMarketOptionsHasBeenSet = false;
514
516 bool m_instanceRequirementsHasBeenSet = false;
517
518 Aws::String m_instanceType;
519 bool m_instanceTypeHasBeenSet = false;
520
521 Aws::String m_kernelId;
522 bool m_kernelIdHasBeenSet = false;
523
524 Aws::String m_keyName;
525 bool m_keyNameHasBeenSet = false;
526
528 bool m_licenseSetHasBeenSet = false;
529
531 bool m_maintenanceOptionsHasBeenSet = false;
532
534 bool m_metadataOptionsHasBeenSet = false;
535
537 bool m_monitoringHasBeenSet = false;
538
540 bool m_networkInterfaceSetHasBeenSet = false;
541
543 bool m_placementHasBeenSet = false;
544
546 bool m_privateDnsNameOptionsHasBeenSet = false;
547
548 Aws::String m_ramDiskId;
549 bool m_ramDiskIdHasBeenSet = false;
550
551 Aws::Vector<Aws::String> m_securityGroupIdSet;
552 bool m_securityGroupIdSetHasBeenSet = false;
553
554 Aws::Vector<Aws::String> m_securityGroupSet;
555 bool m_securityGroupSetHasBeenSet = false;
556
557 Aws::String m_userData;
558 bool m_userDataHasBeenSet = false;
559 };
560
561} // namespace Model
562} // namespace SecurityHub
563} // namespace Aws
AwsEc2LaunchTemplateDataDetails & WithLicenseSet(Aws::Vector< AwsEc2LaunchTemplateDataLicenseSetDetails > &&value)
void SetLicenseSet(const Aws::Vector< AwsEc2LaunchTemplateDataLicenseSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & WithSecurityGroupIdSet(const Aws::Vector< Aws::String > &value)
const AwsEc2LaunchTemplateDataMetadataOptionsDetails & GetMetadataOptions() const
AwsEc2LaunchTemplateDataDetails & AddElasticGpuSpecificationSet(const AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails &value)
AwsEc2LaunchTemplateDataDetails & WithImageId(const char *value)
void SetPrivateDnsNameOptions(const AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails &value)
void SetPlacement(AwsEc2LaunchTemplateDataPlacementDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithHibernationOptions(const AwsEc2LaunchTemplateDataHibernationOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & WithPlacement(const AwsEc2LaunchTemplateDataPlacementDetails &value)
AwsEc2LaunchTemplateDataDetails & WithKeyName(const char *value)
AwsEc2LaunchTemplateDataDetails & WithKernelId(const Aws::String &value)
AwsEc2LaunchTemplateDataDetails & WithInstanceType(const Aws::String &value)
AwsEc2LaunchTemplateDataDetails & WithLicenseSet(const Aws::Vector< AwsEc2LaunchTemplateDataLicenseSetDetails > &value)
AWS_SECURITYHUB_API AwsEc2LaunchTemplateDataDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetMonitoring(AwsEc2LaunchTemplateDataMonitoringDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithRamDiskId(Aws::String &&value)
AwsEc2LaunchTemplateDataDetails & WithHibernationOptions(AwsEc2LaunchTemplateDataHibernationOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & AddElasticGpuSpecificationSet(AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithInstanceMarketOptions(const AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails &value)
AWS_SECURITYHUB_API AwsEc2LaunchTemplateDataDetails(Aws::Utils::Json::JsonView jsonValue)
AwsEc2LaunchTemplateDataDetails & WithElasticInferenceAcceleratorSet(const Aws::Vector< AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails > &value)
const Aws::Vector< AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails > & GetBlockDeviceMappingSet() const
void SetInstanceRequirements(AwsEc2LaunchTemplateDataInstanceRequirementsDetails &&value)
const Aws::Vector< AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails > & GetElasticGpuSpecificationSet() const
AwsEc2LaunchTemplateDataDetails & WithIamInstanceProfile(const AwsEc2LaunchTemplateDataIamInstanceProfileDetails &value)
AwsEc2LaunchTemplateDataDetails & WithRamDiskId(const char *value)
AwsEc2LaunchTemplateDataDetails & WithInstanceRequirements(const AwsEc2LaunchTemplateDataInstanceRequirementsDetails &value)
void SetCapacityReservationSpecification(const AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails &value)
void SetCreditSpecification(AwsEc2LaunchTemplateDataCreditSpecificationDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithNetworkInterfaceSet(Aws::Vector< AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails > &&value)
AwsEc2LaunchTemplateDataDetails & WithIamInstanceProfile(AwsEc2LaunchTemplateDataIamInstanceProfileDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithPrivateDnsNameOptions(AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails &&value)
const Aws::Vector< AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails > & GetElasticInferenceAcceleratorSet() const
AwsEc2LaunchTemplateDataDetails & WithElasticInferenceAcceleratorSet(Aws::Vector< AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails > &&value)
void SetCapacityReservationSpecification(AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails &&value)
void SetEnclaveOptions(AwsEc2LaunchTemplateDataEnclaveOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithUserData(Aws::String &&value)
void SetLicenseSet(Aws::Vector< AwsEc2LaunchTemplateDataLicenseSetDetails > &&value)
AwsEc2LaunchTemplateDataDetails & WithCapacityReservationSpecification(AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithCreditSpecification(AwsEc2LaunchTemplateDataCreditSpecificationDetails &&value)
const Aws::Vector< AwsEc2LaunchTemplateDataLicenseSetDetails > & GetLicenseSet() const
void SetSecurityGroupSet(const Aws::Vector< Aws::String > &value)
AwsEc2LaunchTemplateDataDetails & WithImageId(Aws::String &&value)
void SetCpuOptions(AwsEc2LaunchTemplateDataCpuOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithMaintenanceOptions(AwsEc2LaunchTemplateDataMaintenanceOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithBlockDeviceMappingSet(Aws::Vector< AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails > &&value)
void SetIamInstanceProfile(const AwsEc2LaunchTemplateDataIamInstanceProfileDetails &value)
void SetElasticInferenceAcceleratorSet(Aws::Vector< AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails > &&value)
const AwsEc2LaunchTemplateDataInstanceRequirementsDetails & GetInstanceRequirements() const
AwsEc2LaunchTemplateDataDetails & WithElasticGpuSpecificationSet(const Aws::Vector< AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & WithInstanceType(const char *value)
AwsEc2LaunchTemplateDataDetails & WithInstanceInitiatedShutdownBehavior(const char *value)
void SetPrivateDnsNameOptions(AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails &&value)
void SetEnclaveOptions(const AwsEc2LaunchTemplateDataEnclaveOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & AddNetworkInterfaceSet(const AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails &value)
AwsEc2LaunchTemplateDataDetails & WithKernelId(Aws::String &&value)
AwsEc2LaunchTemplateDataDetails & AddSecurityGroupIdSet(const char *value)
void SetMaintenanceOptions(AwsEc2LaunchTemplateDataMaintenanceOptionsDetails &&value)
const AwsEc2LaunchTemplateDataMonitoringDetails & GetMonitoring() const
AwsEc2LaunchTemplateDataDetails & WithCpuOptions(AwsEc2LaunchTemplateDataCpuOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithMonitoring(const AwsEc2LaunchTemplateDataMonitoringDetails &value)
AwsEc2LaunchTemplateDataDetails & WithEnclaveOptions(AwsEc2LaunchTemplateDataEnclaveOptionsDetails &&value)
const AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails & GetPrivateDnsNameOptions() const
AwsEc2LaunchTemplateDataDetails & WithElasticGpuSpecificationSet(Aws::Vector< AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails > &&value)
void SetBlockDeviceMappingSet(const Aws::Vector< AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & WithCpuOptions(const AwsEc2LaunchTemplateDataCpuOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & AddBlockDeviceMappingSet(const AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails &value)
AwsEc2LaunchTemplateDataDetails & AddElasticInferenceAcceleratorSet(AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails &&value)
AwsEc2LaunchTemplateDataDetails & AddNetworkInterfaceSet(AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithImageId(const Aws::String &value)
void SetCpuOptions(const AwsEc2LaunchTemplateDataCpuOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & WithCreditSpecification(const AwsEc2LaunchTemplateDataCreditSpecificationDetails &value)
AwsEc2LaunchTemplateDataDetails & WithBlockDeviceMappingSet(const Aws::Vector< AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & AddSecurityGroupIdSet(Aws::String &&value)
AwsEc2LaunchTemplateDataDetails & WithInstanceType(Aws::String &&value)
AwsEc2LaunchTemplateDataDetails & AddLicenseSet(const AwsEc2LaunchTemplateDataLicenseSetDetails &value)
AwsEc2LaunchTemplateDataDetails & WithMonitoring(AwsEc2LaunchTemplateDataMonitoringDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithSecurityGroupSet(const Aws::Vector< Aws::String > &value)
AwsEc2LaunchTemplateDataDetails & WithMaintenanceOptions(const AwsEc2LaunchTemplateDataMaintenanceOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & WithKeyName(Aws::String &&value)
AwsEc2LaunchTemplateDataDetails & WithSecurityGroupSet(Aws::Vector< Aws::String > &&value)
void SetHibernationOptions(AwsEc2LaunchTemplateDataHibernationOptionsDetails &&value)
void SetBlockDeviceMappingSet(Aws::Vector< AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails > &&value)
void SetCreditSpecification(const AwsEc2LaunchTemplateDataCreditSpecificationDetails &value)
const AwsEc2LaunchTemplateDataHibernationOptionsDetails & GetHibernationOptions() const
void SetMaintenanceOptions(const AwsEc2LaunchTemplateDataMaintenanceOptionsDetails &value)
void SetInstanceMarketOptions(const AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails &value)
void SetElasticGpuSpecificationSet(Aws::Vector< AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails > &&value)
AwsEc2LaunchTemplateDataDetails & WithRamDiskId(const Aws::String &value)
AwsEc2LaunchTemplateDataDetails & WithInstanceMarketOptions(AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & AddSecurityGroupIdSet(const Aws::String &value)
AwsEc2LaunchTemplateDataDetails & WithInstanceInitiatedShutdownBehavior(const Aws::String &value)
void SetInstanceRequirements(const AwsEc2LaunchTemplateDataInstanceRequirementsDetails &value)
void SetNetworkInterfaceSet(Aws::Vector< AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails > &&value)
void SetIamInstanceProfile(AwsEc2LaunchTemplateDataIamInstanceProfileDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithUserData(const char *value)
AwsEc2LaunchTemplateDataDetails & WithInstanceInitiatedShutdownBehavior(Aws::String &&value)
void SetElasticInferenceAcceleratorSet(const Aws::Vector< AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & WithNetworkInterfaceSet(const Aws::Vector< AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & WithSecurityGroupIdSet(Aws::Vector< Aws::String > &&value)
const AwsEc2LaunchTemplateDataMaintenanceOptionsDetails & GetMaintenanceOptions() const
const AwsEc2LaunchTemplateDataCreditSpecificationDetails & GetCreditSpecification() const
const AwsEc2LaunchTemplateDataEnclaveOptionsDetails & GetEnclaveOptions() const
const Aws::Vector< AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails > & GetNetworkInterfaceSet() const
AwsEc2LaunchTemplateDataDetails & AddLicenseSet(AwsEc2LaunchTemplateDataLicenseSetDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithMetadataOptions(const AwsEc2LaunchTemplateDataMetadataOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & AddSecurityGroupSet(const char *value)
void SetHibernationOptions(const AwsEc2LaunchTemplateDataHibernationOptionsDetails &value)
const AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails & GetInstanceMarketOptions() const
AwsEc2LaunchTemplateDataDetails & WithKeyName(const Aws::String &value)
AwsEc2LaunchTemplateDataDetails & AddSecurityGroupSet(const Aws::String &value)
void SetMonitoring(const AwsEc2LaunchTemplateDataMonitoringDetails &value)
AwsEc2LaunchTemplateDataDetails & AddBlockDeviceMappingSet(AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetails &&value)
const AwsEc2LaunchTemplateDataIamInstanceProfileDetails & GetIamInstanceProfile() const
void SetMetadataOptions(AwsEc2LaunchTemplateDataMetadataOptionsDetails &&value)
void SetMetadataOptions(const AwsEc2LaunchTemplateDataMetadataOptionsDetails &value)
void SetSecurityGroupIdSet(const Aws::Vector< Aws::String > &value)
void SetElasticGpuSpecificationSet(const Aws::Vector< AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & AddSecurityGroupSet(Aws::String &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsEc2LaunchTemplateDataDetails & WithEnclaveOptions(const AwsEc2LaunchTemplateDataEnclaveOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & WithPlacement(AwsEc2LaunchTemplateDataPlacementDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithPrivateDnsNameOptions(const AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetails &value)
AwsEc2LaunchTemplateDataDetails & WithMetadataOptions(AwsEc2LaunchTemplateDataMetadataOptionsDetails &&value)
AwsEc2LaunchTemplateDataDetails & WithDisableApiTermination(bool value)
const AwsEc2LaunchTemplateDataPlacementDetails & GetPlacement() const
void SetPlacement(const AwsEc2LaunchTemplateDataPlacementDetails &value)
AwsEc2LaunchTemplateDataDetails & WithKernelId(const char *value)
void SetNetworkInterfaceSet(const Aws::Vector< AwsEc2LaunchTemplateDataNetworkInterfaceSetDetails > &value)
AwsEc2LaunchTemplateDataDetails & AddElasticInferenceAcceleratorSet(const AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetails &value)
const AwsEc2LaunchTemplateDataCpuOptionsDetails & GetCpuOptions() const
AwsEc2LaunchTemplateDataDetails & WithUserData(const Aws::String &value)
AwsEc2LaunchTemplateDataDetails & WithInstanceRequirements(AwsEc2LaunchTemplateDataInstanceRequirementsDetails &&value)
void SetInstanceMarketOptions(AwsEc2LaunchTemplateDataInstanceMarketOptionsDetails &&value)
const AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails & GetCapacityReservationSpecification() const
AwsEc2LaunchTemplateDataDetails & WithCapacityReservationSpecification(const AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetails &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue