AWS SDK for C++

AWS SDK for C++ Version 1.11.786

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/NetworkType.h>
13#include <aws/elasticache/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace ElastiCache {
19namespace Model {
20
24 public:
25 AWS_ELASTICACHE_API CreateServerlessCacheRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateServerlessCache"; }
32
33 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
34
35 protected:
36 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
37
38 public:
40
44 inline const Aws::String& GetServerlessCacheName() const { return m_serverlessCacheName; }
45 inline bool ServerlessCacheNameHasBeenSet() const { return m_serverlessCacheNameHasBeenSet; }
46 template <typename ServerlessCacheNameT = Aws::String>
47 void SetServerlessCacheName(ServerlessCacheNameT&& value) {
48 m_serverlessCacheNameHasBeenSet = true;
49 m_serverlessCacheName = std::forward<ServerlessCacheNameT>(value);
50 }
51 template <typename ServerlessCacheNameT = Aws::String>
53 SetServerlessCacheName(std::forward<ServerlessCacheNameT>(value));
54 return *this;
55 }
57
59
64 inline const Aws::String& GetDescription() const { return m_description; }
65 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
66 template <typename DescriptionT = Aws::String>
67 void SetDescription(DescriptionT&& value) {
68 m_descriptionHasBeenSet = true;
69 m_description = std::forward<DescriptionT>(value);
70 }
71 template <typename DescriptionT = Aws::String>
73 SetDescription(std::forward<DescriptionT>(value));
74 return *this;
75 }
77
79
83 inline const Aws::String& GetEngine() const { return m_engine; }
84 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
85 template <typename EngineT = Aws::String>
86 void SetEngine(EngineT&& value) {
87 m_engineHasBeenSet = true;
88 m_engine = std::forward<EngineT>(value);
89 }
90 template <typename EngineT = Aws::String>
92 SetEngine(std::forward<EngineT>(value));
93 return *this;
94 }
96
98
102 inline const Aws::String& GetMajorEngineVersion() const { return m_majorEngineVersion; }
103 inline bool MajorEngineVersionHasBeenSet() const { return m_majorEngineVersionHasBeenSet; }
104 template <typename MajorEngineVersionT = Aws::String>
105 void SetMajorEngineVersion(MajorEngineVersionT&& value) {
106 m_majorEngineVersionHasBeenSet = true;
107 m_majorEngineVersion = std::forward<MajorEngineVersionT>(value);
108 }
109 template <typename MajorEngineVersionT = Aws::String>
111 SetMajorEngineVersion(std::forward<MajorEngineVersionT>(value));
112 return *this;
113 }
115
117
121 inline const CacheUsageLimits& GetCacheUsageLimits() const { return m_cacheUsageLimits; }
122 inline bool CacheUsageLimitsHasBeenSet() const { return m_cacheUsageLimitsHasBeenSet; }
123 template <typename CacheUsageLimitsT = CacheUsageLimits>
124 void SetCacheUsageLimits(CacheUsageLimitsT&& value) {
125 m_cacheUsageLimitsHasBeenSet = true;
126 m_cacheUsageLimits = std::forward<CacheUsageLimitsT>(value);
127 }
128 template <typename CacheUsageLimitsT = CacheUsageLimits>
130 SetCacheUsageLimits(std::forward<CacheUsageLimitsT>(value));
131 return *this;
132 }
134
136
140 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
141 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
142 template <typename KmsKeyIdT = Aws::String>
143 void SetKmsKeyId(KmsKeyIdT&& value) {
144 m_kmsKeyIdHasBeenSet = true;
145 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
146 }
147 template <typename KmsKeyIdT = Aws::String>
149 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
150 return *this;
151 }
153
155
162 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
163 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
164 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
165 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
166 m_securityGroupIdsHasBeenSet = true;
167 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
168 }
169 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
171 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
172 return *this;
173 }
174 template <typename SecurityGroupIdsT = Aws::String>
176 m_securityGroupIdsHasBeenSet = true;
177 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
178 return *this;
179 }
181
183
187 inline const Aws::Vector<Aws::String>& GetSnapshotArnsToRestore() const { return m_snapshotArnsToRestore; }
188 inline bool SnapshotArnsToRestoreHasBeenSet() const { return m_snapshotArnsToRestoreHasBeenSet; }
189 template <typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
190 void SetSnapshotArnsToRestore(SnapshotArnsToRestoreT&& value) {
191 m_snapshotArnsToRestoreHasBeenSet = true;
192 m_snapshotArnsToRestore = std::forward<SnapshotArnsToRestoreT>(value);
193 }
194 template <typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
196 SetSnapshotArnsToRestore(std::forward<SnapshotArnsToRestoreT>(value));
197 return *this;
198 }
199 template <typename SnapshotArnsToRestoreT = Aws::String>
201 m_snapshotArnsToRestoreHasBeenSet = true;
202 m_snapshotArnsToRestore.emplace_back(std::forward<SnapshotArnsToRestoreT>(value));
203 return *this;
204 }
206
208
212 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
213 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
214 template <typename TagsT = Aws::Vector<Tag>>
215 void SetTags(TagsT&& value) {
216 m_tagsHasBeenSet = true;
217 m_tags = std::forward<TagsT>(value);
218 }
219 template <typename TagsT = Aws::Vector<Tag>>
221 SetTags(std::forward<TagsT>(value));
222 return *this;
223 }
224 template <typename TagsT = Tag>
226 m_tagsHasBeenSet = true;
227 m_tags.emplace_back(std::forward<TagsT>(value));
228 return *this;
229 }
231
233
237 inline const Aws::String& GetUserGroupId() const { return m_userGroupId; }
238 inline bool UserGroupIdHasBeenSet() const { return m_userGroupIdHasBeenSet; }
239 template <typename UserGroupIdT = Aws::String>
240 void SetUserGroupId(UserGroupIdT&& value) {
241 m_userGroupIdHasBeenSet = true;
242 m_userGroupId = std::forward<UserGroupIdT>(value);
243 }
244 template <typename UserGroupIdT = Aws::String>
246 SetUserGroupId(std::forward<UserGroupIdT>(value));
247 return *this;
248 }
250
252
257 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
258 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
259 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
260 void SetSubnetIds(SubnetIdsT&& value) {
261 m_subnetIdsHasBeenSet = true;
262 m_subnetIds = std::forward<SubnetIdsT>(value);
263 }
264 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
266 SetSubnetIds(std::forward<SubnetIdsT>(value));
267 return *this;
268 }
269 template <typename SubnetIdsT = Aws::String>
271 m_subnetIdsHasBeenSet = true;
272 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
273 return *this;
274 }
276
278
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
317
324 inline NetworkType GetNetworkType() const { return m_networkType; }
325 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
326 inline void SetNetworkType(NetworkType value) {
327 m_networkTypeHasBeenSet = true;
328 m_networkType = value;
329 }
331 SetNetworkType(value);
332 return *this;
333 }
335 private:
336 Aws::String m_serverlessCacheName;
337
338 Aws::String m_description;
339
340 Aws::String m_engine;
341
342 Aws::String m_majorEngineVersion;
343
344 CacheUsageLimits m_cacheUsageLimits;
345
346 Aws::String m_kmsKeyId;
347
348 Aws::Vector<Aws::String> m_securityGroupIds;
349
350 Aws::Vector<Aws::String> m_snapshotArnsToRestore;
351
352 Aws::Vector<Tag> m_tags;
353
354 Aws::String m_userGroupId;
355
356 Aws::Vector<Aws::String> m_subnetIds;
357
358 int m_snapshotRetentionLimit{0};
359
360 Aws::String m_dailySnapshotTime;
361
362 NetworkType m_networkType{NetworkType::NOT_SET};
363 bool m_serverlessCacheNameHasBeenSet = false;
364 bool m_descriptionHasBeenSet = false;
365 bool m_engineHasBeenSet = false;
366 bool m_majorEngineVersionHasBeenSet = false;
367 bool m_cacheUsageLimitsHasBeenSet = false;
368 bool m_kmsKeyIdHasBeenSet = false;
369 bool m_securityGroupIdsHasBeenSet = false;
370 bool m_snapshotArnsToRestoreHasBeenSet = false;
371 bool m_tagsHasBeenSet = false;
372 bool m_userGroupIdHasBeenSet = false;
373 bool m_subnetIdsHasBeenSet = false;
374 bool m_snapshotRetentionLimitHasBeenSet = false;
375 bool m_dailySnapshotTimeHasBeenSet = false;
376 bool m_networkTypeHasBeenSet = false;
377};
378
379} // namespace Model
380} // namespace ElastiCache
381} // 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 & WithNetworkType(NetworkType 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