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/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticache/model/AuthTokenUpdateStrategyType.h>
12#include <aws/elasticache/model/IpDiscovery.h>
13#include <aws/elasticache/model/TransitEncryptionMode.h>
14#include <aws/elasticache/model/ClusterMode.h>
15#include <aws/elasticache/model/LogDeliveryConfigurationRequest.h>
55 template<
typename ReplicationGroupIdT = Aws::String>
56 void SetReplicationGroupId(ReplicationGroupIdT&& value) { m_replicationGroupIdHasBeenSet =
true; m_replicationGroupId = std::forward<ReplicationGroupIdT>(value); }
57 template<
typename ReplicationGroupIdT = Aws::String>
68 template<
typename ReplicationGroupDescriptionT = Aws::String>
69 void SetReplicationGroupDescription(ReplicationGroupDescriptionT&& value) { m_replicationGroupDescriptionHasBeenSet =
true; m_replicationGroupDescription = std::forward<ReplicationGroupDescriptionT>(value); }
70 template<
typename ReplicationGroupDescriptionT = Aws::String>
83 template<
typename PrimaryClusterIdT = Aws::String>
84 void SetPrimaryClusterId(PrimaryClusterIdT&& value) { m_primaryClusterIdHasBeenSet =
true; m_primaryClusterId = std::forward<PrimaryClusterIdT>(value); }
85 template<
typename PrimaryClusterIdT = Aws::String>
97 template<
typename SnapshottingClusterIdT = Aws::String>
98 void SetSnapshottingClusterId(SnapshottingClusterIdT&& value) { m_snapshottingClusterIdHasBeenSet =
true; m_snapshottingClusterId = std::forward<SnapshottingClusterIdT>(value); }
99 template<
typename SnapshottingClusterIdT = Aws::String>
121 inline void SetMultiAZEnabled(
bool value) { m_multiAZEnabledHasBeenSet =
true; m_multiAZEnabled = value; }
136 template<
typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
137 void SetCacheSecurityGroupNames(CacheSecurityGroupNamesT&& value) { m_cacheSecurityGroupNamesHasBeenSet =
true; m_cacheSecurityGroupNames = std::forward<CacheSecurityGroupNamesT>(value); }
138 template<
typename CacheSecurityGroupNamesT = Aws::Vector<Aws::String>>
140 template<
typename CacheSecurityGroupNamesT = Aws::String>
152 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
153 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
154 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
156 template<
typename SecurityGroupIdsT = Aws::String>
173 template<
typename PreferredMa
intenanceWindowT = Aws::String>
174 void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) { m_preferredMaintenanceWindowHasBeenSet =
true; m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value); }
175 template<
typename PreferredMa
intenanceWindowT = Aws::String>
187 template<
typename NotificationTopicArnT = Aws::String>
188 void SetNotificationTopicArn(NotificationTopicArnT&& value) { m_notificationTopicArnHasBeenSet =
true; m_notificationTopicArn = std::forward<NotificationTopicArnT>(value); }
189 template<
typename NotificationTopicArnT = Aws::String>
202 template<
typename CacheParameterGroupNameT = Aws::String>
203 void SetCacheParameterGroupName(CacheParameterGroupNameT&& value) { m_cacheParameterGroupNameHasBeenSet =
true; m_cacheParameterGroupName = std::forward<CacheParameterGroupNameT>(value); }
204 template<
typename CacheParameterGroupNameT = Aws::String>
216 template<
typename NotificationTopicStatusT = Aws::String>
217 void SetNotificationTopicStatus(NotificationTopicStatusT&& value) { m_notificationTopicStatusHasBeenSet =
true; m_notificationTopicStatus = std::forward<NotificationTopicStatusT>(value); }
218 template<
typename NotificationTopicStatusT = Aws::String>
234 inline void SetApplyImmediately(
bool value) { m_applyImmediatelyHasBeenSet =
true; m_applyImmediately = value; }
245 template<
typename EngineT = Aws::String>
246 void SetEngine(EngineT&& value) { m_engineHasBeenSet =
true; m_engine = std::forward<EngineT>(value); }
247 template<
typename EngineT = Aws::String>
264 template<
typename EngineVersionT = Aws::String>
265 void SetEngineVersion(EngineVersionT&& value) { m_engineVersionHasBeenSet =
true; m_engineVersion = std::forward<EngineVersionT>(value); }
266 template<
typename EngineVersionT = Aws::String>
306 template<
typename SnapshotWindowT = Aws::String>
307 void SetSnapshotWindow(SnapshotWindowT&& value) { m_snapshotWindowHasBeenSet =
true; m_snapshotWindow = std::forward<SnapshotWindowT>(value); }
308 template<
typename SnapshotWindowT = Aws::String>
318 template<
typename CacheNodeTypeT = Aws::String>
319 void SetCacheNodeType(CacheNodeTypeT&& value) { m_cacheNodeTypeHasBeenSet =
true; m_cacheNodeType = std::forward<CacheNodeTypeT>(value); }
320 template<
typename CacheNodeTypeT = Aws::String>
337 template<
typename AuthTokenT = Aws::String>
338 void SetAuthToken(AuthTokenT&& value) { m_authTokenHasBeenSet =
true; m_authToken = std::forward<AuthTokenT>(value); }
339 template<
typename AuthTokenT = Aws::String>
365 template<
typename UserGroupIdsToAddT = Aws::Vector<Aws::String>>
366 void SetUserGroupIdsToAdd(UserGroupIdsToAddT&& value) { m_userGroupIdsToAddHasBeenSet =
true; m_userGroupIdsToAdd = std::forward<UserGroupIdsToAddT>(value); }
367 template<
typename UserGroupIdsToAddT = Aws::Vector<Aws::String>>
369 template<
typename UserGroupIdsToAddT = Aws::String>
380 template<
typename UserGroupIdsToRemoveT = Aws::Vector<Aws::String>>
381 void SetUserGroupIdsToRemove(UserGroupIdsToRemoveT&& value) { m_userGroupIdsToRemoveHasBeenSet =
true; m_userGroupIdsToRemove = std::forward<UserGroupIdsToRemoveT>(value); }
382 template<
typename UserGroupIdsToRemoveT = Aws::Vector<Aws::String>>
384 template<
typename UserGroupIdsToRemoveT = Aws::String>
394 inline void SetRemoveUserGroups(
bool value) { m_removeUserGroupsHasBeenSet =
true; m_removeUserGroups = value; }
404 template<
typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
405 void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT&& value) { m_logDeliveryConfigurationsHasBeenSet =
true; m_logDeliveryConfigurations = std::forward<LogDeliveryConfigurationsT>(value); }
406 template<
typename LogDeliveryConfigurationsT = Aws::Vector<LogDeliveryConfigurationRequest>>
408 template<
typename LogDeliveryConfigurationsT = LogDeliveryConfigurationRequest>
475 bool m_replicationGroupIdHasBeenSet =
false;
478 bool m_replicationGroupDescriptionHasBeenSet =
false;
481 bool m_primaryClusterIdHasBeenSet =
false;
484 bool m_snapshottingClusterIdHasBeenSet =
false;
486 bool m_automaticFailoverEnabled{
false};
487 bool m_automaticFailoverEnabledHasBeenSet =
false;
489 bool m_multiAZEnabled{
false};
490 bool m_multiAZEnabledHasBeenSet =
false;
493 bool m_cacheSecurityGroupNamesHasBeenSet =
false;
496 bool m_securityGroupIdsHasBeenSet =
false;
499 bool m_preferredMaintenanceWindowHasBeenSet =
false;
502 bool m_notificationTopicArnHasBeenSet =
false;
505 bool m_cacheParameterGroupNameHasBeenSet =
false;
508 bool m_notificationTopicStatusHasBeenSet =
false;
510 bool m_applyImmediately{
false};
511 bool m_applyImmediatelyHasBeenSet =
false;
514 bool m_engineHasBeenSet =
false;
517 bool m_engineVersionHasBeenSet =
false;
519 bool m_autoMinorVersionUpgrade{
false};
520 bool m_autoMinorVersionUpgradeHasBeenSet =
false;
522 int m_snapshotRetentionLimit{0};
523 bool m_snapshotRetentionLimitHasBeenSet =
false;
526 bool m_snapshotWindowHasBeenSet =
false;
529 bool m_cacheNodeTypeHasBeenSet =
false;
532 bool m_authTokenHasBeenSet =
false;
535 bool m_authTokenUpdateStrategyHasBeenSet =
false;
538 bool m_userGroupIdsToAddHasBeenSet =
false;
541 bool m_userGroupIdsToRemoveHasBeenSet =
false;
543 bool m_removeUserGroups{
false};
544 bool m_removeUserGroupsHasBeenSet =
false;
547 bool m_logDeliveryConfigurationsHasBeenSet =
false;
550 bool m_ipDiscoveryHasBeenSet =
false;
552 bool m_transitEncryptionEnabled{
false};
553 bool m_transitEncryptionEnabledHasBeenSet =
false;
556 bool m_transitEncryptionModeHasBeenSet =
false;
559 bool m_clusterModeHasBeenSet =
false;
AWS_ELASTICACHE_API ModifyReplicationGroupRequest()=default
const Aws::String & GetNotificationTopicArn() const
void SetTransitEncryptionMode(TransitEncryptionMode value)
ModifyReplicationGroupRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
void SetAutomaticFailoverEnabled(bool value)
bool AuthTokenHasBeenSet() const
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
bool MultiAZEnabledHasBeenSet() const
AuthTokenUpdateStrategyType GetAuthTokenUpdateStrategy() const
ModifyReplicationGroupRequest & WithClusterMode(ClusterMode value)
void SetSnapshotWindow(SnapshotWindowT &&value)
bool TransitEncryptionEnabledHasBeenSet() const
ModifyReplicationGroupRequest & WithApplyImmediately(bool value)
ModifyReplicationGroupRequest & WithTransitEncryptionMode(TransitEncryptionMode value)
const Aws::String & GetEngineVersion() const
void SetRemoveUserGroups(bool value)
void SetTransitEncryptionEnabled(bool value)
ModifyReplicationGroupRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
ModifyReplicationGroupRequest & WithSnapshottingClusterId(SnapshottingClusterIdT &&value)
void SetEngine(EngineT &&value)
bool PreferredMaintenanceWindowHasBeenSet() const
ModifyReplicationGroupRequest & AddLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
ModifyReplicationGroupRequest & WithAutomaticFailoverEnabled(bool value)
int GetSnapshotRetentionLimit() const
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
bool NotificationTopicArnHasBeenSet() const
const Aws::Vector< Aws::String > & GetUserGroupIdsToAdd() const
bool GetAutoMinorVersionUpgrade() const
bool AutomaticFailoverEnabledHasBeenSet() const
const Aws::String & GetSnapshotWindow() const
void SetSnapshottingClusterId(SnapshottingClusterIdT &&value)
const Aws::Vector< Aws::String > & GetCacheSecurityGroupNames() const
void SetReplicationGroupDescription(ReplicationGroupDescriptionT &&value)
bool LogDeliveryConfigurationsHasBeenSet() const
void SetNotificationTopicArn(NotificationTopicArnT &&value)
ModifyReplicationGroupRequest & WithEngineVersion(EngineVersionT &&value)
bool ReplicationGroupIdHasBeenSet() const
virtual const char * GetServiceRequestName() const override
ModifyReplicationGroupRequest & WithRemoveUserGroups(bool value)
const Aws::String & GetAuthToken() const
void SetAuthTokenUpdateStrategy(AuthTokenUpdateStrategyType value)
bool SecurityGroupIdsHasBeenSet() const
bool GetRemoveUserGroups() const
const Aws::String & GetCacheNodeType() const
ModifyReplicationGroupRequest & WithPrimaryClusterId(PrimaryClusterIdT &&value)
TransitEncryptionMode GetTransitEncryptionMode() const
ModifyReplicationGroupRequest & WithCacheParameterGroupName(CacheParameterGroupNameT &&value)
ModifyReplicationGroupRequest & AddUserGroupIdsToRemove(UserGroupIdsToRemoveT &&value)
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
bool TransitEncryptionModeHasBeenSet() const
ModifyReplicationGroupRequest & AddCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
void SetClusterMode(ClusterMode value)
ModifyReplicationGroupRequest & WithReplicationGroupDescription(ReplicationGroupDescriptionT &&value)
bool SnapshotWindowHasBeenSet() const
bool CacheNodeTypeHasBeenSet() const
bool CacheParameterGroupNameHasBeenSet() const
bool PrimaryClusterIdHasBeenSet() const
void SetAutoMinorVersionUpgrade(bool value)
ModifyReplicationGroupRequest & WithIpDiscovery(IpDiscovery value)
bool EngineVersionHasBeenSet() const
bool ApplyImmediatelyHasBeenSet() const
void SetCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
const Aws::Vector< Aws::String > & GetUserGroupIdsToRemove() const
bool ReplicationGroupDescriptionHasBeenSet() const
ModifyReplicationGroupRequest & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
ModifyReplicationGroupRequest & WithAutoMinorVersionUpgrade(bool value)
void SetMultiAZEnabled(bool value)
bool EngineHasBeenSet() const
bool UserGroupIdsToRemoveHasBeenSet() const
bool RemoveUserGroupsHasBeenSet() const
const Aws::String & GetEngine() const
ModifyReplicationGroupRequest & AddUserGroupIdsToAdd(UserGroupIdsToAddT &&value)
bool ClusterModeHasBeenSet() const
bool UserGroupIdsToAddHasBeenSet() const
ModifyReplicationGroupRequest & WithAuthTokenUpdateStrategy(AuthTokenUpdateStrategyType value)
bool NotificationTopicStatusHasBeenSet() const
const Aws::String & GetReplicationGroupDescription() const
ModifyReplicationGroupRequest & WithTransitEncryptionEnabled(bool value)
bool GetApplyImmediately() const
ModifyReplicationGroupRequest & WithNotificationTopicArn(NotificationTopicArnT &&value)
void SetNotificationTopicStatus(NotificationTopicStatusT &&value)
const Aws::String & GetCacheParameterGroupName() const
ModifyReplicationGroupRequest & WithReplicationGroupId(ReplicationGroupIdT &&value)
ModifyReplicationGroupRequest & WithAuthToken(AuthTokenT &&value)
void SetPrimaryClusterId(PrimaryClusterIdT &&value)
void SetEngineVersion(EngineVersionT &&value)
void SetIpDiscovery(IpDiscovery value)
bool SnapshottingClusterIdHasBeenSet() const
const Aws::Vector< LogDeliveryConfigurationRequest > & GetLogDeliveryConfigurations() const
bool IpDiscoveryHasBeenSet() const
ModifyReplicationGroupRequest & WithNotificationTopicStatus(NotificationTopicStatusT &&value)
bool AutoMinorVersionUpgradeHasBeenSet() const
bool GetTransitEncryptionEnabled() const
bool GetMultiAZEnabled() const
bool GetAutomaticFailoverEnabled() const
void SetCacheParameterGroupName(CacheParameterGroupNameT &&value)
ModifyReplicationGroupRequest & WithMultiAZEnabled(bool value)
ModifyReplicationGroupRequest & WithCacheSecurityGroupNames(CacheSecurityGroupNamesT &&value)
const Aws::String & GetSnapshottingClusterId() const
void SetCacheNodeType(CacheNodeTypeT &&value)
void SetReplicationGroupId(ReplicationGroupIdT &&value)
void SetApplyImmediately(bool value)
bool CacheSecurityGroupNamesHasBeenSet() const
ModifyReplicationGroupRequest & WithLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
IpDiscovery GetIpDiscovery() const
void SetAuthToken(AuthTokenT &&value)
const Aws::String & GetReplicationGroupId() const
bool SnapshotRetentionLimitHasBeenSet() const
ClusterMode GetClusterMode() const
const Aws::String & GetNotificationTopicStatus() const
bool AuthTokenUpdateStrategyHasBeenSet() const
ModifyReplicationGroupRequest & WithSnapshotRetentionLimit(int value)
const Aws::String & GetPrimaryClusterId() const
ModifyReplicationGroupRequest & WithSnapshotWindow(SnapshotWindowT &&value)
void SetUserGroupIdsToAdd(UserGroupIdsToAddT &&value)
const Aws::String & GetPreferredMaintenanceWindow() const
ModifyReplicationGroupRequest & WithCacheNodeType(CacheNodeTypeT &&value)
void SetUserGroupIdsToRemove(UserGroupIdsToRemoveT &&value)
ModifyReplicationGroupRequest & WithUserGroupIdsToAdd(UserGroupIdsToAddT &&value)
ModifyReplicationGroupRequest & WithEngine(EngineT &&value)
void SetLogDeliveryConfigurations(LogDeliveryConfigurationsT &&value)
ModifyReplicationGroupRequest & WithUserGroupIdsToRemove(UserGroupIdsToRemoveT &&value)
void SetSnapshotRetentionLimit(int value)
AuthTokenUpdateStrategyType
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector