AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateCustomerGatewayRequest.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/GatewayType.h>
12#include <aws/ec2/model/TagSpecification.h>
13
14#include <utility>
15
16namespace Aws {
17namespace EC2 {
18namespace Model {
19
27 public:
28 AWS_EC2_API CreateCustomerGatewayRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateCustomerGateway"; }
35
36 AWS_EC2_API Aws::String SerializePayload() const override;
37
38 protected:
39 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
40
41 public:
43
51 inline int GetBgpAsn() const { return m_bgpAsn; }
52 inline bool BgpAsnHasBeenSet() const { return m_bgpAsnHasBeenSet; }
53 inline void SetBgpAsn(int value) {
54 m_bgpAsnHasBeenSet = true;
55 m_bgpAsn = value;
56 }
58 SetBgpAsn(value);
59 return *this;
60 }
62
64
68 inline const Aws::String& GetPublicIp() const { return m_publicIp; }
69 inline bool PublicIpHasBeenSet() const { return m_publicIpHasBeenSet; }
70 template <typename PublicIpT = Aws::String>
71 void SetPublicIp(PublicIpT&& value) {
72 m_publicIpHasBeenSet = true;
73 m_publicIp = std::forward<PublicIpT>(value);
74 }
75 template <typename PublicIpT = Aws::String>
77 SetPublicIp(std::forward<PublicIpT>(value));
78 return *this;
79 }
81
83
86 inline const Aws::String& GetCertificateArn() const { return m_certificateArn; }
87 inline bool CertificateArnHasBeenSet() const { return m_certificateArnHasBeenSet; }
88 template <typename CertificateArnT = Aws::String>
89 void SetCertificateArn(CertificateArnT&& value) {
90 m_certificateArnHasBeenSet = true;
91 m_certificateArn = std::forward<CertificateArnT>(value);
92 }
93 template <typename CertificateArnT = Aws::String>
95 SetCertificateArn(std::forward<CertificateArnT>(value));
96 return *this;
97 }
99
101
105 inline GatewayType GetType() const { return m_type; }
106 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
107 inline void SetType(GatewayType value) {
108 m_typeHasBeenSet = true;
109 m_type = value;
110 }
112 SetType(value);
113 return *this;
114 }
116
118
121 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
122 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
123 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
124 void SetTagSpecifications(TagSpecificationsT&& value) {
125 m_tagSpecificationsHasBeenSet = true;
126 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
127 }
128 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
130 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
131 return *this;
132 }
133 template <typename TagSpecificationsT = TagSpecification>
135 m_tagSpecificationsHasBeenSet = true;
136 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
137 return *this;
138 }
140
142
146 inline const Aws::String& GetDeviceName() const { return m_deviceName; }
147 inline bool DeviceNameHasBeenSet() const { return m_deviceNameHasBeenSet; }
148 template <typename DeviceNameT = Aws::String>
149 void SetDeviceName(DeviceNameT&& value) {
150 m_deviceNameHasBeenSet = true;
151 m_deviceName = std::forward<DeviceNameT>(value);
152 }
153 template <typename DeviceNameT = Aws::String>
155 SetDeviceName(std::forward<DeviceNameT>(value));
156 return *this;
157 }
159
161
168 inline const Aws::String& GetIpAddress() const { return m_ipAddress; }
169 inline bool IpAddressHasBeenSet() const { return m_ipAddressHasBeenSet; }
170 template <typename IpAddressT = Aws::String>
171 void SetIpAddress(IpAddressT&& value) {
172 m_ipAddressHasBeenSet = true;
173 m_ipAddress = std::forward<IpAddressT>(value);
174 }
175 template <typename IpAddressT = Aws::String>
177 SetIpAddress(std::forward<IpAddressT>(value));
178 return *this;
179 }
181
183
190 inline long long GetBgpAsnExtended() const { return m_bgpAsnExtended; }
191 inline bool BgpAsnExtendedHasBeenSet() const { return m_bgpAsnExtendedHasBeenSet; }
192 inline void SetBgpAsnExtended(long long value) {
193 m_bgpAsnExtendedHasBeenSet = true;
194 m_bgpAsnExtended = value;
195 }
197 SetBgpAsnExtended(value);
198 return *this;
199 }
201
203
209 inline bool GetDryRun() const { return m_dryRun; }
210 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
211 inline void SetDryRun(bool value) {
212 m_dryRunHasBeenSet = true;
213 m_dryRun = value;
214 }
216 SetDryRun(value);
217 return *this;
218 }
220 private:
221 int m_bgpAsn{0};
222
223 Aws::String m_publicIp;
224
225 Aws::String m_certificateArn;
226
228
229 Aws::Vector<TagSpecification> m_tagSpecifications;
230
231 Aws::String m_deviceName;
232
233 Aws::String m_ipAddress;
234
235 long long m_bgpAsnExtended{0};
236
237 bool m_dryRun{false};
238 bool m_bgpAsnHasBeenSet = false;
239 bool m_publicIpHasBeenSet = false;
240 bool m_certificateArnHasBeenSet = false;
241 bool m_typeHasBeenSet = false;
242 bool m_tagSpecificationsHasBeenSet = false;
243 bool m_deviceNameHasBeenSet = false;
244 bool m_ipAddressHasBeenSet = false;
245 bool m_bgpAsnExtendedHasBeenSet = false;
246 bool m_dryRunHasBeenSet = false;
247};
248
249} // namespace Model
250} // namespace EC2
251} // namespace Aws
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateCustomerGatewayRequest & WithIpAddress(IpAddressT &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
CreateCustomerGatewayRequest & WithDeviceName(DeviceNameT &&value)
CreateCustomerGatewayRequest & WithBgpAsn(int value)
CreateCustomerGatewayRequest & WithTagSpecifications(TagSpecificationsT &&value)
virtual const char * GetServiceRequestName() const override
AWS_EC2_API CreateCustomerGatewayRequest()=default
CreateCustomerGatewayRequest & WithCertificateArn(CertificateArnT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
CreateCustomerGatewayRequest & WithBgpAsnExtended(long long value)
CreateCustomerGatewayRequest & AddTagSpecifications(TagSpecificationsT &&value)
CreateCustomerGatewayRequest & WithDryRun(bool value)
CreateCustomerGatewayRequest & WithPublicIp(PublicIpT &&value)
CreateCustomerGatewayRequest & WithType(GatewayType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector