AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateServerlessCacheRequest.h
1
6#pragma once
7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/elasticache/ElastiCacheRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/elasticache/model/CacheUsageLimits.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/elasticache/model/Tag.h>
13#include <utility>
14
15namespace Aws
16{
17namespace ElastiCache
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_ELASTICACHE_API CreateServerlessCacheRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateServerlessCache"; }
34
35 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
36
37 protected:
38 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
39
40 public:
41
43
47 inline const Aws::String& GetServerlessCacheName() const { return m_serverlessCacheName; }
48 inline bool ServerlessCacheNameHasBeenSet() const { return m_serverlessCacheNameHasBeenSet; }
49 template<typename ServerlessCacheNameT = Aws::String>
50 void SetServerlessCacheName(ServerlessCacheNameT&& value) { m_serverlessCacheNameHasBeenSet = true; m_serverlessCacheName = std::forward<ServerlessCacheNameT>(value); }
51 template<typename ServerlessCacheNameT = Aws::String>
52 CreateServerlessCacheRequest& WithServerlessCacheName(ServerlessCacheNameT&& value) { SetServerlessCacheName(std::forward<ServerlessCacheNameT>(value)); return *this;}
54
56
61 inline const Aws::String& GetDescription() const { return m_description; }
62 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
63 template<typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
65 template<typename DescriptionT = Aws::String>
66 CreateServerlessCacheRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
68
70
74 inline const Aws::String& GetEngine() const { return m_engine; }
75 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
76 template<typename EngineT = Aws::String>
77 void SetEngine(EngineT&& value) { m_engineHasBeenSet = true; m_engine = std::forward<EngineT>(value); }
78 template<typename EngineT = Aws::String>
79 CreateServerlessCacheRequest& WithEngine(EngineT&& value) { SetEngine(std::forward<EngineT>(value)); return *this;}
81
83
87 inline const Aws::String& GetMajorEngineVersion() const { return m_majorEngineVersion; }
88 inline bool MajorEngineVersionHasBeenSet() const { return m_majorEngineVersionHasBeenSet; }
89 template<typename MajorEngineVersionT = Aws::String>
90 void SetMajorEngineVersion(MajorEngineVersionT&& value) { m_majorEngineVersionHasBeenSet = true; m_majorEngineVersion = std::forward<MajorEngineVersionT>(value); }
91 template<typename MajorEngineVersionT = Aws::String>
92 CreateServerlessCacheRequest& WithMajorEngineVersion(MajorEngineVersionT&& value) { SetMajorEngineVersion(std::forward<MajorEngineVersionT>(value)); return *this;}
94
96
100 inline const CacheUsageLimits& GetCacheUsageLimits() const { return m_cacheUsageLimits; }
101 inline bool CacheUsageLimitsHasBeenSet() const { return m_cacheUsageLimitsHasBeenSet; }
102 template<typename CacheUsageLimitsT = CacheUsageLimits>
103 void SetCacheUsageLimits(CacheUsageLimitsT&& value) { m_cacheUsageLimitsHasBeenSet = true; m_cacheUsageLimits = std::forward<CacheUsageLimitsT>(value); }
104 template<typename CacheUsageLimitsT = CacheUsageLimits>
105 CreateServerlessCacheRequest& WithCacheUsageLimits(CacheUsageLimitsT&& value) { SetCacheUsageLimits(std::forward<CacheUsageLimitsT>(value)); return *this;}
107
109
113 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
114 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
115 template<typename KmsKeyIdT = Aws::String>
116 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
117 template<typename KmsKeyIdT = Aws::String>
118 CreateServerlessCacheRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
120
122
129 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
130 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
131 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
132 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
133 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
134 CreateServerlessCacheRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
135 template<typename SecurityGroupIdsT = Aws::String>
136 CreateServerlessCacheRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
138
140
144 inline const Aws::Vector<Aws::String>& GetSnapshotArnsToRestore() const { return m_snapshotArnsToRestore; }
145 inline bool SnapshotArnsToRestoreHasBeenSet() const { return m_snapshotArnsToRestoreHasBeenSet; }
146 template<typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
147 void SetSnapshotArnsToRestore(SnapshotArnsToRestoreT&& value) { m_snapshotArnsToRestoreHasBeenSet = true; m_snapshotArnsToRestore = std::forward<SnapshotArnsToRestoreT>(value); }
148 template<typename SnapshotArnsToRestoreT = Aws::Vector<Aws::String>>
149 CreateServerlessCacheRequest& WithSnapshotArnsToRestore(SnapshotArnsToRestoreT&& value) { SetSnapshotArnsToRestore(std::forward<SnapshotArnsToRestoreT>(value)); return *this;}
150 template<typename SnapshotArnsToRestoreT = Aws::String>
151 CreateServerlessCacheRequest& AddSnapshotArnsToRestore(SnapshotArnsToRestoreT&& value) { m_snapshotArnsToRestoreHasBeenSet = true; m_snapshotArnsToRestore.emplace_back(std::forward<SnapshotArnsToRestoreT>(value)); return *this; }
153
155
159 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
160 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
161 template<typename TagsT = Aws::Vector<Tag>>
162 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
163 template<typename TagsT = Aws::Vector<Tag>>
164 CreateServerlessCacheRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
165 template<typename TagsT = Tag>
166 CreateServerlessCacheRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
168
170
174 inline const Aws::String& GetUserGroupId() const { return m_userGroupId; }
175 inline bool UserGroupIdHasBeenSet() const { return m_userGroupIdHasBeenSet; }
176 template<typename UserGroupIdT = Aws::String>
177 void SetUserGroupId(UserGroupIdT&& value) { m_userGroupIdHasBeenSet = true; m_userGroupId = std::forward<UserGroupIdT>(value); }
178 template<typename UserGroupIdT = Aws::String>
179 CreateServerlessCacheRequest& WithUserGroupId(UserGroupIdT&& value) { SetUserGroupId(std::forward<UserGroupIdT>(value)); return *this;}
181
183
188 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
189 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
190 template<typename SubnetIdsT = Aws::Vector<Aws::String>>
191 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::forward<SubnetIdsT>(value); }
192 template<typename SubnetIdsT = Aws::Vector<Aws::String>>
193 CreateServerlessCacheRequest& WithSubnetIds(SubnetIdsT&& value) { SetSubnetIds(std::forward<SubnetIdsT>(value)); return *this;}
194 template<typename SubnetIdsT = Aws::String>
195 CreateServerlessCacheRequest& AddSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value)); return *this; }
197
199
205 inline int GetSnapshotRetentionLimit() const { return m_snapshotRetentionLimit; }
206 inline bool SnapshotRetentionLimitHasBeenSet() const { return m_snapshotRetentionLimitHasBeenSet; }
207 inline void SetSnapshotRetentionLimit(int value) { m_snapshotRetentionLimitHasBeenSet = true; m_snapshotRetentionLimit = value; }
210
212
218 inline const Aws::String& GetDailySnapshotTime() const { return m_dailySnapshotTime; }
219 inline bool DailySnapshotTimeHasBeenSet() const { return m_dailySnapshotTimeHasBeenSet; }
220 template<typename DailySnapshotTimeT = Aws::String>
221 void SetDailySnapshotTime(DailySnapshotTimeT&& value) { m_dailySnapshotTimeHasBeenSet = true; m_dailySnapshotTime = std::forward<DailySnapshotTimeT>(value); }
222 template<typename DailySnapshotTimeT = Aws::String>
223 CreateServerlessCacheRequest& WithDailySnapshotTime(DailySnapshotTimeT&& value) { SetDailySnapshotTime(std::forward<DailySnapshotTimeT>(value)); return *this;}
225 private:
226
227 Aws::String m_serverlessCacheName;
228 bool m_serverlessCacheNameHasBeenSet = false;
229
230 Aws::String m_description;
231 bool m_descriptionHasBeenSet = false;
232
233 Aws::String m_engine;
234 bool m_engineHasBeenSet = false;
235
236 Aws::String m_majorEngineVersion;
237 bool m_majorEngineVersionHasBeenSet = false;
238
239 CacheUsageLimits m_cacheUsageLimits;
240 bool m_cacheUsageLimitsHasBeenSet = false;
241
242 Aws::String m_kmsKeyId;
243 bool m_kmsKeyIdHasBeenSet = false;
244
245 Aws::Vector<Aws::String> m_securityGroupIds;
246 bool m_securityGroupIdsHasBeenSet = false;
247
248 Aws::Vector<Aws::String> m_snapshotArnsToRestore;
249 bool m_snapshotArnsToRestoreHasBeenSet = false;
250
251 Aws::Vector<Tag> m_tags;
252 bool m_tagsHasBeenSet = false;
253
254 Aws::String m_userGroupId;
255 bool m_userGroupIdHasBeenSet = false;
256
257 Aws::Vector<Aws::String> m_subnetIds;
258 bool m_subnetIdsHasBeenSet = false;
259
260 int m_snapshotRetentionLimit{0};
261 bool m_snapshotRetentionLimitHasBeenSet = false;
262
263 Aws::String m_dailySnapshotTime;
264 bool m_dailySnapshotTimeHasBeenSet = false;
265 };
266
267} // namespace Model
268} // namespace ElastiCache
269} // 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