AWS SDK for C++  1.8.71
AWS SDK for C++
CreateNetworkInterfaceRequest.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
8 #include <aws/ec2/EC2Request.h>
15 #include <utility>
16 
17 namespace Aws
18 {
19 namespace EC2
20 {
21 namespace Model
22 {
23 
31  {
32  public:
34 
35  // Service request name is the Operation name which will send this request out,
36  // each operation should has unique request name, so that we can get operation's name from this request.
37  // Note: this is not true for response, multiple operations may have the same response name,
38  // so we can not get operation's name from response.
39  inline virtual const char* GetServiceRequestName() const override { return "CreateNetworkInterface"; }
40 
41  Aws::String SerializePayload() const override;
42 
43  protected:
44  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
45 
46  public:
47 
51  inline const Aws::String& GetDescription() const{ return m_description; }
52 
56  inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
57 
61  inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
62 
66  inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
67 
71  inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
72 
76  inline CreateNetworkInterfaceRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
77 
81  inline CreateNetworkInterfaceRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
82 
86  inline CreateNetworkInterfaceRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
87 
88 
95  inline bool GetDryRun() const{ return m_dryRun; }
96 
103  inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
104 
111  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
112 
119  inline CreateNetworkInterfaceRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
120 
121 
125  inline const Aws::Vector<Aws::String>& GetGroups() const{ return m_groups; }
126 
130  inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
131 
135  inline void SetGroups(const Aws::Vector<Aws::String>& value) { m_groupsHasBeenSet = true; m_groups = value; }
136 
140  inline void SetGroups(Aws::Vector<Aws::String>&& value) { m_groupsHasBeenSet = true; m_groups = std::move(value); }
141 
145  inline CreateNetworkInterfaceRequest& WithGroups(const Aws::Vector<Aws::String>& value) { SetGroups(value); return *this;}
146 
150  inline CreateNetworkInterfaceRequest& WithGroups(Aws::Vector<Aws::String>&& value) { SetGroups(std::move(value)); return *this;}
151 
155  inline CreateNetworkInterfaceRequest& AddGroups(const Aws::String& value) { m_groupsHasBeenSet = true; m_groups.push_back(value); return *this; }
156 
160  inline CreateNetworkInterfaceRequest& AddGroups(Aws::String&& value) { m_groupsHasBeenSet = true; m_groups.push_back(std::move(value)); return *this; }
161 
165  inline CreateNetworkInterfaceRequest& AddGroups(const char* value) { m_groupsHasBeenSet = true; m_groups.push_back(value); return *this; }
166 
167 
175  inline int GetIpv6AddressCount() const{ return m_ipv6AddressCount; }
176 
184  inline bool Ipv6AddressCountHasBeenSet() const { return m_ipv6AddressCountHasBeenSet; }
185 
193  inline void SetIpv6AddressCount(int value) { m_ipv6AddressCountHasBeenSet = true; m_ipv6AddressCount = value; }
194 
202  inline CreateNetworkInterfaceRequest& WithIpv6AddressCount(int value) { SetIpv6AddressCount(value); return *this;}
203 
204 
210  inline const Aws::Vector<InstanceIpv6Address>& GetIpv6Addresses() const{ return m_ipv6Addresses; }
211 
217  inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
218 
224  inline void SetIpv6Addresses(const Aws::Vector<InstanceIpv6Address>& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = value; }
225 
231  inline void SetIpv6Addresses(Aws::Vector<InstanceIpv6Address>&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses = std::move(value); }
232 
238  inline CreateNetworkInterfaceRequest& WithIpv6Addresses(const Aws::Vector<InstanceIpv6Address>& value) { SetIpv6Addresses(value); return *this;}
239 
245  inline CreateNetworkInterfaceRequest& WithIpv6Addresses(Aws::Vector<InstanceIpv6Address>&& value) { SetIpv6Addresses(std::move(value)); return *this;}
246 
252  inline CreateNetworkInterfaceRequest& AddIpv6Addresses(const InstanceIpv6Address& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.push_back(value); return *this; }
253 
259  inline CreateNetworkInterfaceRequest& AddIpv6Addresses(InstanceIpv6Address&& value) { m_ipv6AddressesHasBeenSet = true; m_ipv6Addresses.push_back(std::move(value)); return *this; }
260 
261 
269  inline const Aws::String& GetPrivateIpAddress() const{ return m_privateIpAddress; }
270 
278  inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
279 
287  inline void SetPrivateIpAddress(const Aws::String& value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress = value; }
288 
296  inline void SetPrivateIpAddress(Aws::String&& value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress = std::move(value); }
297 
305  inline void SetPrivateIpAddress(const char* value) { m_privateIpAddressHasBeenSet = true; m_privateIpAddress.assign(value); }
306 
314  inline CreateNetworkInterfaceRequest& WithPrivateIpAddress(const Aws::String& value) { SetPrivateIpAddress(value); return *this;}
315 
323  inline CreateNetworkInterfaceRequest& WithPrivateIpAddress(Aws::String&& value) { SetPrivateIpAddress(std::move(value)); return *this;}
324 
332  inline CreateNetworkInterfaceRequest& WithPrivateIpAddress(const char* value) { SetPrivateIpAddress(value); return *this;}
333 
334 
338  inline const Aws::Vector<PrivateIpAddressSpecification>& GetPrivateIpAddresses() const{ return m_privateIpAddresses; }
339 
343  inline bool PrivateIpAddressesHasBeenSet() const { return m_privateIpAddressesHasBeenSet; }
344 
348  inline void SetPrivateIpAddresses(const Aws::Vector<PrivateIpAddressSpecification>& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses = value; }
349 
353  inline void SetPrivateIpAddresses(Aws::Vector<PrivateIpAddressSpecification>&& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses = std::move(value); }
354 
358  inline CreateNetworkInterfaceRequest& WithPrivateIpAddresses(const Aws::Vector<PrivateIpAddressSpecification>& value) { SetPrivateIpAddresses(value); return *this;}
359 
363  inline CreateNetworkInterfaceRequest& WithPrivateIpAddresses(Aws::Vector<PrivateIpAddressSpecification>&& value) { SetPrivateIpAddresses(std::move(value)); return *this;}
364 
368  inline CreateNetworkInterfaceRequest& AddPrivateIpAddresses(const PrivateIpAddressSpecification& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses.push_back(value); return *this; }
369 
373  inline CreateNetworkInterfaceRequest& AddPrivateIpAddresses(PrivateIpAddressSpecification&& value) { m_privateIpAddressesHasBeenSet = true; m_privateIpAddresses.push_back(std::move(value)); return *this; }
374 
375 
388  inline int GetSecondaryPrivateIpAddressCount() const{ return m_secondaryPrivateIpAddressCount; }
389 
402  inline bool SecondaryPrivateIpAddressCountHasBeenSet() const { return m_secondaryPrivateIpAddressCountHasBeenSet; }
403 
416  inline void SetSecondaryPrivateIpAddressCount(int value) { m_secondaryPrivateIpAddressCountHasBeenSet = true; m_secondaryPrivateIpAddressCount = value; }
417 
430  inline CreateNetworkInterfaceRequest& WithSecondaryPrivateIpAddressCount(int value) { SetSecondaryPrivateIpAddressCount(value); return *this;}
431 
432 
439  inline const NetworkInterfaceCreationType& GetInterfaceType() const{ return m_interfaceType; }
440 
447  inline bool InterfaceTypeHasBeenSet() const { return m_interfaceTypeHasBeenSet; }
448 
455  inline void SetInterfaceType(const NetworkInterfaceCreationType& value) { m_interfaceTypeHasBeenSet = true; m_interfaceType = value; }
456 
463  inline void SetInterfaceType(NetworkInterfaceCreationType&& value) { m_interfaceTypeHasBeenSet = true; m_interfaceType = std::move(value); }
464 
471  inline CreateNetworkInterfaceRequest& WithInterfaceType(const NetworkInterfaceCreationType& value) { SetInterfaceType(value); return *this;}
472 
479  inline CreateNetworkInterfaceRequest& WithInterfaceType(NetworkInterfaceCreationType&& value) { SetInterfaceType(std::move(value)); return *this;}
480 
481 
485  inline const Aws::String& GetSubnetId() const{ return m_subnetId; }
486 
490  inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
491 
495  inline void SetSubnetId(const Aws::String& value) { m_subnetIdHasBeenSet = true; m_subnetId = value; }
496 
500  inline void SetSubnetId(Aws::String&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::move(value); }
501 
505  inline void SetSubnetId(const char* value) { m_subnetIdHasBeenSet = true; m_subnetId.assign(value); }
506 
510  inline CreateNetworkInterfaceRequest& WithSubnetId(const Aws::String& value) { SetSubnetId(value); return *this;}
511 
515  inline CreateNetworkInterfaceRequest& WithSubnetId(Aws::String&& value) { SetSubnetId(std::move(value)); return *this;}
516 
520  inline CreateNetworkInterfaceRequest& WithSubnetId(const char* value) { SetSubnetId(value); return *this;}
521 
522 
526  inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
527 
531  inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
532 
536  inline void SetTagSpecifications(const Aws::Vector<TagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
537 
541  inline void SetTagSpecifications(Aws::Vector<TagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
542 
546  inline CreateNetworkInterfaceRequest& WithTagSpecifications(const Aws::Vector<TagSpecification>& value) { SetTagSpecifications(value); return *this;}
547 
551  inline CreateNetworkInterfaceRequest& WithTagSpecifications(Aws::Vector<TagSpecification>&& value) { SetTagSpecifications(std::move(value)); return *this;}
552 
556  inline CreateNetworkInterfaceRequest& AddTagSpecifications(const TagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
557 
561  inline CreateNetworkInterfaceRequest& AddTagSpecifications(TagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
562 
563  private:
564 
565  Aws::String m_description;
566  bool m_descriptionHasBeenSet;
567 
568  bool m_dryRun;
569  bool m_dryRunHasBeenSet;
570 
571  Aws::Vector<Aws::String> m_groups;
572  bool m_groupsHasBeenSet;
573 
574  int m_ipv6AddressCount;
575  bool m_ipv6AddressCountHasBeenSet;
576 
577  Aws::Vector<InstanceIpv6Address> m_ipv6Addresses;
578  bool m_ipv6AddressesHasBeenSet;
579 
580  Aws::String m_privateIpAddress;
581  bool m_privateIpAddressHasBeenSet;
582 
583  Aws::Vector<PrivateIpAddressSpecification> m_privateIpAddresses;
584  bool m_privateIpAddressesHasBeenSet;
585 
586  int m_secondaryPrivateIpAddressCount;
587  bool m_secondaryPrivateIpAddressCountHasBeenSet;
588 
589  NetworkInterfaceCreationType m_interfaceType;
590  bool m_interfaceTypeHasBeenSet;
591 
592  Aws::String m_subnetId;
593  bool m_subnetIdHasBeenSet;
594 
595  Aws::Vector<TagSpecification> m_tagSpecifications;
596  bool m_tagSpecificationsHasBeenSet;
597  };
598 
599 } // namespace Model
600 } // namespace EC2
601 } // namespace Aws
CreateNetworkInterfaceRequest & AddGroups(const Aws::String &value)
CreateNetworkInterfaceRequest & AddGroups(const char *value)
CreateNetworkInterfaceRequest & WithPrivateIpAddress(const char *value)
const Aws::Vector< Aws::String > & GetGroups() const
CreateNetworkInterfaceRequest & WithPrivateIpAddress(Aws::String &&value)
CreateNetworkInterfaceRequest & WithIpv6Addresses(const Aws::Vector< InstanceIpv6Address > &value)
CreateNetworkInterfaceRequest & WithSubnetId(const Aws::String &value)
CreateNetworkInterfaceRequest & AddPrivateIpAddresses(PrivateIpAddressSpecification &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateNetworkInterfaceRequest & WithGroups(const Aws::Vector< Aws::String > &value)
CreateNetworkInterfaceRequest & WithDescription(Aws::String &&value)
void SetIpv6Addresses(Aws::Vector< InstanceIpv6Address > &&value)
CreateNetworkInterfaceRequest & WithSubnetId(const char *value)
CreateNetworkInterfaceRequest & WithPrivateIpAddresses(Aws::Vector< PrivateIpAddressSpecification > &&value)
CreateNetworkInterfaceRequest & WithInterfaceType(const NetworkInterfaceCreationType &value)
CreateNetworkInterfaceRequest & AddTagSpecifications(const TagSpecification &value)
void SetIpv6Addresses(const Aws::Vector< InstanceIpv6Address > &value)
CreateNetworkInterfaceRequest & AddPrivateIpAddresses(const PrivateIpAddressSpecification &value)
void SetGroups(Aws::Vector< Aws::String > &&value)
void SetInterfaceType(NetworkInterfaceCreationType &&value)
CreateNetworkInterfaceRequest & AddIpv6Addresses(const InstanceIpv6Address &value)
const Aws::Vector< InstanceIpv6Address > & GetIpv6Addresses() const
CreateNetworkInterfaceRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
void SetPrivateIpAddresses(Aws::Vector< PrivateIpAddressSpecification > &&value)
void SetGroups(const Aws::Vector< Aws::String > &value)
CreateNetworkInterfaceRequest & WithPrivateIpAddresses(const Aws::Vector< PrivateIpAddressSpecification > &value)
void SetPrivateIpAddresses(const Aws::Vector< PrivateIpAddressSpecification > &value)
CreateNetworkInterfaceRequest & WithGroups(Aws::Vector< Aws::String > &&value)
CreateNetworkInterfaceRequest & WithSecondaryPrivateIpAddressCount(int value)
CreateNetworkInterfaceRequest & WithDryRun(bool value)
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::Vector< PrivateIpAddressSpecification > & GetPrivateIpAddresses() const
CreateNetworkInterfaceRequest & WithPrivateIpAddress(const Aws::String &value)
CreateNetworkInterfaceRequest & AddGroups(Aws::String &&value)
CreateNetworkInterfaceRequest & WithIpv6AddressCount(int value)
CreateNetworkInterfaceRequest & WithSubnetId(Aws::String &&value)
void SetInterfaceType(const NetworkInterfaceCreationType &value)
CreateNetworkInterfaceRequest & AddTagSpecifications(TagSpecification &&value)
CreateNetworkInterfaceRequest & WithIpv6Addresses(Aws::Vector< InstanceIpv6Address > &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
CreateNetworkInterfaceRequest & WithDescription(const char *value)
CreateNetworkInterfaceRequest & WithInterfaceType(NetworkInterfaceCreationType &&value)
CreateNetworkInterfaceRequest & AddIpv6Addresses(InstanceIpv6Address &&value)
CreateNetworkInterfaceRequest & WithDescription(const Aws::String &value)
virtual const char * GetServiceRequestName() const override
const NetworkInterfaceCreationType & GetInterfaceType() const
CreateNetworkInterfaceRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)