/*
* 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 redshift-2012-12-01.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.Redshift.Model
{
///
/// Describes a cluster.
///
public partial class Cluster
{
private bool? _allowVersionUpgrade;
private AquaConfiguration _aquaConfiguration;
private int? _automatedSnapshotRetentionPeriod;
private string _availabilityZone;
private string _availabilityZoneRelocationStatus;
private string _clusterAvailabilityStatus;
private DateTime? _clusterCreateTime;
private string _clusterIdentifier;
private string _clusterNamespaceArn;
private List _clusterNodes = new List();
private List _clusterParameterGroups = new List();
private string _clusterPublicKey;
private string _clusterRevisionNumber;
private List _clusterSecurityGroups = new List();
private ClusterSnapshotCopyStatus _clusterSnapshotCopyStatus;
private string _clusterStatus;
private string _clusterSubnetGroupName;
private string _clusterVersion;
private string _customDomainCertificateArn;
private DateTime? _customDomainCertificateExpiryDate;
private string _customDomainName;
private DataTransferProgress _dataTransferProgress;
private string _dbName;
private string _defaultIamRoleArn;
private List _deferredMaintenanceWindows = new List();
private ElasticIpStatus _elasticIpStatus;
private string _elasticResizeNumberOfNodeOptions;
private bool? _encrypted;
private Endpoint _endpoint;
private bool? _enhancedVpcRouting;
private DateTime? _expectedNextSnapshotScheduleTime;
private string _expectedNextSnapshotScheduleTimeStatus;
private HsmStatus _hsmStatus;
private List _iamRoles = new List();
private string _kmsKeyId;
private string _maintenanceTrackName;
private int? _manualSnapshotRetentionPeriod;
private string _masterUsername;
private string _modifyStatus;
private DateTime? _nextMaintenanceWindowStartTime;
private string _nodeType;
private int? _numberOfNodes;
private List _pendingActions = new List();
private PendingModifiedValues _pendingModifiedValues;
private string _preferredMaintenanceWindow;
private bool? _publiclyAccessible;
private ReservedNodeExchangeStatus _reservedNodeExchangeStatus;
private ResizeInfo _resizeInfo;
private RestoreStatus _restoreStatus;
private string _snapshotScheduleIdentifier;
private ScheduleState _snapshotScheduleState;
private List _tags = new List();
private long? _totalStorageCapacityInMegaBytes;
private string _vpcId;
private List _vpcSecurityGroups = new List();
///
/// Gets and sets the property AllowVersionUpgrade.
///
/// A boolean value that, if true
, indicates that major version upgrades
/// will be applied automatically to the cluster during the maintenance window.
///
///
public bool AllowVersionUpgrade
{
get { return this._allowVersionUpgrade.GetValueOrDefault(); }
set { this._allowVersionUpgrade = value; }
}
// Check to see if AllowVersionUpgrade property is set
internal bool IsSetAllowVersionUpgrade()
{
return this._allowVersionUpgrade.HasValue;
}
///
/// Gets and sets the property AquaConfiguration.
///
/// This field is retired. Amazon Redshift automatically determines whether to use AQUA
/// (Advanced Query Accelerator).
///
///
public AquaConfiguration AquaConfiguration
{
get { return this._aquaConfiguration; }
set { this._aquaConfiguration = value; }
}
// Check to see if AquaConfiguration property is set
internal bool IsSetAquaConfiguration()
{
return this._aquaConfiguration != null;
}
///
/// Gets and sets the property AutomatedSnapshotRetentionPeriod.
///
/// The number of days that automatic cluster snapshots are retained.
///
///
public int AutomatedSnapshotRetentionPeriod
{
get { return this._automatedSnapshotRetentionPeriod.GetValueOrDefault(); }
set { this._automatedSnapshotRetentionPeriod = value; }
}
// Check to see if AutomatedSnapshotRetentionPeriod property is set
internal bool IsSetAutomatedSnapshotRetentionPeriod()
{
return this._automatedSnapshotRetentionPeriod.HasValue;
}
///
/// Gets and sets the property AvailabilityZone.
///
/// The name of the Availability Zone in which the cluster is located.
///
///
[AWSProperty(Max=2147483647)]
public string AvailabilityZone
{
get { return this._availabilityZone; }
set { this._availabilityZone = value; }
}
// Check to see if AvailabilityZone property is set
internal bool IsSetAvailabilityZone()
{
return this._availabilityZone != null;
}
///
/// Gets and sets the property AvailabilityZoneRelocationStatus.
///
/// Describes the status of the Availability Zone relocation operation.
///
///
[AWSProperty(Max=2147483647)]
public string AvailabilityZoneRelocationStatus
{
get { return this._availabilityZoneRelocationStatus; }
set { this._availabilityZoneRelocationStatus = value; }
}
// Check to see if AvailabilityZoneRelocationStatus property is set
internal bool IsSetAvailabilityZoneRelocationStatus()
{
return this._availabilityZoneRelocationStatus != null;
}
///
/// Gets and sets the property ClusterAvailabilityStatus.
///
/// The availability status of the cluster for queries. Possible values are the following:
///
/// -
///
/// Available - The cluster is available for queries.
///
///
-
///
/// Unavailable - The cluster is not available for queries.
///
///
-
///
/// Maintenance - The cluster is intermittently available for queries due to maintenance
/// activities.
///
///
-
///
/// Modifying - The cluster is intermittently available for queries due to changes that
/// modify the cluster.
///
///
-
///
/// Failed - The cluster failed and is not available for queries.
///
///
///
[AWSProperty(Max=2147483647)]
public string ClusterAvailabilityStatus
{
get { return this._clusterAvailabilityStatus; }
set { this._clusterAvailabilityStatus = value; }
}
// Check to see if ClusterAvailabilityStatus property is set
internal bool IsSetClusterAvailabilityStatus()
{
return this._clusterAvailabilityStatus != null;
}
///
/// Gets and sets the property ClusterCreateTime.
///
/// The date and time that the cluster was created.
///
///
public DateTime ClusterCreateTime
{
get { return this._clusterCreateTime.GetValueOrDefault(); }
set { this._clusterCreateTime = value; }
}
// Check to see if ClusterCreateTime property is set
internal bool IsSetClusterCreateTime()
{
return this._clusterCreateTime.HasValue;
}
///
/// Gets and sets the property ClusterIdentifier.
///
/// The unique identifier of the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterIdentifier
{
get { return this._clusterIdentifier; }
set { this._clusterIdentifier = value; }
}
// Check to see if ClusterIdentifier property is set
internal bool IsSetClusterIdentifier()
{
return this._clusterIdentifier != null;
}
///
/// Gets and sets the property ClusterNamespaceArn.
///
/// The namespace Amazon Resource Name (ARN) of the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterNamespaceArn
{
get { return this._clusterNamespaceArn; }
set { this._clusterNamespaceArn = value; }
}
// Check to see if ClusterNamespaceArn property is set
internal bool IsSetClusterNamespaceArn()
{
return this._clusterNamespaceArn != null;
}
///
/// Gets and sets the property ClusterNodes.
///
/// The nodes in the cluster.
///
///
public List ClusterNodes
{
get { return this._clusterNodes; }
set { this._clusterNodes = value; }
}
// Check to see if ClusterNodes property is set
internal bool IsSetClusterNodes()
{
return this._clusterNodes != null && this._clusterNodes.Count > 0;
}
///
/// Gets and sets the property ClusterParameterGroups.
///
/// The list of cluster parameter groups that are associated with this cluster. Each parameter
/// group in the list is returned with its status.
///
///
public List ClusterParameterGroups
{
get { return this._clusterParameterGroups; }
set { this._clusterParameterGroups = value; }
}
// Check to see if ClusterParameterGroups property is set
internal bool IsSetClusterParameterGroups()
{
return this._clusterParameterGroups != null && this._clusterParameterGroups.Count > 0;
}
///
/// Gets and sets the property ClusterPublicKey.
///
/// The public key for the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterPublicKey
{
get { return this._clusterPublicKey; }
set { this._clusterPublicKey = value; }
}
// Check to see if ClusterPublicKey property is set
internal bool IsSetClusterPublicKey()
{
return this._clusterPublicKey != null;
}
///
/// Gets and sets the property ClusterRevisionNumber.
///
/// The specific revision number of the database in the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterRevisionNumber
{
get { return this._clusterRevisionNumber; }
set { this._clusterRevisionNumber = value; }
}
// Check to see if ClusterRevisionNumber property is set
internal bool IsSetClusterRevisionNumber()
{
return this._clusterRevisionNumber != null;
}
///
/// Gets and sets the property ClusterSecurityGroups.
///
/// A list of cluster security group that are associated with the cluster. Each security
/// group is represented by an element that contains ClusterSecurityGroup.Name
/// and ClusterSecurityGroup.Status
subelements.
///
///
///
/// Cluster security groups are used when the cluster is not created in an Amazon Virtual
/// Private Cloud (VPC). Clusters that are created in a VPC use VPC security groups, which
/// are listed by the VpcSecurityGroups parameter.
///
///
public List ClusterSecurityGroups
{
get { return this._clusterSecurityGroups; }
set { this._clusterSecurityGroups = value; }
}
// Check to see if ClusterSecurityGroups property is set
internal bool IsSetClusterSecurityGroups()
{
return this._clusterSecurityGroups != null && this._clusterSecurityGroups.Count > 0;
}
///
/// Gets and sets the property ClusterSnapshotCopyStatus.
///
/// A value that returns the destination region and retention period that are configured
/// for cross-region snapshot copy.
///
///
public ClusterSnapshotCopyStatus ClusterSnapshotCopyStatus
{
get { return this._clusterSnapshotCopyStatus; }
set { this._clusterSnapshotCopyStatus = value; }
}
// Check to see if ClusterSnapshotCopyStatus property is set
internal bool IsSetClusterSnapshotCopyStatus()
{
return this._clusterSnapshotCopyStatus != null;
}
///
/// Gets and sets the property ClusterStatus.
///
/// The current state of the cluster. Possible values are the following:
///
/// -
///
///
available
///
/// -
///
///
available, prep-for-resize
///
/// -
///
///
available, resize-cleanup
///
/// -
///
///
cancelling-resize
///
/// -
///
///
creating
///
/// -
///
///
deleting
///
/// -
///
///
final-snapshot
///
/// -
///
///
hardware-failure
///
/// -
///
///
incompatible-hsm
///
/// -
///
///
incompatible-network
///
/// -
///
///
incompatible-parameters
///
/// -
///
///
incompatible-restore
///
/// -
///
///
modifying
///
/// -
///
///
paused
///
/// -
///
///
rebooting
///
/// -
///
///
renaming
///
/// -
///
///
resizing
///
/// -
///
///
rotating-keys
///
/// -
///
///
storage-full
///
/// -
///
///
updating-hsm
///
///
///
[AWSProperty(Max=2147483647)]
public string ClusterStatus
{
get { return this._clusterStatus; }
set { this._clusterStatus = value; }
}
// Check to see if ClusterStatus property is set
internal bool IsSetClusterStatus()
{
return this._clusterStatus != null;
}
///
/// Gets and sets the property ClusterSubnetGroupName.
///
/// The name of the subnet group that is associated with the cluster. This parameter is
/// valid only when the cluster is in a VPC.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterSubnetGroupName
{
get { return this._clusterSubnetGroupName; }
set { this._clusterSubnetGroupName = value; }
}
// Check to see if ClusterSubnetGroupName property is set
internal bool IsSetClusterSubnetGroupName()
{
return this._clusterSubnetGroupName != null;
}
///
/// Gets and sets the property ClusterVersion.
///
/// The version ID of the Amazon Redshift engine that is running on the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterVersion
{
get { return this._clusterVersion; }
set { this._clusterVersion = value; }
}
// Check to see if ClusterVersion property is set
internal bool IsSetClusterVersion()
{
return this._clusterVersion != null;
}
///
/// Gets and sets the property CustomDomainCertificateArn.
///
/// The certificate Amazon Resource Name (ARN) for the custom domain name.
///
///
[AWSProperty(Max=2147483647)]
public string CustomDomainCertificateArn
{
get { return this._customDomainCertificateArn; }
set { this._customDomainCertificateArn = value; }
}
// Check to see if CustomDomainCertificateArn property is set
internal bool IsSetCustomDomainCertificateArn()
{
return this._customDomainCertificateArn != null;
}
///
/// Gets and sets the property CustomDomainCertificateExpiryDate.
///
/// The expiration date for the certificate associated with the custom domain name.
///
///
public DateTime CustomDomainCertificateExpiryDate
{
get { return this._customDomainCertificateExpiryDate.GetValueOrDefault(); }
set { this._customDomainCertificateExpiryDate = value; }
}
// Check to see if CustomDomainCertificateExpiryDate property is set
internal bool IsSetCustomDomainCertificateExpiryDate()
{
return this._customDomainCertificateExpiryDate.HasValue;
}
///
/// Gets and sets the property CustomDomainName.
///
/// The custom domain name associated with the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string CustomDomainName
{
get { return this._customDomainName; }
set { this._customDomainName = value; }
}
// Check to see if CustomDomainName property is set
internal bool IsSetCustomDomainName()
{
return this._customDomainName != null;
}
///
/// Gets and sets the property DataTransferProgress.
///
public DataTransferProgress DataTransferProgress
{
get { return this._dataTransferProgress; }
set { this._dataTransferProgress = value; }
}
// Check to see if DataTransferProgress property is set
internal bool IsSetDataTransferProgress()
{
return this._dataTransferProgress != null;
}
///
/// Gets and sets the property DBName.
///
/// The name of the initial database that was created when the cluster was created. This
/// same name is returned for the life of the cluster. If an initial database was not
/// specified, a database named dev
dev was created by default.
///
///
[AWSProperty(Max=2147483647)]
public string DBName
{
get { return this._dbName; }
set { this._dbName = value; }
}
// Check to see if DBName property is set
internal bool IsSetDBName()
{
return this._dbName != null;
}
///
/// Gets and sets the property DefaultIamRoleArn.
///
/// The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string DefaultIamRoleArn
{
get { return this._defaultIamRoleArn; }
set { this._defaultIamRoleArn = value; }
}
// Check to see if DefaultIamRoleArn property is set
internal bool IsSetDefaultIamRoleArn()
{
return this._defaultIamRoleArn != null;
}
///
/// Gets and sets the property DeferredMaintenanceWindows.
///
/// Describes a group of DeferredMaintenanceWindow
objects.
///
///
public List DeferredMaintenanceWindows
{
get { return this._deferredMaintenanceWindows; }
set { this._deferredMaintenanceWindows = value; }
}
// Check to see if DeferredMaintenanceWindows property is set
internal bool IsSetDeferredMaintenanceWindows()
{
return this._deferredMaintenanceWindows != null && this._deferredMaintenanceWindows.Count > 0;
}
///
/// Gets and sets the property ElasticIpStatus.
///
/// The status of the elastic IP (EIP) address.
///
///
public ElasticIpStatus ElasticIpStatus
{
get { return this._elasticIpStatus; }
set { this._elasticIpStatus = value; }
}
// Check to see if ElasticIpStatus property is set
internal bool IsSetElasticIpStatus()
{
return this._elasticIpStatus != null;
}
///
/// Gets and sets the property ElasticResizeNumberOfNodeOptions.
///
/// The number of nodes that you can resize the cluster to with the elastic resize method.
///
///
///
[AWSProperty(Max=2147483647)]
public string ElasticResizeNumberOfNodeOptions
{
get { return this._elasticResizeNumberOfNodeOptions; }
set { this._elasticResizeNumberOfNodeOptions = value; }
}
// Check to see if ElasticResizeNumberOfNodeOptions property is set
internal bool IsSetElasticResizeNumberOfNodeOptions()
{
return this._elasticResizeNumberOfNodeOptions != null;
}
///
/// Gets and sets the property Encrypted.
///
/// A boolean value that, if true
, indicates that data in the cluster is
/// encrypted at rest.
///
///
public bool Encrypted
{
get { return this._encrypted.GetValueOrDefault(); }
set { this._encrypted = value; }
}
// Check to see if Encrypted property is set
internal bool IsSetEncrypted()
{
return this._encrypted.HasValue;
}
///
/// Gets and sets the property Endpoint.
///
/// The connection endpoint.
///
///
public Endpoint Endpoint
{
get { return this._endpoint; }
set { this._endpoint = value; }
}
// Check to see if Endpoint property is set
internal bool IsSetEndpoint()
{
return this._endpoint != null;
}
///
/// Gets and sets the property EnhancedVpcRouting.
///
/// An option that specifies whether to create the cluster with enhanced VPC routing enabled.
/// To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC.
/// For more information, see Enhanced
/// VPC Routing in the Amazon Redshift Cluster Management Guide.
///
///
///
/// If this option is true
, enhanced VPC routing is enabled.
///
///
///
/// Default: false
///
///
public bool EnhancedVpcRouting
{
get { return this._enhancedVpcRouting.GetValueOrDefault(); }
set { this._enhancedVpcRouting = value; }
}
// Check to see if EnhancedVpcRouting property is set
internal bool IsSetEnhancedVpcRouting()
{
return this._enhancedVpcRouting.HasValue;
}
///
/// Gets and sets the property ExpectedNextSnapshotScheduleTime.
///
/// The date and time when the next snapshot is expected to be taken for clusters with
/// a valid snapshot schedule and backups enabled.
///
///
public DateTime ExpectedNextSnapshotScheduleTime
{
get { return this._expectedNextSnapshotScheduleTime.GetValueOrDefault(); }
set { this._expectedNextSnapshotScheduleTime = value; }
}
// Check to see if ExpectedNextSnapshotScheduleTime property is set
internal bool IsSetExpectedNextSnapshotScheduleTime()
{
return this._expectedNextSnapshotScheduleTime.HasValue;
}
///
/// Gets and sets the property ExpectedNextSnapshotScheduleTimeStatus.
///
/// The status of next expected snapshot for clusters having a valid snapshot schedule
/// and backups enabled. Possible values are the following:
///
/// -
///
/// OnTrack - The next snapshot is expected to be taken on time.
///
///
-
///
/// Pending - The next snapshot is pending to be taken.
///
///
///
[AWSProperty(Max=2147483647)]
public string ExpectedNextSnapshotScheduleTimeStatus
{
get { return this._expectedNextSnapshotScheduleTimeStatus; }
set { this._expectedNextSnapshotScheduleTimeStatus = value; }
}
// Check to see if ExpectedNextSnapshotScheduleTimeStatus property is set
internal bool IsSetExpectedNextSnapshotScheduleTimeStatus()
{
return this._expectedNextSnapshotScheduleTimeStatus != null;
}
///
/// Gets and sets the property HsmStatus.
///
/// A value that reports whether the Amazon Redshift cluster has finished applying any
/// hardware security module (HSM) settings changes specified in a modify cluster command.
///
///
///
/// Values: active, applying
///
///
public HsmStatus HsmStatus
{
get { return this._hsmStatus; }
set { this._hsmStatus = value; }
}
// Check to see if HsmStatus property is set
internal bool IsSetHsmStatus()
{
return this._hsmStatus != null;
}
///
/// Gets and sets the property IamRoles.
///
/// A list of Identity and Access Management (IAM) roles that can be used by the cluster
/// to access other Amazon Web Services services.
///
///
public List IamRoles
{
get { return this._iamRoles; }
set { this._iamRoles = value; }
}
// Check to see if IamRoles property is set
internal bool IsSetIamRoles()
{
return this._iamRoles != null && this._iamRoles.Count > 0;
}
///
/// Gets and sets the property KmsKeyId.
///
/// The Key Management Service (KMS) key ID of the encryption key used to encrypt data
/// in the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string KmsKeyId
{
get { return this._kmsKeyId; }
set { this._kmsKeyId = value; }
}
// Check to see if KmsKeyId property is set
internal bool IsSetKmsKeyId()
{
return this._kmsKeyId != null;
}
///
/// Gets and sets the property MaintenanceTrackName.
///
/// The name of the maintenance track for the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string MaintenanceTrackName
{
get { return this._maintenanceTrackName; }
set { this._maintenanceTrackName = value; }
}
// Check to see if MaintenanceTrackName property is set
internal bool IsSetMaintenanceTrackName()
{
return this._maintenanceTrackName != null;
}
///
/// Gets and sets the property ManualSnapshotRetentionPeriod.
///
/// The default number of days to retain a manual snapshot. If the value is -1, the snapshot
/// is retained indefinitely. This setting doesn't change the retention period of existing
/// snapshots.
///
///
///
/// The value must be either -1 or an integer between 1 and 3,653.
///
///
public int ManualSnapshotRetentionPeriod
{
get { return this._manualSnapshotRetentionPeriod.GetValueOrDefault(); }
set { this._manualSnapshotRetentionPeriod = value; }
}
// Check to see if ManualSnapshotRetentionPeriod property is set
internal bool IsSetManualSnapshotRetentionPeriod()
{
return this._manualSnapshotRetentionPeriod.HasValue;
}
///
/// Gets and sets the property MasterUsername.
///
/// The admin user name for the cluster. This name is used to connect to the database
/// that is specified in the DBName parameter.
///
///
[AWSProperty(Max=2147483647)]
public string MasterUsername
{
get { return this._masterUsername; }
set { this._masterUsername = value; }
}
// Check to see if MasterUsername property is set
internal bool IsSetMasterUsername()
{
return this._masterUsername != null;
}
///
/// Gets and sets the property ModifyStatus.
///
/// The status of a modify operation, if any, initiated for the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string ModifyStatus
{
get { return this._modifyStatus; }
set { this._modifyStatus = value; }
}
// Check to see if ModifyStatus property is set
internal bool IsSetModifyStatus()
{
return this._modifyStatus != null;
}
///
/// Gets and sets the property NextMaintenanceWindowStartTime.
///
/// The date and time in UTC when system maintenance can begin.
///
///
public DateTime NextMaintenanceWindowStartTime
{
get { return this._nextMaintenanceWindowStartTime.GetValueOrDefault(); }
set { this._nextMaintenanceWindowStartTime = value; }
}
// Check to see if NextMaintenanceWindowStartTime property is set
internal bool IsSetNextMaintenanceWindowStartTime()
{
return this._nextMaintenanceWindowStartTime.HasValue;
}
///
/// Gets and sets the property NodeType.
///
/// The node type for the nodes in the cluster.
///
///
[AWSProperty(Max=2147483647)]
public string NodeType
{
get { return this._nodeType; }
set { this._nodeType = value; }
}
// Check to see if NodeType property is set
internal bool IsSetNodeType()
{
return this._nodeType != null;
}
///
/// Gets and sets the property NumberOfNodes.
///
/// The number of compute nodes in the cluster.
///
///
public int NumberOfNodes
{
get { return this._numberOfNodes.GetValueOrDefault(); }
set { this._numberOfNodes = value; }
}
// Check to see if NumberOfNodes property is set
internal bool IsSetNumberOfNodes()
{
return this._numberOfNodes.HasValue;
}
///
/// Gets and sets the property PendingActions.
///
/// Cluster operations that are waiting to be started.
///
///
public List PendingActions
{
get { return this._pendingActions; }
set { this._pendingActions = value; }
}
// Check to see if PendingActions property is set
internal bool IsSetPendingActions()
{
return this._pendingActions != null && this._pendingActions.Count > 0;
}
///
/// Gets and sets the property PendingModifiedValues.
///
/// A value that, if present, indicates that changes to the cluster are pending. Specific
/// pending changes are identified by subelements.
///
///
public PendingModifiedValues PendingModifiedValues
{
get { return this._pendingModifiedValues; }
set { this._pendingModifiedValues = value; }
}
// Check to see if PendingModifiedValues property is set
internal bool IsSetPendingModifiedValues()
{
return this._pendingModifiedValues != null;
}
///
/// Gets and sets the property PreferredMaintenanceWindow.
///
/// The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance
/// can occur.
///
///
[AWSProperty(Max=2147483647)]
public string PreferredMaintenanceWindow
{
get { return this._preferredMaintenanceWindow; }
set { this._preferredMaintenanceWindow = value; }
}
// Check to see if PreferredMaintenanceWindow property is set
internal bool IsSetPreferredMaintenanceWindow()
{
return this._preferredMaintenanceWindow != null;
}
///
/// Gets and sets the property PubliclyAccessible.
///
/// A boolean value that, if true
, indicates that the cluster can be accessed
/// from a public network.
///
///
public bool PubliclyAccessible
{
get { return this._publiclyAccessible.GetValueOrDefault(); }
set { this._publiclyAccessible = value; }
}
// Check to see if PubliclyAccessible property is set
internal bool IsSetPubliclyAccessible()
{
return this._publiclyAccessible.HasValue;
}
///
/// Gets and sets the property ReservedNodeExchangeStatus.
///
/// The status of the reserved-node exchange request. Statuses include in-progress and
/// requested.
///
///
public ReservedNodeExchangeStatus ReservedNodeExchangeStatus
{
get { return this._reservedNodeExchangeStatus; }
set { this._reservedNodeExchangeStatus = value; }
}
// Check to see if ReservedNodeExchangeStatus property is set
internal bool IsSetReservedNodeExchangeStatus()
{
return this._reservedNodeExchangeStatus != null;
}
///
/// Gets and sets the property ResizeInfo.
///
/// Returns the following:
///
/// -
///
/// AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
///
///
-
///
/// ResizeType: Returns ClassicResize
///
///
///
public ResizeInfo ResizeInfo
{
get { return this._resizeInfo; }
set { this._resizeInfo = value; }
}
// Check to see if ResizeInfo property is set
internal bool IsSetResizeInfo()
{
return this._resizeInfo != null;
}
///
/// Gets and sets the property RestoreStatus.
///
/// A value that describes the status of a cluster restore action. This parameter returns
/// null if the cluster was not created by restoring a snapshot.
///
///
public RestoreStatus RestoreStatus
{
get { return this._restoreStatus; }
set { this._restoreStatus = value; }
}
// Check to see if RestoreStatus property is set
internal bool IsSetRestoreStatus()
{
return this._restoreStatus != null;
}
///
/// Gets and sets the property SnapshotScheduleIdentifier.
///
/// A unique identifier for the cluster snapshot schedule.
///
///
[AWSProperty(Max=2147483647)]
public string SnapshotScheduleIdentifier
{
get { return this._snapshotScheduleIdentifier; }
set { this._snapshotScheduleIdentifier = value; }
}
// Check to see if SnapshotScheduleIdentifier property is set
internal bool IsSetSnapshotScheduleIdentifier()
{
return this._snapshotScheduleIdentifier != null;
}
///
/// Gets and sets the property SnapshotScheduleState.
///
/// The current state of the cluster snapshot schedule.
///
///
public ScheduleState SnapshotScheduleState
{
get { return this._snapshotScheduleState; }
set { this._snapshotScheduleState = value; }
}
// Check to see if SnapshotScheduleState property is set
internal bool IsSetSnapshotScheduleState()
{
return this._snapshotScheduleState != null;
}
///
/// Gets and sets the property Tags.
///
/// The list of tags for the cluster.
///
///
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
///
/// Gets and sets the property TotalStorageCapacityInMegaBytes.
///
/// The total storage capacity of the cluster in megabytes.
///
///
public long TotalStorageCapacityInMegaBytes
{
get { return this._totalStorageCapacityInMegaBytes.GetValueOrDefault(); }
set { this._totalStorageCapacityInMegaBytes = value; }
}
// Check to see if TotalStorageCapacityInMegaBytes property is set
internal bool IsSetTotalStorageCapacityInMegaBytes()
{
return this._totalStorageCapacityInMegaBytes.HasValue;
}
///
/// Gets and sets the property VpcId.
///
/// The identifier of the VPC the cluster is in, if the cluster is in a VPC.
///
///
[AWSProperty(Max=2147483647)]
public string VpcId
{
get { return this._vpcId; }
set { this._vpcId = value; }
}
// Check to see if VpcId property is set
internal bool IsSetVpcId()
{
return this._vpcId != null;
}
///
/// Gets and sets the property VpcSecurityGroups.
///
/// A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated
/// with the cluster. This parameter is returned only if the cluster is in a VPC.
///
///
public List VpcSecurityGroups
{
get { return this._vpcSecurityGroups; }
set { this._vpcSecurityGroups = value; }
}
// Check to see if VpcSecurityGroups property is set
internal bool IsSetVpcSecurityGroups()
{
return this._vpcSecurityGroups != null && this._vpcSecurityGroups.Count > 0;
}
}
}