AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateIpamRequest.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/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/IpamTier.h>
12#include <aws/ec2/model/IpamMeteredAccount.h>
13#include <aws/ec2/model/AddIpamOperatingRegion.h>
14#include <aws/ec2/model/TagSpecification.h>
15#include <utility>
16#include <aws/core/utils/UUID.h>
17
18namespace Aws
19{
20namespace EC2
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_EC2_API CreateIpamRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateIpam"; }
37
38 AWS_EC2_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
52 inline bool GetDryRun() const { return m_dryRun; }
53 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
54 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
55 inline CreateIpamRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
57
59
62 inline const Aws::String& GetDescription() const { return m_description; }
63 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
64 template<typename DescriptionT = Aws::String>
65 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
66 template<typename DescriptionT = Aws::String>
67 CreateIpamRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
69
71
79 inline const Aws::Vector<AddIpamOperatingRegion>& GetOperatingRegions() const { return m_operatingRegions; }
80 inline bool OperatingRegionsHasBeenSet() const { return m_operatingRegionsHasBeenSet; }
81 template<typename OperatingRegionsT = Aws::Vector<AddIpamOperatingRegion>>
82 void SetOperatingRegions(OperatingRegionsT&& value) { m_operatingRegionsHasBeenSet = true; m_operatingRegions = std::forward<OperatingRegionsT>(value); }
83 template<typename OperatingRegionsT = Aws::Vector<AddIpamOperatingRegion>>
84 CreateIpamRequest& WithOperatingRegions(OperatingRegionsT&& value) { SetOperatingRegions(std::forward<OperatingRegionsT>(value)); return *this;}
85 template<typename OperatingRegionsT = AddIpamOperatingRegion>
86 CreateIpamRequest& AddOperatingRegions(OperatingRegionsT&& value) { m_operatingRegionsHasBeenSet = true; m_operatingRegions.emplace_back(std::forward<OperatingRegionsT>(value)); return *this; }
88
90
97 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
98 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
99 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
100 void SetTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::forward<TagSpecificationsT>(value); }
101 template<typename TagSpecificationsT = Aws::Vector<TagSpecification>>
102 CreateIpamRequest& WithTagSpecifications(TagSpecificationsT&& value) { SetTagSpecifications(std::forward<TagSpecificationsT>(value)); return *this;}
103 template<typename TagSpecificationsT = TagSpecification>
104 CreateIpamRequest& AddTagSpecifications(TagSpecificationsT&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value)); return *this; }
106
108
114 inline const Aws::String& GetClientToken() const { return m_clientToken; }
115 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
116 template<typename ClientTokenT = Aws::String>
117 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
118 template<typename ClientTokenT = Aws::String>
119 CreateIpamRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
121
123
129 inline IpamTier GetTier() const { return m_tier; }
130 inline bool TierHasBeenSet() const { return m_tierHasBeenSet; }
131 inline void SetTier(IpamTier value) { m_tierHasBeenSet = true; m_tier = value; }
132 inline CreateIpamRequest& WithTier(IpamTier value) { SetTier(value); return *this;}
134
136
140 inline bool GetEnablePrivateGua() const { return m_enablePrivateGua; }
141 inline bool EnablePrivateGuaHasBeenSet() const { return m_enablePrivateGuaHasBeenSet; }
142 inline void SetEnablePrivateGua(bool value) { m_enablePrivateGuaHasBeenSet = true; m_enablePrivateGua = value; }
143 inline CreateIpamRequest& WithEnablePrivateGua(bool value) { SetEnablePrivateGua(value); return *this;}
145
147
158 inline IpamMeteredAccount GetMeteredAccount() const { return m_meteredAccount; }
159 inline bool MeteredAccountHasBeenSet() const { return m_meteredAccountHasBeenSet; }
160 inline void SetMeteredAccount(IpamMeteredAccount value) { m_meteredAccountHasBeenSet = true; m_meteredAccount = value; }
163 private:
164
165 bool m_dryRun{false};
166 bool m_dryRunHasBeenSet = false;
167
168 Aws::String m_description;
169 bool m_descriptionHasBeenSet = false;
170
171 Aws::Vector<AddIpamOperatingRegion> m_operatingRegions;
172 bool m_operatingRegionsHasBeenSet = false;
173
174 Aws::Vector<TagSpecification> m_tagSpecifications;
175 bool m_tagSpecificationsHasBeenSet = false;
176
178 bool m_clientTokenHasBeenSet = true;
179
181 bool m_tierHasBeenSet = false;
182
183 bool m_enablePrivateGua{false};
184 bool m_enablePrivateGuaHasBeenSet = false;
185
187 bool m_meteredAccountHasBeenSet = false;
188 };
189
190} // namespace Model
191} // namespace EC2
192} // namespace Aws
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const Aws::Vector< AddIpamOperatingRegion > & GetOperatingRegions() const
CreateIpamRequest & WithTagSpecifications(TagSpecificationsT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
void SetMeteredAccount(IpamMeteredAccount value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
virtual const char * GetServiceRequestName() const override
CreateIpamRequest & WithTier(IpamTier value)
CreateIpamRequest & AddTagSpecifications(TagSpecificationsT &&value)
void SetOperatingRegions(OperatingRegionsT &&value)
const Aws::String & GetDescription() const
CreateIpamRequest & WithMeteredAccount(IpamMeteredAccount value)
CreateIpamRequest & WithClientToken(ClientTokenT &&value)
CreateIpamRequest & AddOperatingRegions(OperatingRegionsT &&value)
CreateIpamRequest & WithDryRun(bool value)
CreateIpamRequest & WithDescription(DescriptionT &&value)
CreateIpamRequest & WithOperatingRegions(OperatingRegionsT &&value)
IpamMeteredAccount GetMeteredAccount() const
void SetClientToken(ClientTokenT &&value)
AWS_EC2_API CreateIpamRequest()=default
void SetTagSpecifications(TagSpecificationsT &&value)
CreateIpamRequest & WithEnablePrivateGua(bool value)
void SetDescription(DescriptionT &&value)
const Aws::String & GetClientToken() const
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector