/*
* 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 rds-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.RDS.Model
{
///
/// Contains the details for an Amazon RDS DB cluster snapshot
///
///
///
/// This data type is used as a response element in the DescribeDBClusterSnapshots
/// action.
///
///
public partial class DBClusterSnapshot
{
private int? _allocatedStorage;
private List _availabilityZones = new List();
private DateTime? _clusterCreateTime;
private string _dbClusterIdentifier;
private string _dbClusterSnapshotArn;
private string _dbClusterSnapshotIdentifier;
private string _dbSystemId;
private string _engine;
private string _engineMode;
private string _engineVersion;
private bool? _iamDatabaseAuthenticationEnabled;
private string _kmsKeyId;
private string _licenseModel;
private string _masterUsername;
private int? _percentProgress;
private int? _port;
private DateTime? _snapshotCreateTime;
private string _snapshotType;
private string _sourceDBClusterSnapshotArn;
private string _status;
private bool? _storageEncrypted;
private string _storageType;
private List _tagList = new List();
private string _vpcId;
///
/// Gets and sets the property AllocatedStorage.
///
/// Specifies the allocated storage size in gibibytes (GiB).
///
///
public int AllocatedStorage
{
get { return this._allocatedStorage.GetValueOrDefault(); }
set { this._allocatedStorage = value; }
}
// Check to see if AllocatedStorage property is set
internal bool IsSetAllocatedStorage()
{
return this._allocatedStorage.HasValue;
}
///
/// Gets and sets the property AvailabilityZones.
///
/// Provides the list of Availability Zones (AZs) where instances in the DB cluster snapshot
/// can be restored.
///
///
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 ClusterCreateTime.
///
/// Specifies the time when the DB 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 DBClusterIdentifier.
///
/// Specifies the DB cluster identifier of the DB cluster that this DB cluster snapshot
/// was created from.
///
///
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 DBClusterSnapshotArn.
///
/// The Amazon Resource Name (ARN) for the DB cluster snapshot.
///
///
public string DBClusterSnapshotArn
{
get { return this._dbClusterSnapshotArn; }
set { this._dbClusterSnapshotArn = value; }
}
// Check to see if DBClusterSnapshotArn property is set
internal bool IsSetDBClusterSnapshotArn()
{
return this._dbClusterSnapshotArn != null;
}
///
/// Gets and sets the property DBClusterSnapshotIdentifier.
///
/// Specifies the identifier for the DB cluster snapshot.
///
///
public string DBClusterSnapshotIdentifier
{
get { return this._dbClusterSnapshotIdentifier; }
set { this._dbClusterSnapshotIdentifier = value; }
}
// Check to see if DBClusterSnapshotIdentifier property is set
internal bool IsSetDBClusterSnapshotIdentifier()
{
return this._dbClusterSnapshotIdentifier != null;
}
///
/// Gets and sets the property DBSystemId.
///
/// Reserved for future use.
///
///
public string DBSystemId
{
get { return this._dbSystemId; }
set { this._dbSystemId = value; }
}
// Check to see if DBSystemId property is set
internal bool IsSetDBSystemId()
{
return this._dbSystemId != null;
}
///
/// Gets and sets the property Engine.
///
/// Specifies the name of the database engine for this DB cluster snapshot.
///
///
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 EngineMode.
///
/// Provides the engine mode of the database engine for this DB cluster snapshot.
///
///
public string EngineMode
{
get { return this._engineMode; }
set { this._engineMode = value; }
}
// Check to see if EngineMode property is set
internal bool IsSetEngineMode()
{
return this._engineMode != null;
}
///
/// Gets and sets the property EngineVersion.
///
/// Provides the version of the database engine for this DB cluster snapshot.
///
///
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 IAMDatabaseAuthenticationEnabled.
///
/// True if mapping of Amazon Web Services Identity and Access Management (IAM) accounts
/// to database accounts is enabled, and otherwise false.
///
///
public bool IAMDatabaseAuthenticationEnabled
{
get { return this._iamDatabaseAuthenticationEnabled.GetValueOrDefault(); }
set { this._iamDatabaseAuthenticationEnabled = value; }
}
// Check to see if IAMDatabaseAuthenticationEnabled property is set
internal bool IsSetIAMDatabaseAuthenticationEnabled()
{
return this._iamDatabaseAuthenticationEnabled.HasValue;
}
///
/// Gets and sets the property KmsKeyId.
///
/// If StorageEncrypted
is true, the Amazon Web Services KMS key identifier
/// for the encrypted DB cluster snapshot.
///
///
///
/// The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias
/// name for the KMS key.
///
///
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 LicenseModel.
///
/// Provides the license model information for this DB cluster snapshot.
///
///
public string LicenseModel
{
get { return this._licenseModel; }
set { this._licenseModel = value; }
}
// Check to see if LicenseModel property is set
internal bool IsSetLicenseModel()
{
return this._licenseModel != null;
}
///
/// Gets and sets the property MasterUsername.
///
/// Provides the master username for this DB cluster snapshot.
///
///
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 PercentProgress.
///
/// Specifies the percentage of the estimated data that has been transferred.
///
///
public int PercentProgress
{
get { return this._percentProgress.GetValueOrDefault(); }
set { this._percentProgress = value; }
}
// Check to see if PercentProgress property is set
internal bool IsSetPercentProgress()
{
return this._percentProgress.HasValue;
}
///
/// Gets and sets the property Port.
///
/// Specifies the port that the DB cluster was listening on at the time of the snapshot.
///
///
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 SnapshotCreateTime.
///
/// Provides the time when the snapshot was taken, in Universal Coordinated Time (UTC).
///
///
public DateTime SnapshotCreateTime
{
get { return this._snapshotCreateTime.GetValueOrDefault(); }
set { this._snapshotCreateTime = value; }
}
// Check to see if SnapshotCreateTime property is set
internal bool IsSetSnapshotCreateTime()
{
return this._snapshotCreateTime.HasValue;
}
///
/// Gets and sets the property SnapshotType.
///
/// Provides the type of the DB cluster snapshot.
///
///
public string SnapshotType
{
get { return this._snapshotType; }
set { this._snapshotType = value; }
}
// Check to see if SnapshotType property is set
internal bool IsSetSnapshotType()
{
return this._snapshotType != null;
}
///
/// Gets and sets the property SourceDBClusterSnapshotArn.
///
/// If the DB cluster snapshot was copied from a source DB cluster snapshot, the Amazon
/// Resource Name (ARN) for the source DB cluster snapshot, otherwise, a null value.
///
///
public string SourceDBClusterSnapshotArn
{
get { return this._sourceDBClusterSnapshotArn; }
set { this._sourceDBClusterSnapshotArn = value; }
}
// Check to see if SourceDBClusterSnapshotArn property is set
internal bool IsSetSourceDBClusterSnapshotArn()
{
return this._sourceDBClusterSnapshotArn != null;
}
///
/// Gets and sets the property Status.
///
/// Specifies the status of this DB cluster snapshot. Valid statuses are the following:
///
/// -
///
///
available
///
/// -
///
///
copying
///
/// -
///
///
creating
///
///
///
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 DB cluster snapshot 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 StorageType.
///
/// The storage type associated with the DB cluster snapshot.
///
///
///
/// This setting is only for Aurora DB clusters.
///
///
public string StorageType
{
get { return this._storageType; }
set { this._storageType = value; }
}
// Check to see if StorageType property is set
internal bool IsSetStorageType()
{
return this._storageType != null;
}
///
/// Gets and sets the property TagList.
///
public List TagList
{
get { return this._tagList; }
set { this._tagList = value; }
}
// Check to see if TagList property is set
internal bool IsSetTagList()
{
return this._tagList != null && this._tagList.Count > 0;
}
///
/// Gets and sets the property VpcId.
///
/// Provides the VPC ID associated with the DB cluster snapshot.
///
///
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;
}
}
}