AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
AssociateNatGatewayAddressRequest.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
12#include <utility>
13
14namespace Aws {
15namespace EC2 {
16namespace Model {
17
21 public:
22 AWS_EC2_API AssociateNatGatewayAddressRequest() = default;
23
24 // Service request name is the Operation name which will send this request out,
25 // each operation should has unique request name, so that we can get operation's name from this request.
26 // Note: this is not true for response, multiple operations may have the same response name,
27 // so we can not get operation's name from response.
28 inline virtual const char* GetServiceRequestName() const override { return "AssociateNatGatewayAddress"; }
29
30 AWS_EC2_API Aws::String SerializePayload() const override;
31
32 protected:
33 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
34
35 public:
37
40 inline const Aws::String& GetNatGatewayId() const { return m_natGatewayId; }
41 inline bool NatGatewayIdHasBeenSet() const { return m_natGatewayIdHasBeenSet; }
42 template <typename NatGatewayIdT = Aws::String>
43 void SetNatGatewayId(NatGatewayIdT&& value) {
44 m_natGatewayIdHasBeenSet = true;
45 m_natGatewayId = std::forward<NatGatewayIdT>(value);
46 }
47 template <typename NatGatewayIdT = Aws::String>
49 SetNatGatewayId(std::forward<NatGatewayIdT>(value));
50 return *this;
51 }
53
55
59 inline const Aws::Vector<Aws::String>& GetAllocationIds() const { return m_allocationIds; }
60 inline bool AllocationIdsHasBeenSet() const { return m_allocationIdsHasBeenSet; }
61 template <typename AllocationIdsT = Aws::Vector<Aws::String>>
62 void SetAllocationIds(AllocationIdsT&& value) {
63 m_allocationIdsHasBeenSet = true;
64 m_allocationIds = std::forward<AllocationIdsT>(value);
65 }
66 template <typename AllocationIdsT = Aws::Vector<Aws::String>>
68 SetAllocationIds(std::forward<AllocationIdsT>(value));
69 return *this;
70 }
71 template <typename AllocationIdsT = Aws::String>
73 m_allocationIdsHasBeenSet = true;
74 m_allocationIds.emplace_back(std::forward<AllocationIdsT>(value));
75 return *this;
76 }
78
80
83 inline const Aws::Vector<Aws::String>& GetPrivateIpAddresses() const { return m_privateIpAddresses; }
84 inline bool PrivateIpAddressesHasBeenSet() const { return m_privateIpAddressesHasBeenSet; }
85 template <typename PrivateIpAddressesT = Aws::Vector<Aws::String>>
86 void SetPrivateIpAddresses(PrivateIpAddressesT&& value) {
87 m_privateIpAddressesHasBeenSet = true;
88 m_privateIpAddresses = std::forward<PrivateIpAddressesT>(value);
89 }
90 template <typename PrivateIpAddressesT = Aws::Vector<Aws::String>>
92 SetPrivateIpAddresses(std::forward<PrivateIpAddressesT>(value));
93 return *this;
94 }
95 template <typename PrivateIpAddressesT = Aws::String>
97 m_privateIpAddressesHasBeenSet = true;
98 m_privateIpAddresses.emplace_back(std::forward<PrivateIpAddressesT>(value));
99 return *this;
100 }
102
104
110 inline bool GetDryRun() const { return m_dryRun; }
111 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
112 inline void SetDryRun(bool value) {
113 m_dryRunHasBeenSet = true;
114 m_dryRun = value;
115 }
117 SetDryRun(value);
118 return *this;
119 }
121
123
131 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
132 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
133 template <typename AvailabilityZoneT = Aws::String>
134 void SetAvailabilityZone(AvailabilityZoneT&& value) {
135 m_availabilityZoneHasBeenSet = true;
136 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
137 }
138 template <typename AvailabilityZoneT = Aws::String>
140 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
141 return *this;
142 }
144
146
155 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
156 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
157 template <typename AvailabilityZoneIdT = Aws::String>
158 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
159 m_availabilityZoneIdHasBeenSet = true;
160 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
161 }
162 template <typename AvailabilityZoneIdT = Aws::String>
164 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
165 return *this;
166 }
168 private:
169 Aws::String m_natGatewayId;
170
171 Aws::Vector<Aws::String> m_allocationIds;
172
173 Aws::Vector<Aws::String> m_privateIpAddresses;
174
175 bool m_dryRun{false};
176
177 Aws::String m_availabilityZone;
178
179 Aws::String m_availabilityZoneId;
180 bool m_natGatewayIdHasBeenSet = false;
181 bool m_allocationIdsHasBeenSet = false;
182 bool m_privateIpAddressesHasBeenSet = false;
183 bool m_dryRunHasBeenSet = false;
184 bool m_availabilityZoneHasBeenSet = false;
185 bool m_availabilityZoneIdHasBeenSet = false;
186};
187
188} // namespace Model
189} // namespace EC2
190} // namespace Aws
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
AssociateNatGatewayAddressRequest & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
AssociateNatGatewayAddressRequest & AddPrivateIpAddresses(PrivateIpAddressesT &&value)
AssociateNatGatewayAddressRequest & WithAllocationIds(AllocationIdsT &&value)
AssociateNatGatewayAddressRequest & AddAllocationIds(AllocationIdsT &&value)
const Aws::Vector< Aws::String > & GetPrivateIpAddresses() const
AssociateNatGatewayAddressRequest & WithPrivateIpAddresses(PrivateIpAddressesT &&value)
AssociateNatGatewayAddressRequest & WithNatGatewayId(NatGatewayIdT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
AssociateNatGatewayAddressRequest & WithDryRun(bool value)
AssociateNatGatewayAddressRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector