AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
NetworkInterface.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/NetworkInterfaceAssociation.h>
10#include <aws/ec2/model/NetworkInterfaceAttachment.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/ConnectionTrackingConfiguration.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ec2/model/NetworkInterfaceType.h>
15#include <aws/ec2/model/NetworkInterfaceStatus.h>
16#include <aws/ec2/model/GroupIdentifier.h>
17#include <aws/ec2/model/NetworkInterfaceIpv6Address.h>
18#include <aws/ec2/model/NetworkInterfacePrivateIpAddress.h>
19#include <aws/ec2/model/Ipv4PrefixSpecification.h>
20#include <aws/ec2/model/Ipv6PrefixSpecification.h>
21#include <aws/ec2/model/Tag.h>
22#include <utility>
23
24namespace Aws
25{
26namespace Utils
27{
28namespace Xml
29{
30 class XmlNode;
31} // namespace Xml
32} // namespace Utils
33namespace EC2
34{
35namespace Model
36{
37
44 {
45 public:
46 AWS_EC2_API NetworkInterface();
47 AWS_EC2_API NetworkInterface(const Aws::Utils::Xml::XmlNode& xmlNode);
49
50 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
51 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
52
53
55
59 inline const NetworkInterfaceAssociation& GetAssociation() const{ return m_association; }
60 inline bool AssociationHasBeenSet() const { return m_associationHasBeenSet; }
61 inline void SetAssociation(const NetworkInterfaceAssociation& value) { m_associationHasBeenSet = true; m_association = value; }
62 inline void SetAssociation(NetworkInterfaceAssociation&& value) { m_associationHasBeenSet = true; m_association = std::move(value); }
63 inline NetworkInterface& WithAssociation(const NetworkInterfaceAssociation& value) { SetAssociation(value); return *this;}
64 inline NetworkInterface& WithAssociation(NetworkInterfaceAssociation&& value) { SetAssociation(std::move(value)); return *this;}
66
68
71 inline const NetworkInterfaceAttachment& GetAttachment() const{ return m_attachment; }
72 inline bool AttachmentHasBeenSet() const { return m_attachmentHasBeenSet; }
73 inline void SetAttachment(const NetworkInterfaceAttachment& value) { m_attachmentHasBeenSet = true; m_attachment = value; }
74 inline void SetAttachment(NetworkInterfaceAttachment&& value) { m_attachmentHasBeenSet = true; m_attachment = std::move(value); }
75 inline NetworkInterface& WithAttachment(const NetworkInterfaceAttachment& value) { SetAttachment(value); return *this;}
76 inline NetworkInterface& WithAttachment(NetworkInterfaceAttachment&& value) { SetAttachment(std::move(value)); return *this;}
78
80
83 inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
84 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
85 inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
86 inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); }
87 inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
88 inline NetworkInterface& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
89 inline NetworkInterface& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;}
90 inline NetworkInterface& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
92
94
101 inline const ConnectionTrackingConfiguration& GetConnectionTrackingConfiguration() const{ return m_connectionTrackingConfiguration; }
102 inline bool ConnectionTrackingConfigurationHasBeenSet() const { return m_connectionTrackingConfigurationHasBeenSet; }
103 inline void SetConnectionTrackingConfiguration(const ConnectionTrackingConfiguration& value) { m_connectionTrackingConfigurationHasBeenSet = true; m_connectionTrackingConfiguration = value; }
104 inline void SetConnectionTrackingConfiguration(ConnectionTrackingConfiguration&& value) { m_connectionTrackingConfigurationHasBeenSet = true; m_connectionTrackingConfiguration = std::move(value); }
108
110
113 inline const Aws::String& GetDescription() const{ return m_description; }
114 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
115 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
116 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
117 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
118 inline NetworkInterface& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
119 inline NetworkInterface& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
120 inline NetworkInterface& WithDescription(const char* value) { SetDescription(value); return *this;}
122
124
127 inline const Aws::Vector<GroupIdentifier>& GetGroups() const{ return m_groups; }
128 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
129 inline void SetGroups(const Aws::Vector<GroupIdentifier>& value) { m_groupsHasBeenSet = true; m_groups = value; }
130 inline void SetGroups(Aws::Vector<GroupIdentifier>&& value) { m_groupsHasBeenSet = true; m_groups = std::move(value); }
131 inline NetworkInterface& WithGroups(const Aws::Vector<GroupIdentifier>& value) { SetGroups(value); return *this;}
132 inline NetworkInterface& WithGroups(Aws::Vector<GroupIdentifier>&& value) { SetGroups(std::move(value)); return *this;}
133 inline NetworkInterface& AddGroups(const GroupIdentifier& value) { m_groupsHasBeenSet = true; m_groups.push_back(value); return *this; }
134 inline NetworkInterface& AddGroups(GroupIdentifier&& value) { m_groupsHasBeenSet = true; m_groups.push_back(std::move(value)); return *this; }
136
138
141 inline const NetworkInterfaceType& GetInterfaceType() const{ return m_interfaceType; }
142 inline bool InterfaceTypeHasBeenSet() const { return m_interfaceTypeHasBeenSet; }
143 inline void SetInterfaceType(const NetworkInterfaceType& value) { m_interfaceTypeHasBeenSet = true; m_interfaceType = value; }
144 inline void SetInterfaceType(NetworkInterfaceType&& value) { m_interfaceTypeHasBeenSet = true; m_interfaceType = std::move(value); }
145 inline NetworkInterface& WithInterfaceType(const NetworkInterfaceType& value) { SetInterfaceType(value); return *this;}
146 inline NetworkInterface& WithInterfaceType(NetworkInterfaceType&& value) { SetInterfaceType(std::move(value)); return *this;}
148
150
153 inline const Aws::Vector<NetworkInterfaceIpv6Address>& GetIpv6Addresses() const{ return m_ipv6Addresses; }
154 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
155 inline void SetIpv6Addresses(const Aws::Vector<NetworkInterfaceIpv6Address>& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = value; }
156 inline void SetIpv6Addresses(Aws::Vector<NetworkInterfaceIpv6Address>&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = std::move(value); }
159 inline NetworkInterface& AddIpv6Addresses(const NetworkInterfaceIpv6Address& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.push_back(value); return *this; }
160 inline NetworkInterface& AddIpv6Addresses(NetworkInterfaceIpv6Address&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.push_back(std::move(value)); return *this; }
162
164
167 inline const Aws::String& GetMacAddress() const{ return m_macAddress; }
168 inline bool MacAddressHasBeenSet() const { return m_macAddressHasBeenSet; }
169 inline void SetMacAddress(const Aws::String& value) { m_macAddressHasBeenSet = true; m_macAddress = value; }
170 inline void SetMacAddress(Aws::String&& value) { m_macAddressHasBeenSet = true; m_macAddress = std::move(value); }
171 inline void SetMacAddress(const char* value) { m_macAddressHasBeenSet = true; m_macAddress.assign(value); }
172 inline NetworkInterface& WithMacAddress(const Aws::String& value) { SetMacAddress(value); return *this;}
173 inline NetworkInterface& WithMacAddress(Aws::String&& value) { SetMacAddress(std::move(value)); return *this;}
174 inline NetworkInterface& WithMacAddress(const char* value) { SetMacAddress(value); return *this;}
176
178
181 inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; }
182 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
183 inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = value; }
184 inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::move(value); }
185 inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId.assign(value); }
186 inline NetworkInterface& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;}
187 inline NetworkInterface& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(std::move(value)); return *this;}
188 inline NetworkInterface& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;}
190
192
195 inline const Aws::String& GetOutpostArn() const{ return m_outpostArn; }
196 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
197 inline void SetOutpostArn(const Aws::String& value) { m_outpostArnHasBeenSet = true; m_outpostArn = value; }
198 inline void SetOutpostArn(Aws::String&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::move(value); }
199 inline void SetOutpostArn(const char* value) { m_outpostArnHasBeenSet = true; m_outpostArn.assign(value); }
200 inline NetworkInterface& WithOutpostArn(const Aws::String& value) { SetOutpostArn(value); return *this;}
201 inline NetworkInterface& WithOutpostArn(Aws::String&& value) { SetOutpostArn(std::move(value)); return *this;}
202 inline NetworkInterface& WithOutpostArn(const char* value) { SetOutpostArn(value); return *this;}
204
206
209 inline const Aws::String& GetOwnerId() const{ return m_ownerId; }
210 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
211 inline void SetOwnerId(const Aws::String& value) { m_ownerIdHasBeenSet = true; m_ownerId = value; }
212 inline void SetOwnerId(Aws::String&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::move(value); }
213 inline void SetOwnerId(const char* value) { m_ownerIdHasBeenSet = true; m_ownerId.assign(value); }
214 inline NetworkInterface& WithOwnerId(const Aws::String& value) { SetOwnerId(value); return *this;}
215 inline NetworkInterface& WithOwnerId(Aws::String&& value) { SetOwnerId(std::move(value)); return *this;}
216 inline NetworkInterface& WithOwnerId(const char* value) { SetOwnerId(value); return *this;}
218
220
223 inline const Aws::String& GetPrivateDnsName() const{ return m_privateDnsName; }
224 inline bool PrivateDnsNameHasBeenSet() const { return m_privateDnsNameHasBeenSet; }
225 inline void SetPrivateDnsName(const Aws::String& value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName = value; }
226 inline void SetPrivateDnsName(Aws::String&& value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName = std::move(value); }
227 inline void SetPrivateDnsName(const char* value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName.assign(value); }
228 inline NetworkInterface& WithPrivateDnsName(const Aws::String& value) { SetPrivateDnsName(value); return *this;}
229 inline NetworkInterface& WithPrivateDnsName(Aws::String&& value) { SetPrivateDnsName(std::move(value)); return *this;}
230 inline NetworkInterface& WithPrivateDnsName(const char* value) { SetPrivateDnsName(value); return *this;}
232
234
237 inline const Aws::String& GetPrivateIpAddress() const{ return m_privateIpAddress; }
238 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
239 inline void SetPrivateIpAddress(const Aws::String& value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress = value; }
240 inline void SetPrivateIpAddress(Aws::String&& value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress = std::move(value); }
241 inline void SetPrivateIpAddress(const char* value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress.assign(value); }
242 inline NetworkInterface& WithPrivateIpAddress(const Aws::String& value) { SetPrivateIpAddress(value); return *this;}
243 inline NetworkInterface& WithPrivateIpAddress(Aws::String&& value) { SetPrivateIpAddress(std::move(value)); return *this;}
244 inline NetworkInterface& WithPrivateIpAddress(const char* value) { SetPrivateIpAddress(value); return *this;}
246
248
251 inline const Aws::Vector<NetworkInterfacePrivateIpAddress>& GetPrivateIpAddresses() const{ return m_privateIpAddresses; }
252 inline bool PrivateIpAddressesHasBeenSet() const { return m_privateIpAddressesHasBeenSet; }
253 inline void SetPrivateIpAddresses(const Aws::Vector<NetworkInterfacePrivateIpAddress>& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses = value; }
254 inline void SetPrivateIpAddresses(Aws::Vector<NetworkInterfacePrivateIpAddress>&& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses = std::move(value); }
257 inline NetworkInterface& AddPrivateIpAddresses(const NetworkInterfacePrivateIpAddress& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses.push_back(value); return *this; }
258 inline NetworkInterface& AddPrivateIpAddresses(NetworkInterfacePrivateIpAddress&& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses.push_back(std::move(value)); return *this; }
260
262
265 inline const Aws::Vector<Ipv4PrefixSpecification>& GetIpv4Prefixes() const{ return m_ipv4Prefixes; }
266 inline bool Ipv4PrefixesHasBeenSet() const { return m_ipv4PrefixesHasBeenSet; }
267 inline void SetIpv4Prefixes(const Aws::Vector<Ipv4PrefixSpecification>& value) { m_ipv4PrefixesHasBeenSet = true; m_ipv4Prefixes = value; }
268 inline void SetIpv4Prefixes(Aws::Vector<Ipv4PrefixSpecification>&& value) { m_ipv4PrefixesHasBeenSet = true; m_ipv4Prefixes = std::move(value); }
271 inline NetworkInterface& AddIpv4Prefixes(const Ipv4PrefixSpecification& value) { m_ipv4PrefixesHasBeenSet = true; m_ipv4Prefixes.push_back(value); return *this; }
272 inline NetworkInterface& AddIpv4Prefixes(Ipv4PrefixSpecification&& value) { m_ipv4PrefixesHasBeenSet = true; m_ipv4Prefixes.push_back(std::move(value)); return *this; }
274
276
279 inline const Aws::Vector<Ipv6PrefixSpecification>& GetIpv6Prefixes() const{ return m_ipv6Prefixes; }
280 inline bool Ipv6PrefixesHasBeenSet() const { return m_ipv6PrefixesHasBeenSet; }
281 inline void SetIpv6Prefixes(const Aws::Vector<Ipv6PrefixSpecification>& value) { m_ipv6PrefixesHasBeenSet = true; m_ipv6Prefixes = value; }
282 inline void SetIpv6Prefixes(Aws::Vector<Ipv6PrefixSpecification>&& value) { m_ipv6PrefixesHasBeenSet = true; m_ipv6Prefixes = std::move(value); }
285 inline NetworkInterface& AddIpv6Prefixes(const Ipv6PrefixSpecification& value) { m_ipv6PrefixesHasBeenSet = true; m_ipv6Prefixes.push_back(value); return *this; }
286 inline NetworkInterface& AddIpv6Prefixes(Ipv6PrefixSpecification&& value) { m_ipv6PrefixesHasBeenSet = true; m_ipv6Prefixes.push_back(std::move(value)); return *this; }
288
290
294 inline const Aws::String& GetRequesterId() const{ return m_requesterId; }
295 inline bool RequesterIdHasBeenSet() const { return m_requesterIdHasBeenSet; }
296 inline void SetRequesterId(const Aws::String& value) { m_requesterIdHasBeenSet = true; m_requesterId = value; }
297 inline void SetRequesterId(Aws::String&& value) { m_requesterIdHasBeenSet = true; m_requesterId = std::move(value); }
298 inline void SetRequesterId(const char* value) { m_requesterIdHasBeenSet = true; m_requesterId.assign(value); }
299 inline NetworkInterface& WithRequesterId(const Aws::String& value) { SetRequesterId(value); return *this;}
300 inline NetworkInterface& WithRequesterId(Aws::String&& value) { SetRequesterId(std::move(value)); return *this;}
301 inline NetworkInterface& WithRequesterId(const char* value) { SetRequesterId(value); return *this;}
303
305
309 inline bool GetRequesterManaged() const{ return m_requesterManaged; }
310 inline bool RequesterManagedHasBeenSet() const { return m_requesterManagedHasBeenSet; }
311 inline void SetRequesterManaged(bool value) { m_requesterManagedHasBeenSet = true; m_requesterManaged = value; }
312 inline NetworkInterface& WithRequesterManaged(bool value) { SetRequesterManaged(value); return *this;}
314
316
319 inline bool GetSourceDestCheck() const{ return m_sourceDestCheck; }
320 inline bool SourceDestCheckHasBeenSet() const { return m_sourceDestCheckHasBeenSet; }
321 inline void SetSourceDestCheck(bool value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = value; }
322 inline NetworkInterface& WithSourceDestCheck(bool value) { SetSourceDestCheck(value); return *this;}
324
326
329 inline const NetworkInterfaceStatus& GetStatus() const{ return m_status; }
330 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
331 inline void SetStatus(const NetworkInterfaceStatus& value) { m_statusHasBeenSet = true; m_status = value; }
332 inline void SetStatus(NetworkInterfaceStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
333 inline NetworkInterface& WithStatus(const NetworkInterfaceStatus& value) { SetStatus(value); return *this;}
334 inline NetworkInterface& WithStatus(NetworkInterfaceStatus&& value) { SetStatus(std::move(value)); return *this;}
336
338
341 inline const Aws::String& GetSubnetId() const{ return m_subnetId; }
342 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
343 inline void SetSubnetId(const Aws::String& value) { m_subnetIdHasBeenSet = true; m_subnetId = value; }
344 inline void SetSubnetId(Aws::String&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::move(value); }
345 inline void SetSubnetId(const char* value) { m_subnetIdHasBeenSet = true; m_subnetId.assign(value); }
346 inline NetworkInterface& WithSubnetId(const Aws::String& value) { SetSubnetId(value); return *this;}
347 inline NetworkInterface& WithSubnetId(Aws::String&& value) { SetSubnetId(std::move(value)); return *this;}
348 inline NetworkInterface& WithSubnetId(const char* value) { SetSubnetId(value); return *this;}
350
352
355 inline const Aws::Vector<Tag>& GetTagSet() const{ return m_tagSet; }
356 inline bool TagSetHasBeenSet() const { return m_tagSetHasBeenSet; }
357 inline void SetTagSet(const Aws::Vector<Tag>& value) { m_tagSetHasBeenSet = true; m_tagSet = value; }
358 inline void SetTagSet(Aws::Vector<Tag>&& value) { m_tagSetHasBeenSet = true; m_tagSet = std::move(value); }
359 inline NetworkInterface& WithTagSet(const Aws::Vector<Tag>& value) { SetTagSet(value); return *this;}
360 inline NetworkInterface& WithTagSet(Aws::Vector<Tag>&& value) { SetTagSet(std::move(value)); return *this;}
361 inline NetworkInterface& AddTagSet(const Tag& value) { m_tagSetHasBeenSet = true; m_tagSet.push_back(value); return *this; }
362 inline NetworkInterface& AddTagSet(Tag&& value) { m_tagSetHasBeenSet = true; m_tagSet.push_back(std::move(value)); return *this; }
364
366
369 inline const Aws::String& GetVpcId() const{ return m_vpcId; }
370 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
371 inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; }
372 inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); }
373 inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); }
374 inline NetworkInterface& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;}
375 inline NetworkInterface& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;}
376 inline NetworkInterface& WithVpcId(const char* value) { SetVpcId(value); return *this;}
378
380
388 inline bool GetDenyAllIgwTraffic() const{ return m_denyAllIgwTraffic; }
389 inline bool DenyAllIgwTrafficHasBeenSet() const { return m_denyAllIgwTrafficHasBeenSet; }
390 inline void SetDenyAllIgwTraffic(bool value) { m_denyAllIgwTrafficHasBeenSet = true; m_denyAllIgwTraffic = value; }
391 inline NetworkInterface& WithDenyAllIgwTraffic(bool value) { SetDenyAllIgwTraffic(value); return *this;}
393
395
398 inline bool GetIpv6Native() const{ return m_ipv6Native; }
399 inline bool Ipv6NativeHasBeenSet() const { return m_ipv6NativeHasBeenSet; }
400 inline void SetIpv6Native(bool value) { m_ipv6NativeHasBeenSet = true; m_ipv6Native = value; }
401 inline NetworkInterface& WithIpv6Native(bool value) { SetIpv6Native(value); return *this;}
403
405
408 inline const Aws::String& GetIpv6Address() const{ return m_ipv6Address; }
409 inline bool Ipv6AddressHasBeenSet() const { return m_ipv6AddressHasBeenSet; }
410 inline void SetIpv6Address(const Aws::String& value) { m_ipv6AddressHasBeenSet = true; m_ipv6Address = value; }
411 inline void SetIpv6Address(Aws::String&& value) { m_ipv6AddressHasBeenSet = true; m_ipv6Address = std::move(value); }
412 inline void SetIpv6Address(const char* value) { m_ipv6AddressHasBeenSet = true; m_ipv6Address.assign(value); }
413 inline NetworkInterface& WithIpv6Address(const Aws::String& value) { SetIpv6Address(value); return *this;}
414 inline NetworkInterface& WithIpv6Address(Aws::String&& value) { SetIpv6Address(std::move(value)); return *this;}
415 inline NetworkInterface& WithIpv6Address(const char* value) { SetIpv6Address(value); return *this;}
417 private:
418
419 NetworkInterfaceAssociation m_association;
420 bool m_associationHasBeenSet = false;
421
422 NetworkInterfaceAttachment m_attachment;
423 bool m_attachmentHasBeenSet = false;
424
425 Aws::String m_availabilityZone;
426 bool m_availabilityZoneHasBeenSet = false;
427
428 ConnectionTrackingConfiguration m_connectionTrackingConfiguration;
429 bool m_connectionTrackingConfigurationHasBeenSet = false;
430
431 Aws::String m_description;
432 bool m_descriptionHasBeenSet = false;
433
435 bool m_groupsHasBeenSet = false;
436
437 NetworkInterfaceType m_interfaceType;
438 bool m_interfaceTypeHasBeenSet = false;
439
441 bool m_ipv6AddressesHasBeenSet = false;
442
443 Aws::String m_macAddress;
444 bool m_macAddressHasBeenSet = false;
445
446 Aws::String m_networkInterfaceId;
447 bool m_networkInterfaceIdHasBeenSet = false;
448
449 Aws::String m_outpostArn;
450 bool m_outpostArnHasBeenSet = false;
451
452 Aws::String m_ownerId;
453 bool m_ownerIdHasBeenSet = false;
454
455 Aws::String m_privateDnsName;
456 bool m_privateDnsNameHasBeenSet = false;
457
458 Aws::String m_privateIpAddress;
459 bool m_privateIpAddressHasBeenSet = false;
460
462 bool m_privateIpAddressesHasBeenSet = false;
463
465 bool m_ipv4PrefixesHasBeenSet = false;
466
468 bool m_ipv6PrefixesHasBeenSet = false;
469
470 Aws::String m_requesterId;
471 bool m_requesterIdHasBeenSet = false;
472
473 bool m_requesterManaged;
474 bool m_requesterManagedHasBeenSet = false;
475
476 bool m_sourceDestCheck;
477 bool m_sourceDestCheckHasBeenSet = false;
478
479 NetworkInterfaceStatus m_status;
480 bool m_statusHasBeenSet = false;
481
482 Aws::String m_subnetId;
483 bool m_subnetIdHasBeenSet = false;
484
485 Aws::Vector<Tag> m_tagSet;
486 bool m_tagSetHasBeenSet = false;
487
488 Aws::String m_vpcId;
489 bool m_vpcIdHasBeenSet = false;
490
491 bool m_denyAllIgwTraffic;
492 bool m_denyAllIgwTrafficHasBeenSet = false;
493
494 bool m_ipv6Native;
495 bool m_ipv6NativeHasBeenSet = false;
496
497 Aws::String m_ipv6Address;
498 bool m_ipv6AddressHasBeenSet = false;
499 };
500
501} // namespace Model
502} // namespace EC2
503} // namespace Aws
NetworkInterface & AddIpv4Prefixes(Ipv4PrefixSpecification &&value)
NetworkInterface & WithTagSet(const Aws::Vector< Tag > &value)
const Aws::String & GetPrivateDnsName() const
NetworkInterface & WithDescription(const char *value)
void SetConnectionTrackingConfiguration(const ConnectionTrackingConfiguration &value)
void SetPrivateIpAddresses(const Aws::Vector< NetworkInterfacePrivateIpAddress > &value)
NetworkInterface & WithAvailabilityZone(const Aws::String &value)
void SetAttachment(NetworkInterfaceAttachment &&value)
void SetPrivateIpAddress(const char *value)
NetworkInterface & WithIpv4Prefixes(Aws::Vector< Ipv4PrefixSpecification > &&value)
void SetOutpostArn(const Aws::String &value)
const Aws::String & GetVpcId() const
NetworkInterface & WithInterfaceType(NetworkInterfaceType &&value)
NetworkInterface & WithIpv6Prefixes(const Aws::Vector< Ipv6PrefixSpecification > &value)
void SetIpv6Address(Aws::String &&value)
void SetStatus(const NetworkInterfaceStatus &value)
void SetAttachment(const NetworkInterfaceAttachment &value)
NetworkInterface & AddIpv6Prefixes(Ipv6PrefixSpecification &&value)
void SetPrivateIpAddress(const Aws::String &value)
void SetVpcId(const Aws::String &value)
void SetInterfaceType(NetworkInterfaceType &&value)
void SetAssociation(NetworkInterfaceAssociation &&value)
const Aws::String & GetRequesterId() const
NetworkInterface & WithSubnetId(Aws::String &&value)
void SetMacAddress(const char *value)
void SetOwnerId(const Aws::String &value)
NetworkInterface & WithPrivateIpAddress(const char *value)
NetworkInterface & WithRequesterId(const char *value)
NetworkInterface & WithVpcId(Aws::String &&value)
NetworkInterface & WithPrivateDnsName(const Aws::String &value)
NetworkInterface & WithIpv6Address(const Aws::String &value)
NetworkInterface & WithMacAddress(const Aws::String &value)
const Aws::String & GetPrivateIpAddress() const
void SetGroups(const Aws::Vector< GroupIdentifier > &value)
void SetDescription(const char *value)
void SetMacAddress(const Aws::String &value)
NetworkInterface & WithVpcId(const Aws::String &value)
NetworkInterface & WithDenyAllIgwTraffic(bool value)
void SetPrivateDnsName(const Aws::String &value)
NetworkInterface & WithConnectionTrackingConfiguration(ConnectionTrackingConfiguration &&value)
const Aws::String & GetOwnerId() const
NetworkInterface & AddIpv6Prefixes(const Ipv6PrefixSpecification &value)
NetworkInterface & WithSubnetId(const Aws::String &value)
void SetAvailabilityZone(Aws::String &&value)
NetworkInterface & WithGroups(Aws::Vector< GroupIdentifier > &&value)
NetworkInterface & WithAssociation(const NetworkInterfaceAssociation &value)
void SetTagSet(Aws::Vector< Tag > &&value)
void SetVpcId(Aws::String &&value)
void SetOutpostArn(const char *value)
NetworkInterface & AddGroups(GroupIdentifier &&value)
NetworkInterface & AddIpv6Addresses(NetworkInterfaceIpv6Address &&value)
NetworkInterface & WithPrivateIpAddresses(Aws::Vector< NetworkInterfacePrivateIpAddress > &&value)
NetworkInterface & WithAttachment(NetworkInterfaceAttachment &&value)
const Aws::String & GetMacAddress() const
void SetIpv6Addresses(const Aws::Vector< NetworkInterfaceIpv6Address > &value)
NetworkInterface & WithTagSet(Aws::Vector< Tag > &&value)
AWS_EC2_API NetworkInterface(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetPrivateDnsName(const char *value)
void SetIpv6Prefixes(const Aws::Vector< Ipv6PrefixSpecification > &value)
NetworkInterface & WithIpv6Native(bool value)
NetworkInterface & WithNetworkInterfaceId(const char *value)
void SetPrivateIpAddress(Aws::String &&value)
NetworkInterface & WithDescription(Aws::String &&value)
const Aws::String & GetOutpostArn() const
NetworkInterface & WithOutpostArn(const Aws::String &value)
NetworkInterface & WithRequesterManaged(bool value)
NetworkInterface & WithPrivateDnsName(const char *value)
NetworkInterface & WithRequesterId(Aws::String &&value)
const NetworkInterfaceType & GetInterfaceType() const
NetworkInterface & WithIpv6Address(const char *value)
NetworkInterface & WithPrivateIpAddress(const Aws::String &value)
NetworkInterface & WithVpcId(const char *value)
NetworkInterface & WithOutpostArn(const char *value)
NetworkInterface & WithIpv6Address(Aws::String &&value)
const Aws::String & GetDescription() const
NetworkInterface & WithOutpostArn(Aws::String &&value)
NetworkInterface & WithNetworkInterfaceId(Aws::String &&value)
NetworkInterface & WithConnectionTrackingConfiguration(const ConnectionTrackingConfiguration &value)
void SetDescription(Aws::String &&value)
const Aws::String & GetNetworkInterfaceId() const
NetworkInterface & WithStatus(NetworkInterfaceStatus &&value)
void SetMacAddress(Aws::String &&value)
const Aws::Vector< Ipv4PrefixSpecification > & GetIpv4Prefixes() const
NetworkInterface & WithGroups(const Aws::Vector< GroupIdentifier > &value)
const NetworkInterfaceAssociation & GetAssociation() const
void SetOutpostArn(Aws::String &&value)
const Aws::Vector< Ipv6PrefixSpecification > & GetIpv6Prefixes() const
NetworkInterface & AddIpv4Prefixes(const Ipv4PrefixSpecification &value)
NetworkInterface & WithPrivateIpAddress(Aws::String &&value)
void SetOwnerId(const char *value)
NetworkInterface & AddGroups(const GroupIdentifier &value)
const Aws::Vector< NetworkInterfacePrivateIpAddress > & GetPrivateIpAddresses() const
NetworkInterface & WithIpv6Prefixes(Aws::Vector< Ipv6PrefixSpecification > &&value)
NetworkInterface & WithAvailabilityZone(const char *value)
const NetworkInterfaceStatus & GetStatus() const
void SetAvailabilityZone(const Aws::String &value)
void SetSubnetId(const char *value)
void SetRequesterId(Aws::String &&value)
const Aws::String & GetIpv6Address() const
NetworkInterface & AddTagSet(Tag &&value)
void SetDescription(const Aws::String &value)
const Aws::String & GetAvailabilityZone() const
NetworkInterface & WithAttachment(const NetworkInterfaceAttachment &value)
NetworkInterface & WithNetworkInterfaceId(const Aws::String &value)
const ConnectionTrackingConfiguration & GetConnectionTrackingConfiguration() const
void SetStatus(NetworkInterfaceStatus &&value)
NetworkInterface & WithMacAddress(Aws::String &&value)
void SetNetworkInterfaceId(const char *value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetAssociation(const NetworkInterfaceAssociation &value)
NetworkInterface & WithSubnetId(const char *value)
const Aws::String & GetSubnetId() const
void SetGroups(Aws::Vector< GroupIdentifier > &&value)
void SetRequesterId(const char *value)
NetworkInterface & WithOwnerId(Aws::String &&value)
NetworkInterface & WithPrivateIpAddresses(const Aws::Vector< NetworkInterfacePrivateIpAddress > &value)
NetworkInterface & WithPrivateDnsName(Aws::String &&value)
NetworkInterface & WithStatus(const NetworkInterfaceStatus &value)
void SetIpv4Prefixes(const Aws::Vector< Ipv4PrefixSpecification > &value)
NetworkInterface & AddPrivateIpAddresses(NetworkInterfacePrivateIpAddress &&value)
NetworkInterface & AddPrivateIpAddresses(const NetworkInterfacePrivateIpAddress &value)
void SetConnectionTrackingConfiguration(ConnectionTrackingConfiguration &&value)
void SetIpv4Prefixes(Aws::Vector< Ipv4PrefixSpecification > &&value)
void SetInterfaceType(const NetworkInterfaceType &value)
void SetPrivateDnsName(Aws::String &&value)
void SetIpv6Prefixes(Aws::Vector< Ipv6PrefixSpecification > &&value)
NetworkInterface & WithInterfaceType(const NetworkInterfaceType &value)
void SetTagSet(const Aws::Vector< Tag > &value)
NetworkInterface & WithIpv6Addresses(Aws::Vector< NetworkInterfaceIpv6Address > &&value)
void SetSubnetId(const Aws::String &value)
void SetPrivateIpAddresses(Aws::Vector< NetworkInterfacePrivateIpAddress > &&value)
NetworkInterface & WithMacAddress(const char *value)
NetworkInterface & AddTagSet(const Tag &value)
NetworkInterface & WithOwnerId(const Aws::String &value)
const NetworkInterfaceAttachment & GetAttachment() const
AWS_EC2_API NetworkInterface & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetNetworkInterfaceId(const Aws::String &value)
NetworkInterface & WithOwnerId(const char *value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
NetworkInterface & WithIpv6Addresses(const Aws::Vector< NetworkInterfaceIpv6Address > &value)
void SetSubnetId(Aws::String &&value)
void SetAvailabilityZone(const char *value)
NetworkInterface & WithRequesterId(const Aws::String &value)
NetworkInterface & WithIpv4Prefixes(const Aws::Vector< Ipv4PrefixSpecification > &value)
void SetIpv6Address(const Aws::String &value)
void SetOwnerId(Aws::String &&value)
NetworkInterface & WithAssociation(NetworkInterfaceAssociation &&value)
NetworkInterface & WithSourceDestCheck(bool value)
NetworkInterface & WithAvailabilityZone(Aws::String &&value)
const Aws::Vector< NetworkInterfaceIpv6Address > & GetIpv6Addresses() const
const Aws::Vector< GroupIdentifier > & GetGroups() const
void SetNetworkInterfaceId(Aws::String &&value)
void SetIpv6Address(const char *value)
void SetRequesterId(const Aws::String &value)
NetworkInterface & AddIpv6Addresses(const NetworkInterfaceIpv6Address &value)
const Aws::Vector< Tag > & GetTagSet() const
void SetIpv6Addresses(Aws::Vector< NetworkInterfaceIpv6Address > &&value)
NetworkInterface & WithDescription(const 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