AWS SDK for C++

AWS SDK for C++ Version 1.11.909

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/ConnectionType.h>
13#include <aws/elasticache/model/NetworkType.h>
14#include <aws/elasticache/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace ElastiCache {
20namespace Model {
21
25 public:
26 AWS_ELASTICACHE_API CreateServerlessCacheRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateServerlessCache"; }
33
34 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
35
36 protected:
37 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
38
39 public:
41
45 inline const Aws::String& GetServerlessCacheName() const { return m_serverlessCacheName; }
46 inline bool ServerlessCacheNameHasBeenSet() const { return m_serverlessCacheNameHasBeenSet; }
47 template <typename ServerlessCacheNameT = Aws::String>
48 void SetServerlessCacheName(ServerlessCacheNameT&& value) {
49 m_serverlessCacheNameHasBeenSet = true;
50 m_serverlessCacheName = std::forward<ServerlessCacheNameT>(value);
51 }
52 template <typename ServerlessCacheNameT = Aws::String>
54 SetServerlessCacheName(std::forward<ServerlessCacheNameT>(value));
55 return *this;
56 }
58
60
65 inline const Aws::String& GetDescription() const { return m_description; }
66 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
67 template <typename DescriptionT = Aws::String>
68 void SetDescription(DescriptionT&& value) {
69 m_descriptionHasBeenSet = true;
70 m_description = std::forward<DescriptionT>(value);
71 }
72 template <typename DescriptionT = Aws::String>
74 SetDescription(std::forward<DescriptionT>(value));
75 return *this;
76 }
78
80
84 inline const Aws::String& GetEngine() const { return m_engine; }
85 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
86 template <typename EngineT = Aws::String>
87 void SetEngine(EngineT&& value) {
88 m_engineHasBeenSet = true;
89 m_engine = std::forward<EngineT>(value);
90 }
91 template <typename EngineT = Aws::String>
93 SetEngine(std::forward<EngineT>(value));
94 return *this;
95 }
97
99
103 inline const Aws::String& GetMajorEngineVersion() const { return m_majorEngineVersion; }
104 inline bool MajorEngineVersionHasBeenSet() const { return m_majorEngineVersionHasBeenSet; }
105 template <typename MajorEngineVersionT = Aws::String>
106 void SetMajorEngineVersion(MajorEngineVersionT&& value) {
107 m_majorEngineVersionHasBeenSet = true;
108 m_majorEngineVersion = std::forward<MajorEngineVersionT>(value);
109 }
110 template <typename MajorEngineVersionT = Aws::String>
112 SetMajorEngineVersion(std::forward<MajorEngineVersionT>(value));
113 return *this;
114 }
116
118
122 inline const CacheUsageLimits& GetCacheUsageLimits() const { return m_cacheUsageLimits; }
123 inline bool CacheUsageLimitsHasBeenSet() const { return m_cacheUsageLimitsHasBeenSet; }
124 template <typename CacheUsageLimitsT = CacheUsageLimits>
125 void SetCacheUsageLimits(CacheUsageLimitsT&& value) {
126 m_cacheUsageLimitsHasBeenSet = true;
127 m_cacheUsageLimits = std::forward<CacheUsageLimitsT>(value);
128 }
129 template <typename CacheUsageLimitsT = CacheUsageLimits>
131 SetCacheUsageLimits(std::forward<CacheUsageLimitsT>(value));
132 return *this;
133 }
135
137
141 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
142 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
143 template <typename KmsKeyIdT = Aws::String>
144 void SetKmsKeyId(KmsKeyIdT&& value) {
145 m_kmsKeyIdHasBeenSet = true;
146 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
147 }
148 template <typename KmsKeyIdT = Aws::String>
150 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
151 return *this;
152 }
154
156
163 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
164 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
165 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
166 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
167 m_securityGroupIdsHasBeenSet = true;
168 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
169 }
170 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
172 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
173 return *this;
174 }
175 template <typename SecurityGroupIdsT = Aws::String>
177 m_securityGroupIdsHasBeenSet = true;
178 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
179 return *this;
180 }
182
184
188 inline const Aws::Vector<Aws::String>& GetSnapshotArnsToRestore() const { return m_snapshotArnsToRestore; }
189 inline bool SnapshotArnsToRestoreHasBeenSet() const { return m_snapshotArnsToRestoreHasBeenSet; }
190 template <typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
191 void SetSnapshotArnsToRestore(SnapshotArnsToRestoreT&& value) {
192 m_snapshotArnsToRestoreHasBeenSet = true;
193 m_snapshotArnsToRestore = std::forward<SnapshotArnsToRestoreT>(value);
194 }
195 template <typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
197 SetSnapshotArnsToRestore(std::forward<SnapshotArnsToRestoreT>(value));
198 return *this;
199 }
200 template <typename SnapshotArnsToRestoreT = Aws::String>
202 m_snapshotArnsToRestoreHasBeenSet = true;
203 m_snapshotArnsToRestore.emplace_back(std::forward<SnapshotArnsToRestoreT>(value));
204 return *this;
205 }
207
209
213 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
214 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
215 template <typename TagsT = Aws::Vector<Tag>>
216 void SetTags(TagsT&& value) {
217 m_tagsHasBeenSet = true;
218 m_tags = std::forward<TagsT>(value);
219 }
220 template <typename TagsT = Aws::Vector<Tag>>
222 SetTags(std::forward<TagsT>(value));
223 return *this;
224 }
225 template <typename TagsT = Tag>
227 m_tagsHasBeenSet = true;
228 m_tags.emplace_back(std::forward<TagsT>(value));
229 return *this;
230 }
232
234
238 inline const Aws::String& GetUserGroupId() const { return m_userGroupId; }
239 inline bool UserGroupIdHasBeenSet() const { return m_userGroupIdHasBeenSet; }
240 template <typename UserGroupIdT = Aws::String>
241 void SetUserGroupId(UserGroupIdT&& value) {
242 m_userGroupIdHasBeenSet = true;
243 m_userGroupId = std::forward<UserGroupIdT>(value);
244 }
245 template <typename UserGroupIdT = Aws::String>
247 SetUserGroupId(std::forward<UserGroupIdT>(value));
248 return *this;
249 }
251
253
258 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
259 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
260 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
261 void SetSubnetIds(SubnetIdsT&& value) {
262 m_subnetIdsHasBeenSet = true;
263 m_subnetIds = std::forward<SubnetIdsT>(value);
264 }
265 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
267 SetSubnetIds(std::forward<SubnetIdsT>(value));
268 return *this;
269 }
270 template <typename SubnetIdsT = Aws::String>
272 m_subnetIdsHasBeenSet = true;
273 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
274 return *this;
275 }
277
279
284 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
285 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
286 inline void SetSnapshotRetentionLimit(int value) {
287 m_snapshotRetentionLimitHasBeenSet = true;
288 m_snapshotRetentionLimit = value;
289 }
292 return *this;
293 }
295
297
303 inline const Aws::String& GetDailySnapshotTime() const { return m_dailySnapshotTime; }
304 inline bool DailySnapshotTimeHasBeenSet() const { return m_dailySnapshotTimeHasBeenSet; }
305 template <typename DailySnapshotTimeT = Aws::String>
306 void SetDailySnapshotTime(DailySnapshotTimeT&& value) {
307 m_dailySnapshotTimeHasBeenSet = true;
308 m_dailySnapshotTime = std::forward<DailySnapshotTimeT>(value);
309 }
310 template <typename DailySnapshotTimeT = Aws::String>
312 SetDailySnapshotTime(std::forward<DailySnapshotTimeT>(value));
313 return *this;
314 }
316
318
325 inline NetworkType GetNetworkType() const { return m_networkType; }
326 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
327 inline void SetNetworkType(NetworkType value) {
328 m_networkTypeHasBeenSet = true;
329 m_networkType = value;
330 }
332 SetNetworkType(value);
333 return *this;
334 }
336
338
346 inline ConnectionType GetConnectionType() const { return m_connectionType; }
347 inline bool ConnectionTypeHasBeenSet() const { return m_connectionTypeHasBeenSet; }
349 m_connectionTypeHasBeenSet = true;
350 m_connectionType = value;
351 }
353 SetConnectionType(value);
354 return *this;
355 }
357 private:
358 Aws::String m_serverlessCacheName;
359
360 Aws::String m_description;
361
362 Aws::String m_engine;
363
364 Aws::String m_majorEngineVersion;
365
366 CacheUsageLimits m_cacheUsageLimits;
367
368 Aws::String m_kmsKeyId;
369
370 Aws::Vector<Aws::String> m_securityGroupIds;
371
372 Aws::Vector<Aws::String> m_snapshotArnsToRestore;
373
374 Aws::Vector<Tag> m_tags;
375
376 Aws::String m_userGroupId;
377
378 Aws::Vector<Aws::String> m_subnetIds;
379
380 int m_snapshotRetentionLimit{0};
381
382 Aws::String m_dailySnapshotTime;
383
384 NetworkType m_networkType{NetworkType::NOT_SET};
385
386 ConnectionType m_connectionType{ConnectionType::NOT_SET};
387 bool m_serverlessCacheNameHasBeenSet = false;
388 bool m_descriptionHasBeenSet = false;
389 bool m_engineHasBeenSet = false;
390 bool m_majorEngineVersionHasBeenSet = false;
391 bool m_cacheUsageLimitsHasBeenSet = false;
392 bool m_kmsKeyIdHasBeenSet = false;
393 bool m_securityGroupIdsHasBeenSet = false;
394 bool m_snapshotArnsToRestoreHasBeenSet = false;
395 bool m_tagsHasBeenSet = false;
396 bool m_userGroupIdHasBeenSet = false;
397 bool m_subnetIdsHasBeenSet = false;
398 bool m_snapshotRetentionLimitHasBeenSet = false;
399 bool m_dailySnapshotTimeHasBeenSet = false;
400 bool m_networkTypeHasBeenSet = false;
401 bool m_connectionTypeHasBeenSet = false;
402};
403
404} // namespace Model
405} // namespace ElastiCache
406} // 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 & WithConnectionType(ConnectionType 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