AWS SDK for C++  1.8.56
AWS SDK for C++
CreateVpcRequest.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>
10 #include <aws/ec2/model/Tenancy.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace EC2
18 {
19 namespace Model
20 {
21 
25  {
26  public:
28 
29  // Service request name is the Operation name which will send this request out,
30  // each operation should has unique request name, so that we can get operation's name from this request.
31  // Note: this is not true for response, multiple operations may have the same response name,
32  // so we can not get operation's name from response.
33  inline virtual const char* GetServiceRequestName() const override { return "CreateVpc"; }
34 
35  Aws::String SerializePayload() const override;
36 
37  protected:
38  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
39 
40  public:
41 
48  inline const Aws::String& GetCidrBlock() const{ return m_cidrBlock; }
49 
56  inline bool CidrBlockHasBeenSet() const { return m_cidrBlockHasBeenSet; }
57 
64  inline void SetCidrBlock(const Aws::String& value) { m_cidrBlockHasBeenSet = true; m_cidrBlock = value; }
65 
72  inline void SetCidrBlock(Aws::String&& value) { m_cidrBlockHasBeenSet = true; m_cidrBlock = std::move(value); }
73 
80  inline void SetCidrBlock(const char* value) { m_cidrBlockHasBeenSet = true; m_cidrBlock.assign(value); }
81 
88  inline CreateVpcRequest& WithCidrBlock(const Aws::String& value) { SetCidrBlock(value); return *this;}
89 
96  inline CreateVpcRequest& WithCidrBlock(Aws::String&& value) { SetCidrBlock(std::move(value)); return *this;}
97 
104  inline CreateVpcRequest& WithCidrBlock(const char* value) { SetCidrBlock(value); return *this;}
105 
106 
112  inline bool GetAmazonProvidedIpv6CidrBlock() const{ return m_amazonProvidedIpv6CidrBlock; }
113 
119  inline bool AmazonProvidedIpv6CidrBlockHasBeenSet() const { return m_amazonProvidedIpv6CidrBlockHasBeenSet; }
120 
126  inline void SetAmazonProvidedIpv6CidrBlock(bool value) { m_amazonProvidedIpv6CidrBlockHasBeenSet = true; m_amazonProvidedIpv6CidrBlock = value; }
127 
133  inline CreateVpcRequest& WithAmazonProvidedIpv6CidrBlock(bool value) { SetAmazonProvidedIpv6CidrBlock(value); return *this;}
134 
135 
140  inline const Aws::String& GetIpv6Pool() const{ return m_ipv6Pool; }
141 
146  inline bool Ipv6PoolHasBeenSet() const { return m_ipv6PoolHasBeenSet; }
147 
152  inline void SetIpv6Pool(const Aws::String& value) { m_ipv6PoolHasBeenSet = true; m_ipv6Pool = value; }
153 
158  inline void SetIpv6Pool(Aws::String&& value) { m_ipv6PoolHasBeenSet = true; m_ipv6Pool = std::move(value); }
159 
164  inline void SetIpv6Pool(const char* value) { m_ipv6PoolHasBeenSet = true; m_ipv6Pool.assign(value); }
165 
170  inline CreateVpcRequest& WithIpv6Pool(const Aws::String& value) { SetIpv6Pool(value); return *this;}
171 
176  inline CreateVpcRequest& WithIpv6Pool(Aws::String&& value) { SetIpv6Pool(std::move(value)); return *this;}
177 
182  inline CreateVpcRequest& WithIpv6Pool(const char* value) { SetIpv6Pool(value); return *this;}
183 
184 
190  inline const Aws::String& GetIpv6CidrBlock() const{ return m_ipv6CidrBlock; }
191 
197  inline bool Ipv6CidrBlockHasBeenSet() const { return m_ipv6CidrBlockHasBeenSet; }
198 
204  inline void SetIpv6CidrBlock(const Aws::String& value) { m_ipv6CidrBlockHasBeenSet = true; m_ipv6CidrBlock = value; }
205 
211  inline void SetIpv6CidrBlock(Aws::String&& value) { m_ipv6CidrBlockHasBeenSet = true; m_ipv6CidrBlock = std::move(value); }
212 
218  inline void SetIpv6CidrBlock(const char* value) { m_ipv6CidrBlockHasBeenSet = true; m_ipv6CidrBlock.assign(value); }
219 
225  inline CreateVpcRequest& WithIpv6CidrBlock(const Aws::String& value) { SetIpv6CidrBlock(value); return *this;}
226 
232  inline CreateVpcRequest& WithIpv6CidrBlock(Aws::String&& value) { SetIpv6CidrBlock(std::move(value)); return *this;}
233 
239  inline CreateVpcRequest& WithIpv6CidrBlock(const char* value) { SetIpv6CidrBlock(value); return *this;}
240 
241 
248  inline bool GetDryRun() const{ return m_dryRun; }
249 
256  inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
257 
264  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
265 
272  inline CreateVpcRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
273 
274 
286  inline const Tenancy& GetInstanceTenancy() const{ return m_instanceTenancy; }
287 
299  inline bool InstanceTenancyHasBeenSet() const { return m_instanceTenancyHasBeenSet; }
300 
312  inline void SetInstanceTenancy(const Tenancy& value) { m_instanceTenancyHasBeenSet = true; m_instanceTenancy = value; }
313 
325  inline void SetInstanceTenancy(Tenancy&& value) { m_instanceTenancyHasBeenSet = true; m_instanceTenancy = std::move(value); }
326 
338  inline CreateVpcRequest& WithInstanceTenancy(const Tenancy& value) { SetInstanceTenancy(value); return *this;}
339 
351  inline CreateVpcRequest& WithInstanceTenancy(Tenancy&& value) { SetInstanceTenancy(std::move(value)); return *this;}
352 
353 
360  inline const Aws::String& GetIpv6CidrBlockNetworkBorderGroup() const{ return m_ipv6CidrBlockNetworkBorderGroup; }
361 
368  inline bool Ipv6CidrBlockNetworkBorderGroupHasBeenSet() const { return m_ipv6CidrBlockNetworkBorderGroupHasBeenSet; }
369 
376  inline void SetIpv6CidrBlockNetworkBorderGroup(const Aws::String& value) { m_ipv6CidrBlockNetworkBorderGroupHasBeenSet = true; m_ipv6CidrBlockNetworkBorderGroup = value; }
377 
384  inline void SetIpv6CidrBlockNetworkBorderGroup(Aws::String&& value) { m_ipv6CidrBlockNetworkBorderGroupHasBeenSet = true; m_ipv6CidrBlockNetworkBorderGroup = std::move(value); }
385 
392  inline void SetIpv6CidrBlockNetworkBorderGroup(const char* value) { m_ipv6CidrBlockNetworkBorderGroupHasBeenSet = true; m_ipv6CidrBlockNetworkBorderGroup.assign(value); }
393 
400  inline CreateVpcRequest& WithIpv6CidrBlockNetworkBorderGroup(const Aws::String& value) { SetIpv6CidrBlockNetworkBorderGroup(value); return *this;}
401 
408  inline CreateVpcRequest& WithIpv6CidrBlockNetworkBorderGroup(Aws::String&& value) { SetIpv6CidrBlockNetworkBorderGroup(std::move(value)); return *this;}
409 
416  inline CreateVpcRequest& WithIpv6CidrBlockNetworkBorderGroup(const char* value) { SetIpv6CidrBlockNetworkBorderGroup(value); return *this;}
417 
418 
422  inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
423 
427  inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
428 
432  inline void SetTagSpecifications(const Aws::Vector<TagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
433 
437  inline void SetTagSpecifications(Aws::Vector<TagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
438 
442  inline CreateVpcRequest& WithTagSpecifications(const Aws::Vector<TagSpecification>& value) { SetTagSpecifications(value); return *this;}
443 
447  inline CreateVpcRequest& WithTagSpecifications(Aws::Vector<TagSpecification>&& value) { SetTagSpecifications(std::move(value)); return *this;}
448 
452  inline CreateVpcRequest& AddTagSpecifications(const TagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
453 
457  inline CreateVpcRequest& AddTagSpecifications(TagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
458 
459  private:
460 
461  Aws::String m_cidrBlock;
462  bool m_cidrBlockHasBeenSet;
463 
464  bool m_amazonProvidedIpv6CidrBlock;
465  bool m_amazonProvidedIpv6CidrBlockHasBeenSet;
466 
467  Aws::String m_ipv6Pool;
468  bool m_ipv6PoolHasBeenSet;
469 
470  Aws::String m_ipv6CidrBlock;
471  bool m_ipv6CidrBlockHasBeenSet;
472 
473  bool m_dryRun;
474  bool m_dryRunHasBeenSet;
475 
476  Tenancy m_instanceTenancy;
477  bool m_instanceTenancyHasBeenSet;
478 
479  Aws::String m_ipv6CidrBlockNetworkBorderGroup;
480  bool m_ipv6CidrBlockNetworkBorderGroupHasBeenSet;
481 
482  Aws::Vector<TagSpecification> m_tagSpecifications;
483  bool m_tagSpecificationsHasBeenSet;
484  };
485 
486 } // namespace Model
487 } // namespace EC2
488 } // namespace Aws
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreateVpcRequest & WithIpv6Pool(Aws::String &&value)
void SetIpv6CidrBlockNetworkBorderGroup(Aws::String &&value)
CreateVpcRequest & WithDryRun(bool value)
void SetIpv6Pool(const char *value)
bool Ipv6CidrBlockNetworkBorderGroupHasBeenSet() const
CreateVpcRequest & WithInstanceTenancy(const Tenancy &value)
CreateVpcRequest & WithIpv6CidrBlockNetworkBorderGroup(const Aws::String &value)
void SetIpv6CidrBlock(const char *value)
void SetCidrBlock(const char *value)
const Aws::String & GetCidrBlock() const
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
CreateVpcRequest & AddTagSpecifications(const TagSpecification &value)
CreateVpcRequest & WithIpv6Pool(const char *value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
void SetInstanceTenancy(Tenancy &&value)
const Aws::String & GetIpv6CidrBlockNetworkBorderGroup() const
CreateVpcRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
const Tenancy & GetInstanceTenancy() const
void SetIpv6Pool(Aws::String &&value)
CreateVpcRequest & WithAmazonProvidedIpv6CidrBlock(bool value)
CreateVpcRequest & WithCidrBlock(const Aws::String &value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateVpcRequest & WithIpv6CidrBlock(const char *value)
CreateVpcRequest & WithIpv6CidrBlock(const Aws::String &value)
CreateVpcRequest & WithInstanceTenancy(Tenancy &&value)
const Aws::String & GetIpv6Pool() const
CreateVpcRequest & WithIpv6CidrBlockNetworkBorderGroup(Aws::String &&value)
CreateVpcRequest & WithCidrBlock(Aws::String &&value)
CreateVpcRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateVpcRequest & AddTagSpecifications(TagSpecification &&value)
CreateVpcRequest & WithIpv6CidrBlock(Aws::String &&value)
void SetIpv6CidrBlock(Aws::String &&value)
void SetAmazonProvidedIpv6CidrBlock(bool value)
void SetIpv6Pool(const Aws::String &value)
void SetCidrBlock(Aws::String &&value)
const Aws::String & GetIpv6CidrBlock() const
virtual const char * GetServiceRequestName() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetCidrBlock(const Aws::String &value)
CreateVpcRequest & WithCidrBlock(const char *value)
void SetInstanceTenancy(const Tenancy &value)
void SetIpv6CidrBlockNetworkBorderGroup(const Aws::String &value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
CreateVpcRequest & WithIpv6Pool(const Aws::String &value)
CreateVpcRequest & WithIpv6CidrBlockNetworkBorderGroup(const char *value)
void SetIpv6CidrBlockNetworkBorderGroup(const char *value)
void SetIpv6CidrBlock(const Aws::String &value)