/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the elasticache-2015-02-02.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ElastiCache.Model
{
///
/// The settings to be applied to the Redis replication group, either immediately or during
/// the next maintenance window.
///
public partial class ReplicationGroupPendingModifiedValues
{
private AuthTokenUpdateStatus _authTokenStatus;
private PendingAutomaticFailoverStatus _automaticFailoverStatus;
private ClusterMode _clusterMode;
private List _logDeliveryConfigurations = new List();
private string _primaryClusterId;
private ReshardingStatus _resharding;
private bool? _transitEncryptionEnabled;
private TransitEncryptionMode _transitEncryptionMode;
private UserGroupsUpdateStatus _userGroups;
///
/// Gets and sets the property AuthTokenStatus.
///
/// The auth token status
///
///
public AuthTokenUpdateStatus AuthTokenStatus
{
get { return this._authTokenStatus; }
set { this._authTokenStatus = value; }
}
// Check to see if AuthTokenStatus property is set
internal bool IsSetAuthTokenStatus()
{
return this._authTokenStatus != null;
}
///
/// Gets and sets the property AutomaticFailoverStatus.
///
/// Indicates the status of automatic failover for this Redis replication group.
///
///
public PendingAutomaticFailoverStatus AutomaticFailoverStatus
{
get { return this._automaticFailoverStatus; }
set { this._automaticFailoverStatus = value; }
}
// Check to see if AutomaticFailoverStatus property is set
internal bool IsSetAutomaticFailoverStatus()
{
return this._automaticFailoverStatus != null;
}
///
/// Gets and sets the property ClusterMode.
///
/// Enabled or Disabled. To modify cluster mode from Disabled to Enabled, you must first
/// set the cluster mode to Compatible. Compatible mode allows your Redis clients to connect
/// using both cluster mode enabled and cluster mode disabled. After you migrate all Redis
/// clients to use cluster mode enabled, you can then complete cluster mode configuration
/// and set the cluster mode to Enabled.
///
///
public ClusterMode ClusterMode
{
get { return this._clusterMode; }
set { this._clusterMode = value; }
}
// Check to see if ClusterMode property is set
internal bool IsSetClusterMode()
{
return this._clusterMode != null;
}
///
/// Gets and sets the property LogDeliveryConfigurations.
///
/// The log delivery configurations being modified
///
///
public List LogDeliveryConfigurations
{
get { return this._logDeliveryConfigurations; }
set { this._logDeliveryConfigurations = value; }
}
// Check to see if LogDeliveryConfigurations property is set
internal bool IsSetLogDeliveryConfigurations()
{
return this._logDeliveryConfigurations != null && this._logDeliveryConfigurations.Count > 0;
}
///
/// Gets and sets the property PrimaryClusterId.
///
/// The primary cluster ID that is applied immediately (if --apply-immediately
/// was specified), or during the next maintenance window.
///
///
public string PrimaryClusterId
{
get { return this._primaryClusterId; }
set { this._primaryClusterId = value; }
}
// Check to see if PrimaryClusterId property is set
internal bool IsSetPrimaryClusterId()
{
return this._primaryClusterId != null;
}
///
/// Gets and sets the property Resharding.
///
/// The status of an online resharding operation.
///
///
public ReshardingStatus Resharding
{
get { return this._resharding; }
set { this._resharding = value; }
}
// Check to see if Resharding property is set
internal bool IsSetResharding()
{
return this._resharding != null;
}
///
/// Gets and sets the property TransitEncryptionEnabled.
///
/// A flag that enables in-transit encryption when set to true.
///
///
public bool TransitEncryptionEnabled
{
get { return this._transitEncryptionEnabled.GetValueOrDefault(); }
set { this._transitEncryptionEnabled = value; }
}
// Check to see if TransitEncryptionEnabled property is set
internal bool IsSetTransitEncryptionEnabled()
{
return this._transitEncryptionEnabled.HasValue;
}
///
/// Gets and sets the property TransitEncryptionMode.
///
/// A setting that allows you to migrate your clients to use in-transit encryption, with
/// no downtime.
///
///
public TransitEncryptionMode TransitEncryptionMode
{
get { return this._transitEncryptionMode; }
set { this._transitEncryptionMode = value; }
}
// Check to see if TransitEncryptionMode property is set
internal bool IsSetTransitEncryptionMode()
{
return this._transitEncryptionMode != null;
}
///
/// Gets and sets the property UserGroups.
///
/// The user group being modified.
///
///
public UserGroupsUpdateStatus UserGroups
{
get { return this._userGroups; }
set { this._userGroups = value; }
}
// Check to see if UserGroups property is set
internal bool IsSetUserGroups()
{
return this._userGroups != null;
}
}
}