7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticache/ElastiCache_EXPORTS.h>
12#include <aws/elasticache/model/CacheUsageLimits.h>
13#include <aws/elasticache/model/Endpoint.h>
14#include <aws/elasticache/model/NetworkType.h>
15#include <aws/elasticache/model/StorageEncryptionType.h>
25namespace ElastiCache {
48 template <
typename ServerlessCacheNameT = Aws::String>
50 m_serverlessCacheNameHasBeenSet =
true;
51 m_serverlessCacheName = std::forward<ServerlessCacheNameT>(value);
53 template <
typename ServerlessCacheNameT = Aws::String>
66 template <
typename DescriptionT = Aws::String>
68 m_descriptionHasBeenSet =
true;
69 m_description = std::forward<DescriptionT>(value);
71 template <
typename DescriptionT = Aws::String>
84 template <
typename CreateTimeT = Aws::Utils::DateTime>
86 m_createTimeHasBeenSet =
true;
87 m_createTime = std::forward<CreateTimeT>(value);
89 template <
typename CreateTimeT = Aws::Utils::DateTime>
103 template <
typename StatusT = Aws::String>
105 m_statusHasBeenSet =
true;
106 m_status = std::forward<StatusT>(value);
108 template <
typename StatusT = Aws::String>
121 template <
typename EngineT = Aws::String>
123 m_engineHasBeenSet =
true;
124 m_engine = std::forward<EngineT>(value);
126 template <
typename EngineT = Aws::String>
139 template <
typename MajorEngineVersionT = Aws::String>
141 m_majorEngineVersionHasBeenSet =
true;
142 m_majorEngineVersion = std::forward<MajorEngineVersionT>(value);
144 template <
typename MajorEngineVersionT = Aws::String>
158 template <
typename FullEngineVersionT = Aws::String>
160 m_fullEngineVersionHasBeenSet =
true;
161 m_fullEngineVersion = std::forward<FullEngineVersionT>(value);
163 template <
typename FullEngineVersionT = Aws::String>
176 template <
typename CacheUsageLimitsT = CacheUsageLimits>
178 m_cacheUsageLimitsHasBeenSet =
true;
179 m_cacheUsageLimits = std::forward<CacheUsageLimitsT>(value);
181 template <
typename CacheUsageLimitsT = CacheUsageLimits>
195 template <
typename KmsKeyIdT = Aws::String>
197 m_kmsKeyIdHasBeenSet =
true;
198 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
200 template <
typename KmsKeyIdT = Aws::String>
217 m_storageEncryptionTypeHasBeenSet =
true;
218 m_storageEncryptionType = value;
232 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
234 m_securityGroupIdsHasBeenSet =
true;
235 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
237 template <
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
242 template <
typename SecurityGroupIdsT = Aws::String>
244 m_securityGroupIdsHasBeenSet =
true;
245 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
254 template <
typename Endpo
intT = Endpo
int>
256 m_endpointHasBeenSet =
true;
257 m_endpoint = std::forward<EndpointT>(value);
259 template <
typename Endpo
intT = Endpo
int>
270 template <
typename ReaderEndpo
intT = Endpo
int>
272 m_readerEndpointHasBeenSet =
true;
273 m_readerEndpoint = std::forward<ReaderEndpointT>(value);
275 template <
typename ReaderEndpo
intT = Endpo
int>
288 template <
typename ARNT = Aws::String>
290 m_aRNHasBeenSet =
true;
291 m_aRN = std::forward<ARNT>(value);
293 template <
typename ARNT = Aws::String>
295 SetARN(std::forward<ARNT>(value));
307 template <
typename UserGroupIdT = Aws::String>
309 m_userGroupIdHasBeenSet =
true;
310 m_userGroupId = std::forward<UserGroupIdT>(value);
312 template <
typename UserGroupIdT = Aws::String>
328 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
330 m_subnetIdsHasBeenSet =
true;
331 m_subnetIds = std::forward<SubnetIdsT>(value);
333 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
338 template <
typename SubnetIdsT = Aws::String>
340 m_subnetIdsHasBeenSet =
true;
341 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
355 m_snapshotRetentionLimitHasBeenSet =
true;
356 m_snapshotRetentionLimit = value;
372 template <
typename DailySnapshotTimeT = Aws::String>
374 m_dailySnapshotTimeHasBeenSet =
true;
375 m_dailySnapshotTime = std::forward<DailySnapshotTimeT>(value);
377 template <
typename DailySnapshotTimeT = Aws::String>
395 m_networkTypeHasBeenSet =
true;
396 m_networkType = value;
418 CacheUsageLimits m_cacheUsageLimits;
428 Endpoint m_readerEndpoint;
436 int m_snapshotRetentionLimit{0};
441 bool m_serverlessCacheNameHasBeenSet =
false;
442 bool m_descriptionHasBeenSet =
false;
443 bool m_createTimeHasBeenSet =
false;
444 bool m_statusHasBeenSet =
false;
445 bool m_engineHasBeenSet =
false;
446 bool m_majorEngineVersionHasBeenSet =
false;
447 bool m_fullEngineVersionHasBeenSet =
false;
448 bool m_cacheUsageLimitsHasBeenSet =
false;
449 bool m_kmsKeyIdHasBeenSet =
false;
450 bool m_storageEncryptionTypeHasBeenSet =
false;
451 bool m_securityGroupIdsHasBeenSet =
false;
452 bool m_endpointHasBeenSet =
false;
453 bool m_readerEndpointHasBeenSet =
false;
454 bool m_aRNHasBeenSet =
false;
455 bool m_userGroupIdHasBeenSet =
false;
456 bool m_subnetIdsHasBeenSet =
false;
457 bool m_snapshotRetentionLimitHasBeenSet =
false;
458 bool m_dailySnapshotTimeHasBeenSet =
false;
459 bool m_networkTypeHasBeenSet =
false;
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
void SetCacheUsageLimits(CacheUsageLimitsT &&value)
ServerlessCache & WithServerlessCacheName(ServerlessCacheNameT &&value)
AWS_ELASTICACHE_API ServerlessCache()=default
ServerlessCache & WithEndpoint(EndpointT &&value)
const Aws::String & GetDescription() const
bool SubnetIdsHasBeenSet() const
ServerlessCache & WithARN(ARNT &&value)
ServerlessCache & WithCreateTime(CreateTimeT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
void SetDailySnapshotTime(DailySnapshotTimeT &&value)
bool EngineHasBeenSet() const
AWS_ELASTICACHE_API ServerlessCache(const Aws::Utils::Xml::XmlNode &xmlNode)
ServerlessCache & WithReaderEndpoint(ReaderEndpointT &&value)
void SetMajorEngineVersion(MajorEngineVersionT &&value)
void SetSubnetIds(SubnetIdsT &&value)
ServerlessCache & WithDailySnapshotTime(DailySnapshotTimeT &&value)
ServerlessCache & WithStatus(StatusT &&value)
const Aws::Utils::DateTime & GetCreateTime() const
const Aws::String & GetEngine() const
void SetCreateTime(CreateTimeT &&value)
void SetUserGroupId(UserGroupIdT &&value)
bool EndpointHasBeenSet() const
ServerlessCache & AddSubnetIds(SubnetIdsT &&value)
NetworkType GetNetworkType() const
ServerlessCache & WithKmsKeyId(KmsKeyIdT &&value)
void SetNetworkType(NetworkType value)
const Endpoint & GetEndpoint() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
int GetSnapshotRetentionLimit() const
const Aws::String & GetARN() const
const CacheUsageLimits & GetCacheUsageLimits() const
bool CreateTimeHasBeenSet() const
ServerlessCache & WithEngine(EngineT &&value)
bool DescriptionHasBeenSet() const
ServerlessCache & WithDescription(DescriptionT &&value)
bool DailySnapshotTimeHasBeenSet() const
ServerlessCache & WithSnapshotRetentionLimit(int value)
bool CacheUsageLimitsHasBeenSet() const
AWS_ELASTICACHE_API ServerlessCache & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetKmsKeyId(KmsKeyIdT &&value)
bool FullEngineVersionHasBeenSet() const
const Aws::String & GetServerlessCacheName() const
bool ServerlessCacheNameHasBeenSet() const
bool NetworkTypeHasBeenSet() const
ServerlessCache & WithCacheUsageLimits(CacheUsageLimitsT &&value)
ServerlessCache & WithUserGroupId(UserGroupIdT &&value)
ServerlessCache & WithFullEngineVersion(FullEngineVersionT &&value)
bool UserGroupIdHasBeenSet() const
void SetStorageEncryptionType(StorageEncryptionType value)
ServerlessCache & WithNetworkType(NetworkType value)
ServerlessCache & WithMajorEngineVersion(MajorEngineVersionT &&value)
bool ReaderEndpointHasBeenSet() const
ServerlessCache & AddSecurityGroupIds(SecurityGroupIdsT &&value)
void SetEndpoint(EndpointT &&value)
void SetSnapshotRetentionLimit(int value)
const Aws::String & GetDailySnapshotTime() const
void SetFullEngineVersion(FullEngineVersionT &&value)
ServerlessCache & WithStorageEncryptionType(StorageEncryptionType value)
const Aws::String & GetFullEngineVersion() const
void SetDescription(DescriptionT &&value)
const Aws::String & GetKmsKeyId() const
void SetStatus(StatusT &&value)
bool StorageEncryptionTypeHasBeenSet() const
void SetServerlessCacheName(ServerlessCacheNameT &&value)
const Aws::String & GetUserGroupId() const
const Endpoint & GetReaderEndpoint() const
bool SecurityGroupIdsHasBeenSet() const
void SetEngine(EngineT &&value)
bool SnapshotRetentionLimitHasBeenSet() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool StatusHasBeenSet() const
StorageEncryptionType GetStorageEncryptionType() const
const Aws::String & GetMajorEngineVersion() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetReaderEndpoint(ReaderEndpointT &&value)
bool MajorEngineVersionHasBeenSet() const
bool ARNHasBeenSet() const
ServerlessCache & WithSubnetIds(SubnetIdsT &&value)
bool KmsKeyIdHasBeenSet() const
const Aws::String & GetStatus() const
ServerlessCache & WithSecurityGroupIds(SecurityGroupIdsT &&value)
void SetARN(ARNT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream