AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateSubnetRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/ec2/model/TagSpecification.h>
12#include <utility>
13
14namespace Aws
15{
16namespace EC2
17{
18namespace Model
19{
20
24 {
25 public:
26 AWS_EC2_API CreateSubnetRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateSubnet"; }
33
34 AWS_EC2_API Aws::String SerializePayload() const override;
35
36 protected:
37 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
38
39 public:
40
42
45 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
46 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
47 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
48 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
49 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
50 CreateSubnetRequest& WithTagSpecifications(TagSpecificationsT&& value) { SetTagSpecifications(std::forward<TagSpecificationsT>(value)); return *this;}
51 template<typename TagSpecificationsT = TagSpecification>
52 CreateSubnetRequest& AddTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value)); return *this; }
54
56
67 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
68 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
69 template<typename AvailabilityZoneT = Aws::String>
70 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
71 template<typename AvailabilityZoneT = Aws::String>
72 CreateSubnetRequest& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
74
76
79 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
80 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
81 template<typename AvailabilityZoneIdT = Aws::String>
82 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value); }
83 template<typename AvailabilityZoneIdT = Aws::String>
84 CreateSubnetRequest& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) { SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value)); return *this;}
86
88
95 inline const Aws::String& GetCidrBlock() const { return m_cidrBlock; }
96 inline bool CidrBlockHasBeenSet() const { return m_cidrBlockHasBeenSet; }
97 template<typename CidrBlockT = Aws::String>
98 void SetCidrBlock(CidrBlockT&& value) { m_cidrBlockHasBeenSet = true; m_cidrBlock = std::forward<CidrBlockT>(value); }
99 template<typename CidrBlockT = Aws::String>
100 CreateSubnetRequest& WithCidrBlock(CidrBlockT&& value) { SetCidrBlock(std::forward<CidrBlockT>(value)); return *this;}
102
104
108 inline const Aws::String& GetIpv6CidrBlock() const { return m_ipv6CidrBlock; }
109 inline bool Ipv6CidrBlockHasBeenSet() const { return m_ipv6CidrBlockHasBeenSet; }
110 template<typename Ipv6CidrBlockT = Aws::String>
111 void SetIpv6CidrBlock(Ipv6CidrBlockT&& value) { m_ipv6CidrBlockHasBeenSet = true; m_ipv6CidrBlock = std::forward<Ipv6CidrBlockT>(value); }
112 template<typename Ipv6CidrBlockT = Aws::String>
113 CreateSubnetRequest& WithIpv6CidrBlock(Ipv6CidrBlockT&& value) { SetIpv6CidrBlock(std::forward<Ipv6CidrBlockT>(value)); return *this;}
115
117
121 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
122 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
123 template<typename OutpostArnT = Aws::String>
124 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::forward<OutpostArnT>(value); }
125 template<typename OutpostArnT = Aws::String>
126 CreateSubnetRequest& WithOutpostArn(OutpostArnT&& value) { SetOutpostArn(std::forward<OutpostArnT>(value)); return *this;}
128
130
133 inline const Aws::String& GetVpcId() const { return m_vpcId; }
134 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
135 template<typename VpcIdT = Aws::String>
136 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::forward<VpcIdT>(value); }
137 template<typename VpcIdT = Aws::String>
138 CreateSubnetRequest& WithVpcId(VpcIdT&& value) { SetVpcId(std::forward<VpcIdT>(value)); return *this;}
140
142
145 inline bool GetIpv6Native() const { return m_ipv6Native; }
146 inline bool Ipv6NativeHasBeenSet() const { return m_ipv6NativeHasBeenSet; }
147 inline void SetIpv6Native(bool value) { m_ipv6NativeHasBeenSet = true; m_ipv6Native = value; }
148 inline CreateSubnetRequest& WithIpv6Native(bool value) { SetIpv6Native(value); return *this;}
150
152
155 inline const Aws::String& GetIpv4IpamPoolId() const { return m_ipv4IpamPoolId; }
156 inline bool Ipv4IpamPoolIdHasBeenSet() const { return m_ipv4IpamPoolIdHasBeenSet; }
157 template<typename Ipv4IpamPoolIdT = Aws::String>
158 void SetIpv4IpamPoolId(Ipv4IpamPoolIdT&& value) { m_ipv4IpamPoolIdHasBeenSet = true; m_ipv4IpamPoolId = std::forward<Ipv4IpamPoolIdT>(value); }
159 template<typename Ipv4IpamPoolIdT = Aws::String>
160 CreateSubnetRequest& WithIpv4IpamPoolId(Ipv4IpamPoolIdT&& value) { SetIpv4IpamPoolId(std::forward<Ipv4IpamPoolIdT>(value)); return *this;}
162
164
167 inline int GetIpv4NetmaskLength() const { return m_ipv4NetmaskLength; }
168 inline bool Ipv4NetmaskLengthHasBeenSet() const { return m_ipv4NetmaskLengthHasBeenSet; }
169 inline void SetIpv4NetmaskLength(int value) { m_ipv4NetmaskLengthHasBeenSet = true; m_ipv4NetmaskLength = value; }
170 inline CreateSubnetRequest& WithIpv4NetmaskLength(int value) { SetIpv4NetmaskLength(value); return *this;}
172
174
177 inline const Aws::String& GetIpv6IpamPoolId() const { return m_ipv6IpamPoolId; }
178 inline bool Ipv6IpamPoolIdHasBeenSet() const { return m_ipv6IpamPoolIdHasBeenSet; }
179 template<typename Ipv6IpamPoolIdT = Aws::String>
180 void SetIpv6IpamPoolId(Ipv6IpamPoolIdT&& value) { m_ipv6IpamPoolIdHasBeenSet = true; m_ipv6IpamPoolId = std::forward<Ipv6IpamPoolIdT>(value); }
181 template<typename Ipv6IpamPoolIdT = Aws::String>
182 CreateSubnetRequest& WithIpv6IpamPoolId(Ipv6IpamPoolIdT&& value) { SetIpv6IpamPoolId(std::forward<Ipv6IpamPoolIdT>(value)); return *this;}
184
186
189 inline int GetIpv6NetmaskLength() const { return m_ipv6NetmaskLength; }
190 inline bool Ipv6NetmaskLengthHasBeenSet() const { return m_ipv6NetmaskLengthHasBeenSet; }
191 inline void SetIpv6NetmaskLength(int value) { m_ipv6NetmaskLengthHasBeenSet = true; m_ipv6NetmaskLength = value; }
192 inline CreateSubnetRequest& WithIpv6NetmaskLength(int value) { SetIpv6NetmaskLength(value); return *this;}
194
196
202 inline bool GetDryRun() const { return m_dryRun; }
203 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
204 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
205 inline CreateSubnetRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
207 private:
208
209 Aws::Vector<TagSpecification> m_tagSpecifications;
210 bool m_tagSpecificationsHasBeenSet = false;
211
212 Aws::String m_availabilityZone;
213 bool m_availabilityZoneHasBeenSet = false;
214
215 Aws::String m_availabilityZoneId;
216 bool m_availabilityZoneIdHasBeenSet = false;
217
218 Aws::String m_cidrBlock;
219 bool m_cidrBlockHasBeenSet = false;
220
221 Aws::String m_ipv6CidrBlock;
222 bool m_ipv6CidrBlockHasBeenSet = false;
223
224 Aws::String m_outpostArn;
225 bool m_outpostArnHasBeenSet = false;
226
227 Aws::String m_vpcId;
228 bool m_vpcIdHasBeenSet = false;
229
230 bool m_ipv6Native{false};
231 bool m_ipv6NativeHasBeenSet = false;
232
233 Aws::String m_ipv4IpamPoolId;
234 bool m_ipv4IpamPoolIdHasBeenSet = false;
235
236 int m_ipv4NetmaskLength{0};
237 bool m_ipv4NetmaskLengthHasBeenSet = false;
238
239 Aws::String m_ipv6IpamPoolId;
240 bool m_ipv6IpamPoolIdHasBeenSet = false;
241
242 int m_ipv6NetmaskLength{0};
243 bool m_ipv6NetmaskLengthHasBeenSet = false;
244
245 bool m_dryRun{false};
246 bool m_dryRunHasBeenSet = false;
247 };
248
249} // namespace Model
250} // namespace EC2
251} // namespace Aws
CreateSubnetRequest & AddTagSpecifications(TagSpecificationsT &&value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
CreateSubnetRequest & WithTagSpecifications(TagSpecificationsT &&value)
AWS_EC2_API CreateSubnetRequest()=default
CreateSubnetRequest & WithIpv4IpamPoolId(Ipv4IpamPoolIdT &&value)
CreateSubnetRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
CreateSubnetRequest & WithVpcId(VpcIdT &&value)
const Aws::String & GetOutpostArn() const
const Aws::String & GetIpv6CidrBlock() const
AWS_EC2_API Aws::String SerializePayload() const override
CreateSubnetRequest & WithIpv6CidrBlock(Ipv6CidrBlockT &&value)
const Aws::String & GetCidrBlock() const
virtual const char * GetServiceRequestName() const override
CreateSubnetRequest & WithOutpostArn(OutpostArnT &&value)
CreateSubnetRequest & WithIpv4NetmaskLength(int value)
void SetIpv6CidrBlock(Ipv6CidrBlockT &&value)
CreateSubnetRequest & WithCidrBlock(CidrBlockT &&value)
void SetIpv4IpamPoolId(Ipv4IpamPoolIdT &&value)
CreateSubnetRequest & WithIpv6Native(bool value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
void SetIpv6IpamPoolId(Ipv6IpamPoolIdT &&value)
const Aws::String & GetIpv4IpamPoolId() const
CreateSubnetRequest & WithIpv6NetmaskLength(int value)
CreateSubnetRequest & WithDryRun(bool value)
const Aws::String & GetAvailabilityZoneId() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateSubnetRequest & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
CreateSubnetRequest & WithIpv6IpamPoolId(Ipv6IpamPoolIdT &&value)
const Aws::String & GetIpv6IpamPoolId() const
void SetTagSpecifications(TagSpecificationsT &&value)
const Aws::String & GetAvailabilityZone() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector