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/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/EnaSrdSpecificationRequest.h>
12#include <aws/ec2/model/ConnectionTrackingSpecificationRequest.h>
13#include <aws/ec2/model/InstanceIpv6Address.h>
14#include <aws/ec2/model/PrivateIpAddressSpecification.h>
15#include <aws/ec2/model/Ipv4PrefixSpecificationRequest.h>
16#include <aws/ec2/model/Ipv6PrefixSpecificationRequest.h>
75 inline void SetDeleteOnTermination(
bool value) { m_deleteOnTerminationHasBeenSet =
true; m_deleteOnTermination = value; }
88 inline void SetDescription(
const char* value) { m_descriptionHasBeenSet =
true; m_description.assign(value); }
102 inline void SetDeviceIndex(
int value) { m_deviceIndexHasBeenSet =
true; m_deviceIndex = value; }
132 inline void SetIpv6AddressCount(
int value) { m_ipv6AddressCountHasBeenSet =
true; m_ipv6AddressCount = value; }
163 inline void SetNetworkInterfaceId(
const char* value) { m_networkInterfaceIdHasBeenSet =
true; m_networkInterfaceId.assign(value); }
181 inline void SetPrivateIpAddress(
const char* value) { m_privateIpAddressHasBeenSet =
true; m_privateIpAddress.assign(value); }
229 inline void SetSubnetId(
const char* value) { m_subnetIdHasBeenSet =
true; m_subnetId.assign(value); }
261 inline void SetInterfaceType(
const char* value) { m_interfaceTypeHasBeenSet =
true; m_interfaceType.assign(value); }
280 inline void SetNetworkCardIndex(
int value) { m_networkCardIndexHasBeenSet =
true; m_networkCardIndex = value; }
307 inline void SetIpv4PrefixCount(
int value) { m_ipv4PrefixCountHasBeenSet =
true; m_ipv4PrefixCount = value; }
334 inline void SetIpv6PrefixCount(
int value) { m_ipv6PrefixCountHasBeenSet =
true; m_ipv6PrefixCount = value; }
348 inline void SetPrimaryIpv6(
bool value) { m_primaryIpv6HasBeenSet =
true; m_primaryIpv6 = value; }
382 bool m_associatePublicIpAddress;
383 bool m_associatePublicIpAddressHasBeenSet =
false;
385 bool m_deleteOnTermination;
386 bool m_deleteOnTerminationHasBeenSet =
false;
389 bool m_descriptionHasBeenSet =
false;
392 bool m_deviceIndexHasBeenSet =
false;
395 bool m_groupsHasBeenSet =
false;
397 int m_ipv6AddressCount;
398 bool m_ipv6AddressCountHasBeenSet =
false;
401 bool m_ipv6AddressesHasBeenSet =
false;
404 bool m_networkInterfaceIdHasBeenSet =
false;
407 bool m_privateIpAddressHasBeenSet =
false;
410 bool m_privateIpAddressesHasBeenSet =
false;
412 int m_secondaryPrivateIpAddressCount;
413 bool m_secondaryPrivateIpAddressCountHasBeenSet =
false;
416 bool m_subnetIdHasBeenSet =
false;
418 bool m_associateCarrierIpAddress;
419 bool m_associateCarrierIpAddressHasBeenSet =
false;
422 bool m_interfaceTypeHasBeenSet =
false;
424 int m_networkCardIndex;
425 bool m_networkCardIndexHasBeenSet =
false;
428 bool m_ipv4PrefixesHasBeenSet =
false;
430 int m_ipv4PrefixCount;
431 bool m_ipv4PrefixCountHasBeenSet =
false;
434 bool m_ipv6PrefixesHasBeenSet =
false;
436 int m_ipv6PrefixCount;
437 bool m_ipv6PrefixCountHasBeenSet =
false;
440 bool m_primaryIpv6HasBeenSet =
false;
443 bool m_enaSrdSpecificationHasBeenSet =
false;
446 bool m_connectionTrackingSpecificationHasBeenSet =
false;
InstanceNetworkInterfaceSpecification & AddGroups(Aws::String &&value)
InstanceNetworkInterfaceSpecification & WithNetworkInterfaceId(Aws::String &&value)
bool GroupsHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithNetworkInterfaceId(const Aws::String &value)
InstanceNetworkInterfaceSpecification & WithSubnetId(const Aws::String &value)
int GetIpv6PrefixCount() const
int GetNetworkCardIndex() const
void SetPrivateIpAddress(Aws::String &&value)
bool DeviceIndexHasBeenSet() const
bool Ipv4PrefixCountHasBeenSet() const
void SetPrivateIpAddress(const Aws::String &value)
InstanceNetworkInterfaceSpecification & WithIpv6Addresses(Aws::Vector< InstanceIpv6Address > &&value)
void SetSubnetId(const char *value)
InstanceNetworkInterfaceSpecification & WithSecondaryPrivateIpAddressCount(int value)
InstanceNetworkInterfaceSpecification & WithDescription(const char *value)
void SetInterfaceType(const Aws::String &value)
const Aws::Vector< InstanceIpv6Address > & GetIpv6Addresses() const
const Aws::String & GetNetworkInterfaceId() const
int GetDeviceIndex() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
InstanceNetworkInterfaceSpecification & WithIpv4PrefixCount(int value)
InstanceNetworkInterfaceSpecification & WithIpv6PrefixCount(int value)
InstanceNetworkInterfaceSpecification & AddIpv6Addresses(InstanceIpv6Address &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< Ipv4PrefixSpecificationRequest > & GetIpv4Prefixes() const
void SetDescription(Aws::String &&value)
void SetConnectionTrackingSpecification(ConnectionTrackingSpecificationRequest &&value)
InstanceNetworkInterfaceSpecification & WithConnectionTrackingSpecification(const ConnectionTrackingSpecificationRequest &value)
InstanceNetworkInterfaceSpecification & WithIpv6Prefixes(const Aws::Vector< Ipv6PrefixSpecificationRequest > &value)
InstanceNetworkInterfaceSpecification & WithAssociateCarrierIpAddress(bool value)
InstanceNetworkInterfaceSpecification & WithPrivateIpAddress(const char *value)
void SetDeleteOnTermination(bool value)
bool SecondaryPrivateIpAddressCountHasBeenSet() const
bool GetDeleteOnTermination() const
const ConnectionTrackingSpecificationRequest & GetConnectionTrackingSpecification() const
bool Ipv4PrefixesHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithIpv4Prefixes(Aws::Vector< Ipv4PrefixSpecificationRequest > &&value)
void SetAssociateCarrierIpAddress(bool value)
bool PrimaryIpv6HasBeenSet() const
InstanceNetworkInterfaceSpecification & WithDeviceIndex(int value)
bool AssociateCarrierIpAddressHasBeenSet() const
void SetIpv4Prefixes(const Aws::Vector< Ipv4PrefixSpecificationRequest > &value)
InstanceNetworkInterfaceSpecification & WithPrimaryIpv6(bool value)
void SetSubnetId(Aws::String &&value)
void SetPrivateIpAddresses(Aws::Vector< PrivateIpAddressSpecification > &&value)
InstanceNetworkInterfaceSpecification & WithPrivateIpAddresses(const Aws::Vector< PrivateIpAddressSpecification > &value)
const Aws::String & GetPrivateIpAddress() const
InstanceNetworkInterfaceSpecification & WithIpv6AddressCount(int value)
InstanceNetworkInterfaceSpecification & WithIpv6Addresses(const Aws::Vector< InstanceIpv6Address > &value)
void SetDescription(const char *value)
void SetInterfaceType(Aws::String &&value)
InstanceNetworkInterfaceSpecification & WithNetworkCardIndex(int value)
InstanceNetworkInterfaceSpecification & WithPrivateIpAddress(Aws::String &&value)
void SetSecondaryPrivateIpAddressCount(int value)
const Aws::Vector< Ipv6PrefixSpecificationRequest > & GetIpv6Prefixes() const
InstanceNetworkInterfaceSpecification & AddIpv4Prefixes(const Ipv4PrefixSpecificationRequest &value)
InstanceNetworkInterfaceSpecification & AddIpv6Addresses(const InstanceIpv6Address &value)
InstanceNetworkInterfaceSpecification & WithInterfaceType(Aws::String &&value)
void SetIpv6PrefixCount(int value)
AWS_EC2_API InstanceNetworkInterfaceSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetInterfaceType() const
InstanceNetworkInterfaceSpecification & WithPrivateIpAddresses(Aws::Vector< PrivateIpAddressSpecification > &&value)
InstanceNetworkInterfaceSpecification & WithPrivateIpAddress(const Aws::String &value)
void SetNetworkInterfaceId(Aws::String &&value)
bool Ipv6PrefixCountHasBeenSet() const
bool GetAssociateCarrierIpAddress() const
void SetPrivateIpAddresses(const Aws::Vector< PrivateIpAddressSpecification > &value)
bool NetworkInterfaceIdHasBeenSet() const
void SetEnaSrdSpecification(EnaSrdSpecificationRequest &&value)
bool Ipv6AddressCountHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithDescription(const Aws::String &value)
InstanceNetworkInterfaceSpecification & WithDescription(Aws::String &&value)
InstanceNetworkInterfaceSpecification & AddIpv4Prefixes(Ipv4PrefixSpecificationRequest &&value)
bool ConnectionTrackingSpecificationHasBeenSet() const
void SetInterfaceType(const char *value)
void SetIpv4Prefixes(Aws::Vector< Ipv4PrefixSpecificationRequest > &&value)
const Aws::Vector< PrivateIpAddressSpecification > & GetPrivateIpAddresses() const
bool DescriptionHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithGroups(const Aws::Vector< Aws::String > &value)
InstanceNetworkInterfaceSpecification & AddGroups(const char *value)
bool PrivateIpAddressesHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithEnaSrdSpecification(const EnaSrdSpecificationRequest &value)
AWS_EC2_API InstanceNetworkInterfaceSpecification()
AWS_EC2_API InstanceNetworkInterfaceSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool DeleteOnTerminationHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithIpv4Prefixes(const Aws::Vector< Ipv4PrefixSpecificationRequest > &value)
InstanceNetworkInterfaceSpecification & WithIpv6Prefixes(Aws::Vector< Ipv6PrefixSpecificationRequest > &&value)
const EnaSrdSpecificationRequest & GetEnaSrdSpecification() const
InstanceNetworkInterfaceSpecification & WithConnectionTrackingSpecification(ConnectionTrackingSpecificationRequest &&value)
InstanceNetworkInterfaceSpecification & AddPrivateIpAddresses(const PrivateIpAddressSpecification &value)
bool SubnetIdHasBeenSet() const
void SetIpv6Prefixes(const Aws::Vector< Ipv6PrefixSpecificationRequest > &value)
bool InterfaceTypeHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithInterfaceType(const char *value)
void SetConnectionTrackingSpecification(const ConnectionTrackingSpecificationRequest &value)
const Aws::String & GetSubnetId() const
void SetIpv6Addresses(const Aws::Vector< InstanceIpv6Address > &value)
bool GetPrimaryIpv6() const
InstanceNetworkInterfaceSpecification & WithEnaSrdSpecification(EnaSrdSpecificationRequest &&value)
InstanceNetworkInterfaceSpecification & WithNetworkInterfaceId(const char *value)
void SetEnaSrdSpecification(const EnaSrdSpecificationRequest &value)
InstanceNetworkInterfaceSpecification & WithDeleteOnTermination(bool value)
bool GetAssociatePublicIpAddress() const
InstanceNetworkInterfaceSpecification & AddIpv6Prefixes(Ipv6PrefixSpecificationRequest &&value)
bool Ipv6PrefixesHasBeenSet() const
const Aws::String & GetDescription() const
void SetIpv6Addresses(Aws::Vector< InstanceIpv6Address > &&value)
void SetAssociatePublicIpAddress(bool value)
InstanceNetworkInterfaceSpecification & WithInterfaceType(const Aws::String &value)
void SetNetworkInterfaceId(const Aws::String &value)
void SetDeviceIndex(int value)
void SetNetworkCardIndex(int value)
void SetNetworkInterfaceId(const char *value)
void SetIpv4PrefixCount(int value)
InstanceNetworkInterfaceSpecification & WithGroups(Aws::Vector< Aws::String > &&value)
void SetSubnetId(const Aws::String &value)
bool Ipv6AddressesHasBeenSet() const
bool NetworkCardIndexHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithSubnetId(Aws::String &&value)
InstanceNetworkInterfaceSpecification & WithSubnetId(const char *value)
void SetGroups(const Aws::Vector< Aws::String > &value)
InstanceNetworkInterfaceSpecification & AddPrivateIpAddresses(PrivateIpAddressSpecification &&value)
bool PrivateIpAddressHasBeenSet() const
bool AssociatePublicIpAddressHasBeenSet() const
InstanceNetworkInterfaceSpecification & WithAssociatePublicIpAddress(bool value)
const Aws::Vector< Aws::String > & GetGroups() const
InstanceNetworkInterfaceSpecification & AddGroups(const Aws::String &value)
void SetIpv6AddressCount(int value)
void SetIpv6Prefixes(Aws::Vector< Ipv6PrefixSpecificationRequest > &&value)
int GetIpv4PrefixCount() const
void SetDescription(const Aws::String &value)
void SetPrimaryIpv6(bool value)
int GetIpv6AddressCount() const
bool EnaSrdSpecificationHasBeenSet() const
void SetPrivateIpAddress(const char *value)
int GetSecondaryPrivateIpAddressCount() const
InstanceNetworkInterfaceSpecification & AddIpv6Prefixes(const Ipv6PrefixSpecificationRequest &value)
void SetGroups(Aws::Vector< Aws::String > &&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