AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
AllocateAddressRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/EC2Request.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/DomainType.h>
12#include <aws/ec2/model/TagSpecification.h>
13
14#include <utility>
15
16namespace Aws {
17namespace EC2 {
18namespace Model {
19
23 public:
24 AWS_EC2_API AllocateAddressRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "AllocateAddress"; }
31
32 AWS_EC2_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
42 inline DomainType GetDomain() const { return m_domain; }
43 inline bool DomainHasBeenSet() const { return m_domainHasBeenSet; }
44 inline void SetDomain(DomainType value) {
45 m_domainHasBeenSet = true;
46 m_domain = value;
47 }
49 SetDomain(value);
50 return *this;
51 }
53
55
59 inline const Aws::String& GetAddress() const { return m_address; }
60 inline bool AddressHasBeenSet() const { return m_addressHasBeenSet; }
61 template <typename AddressT = Aws::String>
62 void SetAddress(AddressT&& value) {
63 m_addressHasBeenSet = true;
64 m_address = std::forward<AddressT>(value);
65 }
66 template <typename AddressT = Aws::String>
68 SetAddress(std::forward<AddressT>(value));
69 return *this;
70 }
72
74
79 inline const Aws::String& GetPublicIpv4Pool() const { return m_publicIpv4Pool; }
80 inline bool PublicIpv4PoolHasBeenSet() const { return m_publicIpv4PoolHasBeenSet; }
81 template <typename PublicIpv4PoolT = Aws::String>
82 void SetPublicIpv4Pool(PublicIpv4PoolT&& value) {
83 m_publicIpv4PoolHasBeenSet = true;
84 m_publicIpv4Pool = std::forward<PublicIpv4PoolT>(value);
85 }
86 template <typename PublicIpv4PoolT = Aws::String>
87 AllocateAddressRequest& WithPublicIpv4Pool(PublicIpv4PoolT&& value) {
88 SetPublicIpv4Pool(std::forward<PublicIpv4PoolT>(value));
89 return *this;
90 }
92
94
100 inline const Aws::String& GetNetworkBorderGroup() const { return m_networkBorderGroup; }
101 inline bool NetworkBorderGroupHasBeenSet() const { return m_networkBorderGroupHasBeenSet; }
102 template <typename NetworkBorderGroupT = Aws::String>
103 void SetNetworkBorderGroup(NetworkBorderGroupT&& value) {
104 m_networkBorderGroupHasBeenSet = true;
105 m_networkBorderGroup = std::forward<NetworkBorderGroupT>(value);
106 }
107 template <typename NetworkBorderGroupT = Aws::String>
108 AllocateAddressRequest& WithNetworkBorderGroup(NetworkBorderGroupT&& value) {
109 SetNetworkBorderGroup(std::forward<NetworkBorderGroupT>(value));
110 return *this;
111 }
113
115
120 inline const Aws::String& GetCustomerOwnedIpv4Pool() const { return m_customerOwnedIpv4Pool; }
121 inline bool CustomerOwnedIpv4PoolHasBeenSet() const { return m_customerOwnedIpv4PoolHasBeenSet; }
122 template <typename CustomerOwnedIpv4PoolT = Aws::String>
123 void SetCustomerOwnedIpv4Pool(CustomerOwnedIpv4PoolT&& value) {
124 m_customerOwnedIpv4PoolHasBeenSet = true;
125 m_customerOwnedIpv4Pool = std::forward<CustomerOwnedIpv4PoolT>(value);
126 }
127 template <typename CustomerOwnedIpv4PoolT = Aws::String>
128 AllocateAddressRequest& WithCustomerOwnedIpv4Pool(CustomerOwnedIpv4PoolT&& value) {
129 SetCustomerOwnedIpv4Pool(std::forward<CustomerOwnedIpv4PoolT>(value));
130 return *this;
131 }
133
135
138 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
139 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
140 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
141 void SetTagSpecifications(TagSpecificationsT&& value) {
142 m_tagSpecificationsHasBeenSet = true;
143 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
144 }
145 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
146 AllocateAddressRequest& WithTagSpecifications(TagSpecificationsT&& value) {
147 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
148 return *this;
149 }
150 template <typename TagSpecificationsT = TagSpecification>
151 AllocateAddressRequest& AddTagSpecifications(TagSpecificationsT&& value) {
152 m_tagSpecificationsHasBeenSet = true;
153 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
154 return *this;
155 }
157
159
166 inline const Aws::String& GetIpamPoolId() const { return m_ipamPoolId; }
167 inline bool IpamPoolIdHasBeenSet() const { return m_ipamPoolIdHasBeenSet; }
168 template <typename IpamPoolIdT = Aws::String>
169 void SetIpamPoolId(IpamPoolIdT&& value) {
170 m_ipamPoolIdHasBeenSet = true;
171 m_ipamPoolId = std::forward<IpamPoolIdT>(value);
172 }
173 template <typename IpamPoolIdT = Aws::String>
175 SetIpamPoolId(std::forward<IpamPoolIdT>(value));
176 return *this;
177 }
179
181
187 inline bool GetDryRun() const { return m_dryRun; }
188 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
189 inline void SetDryRun(bool value) {
190 m_dryRunHasBeenSet = true;
191 m_dryRun = value;
192 }
193 inline AllocateAddressRequest& WithDryRun(bool value) {
194 SetDryRun(value);
195 return *this;
196 }
198 private:
200
201 Aws::String m_address;
202
203 Aws::String m_publicIpv4Pool;
204
205 Aws::String m_networkBorderGroup;
206
207 Aws::String m_customerOwnedIpv4Pool;
208
209 Aws::Vector<TagSpecification> m_tagSpecifications;
210
211 Aws::String m_ipamPoolId;
212
213 bool m_dryRun{false};
214 bool m_domainHasBeenSet = false;
215 bool m_addressHasBeenSet = false;
216 bool m_publicIpv4PoolHasBeenSet = false;
217 bool m_networkBorderGroupHasBeenSet = false;
218 bool m_customerOwnedIpv4PoolHasBeenSet = false;
219 bool m_tagSpecificationsHasBeenSet = false;
220 bool m_ipamPoolIdHasBeenSet = false;
221 bool m_dryRunHasBeenSet = false;
222};
223
224} // namespace Model
225} // namespace EC2
226} // namespace Aws
void SetCustomerOwnedIpv4Pool(CustomerOwnedIpv4PoolT &&value)
AllocateAddressRequest & AddTagSpecifications(TagSpecificationsT &&value)
AWS_EC2_API AllocateAddressRequest()=default
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
AWS_EC2_API Aws::String SerializePayload() const override
virtual const char * GetServiceRequestName() const override
void SetPublicIpv4Pool(PublicIpv4PoolT &&value)
AllocateAddressRequest & WithTagSpecifications(TagSpecificationsT &&value)
AllocateAddressRequest & WithPublicIpv4Pool(PublicIpv4PoolT &&value)
const Aws::String & GetNetworkBorderGroup() const
void SetNetworkBorderGroup(NetworkBorderGroupT &&value)
AllocateAddressRequest & WithAddress(AddressT &&value)
AllocateAddressRequest & WithDryRun(bool value)
void SetTagSpecifications(TagSpecificationsT &&value)
AllocateAddressRequest & WithIpamPoolId(IpamPoolIdT &&value)
AllocateAddressRequest & WithNetworkBorderGroup(NetworkBorderGroupT &&value)
AllocateAddressRequest & WithDomain(DomainType value)
AllocateAddressRequest & WithCustomerOwnedIpv4Pool(CustomerOwnedIpv4PoolT &&value)
const Aws::String & GetCustomerOwnedIpv4Pool() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector