7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/securityhub/model/AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails.h>
11#include <aws/securityhub/model/AwsAutoScalingLaunchConfigurationMetadataOptions.h>
12#include <aws/securityhub/model/AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails.h>
61 template<
typename BlockDeviceMappingsT = Aws::Vector<AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails>>
62 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
63 template<
typename BlockDeviceMappingsT = Aws::Vector<AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails>>
65 template<
typename BlockDeviceMappingsT = AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails>
76 template<
typename ClassicLinkVpcIdT = Aws::String>
77 void SetClassicLinkVpcId(ClassicLinkVpcIdT&& value) { m_classicLinkVpcIdHasBeenSet =
true; m_classicLinkVpcId = std::forward<ClassicLinkVpcIdT>(value); }
78 template<
typename ClassicLinkVpcIdT = Aws::String>
89 template<
typename ClassicLinkVpcSecurityGroupsT = Aws::Vector<Aws::String>>
90 void SetClassicLinkVpcSecurityGroups(ClassicLinkVpcSecurityGroupsT&& value) { m_classicLinkVpcSecurityGroupsHasBeenSet =
true; m_classicLinkVpcSecurityGroups = std::forward<ClassicLinkVpcSecurityGroupsT>(value); }
91 template<
typename ClassicLinkVpcSecurityGroupsT = Aws::Vector<Aws::String>>
93 template<
typename ClassicLinkVpcSecurityGroupsT = Aws::String>
106 template<
typename CreatedTimeT = Aws::String>
107 void SetCreatedTime(CreatedTimeT&& value) { m_createdTimeHasBeenSet =
true; m_createdTime = std::forward<CreatedTimeT>(value); }
108 template<
typename CreatedTimeT = Aws::String>
118 inline void SetEbsOptimized(
bool value) { m_ebsOptimizedHasBeenSet =
true; m_ebsOptimized = value; }
129 template<
typename IamInstanceProfileT = Aws::String>
130 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet =
true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
131 template<
typename IamInstanceProfileT = Aws::String>
142 template<
typename ImageIdT = Aws::String>
143 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet =
true; m_imageId = std::forward<ImageIdT>(value); }
144 template<
typename ImageIdT = Aws::String>
154 template<
typename InstanceMonitoringT = AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails>
155 void SetInstanceMonitoring(InstanceMonitoringT&& value) { m_instanceMonitoringHasBeenSet =
true; m_instanceMonitoring = std::forward<InstanceMonitoringT>(value); }
156 template<
typename InstanceMonitoringT = AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails>
166 template<
typename InstanceTypeT = Aws::String>
167 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
168 template<
typename InstanceTypeT = Aws::String>
178 template<
typename KernelIdT = Aws::String>
179 void SetKernelId(KernelIdT&& value) { m_kernelIdHasBeenSet =
true; m_kernelId = std::forward<KernelIdT>(value); }
180 template<
typename KernelIdT = Aws::String>
190 template<
typename KeyNameT = Aws::String>
191 void SetKeyName(KeyNameT&& value) { m_keyNameHasBeenSet =
true; m_keyName = std::forward<KeyNameT>(value); }
192 template<
typename KeyNameT = Aws::String>
202 template<
typename LaunchConfigurationNameT = Aws::String>
203 void SetLaunchConfigurationName(LaunchConfigurationNameT&& value) { m_launchConfigurationNameHasBeenSet =
true; m_launchConfigurationName = std::forward<LaunchConfigurationNameT>(value); }
204 template<
typename LaunchConfigurationNameT = Aws::String>
216 template<
typename PlacementTenancyT = Aws::String>
217 void SetPlacementTenancy(PlacementTenancyT&& value) { m_placementTenancyHasBeenSet =
true; m_placementTenancy = std::forward<PlacementTenancyT>(value); }
218 template<
typename PlacementTenancyT = Aws::String>
228 template<
typename RamdiskIdT = Aws::String>
229 void SetRamdiskId(RamdiskIdT&& value) { m_ramdiskIdHasBeenSet =
true; m_ramdiskId = std::forward<RamdiskIdT>(value); }
230 template<
typename RamdiskIdT = Aws::String>
240 template<
typename SecurityGroupsT = Aws::Vector<Aws::String>>
241 void SetSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet =
true; m_securityGroups = std::forward<SecurityGroupsT>(value); }
242 template<
typename SecurityGroupsT = Aws::Vector<Aws::String>>
244 template<
typename SecurityGroupsT = Aws::String>
255 template<
typename SpotPriceT = Aws::String>
256 void SetSpotPrice(SpotPriceT&& value) { m_spotPriceHasBeenSet =
true; m_spotPrice = std::forward<SpotPriceT>(value); }
257 template<
typename SpotPriceT = Aws::String>
268 template<
typename UserDataT = Aws::String>
269 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet =
true; m_userData = std::forward<UserDataT>(value); }
270 template<
typename UserDataT = Aws::String>
280 template<
typename MetadataOptionsT = AwsAutoScalingLaunchConfigurationMetadataOptions>
281 void SetMetadataOptions(MetadataOptionsT&& value) { m_metadataOptionsHasBeenSet =
true; m_metadataOptions = std::forward<MetadataOptionsT>(value); }
282 template<
typename MetadataOptionsT = AwsAutoScalingLaunchConfigurationMetadataOptions>
287 bool m_associatePublicIpAddress{
false};
288 bool m_associatePublicIpAddressHasBeenSet =
false;
291 bool m_blockDeviceMappingsHasBeenSet =
false;
294 bool m_classicLinkVpcIdHasBeenSet =
false;
297 bool m_classicLinkVpcSecurityGroupsHasBeenSet =
false;
300 bool m_createdTimeHasBeenSet =
false;
302 bool m_ebsOptimized{
false};
303 bool m_ebsOptimizedHasBeenSet =
false;
306 bool m_iamInstanceProfileHasBeenSet =
false;
309 bool m_imageIdHasBeenSet =
false;
311 AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails m_instanceMonitoring;
312 bool m_instanceMonitoringHasBeenSet =
false;
315 bool m_instanceTypeHasBeenSet =
false;
318 bool m_kernelIdHasBeenSet =
false;
321 bool m_keyNameHasBeenSet =
false;
324 bool m_launchConfigurationNameHasBeenSet =
false;
327 bool m_placementTenancyHasBeenSet =
false;
330 bool m_ramdiskIdHasBeenSet =
false;
333 bool m_securityGroupsHasBeenSet =
false;
336 bool m_spotPriceHasBeenSet =
false;
339 bool m_userDataHasBeenSet =
false;
341 AwsAutoScalingLaunchConfigurationMetadataOptions m_metadataOptions;
342 bool m_metadataOptionsHasBeenSet =
false;
AwsAutoScalingLaunchConfigurationDetails & WithKeyName(KeyNameT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithEbsOptimized(bool value)
AwsAutoScalingLaunchConfigurationDetails & WithSpotPrice(SpotPriceT &&value)
bool IamInstanceProfileHasBeenSet() const
void SetInstanceType(InstanceTypeT &&value)
const Aws::String & GetIamInstanceProfile() const
bool InstanceMonitoringHasBeenSet() const
bool RamdiskIdHasBeenSet() const
const Aws::String & GetCreatedTime() const
bool KernelIdHasBeenSet() const
bool ClassicLinkVpcSecurityGroupsHasBeenSet() const
bool InstanceTypeHasBeenSet() const
bool KeyNameHasBeenSet() const
const Aws::String & GetClassicLinkVpcId() const
bool GetEbsOptimized() const
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithInstanceType(InstanceTypeT &&value)
void SetSecurityGroups(SecurityGroupsT &&value)
bool PlacementTenancyHasBeenSet() const
AwsAutoScalingLaunchConfigurationDetails & WithImageId(ImageIdT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithIamInstanceProfile(IamInstanceProfileT &&value)
const Aws::Vector< Aws::String > & GetClassicLinkVpcSecurityGroups() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsAutoScalingLaunchConfigurationDetails & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
void SetEbsOptimized(bool value)
AwsAutoScalingLaunchConfigurationDetails & AddClassicLinkVpcSecurityGroups(ClassicLinkVpcSecurityGroupsT &&value)
const AwsAutoScalingLaunchConfigurationMetadataOptions & GetMetadataOptions() const
void SetPlacementTenancy(PlacementTenancyT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithCreatedTime(CreatedTimeT &&value)
bool CreatedTimeHasBeenSet() const
void SetClassicLinkVpcId(ClassicLinkVpcIdT &&value)
const Aws::String & GetKeyName() const
void SetSpotPrice(SpotPriceT &&value)
bool AssociatePublicIpAddressHasBeenSet() const
bool SpotPriceHasBeenSet() const
void SetClassicLinkVpcSecurityGroups(ClassicLinkVpcSecurityGroupsT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithClassicLinkVpcSecurityGroups(ClassicLinkVpcSecurityGroupsT &&value)
bool EbsOptimizedHasBeenSet() const
void SetAssociatePublicIpAddress(bool value)
AwsAutoScalingLaunchConfigurationDetails & WithClassicLinkVpcId(ClassicLinkVpcIdT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithSecurityGroups(SecurityGroupsT &&value)
void SetInstanceMonitoring(InstanceMonitoringT &&value)
const Aws::String & GetInstanceType() const
AWS_SECURITYHUB_API AwsAutoScalingLaunchConfigurationDetails()=default
void SetKernelId(KernelIdT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithLaunchConfigurationName(LaunchConfigurationNameT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithPlacementTenancy(PlacementTenancyT &&value)
const Aws::String & GetSpotPrice() const
bool SecurityGroupsHasBeenSet() const
void SetMetadataOptions(MetadataOptionsT &&value)
void SetRamdiskId(RamdiskIdT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithUserData(UserDataT &&value)
AwsAutoScalingLaunchConfigurationDetails & WithInstanceMonitoring(InstanceMonitoringT &&value)
bool MetadataOptionsHasBeenSet() const
bool ClassicLinkVpcIdHasBeenSet() const
const Aws::String & GetUserData() const
AwsAutoScalingLaunchConfigurationDetails & WithAssociatePublicIpAddress(bool value)
const Aws::String & GetKernelId() const
void SetLaunchConfigurationName(LaunchConfigurationNameT &&value)
void SetUserData(UserDataT &&value)
bool BlockDeviceMappingsHasBeenSet() const
bool ImageIdHasBeenSet() const
const Aws::Vector< AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetails > & GetBlockDeviceMappings() const
void SetKeyName(KeyNameT &&value)
const Aws::String & GetImageId() const
AWS_SECURITYHUB_API AwsAutoScalingLaunchConfigurationDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsAutoScalingLaunchConfigurationDetails & WithMetadataOptions(MetadataOptionsT &&value)
void SetCreatedTime(CreatedTimeT &&value)
const AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails & GetInstanceMonitoring() const
const Aws::String & GetRamdiskId() const
AwsAutoScalingLaunchConfigurationDetails & WithKernelId(KernelIdT &&value)
void SetIamInstanceProfile(IamInstanceProfileT &&value)
bool GetAssociatePublicIpAddress() const
AwsAutoScalingLaunchConfigurationDetails & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
bool UserDataHasBeenSet() const
bool LaunchConfigurationNameHasBeenSet() const
AwsAutoScalingLaunchConfigurationDetails & AddSecurityGroups(SecurityGroupsT &&value)
AWS_SECURITYHUB_API AwsAutoScalingLaunchConfigurationDetails(Aws::Utils::Json::JsonView jsonValue)
AwsAutoScalingLaunchConfigurationDetails & WithRamdiskId(RamdiskIdT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroups() const
void SetImageId(ImageIdT &&value)
const Aws::String & GetPlacementTenancy() const
const Aws::String & GetLaunchConfigurationName() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue