7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/elasticache/model/GlobalReplicationGroupInfo.h>
11#include <aws/elasticache/model/ReplicationGroupPendingModifiedValues.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/elasticache/model/AutomaticFailoverStatus.h>
14#include <aws/elasticache/model/MultiAZStatus.h>
15#include <aws/elasticache/model/Endpoint.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/elasticache/model/DataTieringStatus.h>
18#include <aws/elasticache/model/NetworkType.h>
19#include <aws/elasticache/model/IpDiscovery.h>
20#include <aws/elasticache/model/TransitEncryptionMode.h>
21#include <aws/elasticache/model/ClusterMode.h>
22#include <aws/elasticache/model/NodeGroup.h>
23#include <aws/elasticache/model/LogDeliveryConfiguration.h>
65 inline void SetReplicationGroupId(
const char* value) { m_replicationGroupIdHasBeenSet =
true; m_replicationGroupId.assign(value); }
79 inline void SetDescription(
const char* value) { m_descriptionHasBeenSet =
true; m_description.assign(value); }
108 inline void SetStatus(
const char* value) { m_statusHasBeenSet =
true; m_status.assign(value); }
169 inline void SetSnapshottingClusterId(
const char* value) { m_snapshottingClusterIdHasBeenSet =
true; m_snapshottingClusterId.assign(value); }
243 inline void SetSnapshotWindow(
const char* value) { m_snapshotWindowHasBeenSet =
true; m_snapshotWindow.assign(value); }
257 inline void SetClusterEnabled(
bool value) { m_clusterEnabledHasBeenSet =
true; m_clusterEnabled = value; }
270 inline void SetCacheNodeType(
const char* value) { m_cacheNodeTypeHasBeenSet =
true; m_cacheNodeType.assign(value); }
283 inline void SetAuthTokenEnabled(
bool value) { m_authTokenEnabledHasBeenSet =
true; m_authTokenEnabled = value; }
351 inline void SetKmsKeyId(
const char* value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId.assign(value); }
365 inline void SetARN(
const char* value) { m_aRNHasBeenSet =
true; m_aRN.assign(value); }
511 inline void SetEngine(
const char* value) { m_engineHasBeenSet =
true; m_engine.assign(value); }
519 bool m_replicationGroupIdHasBeenSet =
false;
522 bool m_descriptionHasBeenSet =
false;
525 bool m_globalReplicationGroupInfoHasBeenSet =
false;
528 bool m_statusHasBeenSet =
false;
531 bool m_pendingModifiedValuesHasBeenSet =
false;
534 bool m_memberClustersHasBeenSet =
false;
537 bool m_nodeGroupsHasBeenSet =
false;
540 bool m_snapshottingClusterIdHasBeenSet =
false;
543 bool m_automaticFailoverHasBeenSet =
false;
546 bool m_multiAZHasBeenSet =
false;
549 bool m_configurationEndpointHasBeenSet =
false;
551 int m_snapshotRetentionLimit;
552 bool m_snapshotRetentionLimitHasBeenSet =
false;
555 bool m_snapshotWindowHasBeenSet =
false;
557 bool m_clusterEnabled;
558 bool m_clusterEnabledHasBeenSet =
false;
561 bool m_cacheNodeTypeHasBeenSet =
false;
563 bool m_authTokenEnabled;
564 bool m_authTokenEnabledHasBeenSet =
false;
567 bool m_authTokenLastModifiedDateHasBeenSet =
false;
569 bool m_transitEncryptionEnabled;
570 bool m_transitEncryptionEnabledHasBeenSet =
false;
572 bool m_atRestEncryptionEnabled;
573 bool m_atRestEncryptionEnabledHasBeenSet =
false;
576 bool m_memberClustersOutpostArnsHasBeenSet =
false;
579 bool m_kmsKeyIdHasBeenSet =
false;
582 bool m_aRNHasBeenSet =
false;
585 bool m_userGroupIdsHasBeenSet =
false;
588 bool m_logDeliveryConfigurationsHasBeenSet =
false;
591 bool m_replicationGroupCreateTimeHasBeenSet =
false;
594 bool m_dataTieringHasBeenSet =
false;
596 bool m_autoMinorVersionUpgrade;
597 bool m_autoMinorVersionUpgradeHasBeenSet =
false;
600 bool m_networkTypeHasBeenSet =
false;
603 bool m_ipDiscoveryHasBeenSet =
false;
606 bool m_transitEncryptionModeHasBeenSet =
false;
609 bool m_clusterModeHasBeenSet =
false;
612 bool m_engineHasBeenSet =
false;
void SetGlobalReplicationGroupInfo(const GlobalReplicationGroupInfo &value)
ReplicationGroup & AddMemberClusters(const char *value)
ReplicationGroup & WithAuthTokenLastModifiedDate(const Aws::Utils::DateTime &value)
void SetPendingModifiedValues(const ReplicationGroupPendingModifiedValues &value)
ReplicationGroup & WithLogDeliveryConfigurations(const Aws::Vector< LogDeliveryConfiguration > &value)
const TransitEncryptionMode & GetTransitEncryptionMode() const
ReplicationGroup & WithLogDeliveryConfigurations(Aws::Vector< LogDeliveryConfiguration > &&value)
bool SnapshotRetentionLimitHasBeenSet() const
const Aws::String & GetReplicationGroupId() const
ReplicationGroup & WithAutomaticFailover(AutomaticFailoverStatus &&value)
const Aws::String & GetEngine() const
bool ConfigurationEndpointHasBeenSet() const
ReplicationGroup & AddMemberClusters(Aws::String &&value)
void SetCacheNodeType(const Aws::String &value)
ReplicationGroup & WithSnapshotWindow(Aws::String &&value)
ReplicationGroup & WithReplicationGroupId(Aws::String &&value)
bool AutomaticFailoverHasBeenSet() const
bool MemberClustersOutpostArnsHasBeenSet() const
ReplicationGroup & WithTransitEncryptionEnabled(bool value)
void SetKmsKeyId(Aws::String &&value)
void SetMemberClustersOutpostArns(Aws::Vector< Aws::String > &&value)
ReplicationGroup & AddNodeGroups(NodeGroup &&value)
ReplicationGroup & WithPendingModifiedValues(const ReplicationGroupPendingModifiedValues &value)
ReplicationGroup & WithSnapshottingClusterId(Aws::String &&value)
const Aws::Vector< LogDeliveryConfiguration > & GetLogDeliveryConfigurations() const
void SetLogDeliveryConfigurations(const Aws::Vector< LogDeliveryConfiguration > &value)
void SetSnapshotWindow(Aws::String &&value)
ReplicationGroup & WithTransitEncryptionMode(const TransitEncryptionMode &value)
bool AuthTokenEnabledHasBeenSet() const
void SetSnapshotRetentionLimit(int value)
ReplicationGroup & WithStatus(const char *value)
ReplicationGroup & WithStatus(const Aws::String &value)
bool GetAutoMinorVersionUpgrade() const
ReplicationGroup & AddUserGroupIds(const Aws::String &value)
void SetARN(Aws::String &&value)
void SetEngine(Aws::String &&value)
ReplicationGroup & WithEngine(const Aws::String &value)
ReplicationGroup & WithSnapshotWindow(const Aws::String &value)
AWS_ELASTICACHE_API ReplicationGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
bool NetworkTypeHasBeenSet() const
void SetDescription(Aws::String &&value)
bool ARNHasBeenSet() const
void SetAutomaticFailover(const AutomaticFailoverStatus &value)
ReplicationGroup & AddMemberClustersOutpostArns(const Aws::String &value)
const Aws::String & GetStatus() const
ReplicationGroup & WithKmsKeyId(const Aws::String &value)
void SetAtRestEncryptionEnabled(bool value)
ReplicationGroup & WithTransitEncryptionMode(TransitEncryptionMode &&value)
void SetReplicationGroupId(const char *value)
void SetUserGroupIds(const Aws::Vector< Aws::String > &value)
bool TransitEncryptionEnabledHasBeenSet() const
void SetMemberClusters(Aws::Vector< Aws::String > &&value)
const GlobalReplicationGroupInfo & GetGlobalReplicationGroupInfo() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ReplicationGroup & WithSnapshottingClusterId(const Aws::String &value)
void SetSnapshotWindow(const Aws::String &value)
bool MemberClustersHasBeenSet() const
ReplicationGroup & WithPendingModifiedValues(ReplicationGroupPendingModifiedValues &&value)
ReplicationGroup & WithMultiAZ(MultiAZStatus &&value)
void SetMemberClusters(const Aws::Vector< Aws::String > &value)
ReplicationGroup & WithCacheNodeType(const Aws::String &value)
ReplicationGroup & WithConfigurationEndpoint(Endpoint &&value)
ReplicationGroup & WithReplicationGroupCreateTime(Aws::Utils::DateTime &&value)
ReplicationGroup & WithDescription(const Aws::String &value)
ReplicationGroup & WithEngine(Aws::String &&value)
bool SnapshottingClusterIdHasBeenSet() const
void SetTransitEncryptionEnabled(bool value)
ReplicationGroup & WithClusterEnabled(bool value)
bool NodeGroupsHasBeenSet() const
ReplicationGroup & WithAutoMinorVersionUpgrade(bool value)
bool DataTieringHasBeenSet() const
void SetMultiAZ(const MultiAZStatus &value)
ReplicationGroup & WithCacheNodeType(Aws::String &&value)
ReplicationGroup & AddNodeGroups(const NodeGroup &value)
const Aws::String & GetSnapshotWindow() const
bool AtRestEncryptionEnabledHasBeenSet() const
ReplicationGroup & AddLogDeliveryConfigurations(LogDeliveryConfiguration &&value)
void SetSnapshottingClusterId(const char *value)
void SetDescription(const Aws::String &value)
void SetClusterMode(ClusterMode &&value)
const Aws::String & GetKmsKeyId() const
ReplicationGroup & WithReplicationGroupCreateTime(const Aws::Utils::DateTime &value)
const Aws::String & GetDescription() const
void SetStatus(Aws::String &&value)
void SetARN(const char *value)
ReplicationGroup & WithUserGroupIds(Aws::Vector< Aws::String > &&value)
ReplicationGroup & WithKmsKeyId(const char *value)
int GetSnapshotRetentionLimit() const
void SetNodeGroups(const Aws::Vector< NodeGroup > &value)
const AutomaticFailoverStatus & GetAutomaticFailover() const
const Aws::Vector< Aws::String > & GetMemberClusters() const
const NetworkType & GetNetworkType() const
AWS_ELASTICACHE_API ReplicationGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ReplicationGroup & WithNodeGroups(Aws::Vector< NodeGroup > &&value)
bool MultiAZHasBeenSet() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetKmsKeyId(const char *value)
ReplicationGroup & WithSnapshotRetentionLimit(int value)
void SetDataTiering(const DataTieringStatus &value)
bool ReplicationGroupIdHasBeenSet() const
const IpDiscovery & GetIpDiscovery() const
const Aws::Vector< Aws::String > & GetUserGroupIds() const
ReplicationGroup & AddMemberClusters(const Aws::String &value)
ReplicationGroup & AddMemberClustersOutpostArns(Aws::String &&value)
void SetReplicationGroupCreateTime(const Aws::Utils::DateTime &value)
const Aws::String & GetSnapshottingClusterId() const
void SetSnapshottingClusterId(const Aws::String &value)
ReplicationGroup & WithClusterMode(const ClusterMode &value)
void SetGlobalReplicationGroupInfo(GlobalReplicationGroupInfo &&value)
ReplicationGroup & WithMemberClusters(Aws::Vector< Aws::String > &&value)
ReplicationGroup & WithClusterMode(ClusterMode &&value)
void SetClusterEnabled(bool value)
void SetMultiAZ(MultiAZStatus &&value)
void SetEngine(const char *value)
void SetDescription(const char *value)
bool TransitEncryptionModeHasBeenSet() const
ReplicationGroup & AddLogDeliveryConfigurations(const LogDeliveryConfiguration &value)
bool CacheNodeTypeHasBeenSet() const
void SetCacheNodeType(Aws::String &&value)
void SetAuthTokenLastModifiedDate(const Aws::Utils::DateTime &value)
bool StatusHasBeenSet() const
void SetConfigurationEndpoint(const Endpoint &value)
void SetConfigurationEndpoint(Endpoint &&value)
void SetSnapshottingClusterId(Aws::String &&value)
void SetAuthTokenLastModifiedDate(Aws::Utils::DateTime &&value)
ReplicationGroup & WithReplicationGroupId(const char *value)
void SetDataTiering(DataTieringStatus &&value)
ReplicationGroup & WithEngine(const char *value)
void SetAuthTokenEnabled(bool value)
ReplicationGroup & WithIpDiscovery(const IpDiscovery &value)
const Aws::Utils::DateTime & GetAuthTokenLastModifiedDate() const
ReplicationGroup & WithNodeGroups(const Aws::Vector< NodeGroup > &value)
ReplicationGroup & WithSnapshottingClusterId(const char *value)
void SetSnapshotWindow(const char *value)
void SetMemberClustersOutpostArns(const Aws::Vector< Aws::String > &value)
void SetReplicationGroupCreateTime(Aws::Utils::DateTime &&value)
AWS_ELASTICACHE_API ReplicationGroup()
ReplicationGroup & WithDescription(const char *value)
const Aws::String & GetARN() const
bool SnapshotWindowHasBeenSet() const
ReplicationGroup & WithSnapshotWindow(const char *value)
void SetAutomaticFailover(AutomaticFailoverStatus &&value)
bool GetAuthTokenEnabled() const
void SetTransitEncryptionMode(TransitEncryptionMode &&value)
ReplicationGroup & WithKmsKeyId(Aws::String &&value)
bool DescriptionHasBeenSet() const
ReplicationGroup & WithCacheNodeType(const char *value)
ReplicationGroup & WithUserGroupIds(const Aws::Vector< Aws::String > &value)
ReplicationGroup & WithConfigurationEndpoint(const Endpoint &value)
void SetNetworkType(NetworkType &&value)
bool PendingModifiedValuesHasBeenSet() const
bool GetTransitEncryptionEnabled() const
ReplicationGroup & AddUserGroupIds(Aws::String &&value)
ReplicationGroup & WithDataTiering(const DataTieringStatus &value)
bool AuthTokenLastModifiedDateHasBeenSet() const
const MultiAZStatus & GetMultiAZ() const
void SetReplicationGroupId(const Aws::String &value)
ReplicationGroup & WithMemberClusters(const Aws::Vector< Aws::String > &value)
ReplicationGroup & WithAutomaticFailover(const AutomaticFailoverStatus &value)
ReplicationGroup & WithGlobalReplicationGroupInfo(const GlobalReplicationGroupInfo &value)
bool LogDeliveryConfigurationsHasBeenSet() const
ReplicationGroup & WithAuthTokenLastModifiedDate(Aws::Utils::DateTime &&value)
void SetStatus(const char *value)
bool EngineHasBeenSet() const
const Aws::Vector< Aws::String > & GetMemberClustersOutpostArns() const
void SetKmsKeyId(const Aws::String &value)
ReplicationGroup & WithReplicationGroupId(const Aws::String &value)
const Aws::String & GetCacheNodeType() const
void SetLogDeliveryConfigurations(Aws::Vector< LogDeliveryConfiguration > &&value)
ReplicationGroup & WithDescription(Aws::String &&value)
ReplicationGroup & WithARN(const Aws::String &value)
void SetARN(const Aws::String &value)
ReplicationGroup & WithNetworkType(const NetworkType &value)
ReplicationGroup & WithNetworkType(NetworkType &&value)
ReplicationGroup & WithGlobalReplicationGroupInfo(GlobalReplicationGroupInfo &&value)
const Endpoint & GetConfigurationEndpoint() const
const Aws::Vector< NodeGroup > & GetNodeGroups() const
void SetCacheNodeType(const char *value)
bool KmsKeyIdHasBeenSet() const
void SetTransitEncryptionMode(const TransitEncryptionMode &value)
bool ReplicationGroupCreateTimeHasBeenSet() const
void SetPendingModifiedValues(ReplicationGroupPendingModifiedValues &&value)
void SetIpDiscovery(const IpDiscovery &value)
void SetNetworkType(const NetworkType &value)
bool GlobalReplicationGroupInfoHasBeenSet() const
void SetReplicationGroupId(Aws::String &&value)
bool GetClusterEnabled() const
bool GetAtRestEncryptionEnabled() const
void SetStatus(const Aws::String &value)
ReplicationGroup & WithStatus(Aws::String &&value)
ReplicationGroup & WithARN(const char *value)
void SetClusterMode(const ClusterMode &value)
ReplicationGroup & WithMultiAZ(const MultiAZStatus &value)
bool UserGroupIdsHasBeenSet() const
void SetUserGroupIds(Aws::Vector< Aws::String > &&value)
bool AutoMinorVersionUpgradeHasBeenSet() const
bool ClusterModeHasBeenSet() const
ReplicationGroup & AddMemberClustersOutpostArns(const char *value)
ReplicationGroup & WithDataTiering(DataTieringStatus &&value)
ReplicationGroup & WithAuthTokenEnabled(bool value)
bool IpDiscoveryHasBeenSet() const
void SetNodeGroups(Aws::Vector< NodeGroup > &&value)
bool ClusterEnabledHasBeenSet() const
ReplicationGroup & WithMemberClustersOutpostArns(const Aws::Vector< Aws::String > &value)
void SetIpDiscovery(IpDiscovery &&value)
const Aws::Utils::DateTime & GetReplicationGroupCreateTime() const
ReplicationGroup & WithMemberClustersOutpostArns(Aws::Vector< Aws::String > &&value)
ReplicationGroup & WithARN(Aws::String &&value)
void SetEngine(const Aws::String &value)
const ReplicationGroupPendingModifiedValues & GetPendingModifiedValues() const
void SetAutoMinorVersionUpgrade(bool value)
const DataTieringStatus & GetDataTiering() const
ReplicationGroup & WithAtRestEncryptionEnabled(bool value)
ReplicationGroup & WithIpDiscovery(IpDiscovery &&value)
const ClusterMode & GetClusterMode() const
ReplicationGroup & AddUserGroupIds(const char *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