AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateServerlessCacheRequest.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/elasticache/ElastiCacheRequest.h>
10#include <aws/elasticache/ElastiCache_EXPORTS.h>
11#include <aws/elasticache/model/CacheUsageLimits.h>
12#include <aws/elasticache/model/Tag.h>
13
14#include <utility>
15
16namespace Aws {
17namespace ElastiCache {
18namespace Model {
19
23 public:
24 AWS_ELASTICACHE_API CreateServerlessCacheRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "CreateServerlessCache"; }
31
32 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
43 inline const Aws::String& GetServerlessCacheName() const { return m_serverlessCacheName; }
44 inline bool ServerlessCacheNameHasBeenSet() const { return m_serverlessCacheNameHasBeenSet; }
45 template <typename ServerlessCacheNameT = Aws::String>
46 void SetServerlessCacheName(ServerlessCacheNameT&& value) {
47 m_serverlessCacheNameHasBeenSet = true;
48 m_serverlessCacheName = std::forward<ServerlessCacheNameT>(value);
49 }
50 template <typename ServerlessCacheNameT = Aws::String>
52 SetServerlessCacheName(std::forward<ServerlessCacheNameT>(value));
53 return *this;
54 }
56
58
63 inline const Aws::String& GetDescription() const { return m_description; }
64 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
65 template <typename DescriptionT = Aws::String>
66 void SetDescription(DescriptionT&& value) {
67 m_descriptionHasBeenSet = true;
68 m_description = std::forward<DescriptionT>(value);
69 }
70 template <typename DescriptionT = Aws::String>
72 SetDescription(std::forward<DescriptionT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetEngine() const { return m_engine; }
83 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
84 template <typename EngineT = Aws::String>
85 void SetEngine(EngineT&& value) {
86 m_engineHasBeenSet = true;
87 m_engine = std::forward<EngineT>(value);
88 }
89 template <typename EngineT = Aws::String>
91 SetEngine(std::forward<EngineT>(value));
92 return *this;
93 }
95
97
101 inline const Aws::String& GetMajorEngineVersion() const { return m_majorEngineVersion; }
102 inline bool MajorEngineVersionHasBeenSet() const { return m_majorEngineVersionHasBeenSet; }
103 template <typename MajorEngineVersionT = Aws::String>
104 void SetMajorEngineVersion(MajorEngineVersionT&& value) {
105 m_majorEngineVersionHasBeenSet = true;
106 m_majorEngineVersion = std::forward<MajorEngineVersionT>(value);
107 }
108 template <typename MajorEngineVersionT = Aws::String>
110 SetMajorEngineVersion(std::forward<MajorEngineVersionT>(value));
111 return *this;
112 }
114
116
120 inline const CacheUsageLimits& GetCacheUsageLimits() const { return m_cacheUsageLimits; }
121 inline bool CacheUsageLimitsHasBeenSet() const { return m_cacheUsageLimitsHasBeenSet; }
122 template <typename CacheUsageLimitsT = CacheUsageLimits>
123 void SetCacheUsageLimits(CacheUsageLimitsT&& value) {
124 m_cacheUsageLimitsHasBeenSet = true;
125 m_cacheUsageLimits = std::forward<CacheUsageLimitsT>(value);
126 }
127 template <typename CacheUsageLimitsT = CacheUsageLimits>
129 SetCacheUsageLimits(std::forward<CacheUsageLimitsT>(value));
130 return *this;
131 }
133
135
139 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
140 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
141 template <typename KmsKeyIdT = Aws::String>
142 void SetKmsKeyId(KmsKeyIdT&& value) {
143 m_kmsKeyIdHasBeenSet = true;
144 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
145 }
146 template <typename KmsKeyIdT = Aws::String>
148 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
149 return *this;
150 }
152
154
161 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
162 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
163 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
164 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
165 m_securityGroupIdsHasBeenSet = true;
166 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
167 }
168 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
170 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
171 return *this;
172 }
173 template <typename SecurityGroupIdsT = Aws::String>
175 m_securityGroupIdsHasBeenSet = true;
176 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
177 return *this;
178 }
180
182
186 inline const Aws::Vector<Aws::String>& GetSnapshotArnsToRestore() const { return m_snapshotArnsToRestore; }
187 inline bool SnapshotArnsToRestoreHasBeenSet() const { return m_snapshotArnsToRestoreHasBeenSet; }
188 template <typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
189 void SetSnapshotArnsToRestore(SnapshotArnsToRestoreT&& value) {
190 m_snapshotArnsToRestoreHasBeenSet = true;
191 m_snapshotArnsToRestore = std::forward<SnapshotArnsToRestoreT>(value);
192 }
193 template <typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
195 SetSnapshotArnsToRestore(std::forward<SnapshotArnsToRestoreT>(value));
196 return *this;
197 }
198 template <typename SnapshotArnsToRestoreT = Aws::String>
200 m_snapshotArnsToRestoreHasBeenSet = true;
201 m_snapshotArnsToRestore.emplace_back(std::forward<SnapshotArnsToRestoreT>(value));
202 return *this;
203 }
205
207
211 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
212 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
213 template <typename TagsT = Aws::Vector<Tag>>
214 void SetTags(TagsT&& value) {
215 m_tagsHasBeenSet = true;
216 m_tags = std::forward<TagsT>(value);
217 }
218 template <typename TagsT = Aws::Vector<Tag>>
220 SetTags(std::forward<TagsT>(value));
221 return *this;
222 }
223 template <typename TagsT = Tag>
225 m_tagsHasBeenSet = true;
226 m_tags.emplace_back(std::forward<TagsT>(value));
227 return *this;
228 }
230
232
236 inline const Aws::String& GetUserGroupId() const { return m_userGroupId; }
237 inline bool UserGroupIdHasBeenSet() const { return m_userGroupIdHasBeenSet; }
238 template <typename UserGroupIdT = Aws::String>
239 void SetUserGroupId(UserGroupIdT&& value) {
240 m_userGroupIdHasBeenSet = true;
241 m_userGroupId = std::forward<UserGroupIdT>(value);
242 }
243 template <typename UserGroupIdT = Aws::String>
245 SetUserGroupId(std::forward<UserGroupIdT>(value));
246 return *this;
247 }
249
251
256 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
257 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
258 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
259 void SetSubnetIds(SubnetIdsT&& value) {
260 m_subnetIdsHasBeenSet = true;
261 m_subnetIds = std::forward<SubnetIdsT>(value);
262 }
263 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
265 SetSubnetIds(std::forward<SubnetIdsT>(value));
266 return *this;
267 }
268 template <typename SubnetIdsT = Aws::String>
270 m_subnetIdsHasBeenSet = true;
271 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
272 return *this;
273 }
275
277
283 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
284 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
285 inline void SetSnapshotRetentionLimit(int value) {
286 m_snapshotRetentionLimitHasBeenSet = true;
287 m_snapshotRetentionLimit = value;
288 }
291 return *this;
292 }
294
296
302 inline const Aws::String& GetDailySnapshotTime() const { return m_dailySnapshotTime; }
303 inline bool DailySnapshotTimeHasBeenSet() const { return m_dailySnapshotTimeHasBeenSet; }
304 template <typename DailySnapshotTimeT = Aws::String>
305 void SetDailySnapshotTime(DailySnapshotTimeT&& value) {
306 m_dailySnapshotTimeHasBeenSet = true;
307 m_dailySnapshotTime = std::forward<DailySnapshotTimeT>(value);
308 }
309 template <typename DailySnapshotTimeT = Aws::String>
311 SetDailySnapshotTime(std::forward<DailySnapshotTimeT>(value));
312 return *this;
313 }
315 private:
316 Aws::String m_serverlessCacheName;
317
318 Aws::String m_description;
319
320 Aws::String m_engine;
321
322 Aws::String m_majorEngineVersion;
323
324 CacheUsageLimits m_cacheUsageLimits;
325
326 Aws::String m_kmsKeyId;
327
328 Aws::Vector<Aws::String> m_securityGroupIds;
329
330 Aws::Vector<Aws::String> m_snapshotArnsToRestore;
331
332 Aws::Vector<Tag> m_tags;
333
334 Aws::String m_userGroupId;
335
336 Aws::Vector<Aws::String> m_subnetIds;
337
338 int m_snapshotRetentionLimit{0};
339
340 Aws::String m_dailySnapshotTime;
341 bool m_serverlessCacheNameHasBeenSet = false;
342 bool m_descriptionHasBeenSet = false;
343 bool m_engineHasBeenSet = false;
344 bool m_majorEngineVersionHasBeenSet = false;
345 bool m_cacheUsageLimitsHasBeenSet = false;
346 bool m_kmsKeyIdHasBeenSet = false;
347 bool m_securityGroupIdsHasBeenSet = false;
348 bool m_snapshotArnsToRestoreHasBeenSet = false;
349 bool m_tagsHasBeenSet = false;
350 bool m_userGroupIdHasBeenSet = false;
351 bool m_subnetIdsHasBeenSet = false;
352 bool m_snapshotRetentionLimitHasBeenSet = false;
353 bool m_dailySnapshotTimeHasBeenSet = false;
354};
355
356} // namespace Model
357} // namespace ElastiCache
358} // namespace Aws
CreateServerlessCacheRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
CreateServerlessCacheRequest & WithEngine(EngineT &&value)
CreateServerlessCacheRequest & WithSnapshotArnsToRestore(SnapshotArnsToRestoreT &&value)
CreateServerlessCacheRequest & WithUserGroupId(UserGroupIdT &&value)
CreateServerlessCacheRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateServerlessCacheRequest & WithSnapshotRetentionLimit(int value)
CreateServerlessCacheRequest & WithDailySnapshotTime(DailySnapshotTimeT &&value)
CreateServerlessCacheRequest & AddSnapshotArnsToRestore(SnapshotArnsToRestoreT &&value)
CreateServerlessCacheRequest & AddSubnetIds(SubnetIdsT &&value)
CreateServerlessCacheRequest & WithCacheUsageLimits(CacheUsageLimitsT &&value)
CreateServerlessCacheRequest & WithTags(TagsT &&value)
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
CreateServerlessCacheRequest & WithMajorEngineVersion(MajorEngineVersionT &&value)
CreateServerlessCacheRequest & WithServerlessCacheName(ServerlessCacheNameT &&value)
const Aws::Vector< Aws::String > & GetSnapshotArnsToRestore() const
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateServerlessCacheRequest & WithDescription(DescriptionT &&value)
CreateServerlessCacheRequest & AddTags(TagsT &&value)
CreateServerlessCacheRequest & WithSubnetIds(SubnetIdsT &&value)
AWS_ELASTICACHE_API CreateServerlessCacheRequest()=default
CreateServerlessCacheRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector