7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securityhub/model/AwsEc2InstanceMetadataOptions.h>
11#include <aws/securityhub/model/AwsEc2InstanceMonitoringDetails.h>
12#include <aws/securityhub/model/AwsEc2InstanceNetworkInterfacesDetails.h>
50 template<
typename TypeT = Aws::String>
51 void SetType(TypeT&& value) { m_typeHasBeenSet =
true; m_type = std::forward<TypeT>(value); }
52 template<
typename TypeT = Aws::String>
62 template<
typename ImageIdT = Aws::String>
63 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet =
true; m_imageId = std::forward<ImageIdT>(value); }
64 template<
typename ImageIdT = Aws::String>
74 template<
typename IpV4AddressesT = Aws::Vector<Aws::String>>
75 void SetIpV4Addresses(IpV4AddressesT&& value) { m_ipV4AddressesHasBeenSet =
true; m_ipV4Addresses = std::forward<IpV4AddressesT>(value); }
76 template<
typename IpV4AddressesT = Aws::Vector<Aws::String>>
78 template<
typename IpV4AddressesT = Aws::String>
88 template<
typename IpV6AddressesT = Aws::Vector<Aws::String>>
89 void SetIpV6Addresses(IpV6AddressesT&& value) { m_ipV6AddressesHasBeenSet =
true; m_ipV6Addresses = std::forward<IpV6AddressesT>(value); }
90 template<
typename IpV6AddressesT = Aws::Vector<Aws::String>>
92 template<
typename IpV6AddressesT = Aws::String>
102 template<
typename KeyNameT = Aws::String>
103 void SetKeyName(KeyNameT&& value) { m_keyNameHasBeenSet =
true; m_keyName = std::forward<KeyNameT>(value); }
104 template<
typename KeyNameT = Aws::String>
114 template<
typename IamInstanceProfileArnT = Aws::String>
115 void SetIamInstanceProfileArn(IamInstanceProfileArnT&& value) { m_iamInstanceProfileArnHasBeenSet =
true; m_iamInstanceProfileArn = std::forward<IamInstanceProfileArnT>(value); }
116 template<
typename IamInstanceProfileArnT = Aws::String>
126 template<
typename VpcIdT = Aws::String>
127 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet =
true; m_vpcId = std::forward<VpcIdT>(value); }
128 template<
typename VpcIdT = Aws::String>
138 template<
typename SubnetIdT = Aws::String>
139 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet =
true; m_subnetId = std::forward<SubnetIdT>(value); }
140 template<
typename SubnetIdT = Aws::String>
152 template<
typename LaunchedAtT = Aws::String>
153 void SetLaunchedAt(LaunchedAtT&& value) { m_launchedAtHasBeenSet =
true; m_launchedAt = std::forward<LaunchedAtT>(value); }
154 template<
typename LaunchedAtT = Aws::String>
166 template<
typename NetworkInterfacesT = Aws::Vector<AwsEc2InstanceNetworkInterfacesDetails>>
167 void SetNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces = std::forward<NetworkInterfacesT>(value); }
168 template<
typename NetworkInterfacesT = Aws::Vector<AwsEc2InstanceNetworkInterfacesDetails>>
170 template<
typename NetworkInterfacesT = AwsEc2InstanceNetworkInterfacesDetails>
181 template<
typename VirtualizationTypeT = Aws::String>
182 void SetVirtualizationType(VirtualizationTypeT&& value) { m_virtualizationTypeHasBeenSet =
true; m_virtualizationType = std::forward<VirtualizationTypeT>(value); }
183 template<
typename VirtualizationTypeT = Aws::String>
193 template<
typename MetadataOptionsT = AwsEc2InstanceMetadataOptions>
194 void SetMetadataOptions(MetadataOptionsT&& value) { m_metadataOptionsHasBeenSet =
true; m_metadataOptions = std::forward<MetadataOptionsT>(value); }
195 template<
typename MetadataOptionsT = AwsEc2InstanceMetadataOptions>
205 template<
typename MonitoringT = AwsEc2InstanceMonitoringDetails>
206 void SetMonitoring(MonitoringT&& value) { m_monitoringHasBeenSet =
true; m_monitoring = std::forward<MonitoringT>(value); }
207 template<
typename MonitoringT = AwsEc2InstanceMonitoringDetails>
213 bool m_typeHasBeenSet =
false;
216 bool m_imageIdHasBeenSet =
false;
219 bool m_ipV4AddressesHasBeenSet =
false;
222 bool m_ipV6AddressesHasBeenSet =
false;
225 bool m_keyNameHasBeenSet =
false;
228 bool m_iamInstanceProfileArnHasBeenSet =
false;
231 bool m_vpcIdHasBeenSet =
false;
234 bool m_subnetIdHasBeenSet =
false;
237 bool m_launchedAtHasBeenSet =
false;
240 bool m_networkInterfacesHasBeenSet =
false;
243 bool m_virtualizationTypeHasBeenSet =
false;
246 bool m_metadataOptionsHasBeenSet =
false;
249 bool m_monitoringHasBeenSet =
false;
AwsEc2InstanceDetails & WithMetadataOptions(MetadataOptionsT &&value)
bool IpV6AddressesHasBeenSet() const
void SetIpV4Addresses(IpV4AddressesT &&value)
void SetImageId(ImageIdT &&value)
bool ImageIdHasBeenSet() const
const Aws::String & GetVirtualizationType() const
const AwsEc2InstanceMonitoringDetails & GetMonitoring() const
bool MonitoringHasBeenSet() const
AwsEc2InstanceDetails & WithKeyName(KeyNameT &&value)
AwsEc2InstanceDetails & AddIpV4Addresses(IpV4AddressesT &&value)
bool SubnetIdHasBeenSet() const
const Aws::String & GetType() const
void SetIpV6Addresses(IpV6AddressesT &&value)
bool TypeHasBeenSet() const
void SetSubnetId(SubnetIdT &&value)
AWS_SECURITYHUB_API AwsEc2InstanceDetails()=default
AwsEc2InstanceDetails & AddIpV6Addresses(IpV6AddressesT &&value)
const Aws::String & GetIamInstanceProfileArn() const
bool LaunchedAtHasBeenSet() const
AwsEc2InstanceDetails & WithIpV4Addresses(IpV4AddressesT &&value)
const Aws::String & GetImageId() const
AwsEc2InstanceDetails & WithMonitoring(MonitoringT &&value)
void SetVirtualizationType(VirtualizationTypeT &&value)
const Aws::String & GetVpcId() const
bool NetworkInterfacesHasBeenSet() const
void SetType(TypeT &&value)
bool IamInstanceProfileArnHasBeenSet() const
const Aws::String & GetKeyName() const
void SetMonitoring(MonitoringT &&value)
void SetLaunchedAt(LaunchedAtT &&value)
AwsEc2InstanceDetails & WithLaunchedAt(LaunchedAtT &&value)
void SetVpcId(VpcIdT &&value)
AwsEc2InstanceDetails & WithType(TypeT &&value)
AwsEc2InstanceDetails & WithSubnetId(SubnetIdT &&value)
const Aws::String & GetLaunchedAt() const
AwsEc2InstanceDetails & WithVpcId(VpcIdT &&value)
AwsEc2InstanceDetails & WithIpV6Addresses(IpV6AddressesT &&value)
void SetKeyName(KeyNameT &&value)
AwsEc2InstanceDetails & WithVirtualizationType(VirtualizationTypeT &&value)
AwsEc2InstanceDetails & WithNetworkInterfaces(NetworkInterfacesT &&value)
bool MetadataOptionsHasBeenSet() const
bool IpV4AddressesHasBeenSet() const
AwsEc2InstanceDetails & AddNetworkInterfaces(NetworkInterfacesT &&value)
const Aws::Vector< Aws::String > & GetIpV4Addresses() const
const Aws::String & GetSubnetId() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SECURITYHUB_API AwsEc2InstanceDetails(Aws::Utils::Json::JsonView jsonValue)
const AwsEc2InstanceMetadataOptions & GetMetadataOptions() const
void SetNetworkInterfaces(NetworkInterfacesT &&value)
const Aws::Vector< AwsEc2InstanceNetworkInterfacesDetails > & GetNetworkInterfaces() const
const Aws::Vector< Aws::String > & GetIpV6Addresses() const
AwsEc2InstanceDetails & WithImageId(ImageIdT &&value)
bool KeyNameHasBeenSet() const
AWS_SECURITYHUB_API AwsEc2InstanceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetMetadataOptions(MetadataOptionsT &&value)
bool VirtualizationTypeHasBeenSet() const
void SetIamInstanceProfileArn(IamInstanceProfileArnT &&value)
bool VpcIdHasBeenSet() const
AwsEc2InstanceDetails & WithIamInstanceProfileArn(IamInstanceProfileArnT &&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