7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/ec2/model/AttachmentStatus.h>
12#include <aws/ec2/model/AttachmentEnaSrdSpecification.h>
51 template<
typename AttachTimeT = Aws::Utils::DateTime>
52 void SetAttachTime(AttachTimeT&& value) { m_attachTimeHasBeenSet =
true; m_attachTime = std::forward<AttachTimeT>(value); }
53 template<
typename AttachTimeT = Aws::Utils::DateTime>
63 template<
typename AttachmentIdT = Aws::String>
64 void SetAttachmentId(AttachmentIdT&& value) { m_attachmentIdHasBeenSet =
true; m_attachmentId = std::forward<AttachmentIdT>(value); }
65 template<
typename AttachmentIdT = Aws::String>
76 inline void SetDeleteOnTermination(
bool value) { m_deleteOnTerminationHasBeenSet =
true; m_deleteOnTermination = value; }
86 inline void SetDeviceIndex(
int value) { m_deviceIndexHasBeenSet =
true; m_deviceIndex = value; }
96 inline void SetNetworkCardIndex(
int value) { m_networkCardIndexHasBeenSet =
true; m_networkCardIndex = value; }
106 template<
typename InstanceIdT = Aws::String>
107 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet =
true; m_instanceId = std::forward<InstanceIdT>(value); }
108 template<
typename InstanceIdT = Aws::String>
118 template<
typename InstanceOwnerIdT = Aws::String>
119 void SetInstanceOwnerId(InstanceOwnerIdT&& value) { m_instanceOwnerIdHasBeenSet =
true; m_instanceOwnerId = std::forward<InstanceOwnerIdT>(value); }
120 template<
typename InstanceOwnerIdT = Aws::String>
141 template<
typename EnaSrdSpecificationT = AttachmentEnaSrdSpecification>
142 void SetEnaSrdSpecification(EnaSrdSpecificationT&& value) { m_enaSrdSpecificationHasBeenSet =
true; m_enaSrdSpecification = std::forward<EnaSrdSpecificationT>(value); }
143 template<
typename EnaSrdSpecificationT = AttachmentEnaSrdSpecification>
153 inline void SetEnaQueueCount(
int value) { m_enaQueueCountHasBeenSet =
true; m_enaQueueCount = value; }
159 bool m_attachTimeHasBeenSet =
false;
162 bool m_attachmentIdHasBeenSet =
false;
164 bool m_deleteOnTermination{
false};
165 bool m_deleteOnTerminationHasBeenSet =
false;
167 int m_deviceIndex{0};
168 bool m_deviceIndexHasBeenSet =
false;
170 int m_networkCardIndex{0};
171 bool m_networkCardIndexHasBeenSet =
false;
174 bool m_instanceIdHasBeenSet =
false;
177 bool m_instanceOwnerIdHasBeenSet =
false;
180 bool m_statusHasBeenSet =
false;
182 AttachmentEnaSrdSpecification m_enaSrdSpecification;
183 bool m_enaSrdSpecificationHasBeenSet =
false;
185 int m_enaQueueCount{0};
186 bool m_enaQueueCountHasBeenSet =
false;
AWS_EC2_API NetworkInterfaceAttachment & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool EnaSrdSpecificationHasBeenSet() const
void SetDeleteOnTermination(bool value)
NetworkInterfaceAttachment & WithStatus(AttachmentStatus value)
bool AttachmentIdHasBeenSet() const
void SetEnaQueueCount(int value)
AttachmentStatus GetStatus() const
NetworkInterfaceAttachment & WithAttachTime(AttachTimeT &&value)
bool AttachTimeHasBeenSet() const
int GetDeviceIndex() const
bool InstanceOwnerIdHasBeenSet() const
void SetStatus(AttachmentStatus value)
int GetNetworkCardIndex() const
int GetEnaQueueCount() const
NetworkInterfaceAttachment & WithDeviceIndex(int value)
NetworkInterfaceAttachment & WithInstanceOwnerId(InstanceOwnerIdT &&value)
const Aws::Utils::DateTime & GetAttachTime() const
const Aws::String & GetInstanceOwnerId() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetAttachTime(AttachTimeT &&value)
const AttachmentEnaSrdSpecification & GetEnaSrdSpecification() const
NetworkInterfaceAttachment & WithDeleteOnTermination(bool value)
bool DeleteOnTerminationHasBeenSet() const
NetworkInterfaceAttachment & WithEnaSrdSpecification(EnaSrdSpecificationT &&value)
NetworkInterfaceAttachment & WithNetworkCardIndex(int value)
void SetEnaSrdSpecification(EnaSrdSpecificationT &&value)
AWS_EC2_API NetworkInterfaceAttachment(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInterfaceAttachment & WithEnaQueueCount(int value)
bool StatusHasBeenSet() const
void SetNetworkCardIndex(int value)
bool InstanceIdHasBeenSet() const
const Aws::String & GetAttachmentId() const
bool GetDeleteOnTermination() const
bool DeviceIndexHasBeenSet() const
NetworkInterfaceAttachment & WithAttachmentId(AttachmentIdT &&value)
void SetAttachmentId(AttachmentIdT &&value)
NetworkInterfaceAttachment & WithInstanceId(InstanceIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetDeviceIndex(int value)
const Aws::String & GetInstanceId() const
bool EnaQueueCountHasBeenSet() const
bool NetworkCardIndexHasBeenSet() const
AWS_EC2_API NetworkInterfaceAttachment()=default
void SetInstanceOwnerId(InstanceOwnerIdT &&value)
void SetInstanceId(InstanceIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream