AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateCustomerGatewayRequest.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/AWSString.h>
10#include <aws/ec2/model/GatewayType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/TagSpecification.h>
13#include <utility>
14
15namespace Aws
16{
17namespace EC2
18{
19namespace Model
20{
21
29 {
30 public:
31 AWS_EC2_API CreateCustomerGatewayRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateCustomerGateway"; }
38
39 AWS_EC2_API Aws::String SerializePayload() const override;
40
41 protected:
42 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
43
44 public:
45
47
55 inline int GetBgpAsn() const { return m_bgpAsn; }
56 inline bool BgpAsnHasBeenSet() const { return m_bgpAsnHasBeenSet; }
57 inline void SetBgpAsn(int value) { m_bgpAsnHasBeenSet = true; m_bgpAsn = value; }
58 inline CreateCustomerGatewayRequest& WithBgpAsn(int value) { SetBgpAsn(value); return *this;}
60
62
66 inline const Aws::String& GetPublicIp() const { return m_publicIp; }
67 inline bool PublicIpHasBeenSet() const { return m_publicIpHasBeenSet; }
68 template<typename PublicIpT = Aws::String>
69 void SetPublicIp(PublicIpT&& value) { m_publicIpHasBeenSet = true; m_publicIp = std::forward<PublicIpT>(value); }
70 template<typename PublicIpT = Aws::String>
71 CreateCustomerGatewayRequest& WithPublicIp(PublicIpT&& value) { SetPublicIp(std::forward<PublicIpT>(value)); return *this;}
73
75
78 inline const Aws::String& GetCertificateArn() const { return m_certificateArn; }
79 inline bool CertificateArnHasBeenSet() const { return m_certificateArnHasBeenSet; }
80 template<typename CertificateArnT = Aws::String>
81 void SetCertificateArn(CertificateArnT&& value) { m_certificateArnHasBeenSet = true; m_certificateArn = std::forward<CertificateArnT>(value); }
82 template<typename CertificateArnT = Aws::String>
83 CreateCustomerGatewayRequest& WithCertificateArn(CertificateArnT&& value) { SetCertificateArn(std::forward<CertificateArnT>(value)); return *this;}
85
87
91 inline GatewayType GetType() const { return m_type; }
92 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
93 inline void SetType(GatewayType value) { m_typeHasBeenSet = true; m_type = value; }
94 inline CreateCustomerGatewayRequest& WithType(GatewayType value) { SetType(value); return *this;}
96
98
101 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
102 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
103 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
104 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
105 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
106 CreateCustomerGatewayRequest& WithTagSpecifications(TagSpecificationsT&& value) { SetTagSpecifications(std::forward<TagSpecificationsT>(value)); return *this;}
107 template<typename TagSpecificationsT = TagSpecification>
108 CreateCustomerGatewayRequest& AddTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value)); return *this; }
110
112
116 inline const Aws::String& GetDeviceName() const { return m_deviceName; }
117 inline bool DeviceNameHasBeenSet() const { return m_deviceNameHasBeenSet; }
118 template<typename DeviceNameT = Aws::String>
119 void SetDeviceName(DeviceNameT&& value) { m_deviceNameHasBeenSet = true; m_deviceName = std::forward<DeviceNameT>(value); }
120 template<typename DeviceNameT = Aws::String>
121 CreateCustomerGatewayRequest& WithDeviceName(DeviceNameT&& value) { SetDeviceName(std::forward<DeviceNameT>(value)); return *this;}
123
125
132 inline const Aws::String& GetIpAddress() const { return m_ipAddress; }
133 inline bool IpAddressHasBeenSet() const { return m_ipAddressHasBeenSet; }
134 template<typename IpAddressT = Aws::String>
135 void SetIpAddress(IpAddressT&& value) { m_ipAddressHasBeenSet = true; m_ipAddress = std::forward<IpAddressT>(value); }
136 template<typename IpAddressT = Aws::String>
137 CreateCustomerGatewayRequest& WithIpAddress(IpAddressT&& value) { SetIpAddress(std::forward<IpAddressT>(value)); return *this;}
139
141
148 inline long long GetBgpAsnExtended() const { return m_bgpAsnExtended; }
149 inline bool BgpAsnExtendedHasBeenSet() const { return m_bgpAsnExtendedHasBeenSet; }
150 inline void SetBgpAsnExtended(long long value) { m_bgpAsnExtendedHasBeenSet = true; m_bgpAsnExtended = value; }
151 inline CreateCustomerGatewayRequest& WithBgpAsnExtended(long long value) { SetBgpAsnExtended(value); return *this;}
153
155
161 inline bool GetDryRun() const { return m_dryRun; }
162 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
163 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
164 inline CreateCustomerGatewayRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
166 private:
167
168 int m_bgpAsn{0};
169 bool m_bgpAsnHasBeenSet = false;
170
171 Aws::String m_publicIp;
172 bool m_publicIpHasBeenSet = false;
173
174 Aws::String m_certificateArn;
175 bool m_certificateArnHasBeenSet = false;
176
178 bool m_typeHasBeenSet = false;
179
180 Aws::Vector<TagSpecification> m_tagSpecifications;
181 bool m_tagSpecificationsHasBeenSet = false;
182
183 Aws::String m_deviceName;
184 bool m_deviceNameHasBeenSet = false;
185
186 Aws::String m_ipAddress;
187 bool m_ipAddressHasBeenSet = false;
188
189 long long m_bgpAsnExtended{0};
190 bool m_bgpAsnExtendedHasBeenSet = false;
191
192 bool m_dryRun{false};
193 bool m_dryRunHasBeenSet = false;
194 };
195
196} // namespace Model
197} // namespace EC2
198} // 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