7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/securityhub/model/AwsEc2NetworkInterfaceAttachment.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/securityhub/model/AwsEc2NetworkInterfaceSecurityGroup.h>
12#include <aws/securityhub/model/AwsEc2NetworkInterfaceIpV6AddressDetail.h>
13#include <aws/securityhub/model/AwsEc2NetworkInterfacePrivateIpAddressDetail.h>
51 template<
typename AttachmentT = AwsEc2NetworkInterfaceAttachment>
52 void SetAttachment(AttachmentT&& value) { m_attachmentHasBeenSet =
true; m_attachment = std::forward<AttachmentT>(value); }
53 template<
typename AttachmentT = AwsEc2NetworkInterfaceAttachment>
63 template<
typename NetworkInterfaceIdT = Aws::String>
64 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) { m_networkInterfaceIdHasBeenSet =
true; m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value); }
65 template<
typename NetworkInterfaceIdT = Aws::String>
75 template<
typename SecurityGroupsT = Aws::Vector<AwsEc2NetworkInterfaceSecurityGroup>>
76 void SetSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet =
true; m_securityGroups = std::forward<SecurityGroupsT>(value); }
77 template<
typename SecurityGroupsT = Aws::Vector<AwsEc2NetworkInterfaceSecurityGroup>>
79 template<
typename SecurityGroupsT = AwsEc2NetworkInterfaceSecurityGroup>
89 inline void SetSourceDestCheck(
bool value) { m_sourceDestCheckHasBeenSet =
true; m_sourceDestCheck = value; }
99 template<
typename IpV6AddressesT = Aws::Vector<AwsEc2NetworkInterfaceIpV6AddressDetail>>
100 void SetIpV6Addresses(IpV6AddressesT&& value) { m_ipV6AddressesHasBeenSet =
true; m_ipV6Addresses = std::forward<IpV6AddressesT>(value); }
101 template<
typename IpV6AddressesT = Aws::Vector<AwsEc2NetworkInterfaceIpV6AddressDetail>>
103 template<
typename IpV6AddressesT = AwsEc2NetworkInterfaceIpV6AddressDetail>
113 template<
typename PrivateIpAddressesT = Aws::Vector<AwsEc2NetworkInterfacePrivateIpAddressDetail>>
114 void SetPrivateIpAddresses(PrivateIpAddressesT&& value) { m_privateIpAddressesHasBeenSet =
true; m_privateIpAddresses = std::forward<PrivateIpAddressesT>(value); }
115 template<
typename PrivateIpAddressesT = Aws::Vector<AwsEc2NetworkInterfacePrivateIpAddressDetail>>
117 template<
typename PrivateIpAddressesT = AwsEc2NetworkInterfacePrivateIpAddressDetail>
127 template<
typename PublicDnsNameT = Aws::String>
128 void SetPublicDnsName(PublicDnsNameT&& value) { m_publicDnsNameHasBeenSet =
true; m_publicDnsName = std::forward<PublicDnsNameT>(value); }
129 template<
typename PublicDnsNameT = Aws::String>
139 template<
typename PublicIpT = Aws::String>
140 void SetPublicIp(PublicIpT&& value) { m_publicIpHasBeenSet =
true; m_publicIp = std::forward<PublicIpT>(value); }
141 template<
typename PublicIpT = Aws::String>
147 bool m_attachmentHasBeenSet =
false;
150 bool m_networkInterfaceIdHasBeenSet =
false;
153 bool m_securityGroupsHasBeenSet =
false;
155 bool m_sourceDestCheck{
false};
156 bool m_sourceDestCheckHasBeenSet =
false;
159 bool m_ipV6AddressesHasBeenSet =
false;
162 bool m_privateIpAddressesHasBeenSet =
false;
165 bool m_publicDnsNameHasBeenSet =
false;
168 bool m_publicIpHasBeenSet =
false;
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
const Aws::Vector< AwsEc2NetworkInterfacePrivateIpAddressDetail > & GetPrivateIpAddresses() const
const AwsEc2NetworkInterfaceAttachment & GetAttachment() const
const Aws::String & GetNetworkInterfaceId() const
void SetPublicDnsName(PublicDnsNameT &&value)
bool PublicIpHasBeenSet() const
bool PublicDnsNameHasBeenSet() const
AwsEc2NetworkInterfaceDetails & AddPrivateIpAddresses(PrivateIpAddressesT &&value)
void SetPrivateIpAddresses(PrivateIpAddressesT &&value)
const Aws::String & GetPublicIp() const
AwsEc2NetworkInterfaceDetails & AddIpV6Addresses(IpV6AddressesT &&value)
void SetSecurityGroups(SecurityGroupsT &&value)
AwsEc2NetworkInterfaceDetails & WithSecurityGroups(SecurityGroupsT &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsEc2NetworkInterfaceDetails & WithAttachment(AttachmentT &&value)
void SetAttachment(AttachmentT &&value)
AwsEc2NetworkInterfaceDetails & WithPublicIp(PublicIpT &&value)
const Aws::Vector< AwsEc2NetworkInterfaceIpV6AddressDetail > & GetIpV6Addresses() const
bool SecurityGroupsHasBeenSet() const
bool PrivateIpAddressesHasBeenSet() const
AwsEc2NetworkInterfaceDetails & WithPublicDnsName(PublicDnsNameT &&value)
const Aws::String & GetPublicDnsName() const
void SetSourceDestCheck(bool value)
AWS_SECURITYHUB_API AwsEc2NetworkInterfaceDetails()=default
AwsEc2NetworkInterfaceDetails & AddSecurityGroups(SecurityGroupsT &&value)
bool NetworkInterfaceIdHasBeenSet() const
void SetPublicIp(PublicIpT &&value)
AwsEc2NetworkInterfaceDetails & WithSourceDestCheck(bool value)
AwsEc2NetworkInterfaceDetails & WithIpV6Addresses(IpV6AddressesT &&value)
bool IpV6AddressesHasBeenSet() const
const Aws::Vector< AwsEc2NetworkInterfaceSecurityGroup > & GetSecurityGroups() const
void SetIpV6Addresses(IpV6AddressesT &&value)
bool AttachmentHasBeenSet() const
bool SourceDestCheckHasBeenSet() const
AWS_SECURITYHUB_API AwsEc2NetworkInterfaceDetails(Aws::Utils::Json::JsonView jsonValue)
AwsEc2NetworkInterfaceDetails & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
bool GetSourceDestCheck() const
AWS_SECURITYHUB_API AwsEc2NetworkInterfaceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsEc2NetworkInterfaceDetails & WithPrivateIpAddresses(PrivateIpAddressesT &&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