7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/InstanceSecondaryInterfaceAttachment.h>
12#include <aws/ec2/model/InstanceSecondaryInterfacePrivateIpAddress.h>
13#include <aws/ec2/model/SecondaryInterfaceStatus.h>
14#include <aws/ec2/model/SecondaryInterfaceType.h>
48 template <
typename AttachmentT = InstanceSecondaryInterfaceAttachment>
50 m_attachmentHasBeenSet =
true;
51 m_attachment = std::forward<AttachmentT>(value);
53 template <
typename AttachmentT = InstanceSecondaryInterfaceAttachment>
66 template <
typename MacAddressT = Aws::String>
68 m_macAddressHasBeenSet =
true;
69 m_macAddress = std::forward<MacAddressT>(value);
71 template <
typename MacAddressT = Aws::String>
84 template <
typename SecondaryInterfaceIdT = Aws::String>
86 m_secondaryInterfaceIdHasBeenSet =
true;
87 m_secondaryInterfaceId = std::forward<SecondaryInterfaceIdT>(value);
89 template <
typename SecondaryInterfaceIdT = Aws::String>
103 template <
typename OwnerIdT = Aws::String>
105 m_ownerIdHasBeenSet =
true;
106 m_ownerId = std::forward<OwnerIdT>(value);
108 template <
typename OwnerIdT = Aws::String>
121 template <
typename PrivateIpAddressesT = Aws::Vector<InstanceSecondaryInterfacePrivateIpAddress>>
123 m_privateIpAddressesHasBeenSet =
true;
124 m_privateIpAddresses = std::forward<PrivateIpAddressesT>(value);
126 template <
typename PrivateIpAddressesT = Aws::Vector<InstanceSecondaryInterfacePrivateIpAddress>>
131 template <
typename PrivateIpAddressesT = InstanceSecondaryInterfacePrivateIpAddress>
133 m_privateIpAddressesHasBeenSet =
true;
134 m_privateIpAddresses.emplace_back(std::forward<PrivateIpAddressesT>(value));
146 m_sourceDestCheckHasBeenSet =
true;
147 m_sourceDestCheck = value;
162 m_statusHasBeenSet =
true;
177 template <
typename SecondarySubnetIdT = Aws::String>
179 m_secondarySubnetIdHasBeenSet =
true;
180 m_secondarySubnetId = std::forward<SecondarySubnetIdT>(value);
182 template <
typename SecondarySubnetIdT = Aws::String>
195 template <
typename SecondaryNetworkIdT = Aws::String>
197 m_secondaryNetworkIdHasBeenSet =
true;
198 m_secondaryNetworkId = std::forward<SecondaryNetworkIdT>(value);
200 template <
typename SecondaryNetworkIdT = Aws::String>
214 m_interfaceTypeHasBeenSet =
true;
215 m_interfaceType = value;
233 bool m_sourceDestCheck{
false};
242 bool m_attachmentHasBeenSet =
false;
243 bool m_macAddressHasBeenSet =
false;
244 bool m_secondaryInterfaceIdHasBeenSet =
false;
245 bool m_ownerIdHasBeenSet =
false;
246 bool m_privateIpAddressesHasBeenSet =
false;
247 bool m_sourceDestCheckHasBeenSet =
false;
248 bool m_statusHasBeenSet =
false;
249 bool m_secondarySubnetIdHasBeenSet =
false;
250 bool m_secondaryNetworkIdHasBeenSet =
false;
251 bool m_interfaceTypeHasBeenSet =
false;
InstanceSecondaryInterface & WithOwnerId(OwnerIdT &&value)
bool MacAddressHasBeenSet() const
void SetSecondarySubnetId(SecondarySubnetIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
InstanceSecondaryInterface & WithMacAddress(MacAddressT &&value)
const Aws::String & GetOwnerId() const
void SetSourceDestCheck(bool value)
bool GetSourceDestCheck() const
const Aws::String & GetMacAddress() const
InstanceSecondaryInterface & WithSecondaryInterfaceId(SecondaryInterfaceIdT &&value)
InstanceSecondaryInterface & WithAttachment(AttachmentT &&value)
InstanceSecondaryInterface & WithStatus(SecondaryInterfaceStatus value)
AWS_EC2_API InstanceSecondaryInterface(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetSecondarySubnetId() const
SecondaryInterfaceType GetInterfaceType() const
InstanceSecondaryInterface & AddPrivateIpAddresses(PrivateIpAddressesT &&value)
InstanceSecondaryInterface & WithPrivateIpAddresses(PrivateIpAddressesT &&value)
InstanceSecondaryInterface & WithSecondarySubnetId(SecondarySubnetIdT &&value)
InstanceSecondaryInterface & WithInterfaceType(SecondaryInterfaceType value)
void SetInterfaceType(SecondaryInterfaceType value)
void SetAttachment(AttachmentT &&value)
AWS_EC2_API InstanceSecondaryInterface()=default
bool InterfaceTypeHasBeenSet() const
AWS_EC2_API InstanceSecondaryInterface & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool StatusHasBeenSet() const
InstanceSecondaryInterface & WithSourceDestCheck(bool value)
bool PrivateIpAddressesHasBeenSet() const
void SetOwnerId(OwnerIdT &&value)
void SetSecondaryInterfaceId(SecondaryInterfaceIdT &&value)
InstanceSecondaryInterface & WithSecondaryNetworkId(SecondaryNetworkIdT &&value)
const Aws::String & GetSecondaryNetworkId() const
void SetMacAddress(MacAddressT &&value)
const InstanceSecondaryInterfaceAttachment & GetAttachment() const
void SetPrivateIpAddresses(PrivateIpAddressesT &&value)
void SetSecondaryNetworkId(SecondaryNetworkIdT &&value)
SecondaryInterfaceStatus GetStatus() const
void SetStatus(SecondaryInterfaceStatus value)
bool SecondaryInterfaceIdHasBeenSet() const
bool SecondaryNetworkIdHasBeenSet() const
bool SourceDestCheckHasBeenSet() const
bool AttachmentHasBeenSet() const
const Aws::String & GetSecondaryInterfaceId() const
bool SecondarySubnetIdHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< InstanceSecondaryInterfacePrivateIpAddress > & GetPrivateIpAddresses() const
bool OwnerIdHasBeenSet() const
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