AWS SDK for C++

AWS SDK for C++ Version 1.11.606

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/PublicIpDnsNameOptions.h>
16#include <aws/ec2/model/NetworkInterfaceStatus.h>
17#include <aws/ec2/model/OperatorResponse.h>
18#include <aws/ec2/model/GroupIdentifier.h>
19#include <aws/ec2/model/NetworkInterfaceIpv6Address.h>
20#include <aws/ec2/model/NetworkInterfacePrivateIpAddress.h>
21#include <aws/ec2/model/Ipv4PrefixSpecification.h>
22#include <aws/ec2/model/Ipv6PrefixSpecification.h>
23#include <aws/ec2/model/Tag.h>
24#include <utility>
25
26namespace Aws
27{
28namespace Utils
29{
30namespace Xml
31{
32 class XmlNode;
33} // namespace Xml
34} // namespace Utils
35namespace EC2
36{
37namespace Model
38{
39
46 {
47 public:
48 AWS_EC2_API NetworkInterface() = default;
49 AWS_EC2_API NetworkInterface(const Aws::Utils::Xml::XmlNode& xmlNode);
51
52 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
53 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
54
55
57
61 inline const NetworkInterfaceAssociation& GetAssociation() const { return m_association; }
62 inline bool AssociationHasBeenSet() const { return m_associationHasBeenSet; }
63 template<typename AssociationT = NetworkInterfaceAssociation>
64 void SetAssociation(AssociationT&& value) { m_associationHasBeenSet = true; m_association = std::forward<AssociationT>(value); }
65 template<typename AssociationT = NetworkInterfaceAssociation>
66 NetworkInterface& WithAssociation(AssociationT&& value) { SetAssociation(std::forward<AssociationT>(value)); return *this;}
68
70
73 inline const NetworkInterfaceAttachment& GetAttachment() const { return m_attachment; }
74 inline bool AttachmentHasBeenSet() const { return m_attachmentHasBeenSet; }
75 template<typename AttachmentT = NetworkInterfaceAttachment>
76 void SetAttachment(AttachmentT&& value) { m_attachmentHasBeenSet = true; m_attachment = std::forward<AttachmentT>(value); }
77 template<typename AttachmentT = NetworkInterfaceAttachment>
78 NetworkInterface& WithAttachment(AttachmentT&& value) { SetAttachment(std::forward<AttachmentT>(value)); return *this;}
80
82
85 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
86 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
87 template<typename AvailabilityZoneT = Aws::String>
88 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
89 template<typename AvailabilityZoneT = Aws::String>
90 NetworkInterface& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
92
94
101 inline const ConnectionTrackingConfiguration& GetConnectionTrackingConfiguration() const { return m_connectionTrackingConfiguration; }
102 inline bool ConnectionTrackingConfigurationHasBeenSet() const { return m_connectionTrackingConfigurationHasBeenSet; }
103 template<typename ConnectionTrackingConfigurationT = ConnectionTrackingConfiguration>
104 void SetConnectionTrackingConfiguration(ConnectionTrackingConfigurationT&& value) { m_connectionTrackingConfigurationHasBeenSet = true; m_connectionTrackingConfiguration = std::forward<ConnectionTrackingConfigurationT>(value); }
105 template<typename ConnectionTrackingConfigurationT = ConnectionTrackingConfiguration>
106 NetworkInterface& WithConnectionTrackingConfiguration(ConnectionTrackingConfigurationT&& value) { SetConnectionTrackingConfiguration(std::forward<ConnectionTrackingConfigurationT>(value)); return *this;}
108
110
113 inline const Aws::String& GetDescription() const { return m_description; }
114 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
115 template<typename DescriptionT = Aws::String>
116 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
117 template<typename DescriptionT = Aws::String>
118 NetworkInterface& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
120
122
125 inline const Aws::Vector<GroupIdentifier>& GetGroups() const { return m_groups; }
126 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
127 template<typename GroupsT = Aws::Vector<GroupIdentifier>>
128 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups = std::forward<GroupsT>(value); }
129 template<typename GroupsT = Aws::Vector<GroupIdentifier>>
130 NetworkInterface& WithGroups(GroupsT&& value) { SetGroups(std::forward<GroupsT>(value)); return *this;}
131 template<typename GroupsT = GroupIdentifier>
132 NetworkInterface& AddGroups(GroupsT&& value) { m_groupsHasBeenSet = true; m_groups.emplace_back(std::forward<GroupsT>(value)); return *this; }
134
136
139 inline NetworkInterfaceType GetInterfaceType() const { return m_interfaceType; }
140 inline bool InterfaceTypeHasBeenSet() const { return m_interfaceTypeHasBeenSet; }
141 inline void SetInterfaceType(NetworkInterfaceType value) { m_interfaceTypeHasBeenSet = true; m_interfaceType = value; }
144
146
149 inline const Aws::Vector<NetworkInterfaceIpv6Address>& GetIpv6Addresses() const { return m_ipv6Addresses; }
150 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
151 template<typename Ipv6AddressesT = Aws::Vector<NetworkInterfaceIpv6Address>>
152 void SetIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = std::forward<Ipv6AddressesT>(value); }
153 template<typename Ipv6AddressesT = Aws::Vector<NetworkInterfaceIpv6Address>>
154 NetworkInterface& WithIpv6Addresses(Ipv6AddressesT&& value) { SetIpv6Addresses(std::forward<Ipv6AddressesT>(value)); return *this;}
155 template<typename Ipv6AddressesT = NetworkInterfaceIpv6Address>
156 NetworkInterface& AddIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value)); return *this; }
158
160
163 inline const Aws::String& GetMacAddress() const { return m_macAddress; }
164 inline bool MacAddressHasBeenSet() const { return m_macAddressHasBeenSet; }
165 template<typename MacAddressT = Aws::String>
166 void SetMacAddress(MacAddressT&& value) { m_macAddressHasBeenSet = true; m_macAddress = std::forward<MacAddressT>(value); }
167 template<typename MacAddressT = Aws::String>
168 NetworkInterface& WithMacAddress(MacAddressT&& value) { SetMacAddress(std::forward<MacAddressT>(value)); return *this;}
170
172
175 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
176 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
177 template<typename NetworkInterfaceIdT = Aws::String>
178 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value); }
179 template<typename NetworkInterfaceIdT = Aws::String>
180 NetworkInterface& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) { SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value)); return *this;}
182
184
187 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
188 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
189 template<typename OutpostArnT = Aws::String>
190 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::forward<OutpostArnT>(value); }
191 template<typename OutpostArnT = Aws::String>
192 NetworkInterface& WithOutpostArn(OutpostArnT&& value) { SetOutpostArn(std::forward<OutpostArnT>(value)); return *this;}
194
196
199 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
200 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
201 template<typename OwnerIdT = Aws::String>
202 void SetOwnerId(OwnerIdT&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::forward<OwnerIdT>(value); }
203 template<typename OwnerIdT = Aws::String>
204 NetworkInterface& WithOwnerId(OwnerIdT&& value) { SetOwnerId(std::forward<OwnerIdT>(value)); return *this;}
206
208
214 inline const Aws::String& GetPrivateDnsName() const { return m_privateDnsName; }
215 inline bool PrivateDnsNameHasBeenSet() const { return m_privateDnsNameHasBeenSet; }
216 template<typename PrivateDnsNameT = Aws::String>
217 void SetPrivateDnsName(PrivateDnsNameT&& value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName = std::forward<PrivateDnsNameT>(value); }
218 template<typename PrivateDnsNameT = Aws::String>
219 NetworkInterface& WithPrivateDnsName(PrivateDnsNameT&& value) { SetPrivateDnsName(std::forward<PrivateDnsNameT>(value)); return *this;}
221
223
229 inline const Aws::String& GetPublicDnsName() const { return m_publicDnsName; }
230 inline bool PublicDnsNameHasBeenSet() const { return m_publicDnsNameHasBeenSet; }
231 template<typename PublicDnsNameT = Aws::String>
232 void SetPublicDnsName(PublicDnsNameT&& value) { m_publicDnsNameHasBeenSet = true; m_publicDnsName = std::forward<PublicDnsNameT>(value); }
233 template<typename PublicDnsNameT = Aws::String>
234 NetworkInterface& WithPublicDnsName(PublicDnsNameT&& value) { SetPublicDnsName(std::forward<PublicDnsNameT>(value)); return *this;}
236
238
244 inline const PublicIpDnsNameOptions& GetPublicIpDnsNameOptions() const { return m_publicIpDnsNameOptions; }
245 inline bool PublicIpDnsNameOptionsHasBeenSet() const { return m_publicIpDnsNameOptionsHasBeenSet; }
246 template<typename PublicIpDnsNameOptionsT = PublicIpDnsNameOptions>
247 void SetPublicIpDnsNameOptions(PublicIpDnsNameOptionsT&& value) { m_publicIpDnsNameOptionsHasBeenSet = true; m_publicIpDnsNameOptions = std::forward<PublicIpDnsNameOptionsT>(value); }
248 template<typename PublicIpDnsNameOptionsT = PublicIpDnsNameOptions>
249 NetworkInterface& WithPublicIpDnsNameOptions(PublicIpDnsNameOptionsT&& value) { SetPublicIpDnsNameOptions(std::forward<PublicIpDnsNameOptionsT>(value)); return *this;}
251
253
256 inline const Aws::String& GetPrivateIpAddress() const { return m_privateIpAddress; }
257 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
258 template<typename PrivateIpAddressT = Aws::String>
259 void SetPrivateIpAddress(PrivateIpAddressT&& value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress = std::forward<PrivateIpAddressT>(value); }
260 template<typename PrivateIpAddressT = Aws::String>
261 NetworkInterface& WithPrivateIpAddress(PrivateIpAddressT&& value) { SetPrivateIpAddress(std::forward<PrivateIpAddressT>(value)); return *this;}
263
265
268 inline const Aws::Vector<NetworkInterfacePrivateIpAddress>& GetPrivateIpAddresses() const { return m_privateIpAddresses; }
269 inline bool PrivateIpAddressesHasBeenSet() const { return m_privateIpAddressesHasBeenSet; }
270 template<typename PrivateIpAddressesT = Aws::Vector<NetworkInterfacePrivateIpAddress>>
271 void SetPrivateIpAddresses(PrivateIpAddressesT&& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses = std::forward<PrivateIpAddressesT>(value); }
272 template<typename PrivateIpAddressesT = Aws::Vector<NetworkInterfacePrivateIpAddress>>
273 NetworkInterface& WithPrivateIpAddresses(PrivateIpAddressesT&& value) { SetPrivateIpAddresses(std::forward<PrivateIpAddressesT>(value)); return *this;}
274 template<typename PrivateIpAddressesT = NetworkInterfacePrivateIpAddress>
275 NetworkInterface& AddPrivateIpAddresses(PrivateIpAddressesT&& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses.emplace_back(std::forward<PrivateIpAddressesT>(value)); return *this; }
277
279
282 inline const Aws::Vector<Ipv4PrefixSpecification>& GetIpv4Prefixes() const { return m_ipv4Prefixes; }
283 inline bool Ipv4PrefixesHasBeenSet() const { return m_ipv4PrefixesHasBeenSet; }
284 template<typename Ipv4PrefixesT = Aws::Vector<Ipv4PrefixSpecification>>
285 void SetIpv4Prefixes(Ipv4PrefixesT&& value) { m_ipv4PrefixesHasBeenSet = true; m_ipv4Prefixes = std::forward<Ipv4PrefixesT>(value); }
286 template<typename Ipv4PrefixesT = Aws::Vector<Ipv4PrefixSpecification>>
287 NetworkInterface& WithIpv4Prefixes(Ipv4PrefixesT&& value) { SetIpv4Prefixes(std::forward<Ipv4PrefixesT>(value)); return *this;}
288 template<typename Ipv4PrefixesT = Ipv4PrefixSpecification>
289 NetworkInterface& AddIpv4Prefixes(Ipv4PrefixesT&& value) { m_ipv4PrefixesHasBeenSet = true; m_ipv4Prefixes.emplace_back(std::forward<Ipv4PrefixesT>(value)); return *this; }
291
293
296 inline const Aws::Vector<Ipv6PrefixSpecification>& GetIpv6Prefixes() const { return m_ipv6Prefixes; }
297 inline bool Ipv6PrefixesHasBeenSet() const { return m_ipv6PrefixesHasBeenSet; }
298 template<typename Ipv6PrefixesT = Aws::Vector<Ipv6PrefixSpecification>>
299 void SetIpv6Prefixes(Ipv6PrefixesT&& value) { m_ipv6PrefixesHasBeenSet = true; m_ipv6Prefixes = std::forward<Ipv6PrefixesT>(value); }
300 template<typename Ipv6PrefixesT = Aws::Vector<Ipv6PrefixSpecification>>
301 NetworkInterface& WithIpv6Prefixes(Ipv6PrefixesT&& value) { SetIpv6Prefixes(std::forward<Ipv6PrefixesT>(value)); return *this;}
302 template<typename Ipv6PrefixesT = Ipv6PrefixSpecification>
303 NetworkInterface& AddIpv6Prefixes(Ipv6PrefixesT&& value) { m_ipv6PrefixesHasBeenSet = true; m_ipv6Prefixes.emplace_back(std::forward<Ipv6PrefixesT>(value)); return *this; }
305
307
311 inline const Aws::String& GetRequesterId() const { return m_requesterId; }
312 inline bool RequesterIdHasBeenSet() const { return m_requesterIdHasBeenSet; }
313 template<typename RequesterIdT = Aws::String>
314 void SetRequesterId(RequesterIdT&& value) { m_requesterIdHasBeenSet = true; m_requesterId = std::forward<RequesterIdT>(value); }
315 template<typename RequesterIdT = Aws::String>
316 NetworkInterface& WithRequesterId(RequesterIdT&& value) { SetRequesterId(std::forward<RequesterIdT>(value)); return *this;}
318
320
324 inline bool GetRequesterManaged() const { return m_requesterManaged; }
325 inline bool RequesterManagedHasBeenSet() const { return m_requesterManagedHasBeenSet; }
326 inline void SetRequesterManaged(bool value) { m_requesterManagedHasBeenSet = true; m_requesterManaged = value; }
327 inline NetworkInterface& WithRequesterManaged(bool value) { SetRequesterManaged(value); return *this;}
329
331
334 inline bool GetSourceDestCheck() const { return m_sourceDestCheck; }
335 inline bool SourceDestCheckHasBeenSet() const { return m_sourceDestCheckHasBeenSet; }
336 inline void SetSourceDestCheck(bool value) { m_sourceDestCheckHasBeenSet = true; m_sourceDestCheck = value; }
337 inline NetworkInterface& WithSourceDestCheck(bool value) { SetSourceDestCheck(value); return *this;}
339
341
344 inline NetworkInterfaceStatus GetStatus() const { return m_status; }
345 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
346 inline void SetStatus(NetworkInterfaceStatus value) { m_statusHasBeenSet = true; m_status = value; }
347 inline NetworkInterface& WithStatus(NetworkInterfaceStatus value) { SetStatus(value); return *this;}
349
351
354 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
355 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
356 template<typename SubnetIdT = Aws::String>
357 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::forward<SubnetIdT>(value); }
358 template<typename SubnetIdT = Aws::String>
359 NetworkInterface& WithSubnetId(SubnetIdT&& value) { SetSubnetId(std::forward<SubnetIdT>(value)); return *this;}
361
363
366 inline const Aws::Vector<Tag>& GetTagSet() const { return m_tagSet; }
367 inline bool TagSetHasBeenSet() const { return m_tagSetHasBeenSet; }
368 template<typename TagSetT = Aws::Vector<Tag>>
369 void SetTagSet(TagSetT&& value) { m_tagSetHasBeenSet = true; m_tagSet = std::forward<TagSetT>(value); }
370 template<typename TagSetT = Aws::Vector<Tag>>
371 NetworkInterface& WithTagSet(TagSetT&& value) { SetTagSet(std::forward<TagSetT>(value)); return *this;}
372 template<typename TagSetT = Tag>
373 NetworkInterface& AddTagSet(TagSetT&& value) { m_tagSetHasBeenSet = true; m_tagSet.emplace_back(std::forward<TagSetT>(value)); return *this; }
375
377
380 inline const Aws::String& GetVpcId() const { return m_vpcId; }
381 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
382 template<typename VpcIdT = Aws::String>
383 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::forward<VpcIdT>(value); }
384 template<typename VpcIdT = Aws::String>
385 NetworkInterface& WithVpcId(VpcIdT&& value) { SetVpcId(std::forward<VpcIdT>(value)); return *this;}
387
389
397 inline bool GetDenyAllIgwTraffic() const { return m_denyAllIgwTraffic; }
398 inline bool DenyAllIgwTrafficHasBeenSet() const { return m_denyAllIgwTrafficHasBeenSet; }
399 inline void SetDenyAllIgwTraffic(bool value) { m_denyAllIgwTrafficHasBeenSet = true; m_denyAllIgwTraffic = value; }
400 inline NetworkInterface& WithDenyAllIgwTraffic(bool value) { SetDenyAllIgwTraffic(value); return *this;}
402
404
407 inline bool GetIpv6Native() const { return m_ipv6Native; }
408 inline bool Ipv6NativeHasBeenSet() const { return m_ipv6NativeHasBeenSet; }
409 inline void SetIpv6Native(bool value) { m_ipv6NativeHasBeenSet = true; m_ipv6Native = value; }
410 inline NetworkInterface& WithIpv6Native(bool value) { SetIpv6Native(value); return *this;}
412
414
417 inline const Aws::String& GetIpv6Address() const { return m_ipv6Address; }
418 inline bool Ipv6AddressHasBeenSet() const { return m_ipv6AddressHasBeenSet; }
419 template<typename Ipv6AddressT = Aws::String>
420 void SetIpv6Address(Ipv6AddressT&& value) { m_ipv6AddressHasBeenSet = true; m_ipv6Address = std::forward<Ipv6AddressT>(value); }
421 template<typename Ipv6AddressT = Aws::String>
422 NetworkInterface& WithIpv6Address(Ipv6AddressT&& value) { SetIpv6Address(std::forward<Ipv6AddressT>(value)); return *this;}
424
426
429 inline const OperatorResponse& GetOperator() const { return m_operator; }
430 inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; }
431 template<typename OperatorT = OperatorResponse>
432 void SetOperator(OperatorT&& value) { m_operatorHasBeenSet = true; m_operator = std::forward<OperatorT>(value); }
433 template<typename OperatorT = OperatorResponse>
434 NetworkInterface& WithOperator(OperatorT&& value) { SetOperator(std::forward<OperatorT>(value)); return *this;}
436
438
441 inline const Aws::Vector<Aws::String>& GetAssociatedSubnets() const { return m_associatedSubnets; }
442 inline bool AssociatedSubnetsHasBeenSet() const { return m_associatedSubnetsHasBeenSet; }
443 template<typename AssociatedSubnetsT = Aws::Vector<Aws::String>>
444 void SetAssociatedSubnets(AssociatedSubnetsT&& value) { m_associatedSubnetsHasBeenSet = true; m_associatedSubnets = std::forward<AssociatedSubnetsT>(value); }
445 template<typename AssociatedSubnetsT = Aws::Vector<Aws::String>>
446 NetworkInterface& WithAssociatedSubnets(AssociatedSubnetsT&& value) { SetAssociatedSubnets(std::forward<AssociatedSubnetsT>(value)); return *this;}
447 template<typename AssociatedSubnetsT = Aws::String>
448 NetworkInterface& AddAssociatedSubnets(AssociatedSubnetsT&& value) { m_associatedSubnetsHasBeenSet = true; m_associatedSubnets.emplace_back(std::forward<AssociatedSubnetsT>(value)); return *this; }
450 private:
451
452 NetworkInterfaceAssociation m_association;
453 bool m_associationHasBeenSet = false;
454
455 NetworkInterfaceAttachment m_attachment;
456 bool m_attachmentHasBeenSet = false;
457
458 Aws::String m_availabilityZone;
459 bool m_availabilityZoneHasBeenSet = false;
460
461 ConnectionTrackingConfiguration m_connectionTrackingConfiguration;
462 bool m_connectionTrackingConfigurationHasBeenSet = false;
463
464 Aws::String m_description;
465 bool m_descriptionHasBeenSet = false;
466
468 bool m_groupsHasBeenSet = false;
469
471 bool m_interfaceTypeHasBeenSet = false;
472
474 bool m_ipv6AddressesHasBeenSet = false;
475
476 Aws::String m_macAddress;
477 bool m_macAddressHasBeenSet = false;
478
479 Aws::String m_networkInterfaceId;
480 bool m_networkInterfaceIdHasBeenSet = false;
481
482 Aws::String m_outpostArn;
483 bool m_outpostArnHasBeenSet = false;
484
485 Aws::String m_ownerId;
486 bool m_ownerIdHasBeenSet = false;
487
488 Aws::String m_privateDnsName;
489 bool m_privateDnsNameHasBeenSet = false;
490
491 Aws::String m_publicDnsName;
492 bool m_publicDnsNameHasBeenSet = false;
493
494 PublicIpDnsNameOptions m_publicIpDnsNameOptions;
495 bool m_publicIpDnsNameOptionsHasBeenSet = false;
496
497 Aws::String m_privateIpAddress;
498 bool m_privateIpAddressHasBeenSet = false;
499
501 bool m_privateIpAddressesHasBeenSet = false;
502
504 bool m_ipv4PrefixesHasBeenSet = false;
505
507 bool m_ipv6PrefixesHasBeenSet = false;
508
509 Aws::String m_requesterId;
510 bool m_requesterIdHasBeenSet = false;
511
512 bool m_requesterManaged{false};
513 bool m_requesterManagedHasBeenSet = false;
514
515 bool m_sourceDestCheck{false};
516 bool m_sourceDestCheckHasBeenSet = false;
517
519 bool m_statusHasBeenSet = false;
520
521 Aws::String m_subnetId;
522 bool m_subnetIdHasBeenSet = false;
523
524 Aws::Vector<Tag> m_tagSet;
525 bool m_tagSetHasBeenSet = false;
526
527 Aws::String m_vpcId;
528 bool m_vpcIdHasBeenSet = false;
529
530 bool m_denyAllIgwTraffic{false};
531 bool m_denyAllIgwTrafficHasBeenSet = false;
532
533 bool m_ipv6Native{false};
534 bool m_ipv6NativeHasBeenSet = false;
535
536 Aws::String m_ipv6Address;
537 bool m_ipv6AddressHasBeenSet = false;
538
539 OperatorResponse m_operator;
540 bool m_operatorHasBeenSet = false;
541
542 Aws::Vector<Aws::String> m_associatedSubnets;
543 bool m_associatedSubnetsHasBeenSet = false;
544 };
545
546} // namespace Model
547} // namespace EC2
548} // namespace Aws
const Aws::String & GetPrivateDnsName() const
void SetIpv6Addresses(Ipv6AddressesT &&value)
NetworkInterface & WithOperator(OperatorT &&value)
const Aws::String & GetVpcId() const
NetworkInterfaceStatus GetStatus() const
const Aws::String & GetRequesterId() const
NetworkInterface & WithGroups(GroupsT &&value)
NetworkInterface & WithStatus(NetworkInterfaceStatus value)
NetworkInterface & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
void SetInterfaceType(NetworkInterfaceType value)
const Aws::String & GetPrivateIpAddress() const
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
NetworkInterface & AddGroups(GroupsT &&value)
NetworkInterface & WithDenyAllIgwTraffic(bool value)
AWS_EC2_API NetworkInterface()=default
void SetDescription(DescriptionT &&value)
const Aws::String & GetOwnerId() const
void SetConnectionTrackingConfiguration(ConnectionTrackingConfigurationT &&value)
void SetPublicDnsName(PublicDnsNameT &&value)
NetworkInterface & WithPrivateIpAddress(PrivateIpAddressT &&value)
void SetOperator(OperatorT &&value)
const OperatorResponse & GetOperator() const
const Aws::String & GetMacAddress() const
const PublicIpDnsNameOptions & GetPublicIpDnsNameOptions() const
AWS_EC2_API NetworkInterface(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInterface & WithInterfaceType(NetworkInterfaceType value)
NetworkInterface & WithIpv6Native(bool value)
const Aws::String & GetOutpostArn() const
void SetPrivateDnsName(PrivateDnsNameT &&value)
NetworkInterface & WithRequesterManaged(bool value)
NetworkInterface & WithTagSet(TagSetT &&value)
void SetPrivateIpAddresses(PrivateIpAddressesT &&value)
NetworkInterface & WithAttachment(AttachmentT &&value)
NetworkInterface & WithIpv6Prefixes(Ipv6PrefixesT &&value)
NetworkInterface & WithIpv6Address(Ipv6AddressT &&value)
const Aws::String & GetDescription() const
void SetAttachment(AttachmentT &&value)
NetworkInterface & WithPublicIpDnsNameOptions(PublicIpDnsNameOptionsT &&value)
void SetIpv4Prefixes(Ipv4PrefixesT &&value)
NetworkInterface & WithSubnetId(SubnetIdT &&value)
const Aws::String & GetNetworkInterfaceId() const
const Aws::Vector< Ipv4PrefixSpecification > & GetIpv4Prefixes() const
void SetPublicIpDnsNameOptions(PublicIpDnsNameOptionsT &&value)
const NetworkInterfaceAssociation & GetAssociation() const
NetworkInterface & AddIpv6Prefixes(Ipv6PrefixesT &&value)
void SetAssociation(AssociationT &&value)
void SetMacAddress(MacAddressT &&value)
void SetRequesterId(RequesterIdT &&value)
NetworkInterface & AddIpv4Prefixes(Ipv4PrefixesT &&value)
const Aws::Vector< Ipv6PrefixSpecification > & GetIpv6Prefixes() const
const Aws::Vector< NetworkInterfacePrivateIpAddress > & GetPrivateIpAddresses() const
void SetStatus(NetworkInterfaceStatus value)
void SetSubnetId(SubnetIdT &&value)
NetworkInterface & WithOutpostArn(OutpostArnT &&value)
const Aws::String & GetIpv6Address() const
void SetAssociatedSubnets(AssociatedSubnetsT &&value)
const Aws::String & GetAvailabilityZone() const
NetworkInterfaceType GetInterfaceType() const
const ConnectionTrackingConfiguration & GetConnectionTrackingConfiguration() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
NetworkInterface & WithMacAddress(MacAddressT &&value)
NetworkInterface & AddAssociatedSubnets(AssociatedSubnetsT &&value)
const Aws::String & GetSubnetId() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
void SetPrivateIpAddress(PrivateIpAddressT &&value)
NetworkInterface & AddPrivateIpAddresses(PrivateIpAddressesT &&value)
const Aws::Vector< Aws::String > & GetAssociatedSubnets() const
NetworkInterface & WithAssociation(AssociationT &&value)
NetworkInterface & WithPrivateIpAddresses(PrivateIpAddressesT &&value)
NetworkInterface & WithConnectionTrackingConfiguration(ConnectionTrackingConfigurationT &&value)
NetworkInterface & WithIpv4Prefixes(Ipv4PrefixesT &&value)
NetworkInterface & WithDescription(DescriptionT &&value)
NetworkInterface & WithOwnerId(OwnerIdT &&value)
NetworkInterface & AddIpv6Addresses(Ipv6AddressesT &&value)
NetworkInterface & WithRequesterId(RequesterIdT &&value)
NetworkInterface & WithPrivateDnsName(PrivateDnsNameT &&value)
NetworkInterface & AddTagSet(TagSetT &&value)
NetworkInterface & WithAssociatedSubnets(AssociatedSubnetsT &&value)
NetworkInterface & WithIpv6Addresses(Ipv6AddressesT &&value)
const NetworkInterfaceAttachment & GetAttachment() const
void SetIpv6Address(Ipv6AddressT &&value)
AWS_EC2_API NetworkInterface & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInterface & WithAvailabilityZone(AvailabilityZoneT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetIpv6Prefixes(Ipv6PrefixesT &&value)
NetworkInterface & WithSourceDestCheck(bool value)
const Aws::String & GetPublicDnsName() const
NetworkInterface & WithPublicDnsName(PublicDnsNameT &&value)
const Aws::Vector< NetworkInterfaceIpv6Address > & GetIpv6Addresses() const
const Aws::Vector< GroupIdentifier > & GetGroups() const
const Aws::Vector< Tag > & GetTagSet() const
NetworkInterface & WithVpcId(VpcIdT &&value)
void SetOutpostArn(OutpostArnT &&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