AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
NetworkInterfaceAttachment.h
1
6#pragma once
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>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Xml
20{
21 class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_EC2_API NetworkInterfaceAttachment() = default;
40
41 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
43
44
46
49 inline const Aws::Utils::DateTime& GetAttachTime() const { return m_attachTime; }
50 inline bool AttachTimeHasBeenSet() const { return m_attachTimeHasBeenSet; }
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>
54 NetworkInterfaceAttachment& WithAttachTime(AttachTimeT&& value) { SetAttachTime(std::forward<AttachTimeT>(value)); return *this;}
56
58
61 inline const Aws::String& GetAttachmentId() const { return m_attachmentId; }
62 inline bool AttachmentIdHasBeenSet() const { return m_attachmentIdHasBeenSet; }
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>
66 NetworkInterfaceAttachment& WithAttachmentId(AttachmentIdT&& value) { SetAttachmentId(std::forward<AttachmentIdT>(value)); return *this;}
68
70
74 inline bool GetDeleteOnTermination() const { return m_deleteOnTermination; }
75 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
76 inline void SetDeleteOnTermination(bool value) { m_deleteOnTerminationHasBeenSet = true; m_deleteOnTermination = value; }
79
81
84 inline int GetDeviceIndex() const { return m_deviceIndex; }
85 inline bool DeviceIndexHasBeenSet() const { return m_deviceIndexHasBeenSet; }
86 inline void SetDeviceIndex(int value) { m_deviceIndexHasBeenSet = true; m_deviceIndex = value; }
87 inline NetworkInterfaceAttachment& WithDeviceIndex(int value) { SetDeviceIndex(value); return *this;}
89
91
94 inline int GetNetworkCardIndex() const { return m_networkCardIndex; }
95 inline bool NetworkCardIndexHasBeenSet() const { return m_networkCardIndexHasBeenSet; }
96 inline void SetNetworkCardIndex(int value) { m_networkCardIndexHasBeenSet = true; m_networkCardIndex = value; }
97 inline NetworkInterfaceAttachment& WithNetworkCardIndex(int value) { SetNetworkCardIndex(value); return *this;}
99
101
104 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
105 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
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>
109 NetworkInterfaceAttachment& WithInstanceId(InstanceIdT&& value) { SetInstanceId(std::forward<InstanceIdT>(value)); return *this;}
111
113
116 inline const Aws::String& GetInstanceOwnerId() const { return m_instanceOwnerId; }
117 inline bool InstanceOwnerIdHasBeenSet() const { return m_instanceOwnerIdHasBeenSet; }
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>
121 NetworkInterfaceAttachment& WithInstanceOwnerId(InstanceOwnerIdT&& value) { SetInstanceOwnerId(std::forward<InstanceOwnerIdT>(value)); return *this;}
123
125
128 inline AttachmentStatus GetStatus() const { return m_status; }
129 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
130 inline void SetStatus(AttachmentStatus value) { m_statusHasBeenSet = true; m_status = value; }
131 inline NetworkInterfaceAttachment& WithStatus(AttachmentStatus value) { SetStatus(value); return *this;}
133
135
139 inline const AttachmentEnaSrdSpecification& GetEnaSrdSpecification() const { return m_enaSrdSpecification; }
140 inline bool EnaSrdSpecificationHasBeenSet() const { return m_enaSrdSpecificationHasBeenSet; }
141 template<typename EnaSrdSpecificationT = AttachmentEnaSrdSpecification>
142 void SetEnaSrdSpecification(EnaSrdSpecificationT&& value) { m_enaSrdSpecificationHasBeenSet = true; m_enaSrdSpecification = std::forward<EnaSrdSpecificationT>(value); }
143 template<typename EnaSrdSpecificationT = AttachmentEnaSrdSpecification>
144 NetworkInterfaceAttachment& WithEnaSrdSpecification(EnaSrdSpecificationT&& value) { SetEnaSrdSpecification(std::forward<EnaSrdSpecificationT>(value)); return *this;}
146
148
151 inline int GetEnaQueueCount() const { return m_enaQueueCount; }
152 inline bool EnaQueueCountHasBeenSet() const { return m_enaQueueCountHasBeenSet; }
153 inline void SetEnaQueueCount(int value) { m_enaQueueCountHasBeenSet = true; m_enaQueueCount = value; }
154 inline NetworkInterfaceAttachment& WithEnaQueueCount(int value) { SetEnaQueueCount(value); return *this;}
156 private:
157
158 Aws::Utils::DateTime m_attachTime{};
159 bool m_attachTimeHasBeenSet = false;
160
161 Aws::String m_attachmentId;
162 bool m_attachmentIdHasBeenSet = false;
163
164 bool m_deleteOnTermination{false};
165 bool m_deleteOnTerminationHasBeenSet = false;
166
167 int m_deviceIndex{0};
168 bool m_deviceIndexHasBeenSet = false;
169
170 int m_networkCardIndex{0};
171 bool m_networkCardIndexHasBeenSet = false;
172
173 Aws::String m_instanceId;
174 bool m_instanceIdHasBeenSet = false;
175
176 Aws::String m_instanceOwnerId;
177 bool m_instanceOwnerIdHasBeenSet = false;
178
180 bool m_statusHasBeenSet = false;
181
182 AttachmentEnaSrdSpecification m_enaSrdSpecification;
183 bool m_enaSrdSpecificationHasBeenSet = false;
184
185 int m_enaQueueCount{0};
186 bool m_enaQueueCountHasBeenSet = false;
187 };
188
189} // namespace Model
190} // namespace EC2
191} // namespace Aws
AWS_EC2_API NetworkInterfaceAttachment & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInterfaceAttachment & WithStatus(AttachmentStatus value)
NetworkInterfaceAttachment & WithAttachTime(AttachTimeT &&value)
NetworkInterfaceAttachment & WithDeviceIndex(int value)
NetworkInterfaceAttachment & WithInstanceOwnerId(InstanceOwnerIdT &&value)
const Aws::Utils::DateTime & GetAttachTime() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const AttachmentEnaSrdSpecification & GetEnaSrdSpecification() const
NetworkInterfaceAttachment & WithDeleteOnTermination(bool value)
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)
NetworkInterfaceAttachment & WithAttachmentId(AttachmentIdT &&value)
NetworkInterfaceAttachment & WithInstanceId(InstanceIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API NetworkInterfaceAttachment()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream