/* * 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 docdb-2014-10-31.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.DocDB.Model { /// /// Detailed information about a cluster. /// public partial class DBCluster { private List _associatedRoles = new List(); private List _availabilityZones = new List(); private int? _backupRetentionPeriod; private string _cloneGroupId; private DateTime? _clusterCreateTime; private string _dbClusterArn; private string _dbClusterIdentifier; private List _dbClusterMembers = new List(); private string _dbClusterParameterGroup; private string _dbClusterResourceId; private string _dbSubnetGroup; private bool? _deletionProtection; private DateTime? _earliestRestorableTime; private List _enabledCloudwatchLogsExports = new List(); private string _endpoint; private string _engine; private string _engineVersion; private string _hostedZoneId; private string _kmsKeyId; private DateTime? _latestRestorableTime; private string _masterUsername; private bool? _multiAZ; private string _percentProgress; private int? _port; private string _preferredBackupWindow; private string _preferredMaintenanceWindow; private string _readerEndpoint; private List _readReplicaIdentifiers = new List(); private string _replicationSourceIdentifier; private string _status; private bool? _storageEncrypted; private List _vpcSecurityGroups = new List(); /// /// Gets and sets the property AssociatedRoles. /// /// Provides a list of the Identity and Access Management (IAM) roles that are associated /// with the cluster. (IAM) roles that are associated with a cluster grant permission /// for the cluster to access other Amazon Web Services services on your behalf. /// /// public List AssociatedRoles { get { return this._associatedRoles; } set { this._associatedRoles = value; } } // Check to see if AssociatedRoles property is set internal bool IsSetAssociatedRoles() { return this._associatedRoles != null && this._associatedRoles.Count > 0; } /// /// Gets and sets the property AvailabilityZones. /// /// Provides the list of Amazon EC2 Availability Zones that instances in the cluster can /// be created in. /// /// public List AvailabilityZones { get { return this._availabilityZones; } set { this._availabilityZones = value; } } // Check to see if AvailabilityZones property is set internal bool IsSetAvailabilityZones() { return this._availabilityZones != null && this._availabilityZones.Count > 0; } /// /// Gets and sets the property BackupRetentionPeriod. /// /// Specifies the number of days for which automatic snapshots are retained. /// /// public int BackupRetentionPeriod { get { return this._backupRetentionPeriod.GetValueOrDefault(); } set { this._backupRetentionPeriod = value; } } // Check to see if BackupRetentionPeriod property is set internal bool IsSetBackupRetentionPeriod() { return this._backupRetentionPeriod.HasValue; } /// /// Gets and sets the property CloneGroupId. /// /// Identifies the clone group to which the DB cluster is associated. /// /// public string CloneGroupId { get { return this._cloneGroupId; } set { this._cloneGroupId = value; } } // Check to see if CloneGroupId property is set internal bool IsSetCloneGroupId() { return this._cloneGroupId != null; } /// /// Gets and sets the property ClusterCreateTime. /// /// Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). /// /// 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 DBClusterArn. /// /// The Amazon Resource Name (ARN) for the cluster. /// /// public string DBClusterArn { get { return this._dbClusterArn; } set { this._dbClusterArn = value; } } // Check to see if DBClusterArn property is set internal bool IsSetDBClusterArn() { return this._dbClusterArn != null; } /// /// Gets and sets the property DBClusterIdentifier. /// /// Contains a user-supplied cluster identifier. This identifier is the unique key that /// identifies a cluster. /// /// public string DBClusterIdentifier { get { return this._dbClusterIdentifier; } set { this._dbClusterIdentifier = value; } } // Check to see if DBClusterIdentifier property is set internal bool IsSetDBClusterIdentifier() { return this._dbClusterIdentifier != null; } /// /// Gets and sets the property DBClusterMembers. /// /// Provides the list of instances that make up the cluster. /// /// public List DBClusterMembers { get { return this._dbClusterMembers; } set { this._dbClusterMembers = value; } } // Check to see if DBClusterMembers property is set internal bool IsSetDBClusterMembers() { return this._dbClusterMembers != null && this._dbClusterMembers.Count > 0; } /// /// Gets and sets the property DBClusterParameterGroup. /// /// Specifies the name of the cluster parameter group for the cluster. /// /// public string DBClusterParameterGroup { get { return this._dbClusterParameterGroup; } set { this._dbClusterParameterGroup = value; } } // Check to see if DBClusterParameterGroup property is set internal bool IsSetDBClusterParameterGroup() { return this._dbClusterParameterGroup != null; } /// /// Gets and sets the property DbClusterResourceId. /// /// The Amazon Web Services Region-unique, immutable identifier for the cluster. This /// identifier is found in CloudTrail log entries whenever the KMS key for the cluster /// is accessed. /// /// public string DbClusterResourceId { get { return this._dbClusterResourceId; } set { this._dbClusterResourceId = value; } } // Check to see if DbClusterResourceId property is set internal bool IsSetDbClusterResourceId() { return this._dbClusterResourceId != null; } /// /// Gets and sets the property DBSubnetGroup. /// /// Specifies information on the subnet group that is associated with the cluster, including /// the name, description, and subnets in the subnet group. /// /// public string DBSubnetGroup { get { return this._dbSubnetGroup; } set { this._dbSubnetGroup = value; } } // Check to see if DBSubnetGroup property is set internal bool IsSetDBSubnetGroup() { return this._dbSubnetGroup != null; } /// /// Gets and sets the property DeletionProtection. /// /// Specifies whether this cluster can be deleted. If DeletionProtection /// is enabled, the cluster cannot be deleted unless it is modified and DeletionProtection /// is disabled. DeletionProtection protects clusters from being accidentally /// deleted. /// /// public bool DeletionProtection { get { return this._deletionProtection.GetValueOrDefault(); } set { this._deletionProtection = value; } } // Check to see if DeletionProtection property is set internal bool IsSetDeletionProtection() { return this._deletionProtection.HasValue; } /// /// Gets and sets the property EarliestRestorableTime. /// /// The earliest time to which a database can be restored with point-in-time restore. /// /// public DateTime EarliestRestorableTime { get { return this._earliestRestorableTime.GetValueOrDefault(); } set { this._earliestRestorableTime = value; } } // Check to see if EarliestRestorableTime property is set internal bool IsSetEarliestRestorableTime() { return this._earliestRestorableTime.HasValue; } /// /// Gets and sets the property EnabledCloudwatchLogsExports. /// /// A list of log types that this cluster is configured to export to Amazon CloudWatch /// Logs. /// /// public List EnabledCloudwatchLogsExports { get { return this._enabledCloudwatchLogsExports; } set { this._enabledCloudwatchLogsExports = value; } } // Check to see if EnabledCloudwatchLogsExports property is set internal bool IsSetEnabledCloudwatchLogsExports() { return this._enabledCloudwatchLogsExports != null && this._enabledCloudwatchLogsExports.Count > 0; } /// /// Gets and sets the property Endpoint. /// /// Specifies the connection endpoint for the primary instance of the cluster. /// /// public string 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 Engine. /// /// Provides the name of the database engine to be used for this cluster. /// /// public string Engine { get { return this._engine; } set { this._engine = value; } } // Check to see if Engine property is set internal bool IsSetEngine() { return this._engine != null; } /// /// Gets and sets the property EngineVersion. /// /// Indicates the database engine version. /// /// public string EngineVersion { get { return this._engineVersion; } set { this._engineVersion = value; } } // Check to see if EngineVersion property is set internal bool IsSetEngineVersion() { return this._engineVersion != null; } /// /// Gets and sets the property HostedZoneId. /// /// Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. /// /// public string HostedZoneId { get { return this._hostedZoneId; } set { this._hostedZoneId = value; } } // Check to see if HostedZoneId property is set internal bool IsSetHostedZoneId() { return this._hostedZoneId != null; } /// /// Gets and sets the property KmsKeyId. /// /// If StorageEncrypted is true, the KMS key identifier for /// the encrypted cluster. /// /// 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 LatestRestorableTime. /// /// Specifies the latest time to which a database can be restored with point-in-time restore. /// /// public DateTime LatestRestorableTime { get { return this._latestRestorableTime.GetValueOrDefault(); } set { this._latestRestorableTime = value; } } // Check to see if LatestRestorableTime property is set internal bool IsSetLatestRestorableTime() { return this._latestRestorableTime.HasValue; } /// /// Gets and sets the property MasterUsername. /// /// Contains the master user name for the cluster. /// /// 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 MultiAZ. /// /// Specifies whether the cluster has instances in multiple Availability Zones. /// /// public bool MultiAZ { get { return this._multiAZ.GetValueOrDefault(); } set { this._multiAZ = value; } } // Check to see if MultiAZ property is set internal bool IsSetMultiAZ() { return this._multiAZ.HasValue; } /// /// Gets and sets the property PercentProgress. /// /// Specifies the progress of the operation as a percentage. /// /// public string PercentProgress { get { return this._percentProgress; } set { this._percentProgress = value; } } // Check to see if PercentProgress property is set internal bool IsSetPercentProgress() { return this._percentProgress != null; } /// /// Gets and sets the property Port. /// /// Specifies the port that the database engine is listening on. /// /// public int Port { get { return this._port.GetValueOrDefault(); } set { this._port = value; } } // Check to see if Port property is set internal bool IsSetPort() { return this._port.HasValue; } /// /// Gets and sets the property PreferredBackupWindow. /// /// Specifies the daily time range during which automated backups are created if automated /// backups are enabled, as determined by the BackupRetentionPeriod. /// /// public string PreferredBackupWindow { get { return this._preferredBackupWindow; } set { this._preferredBackupWindow = value; } } // Check to see if PreferredBackupWindow property is set internal bool IsSetPreferredBackupWindow() { return this._preferredBackupWindow != null; } /// /// Gets and sets the property PreferredMaintenanceWindow. /// /// Specifies the weekly time range during which system maintenance can occur, in Universal /// Coordinated Time (UTC). /// /// 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 ReaderEndpoint. /// /// The reader endpoint for the cluster. The reader endpoint for a cluster load balances /// connections across the Amazon DocumentDB replicas that are available in a cluster. /// As clients request new connections to the reader endpoint, Amazon DocumentDB distributes /// the connection requests among the Amazon DocumentDB replicas in the cluster. This /// functionality can help balance your read workload across multiple Amazon DocumentDB /// replicas in your cluster. /// /// /// /// If a failover occurs, and the Amazon DocumentDB replica that you are connected to /// is promoted to be the primary instance, your connection is dropped. To continue sending /// your read workload to other Amazon DocumentDB replicas in the cluster, you can then /// reconnect to the reader endpoint. /// /// public string ReaderEndpoint { get { return this._readerEndpoint; } set { this._readerEndpoint = value; } } // Check to see if ReaderEndpoint property is set internal bool IsSetReaderEndpoint() { return this._readerEndpoint != null; } /// /// Gets and sets the property ReadReplicaIdentifiers. /// /// Contains one or more identifiers of the secondary clusters that are associated with /// this cluster. /// /// public List ReadReplicaIdentifiers { get { return this._readReplicaIdentifiers; } set { this._readReplicaIdentifiers = value; } } // Check to see if ReadReplicaIdentifiers property is set internal bool IsSetReadReplicaIdentifiers() { return this._readReplicaIdentifiers != null && this._readReplicaIdentifiers.Count > 0; } /// /// Gets and sets the property ReplicationSourceIdentifier. /// /// Contains the identifier of the source cluster if this cluster is a secondary cluster. /// /// public string ReplicationSourceIdentifier { get { return this._replicationSourceIdentifier; } set { this._replicationSourceIdentifier = value; } } // Check to see if ReplicationSourceIdentifier property is set internal bool IsSetReplicationSourceIdentifier() { return this._replicationSourceIdentifier != null; } /// /// Gets and sets the property Status. /// /// Specifies the current state of this cluster. /// /// public string Status { get { return this._status; } set { this._status = value; } } // Check to see if Status property is set internal bool IsSetStatus() { return this._status != null; } /// /// Gets and sets the property StorageEncrypted. /// /// Specifies whether the cluster is encrypted. /// /// public bool StorageEncrypted { get { return this._storageEncrypted.GetValueOrDefault(); } set { this._storageEncrypted = value; } } // Check to see if StorageEncrypted property is set internal bool IsSetStorageEncrypted() { return this._storageEncrypted.HasValue; } /// /// Gets and sets the property VpcSecurityGroups. /// /// Provides a list of virtual private cloud (VPC) security groups that the cluster belongs /// to. /// /// 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; } } }