AWS SDK for C++  1.8.7
AWS SDK for C++
CreateNatGatewayRequest.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>
12 #include <utility>
13 #include <aws/core/utils/UUID.h>
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 "CreateNatGateway"; }
34 
35  Aws::String SerializePayload() const override;
36 
37  protected:
38  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
39 
40  public:
41 
47  inline const Aws::String& GetAllocationId() const{ return m_allocationId; }
48 
54  inline bool AllocationIdHasBeenSet() const { return m_allocationIdHasBeenSet; }
55 
61  inline void SetAllocationId(const Aws::String& value) { m_allocationIdHasBeenSet = true; m_allocationId = value; }
62 
68  inline void SetAllocationId(Aws::String&& value) { m_allocationIdHasBeenSet = true; m_allocationId = std::move(value); }
69 
75  inline void SetAllocationId(const char* value) { m_allocationIdHasBeenSet = true; m_allocationId.assign(value); }
76 
82  inline CreateNatGatewayRequest& WithAllocationId(const Aws::String& value) { SetAllocationId(value); return *this;}
83 
89  inline CreateNatGatewayRequest& WithAllocationId(Aws::String&& value) { SetAllocationId(std::move(value)); return *this;}
90 
96  inline CreateNatGatewayRequest& WithAllocationId(const char* value) { SetAllocationId(value); return *this;}
97 
98 
105  inline const Aws::String& GetClientToken() const{ return m_clientToken; }
106 
113  inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
114 
121  inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
122 
129  inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
130 
137  inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
138 
145  inline CreateNatGatewayRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
146 
153  inline CreateNatGatewayRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
154 
161  inline CreateNatGatewayRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
162 
163 
170  inline bool GetDryRun() const{ return m_dryRun; }
171 
178  inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
179 
186  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
187 
194  inline CreateNatGatewayRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
195 
196 
200  inline const Aws::String& GetSubnetId() const{ return m_subnetId; }
201 
205  inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
206 
210  inline void SetSubnetId(const Aws::String& value) { m_subnetIdHasBeenSet = true; m_subnetId = value; }
211 
215  inline void SetSubnetId(Aws::String&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::move(value); }
216 
220  inline void SetSubnetId(const char* value) { m_subnetIdHasBeenSet = true; m_subnetId.assign(value); }
221 
225  inline CreateNatGatewayRequest& WithSubnetId(const Aws::String& value) { SetSubnetId(value); return *this;}
226 
230  inline CreateNatGatewayRequest& WithSubnetId(Aws::String&& value) { SetSubnetId(std::move(value)); return *this;}
231 
235  inline CreateNatGatewayRequest& WithSubnetId(const char* value) { SetSubnetId(value); return *this;}
236 
237 
241  inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
242 
246  inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
247 
251  inline void SetTagSpecifications(const Aws::Vector<TagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
252 
256  inline void SetTagSpecifications(Aws::Vector<TagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
257 
261  inline CreateNatGatewayRequest& WithTagSpecifications(const Aws::Vector<TagSpecification>& value) { SetTagSpecifications(value); return *this;}
262 
266  inline CreateNatGatewayRequest& WithTagSpecifications(Aws::Vector<TagSpecification>&& value) { SetTagSpecifications(std::move(value)); return *this;}
267 
271  inline CreateNatGatewayRequest& AddTagSpecifications(const TagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
272 
276  inline CreateNatGatewayRequest& AddTagSpecifications(TagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
277 
278  private:
279 
280  Aws::String m_allocationId;
281  bool m_allocationIdHasBeenSet;
282 
283  Aws::String m_clientToken;
284  bool m_clientTokenHasBeenSet;
285 
286  bool m_dryRun;
287  bool m_dryRunHasBeenSet;
288 
289  Aws::String m_subnetId;
290  bool m_subnetIdHasBeenSet;
291 
292  Aws::Vector<TagSpecification> m_tagSpecifications;
293  bool m_tagSpecificationsHasBeenSet;
294  };
295 
296 } // namespace Model
297 } // namespace EC2
298 } // namespace Aws
CreateNatGatewayRequest & WithAllocationId(const char *value)
CreateNatGatewayRequest & WithClientToken(const char *value)
CreateNatGatewayRequest & WithSubnetId(Aws::String &&value)
void SetAllocationId(const Aws::String &value)
CreateNatGatewayRequest & WithClientToken(Aws::String &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
CreateNatGatewayRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreateNatGatewayRequest & WithAllocationId(Aws::String &&value)
virtual const char * GetServiceRequestName() const override
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreateNatGatewayRequest & WithAllocationId(const Aws::String &value)
CreateNatGatewayRequest & AddTagSpecifications(const TagSpecification &value)
CreateNatGatewayRequest & AddTagSpecifications(TagSpecification &&value)
void SetClientToken(const Aws::String &value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
CreateNatGatewayRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateNatGatewayRequest & WithSubnetId(const char *value)
CreateNatGatewayRequest & WithDryRun(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
CreateNatGatewayRequest & WithSubnetId(const Aws::String &value)
CreateNatGatewayRequest & WithClientToken(const Aws::String &value)