/*
* 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-elastic-2022-11-28.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.DocDBElastic.Model
{
///
/// Returns information about a specific Elastic DocumentDB snapshot.
///
public partial class ClusterSnapshot
{
private string _adminUserName;
private string _clusterArn;
private string _clusterCreationTime;
private string _kmsKeyId;
private string _snapshotArn;
private string _snapshotCreationTime;
private string _snapshotName;
private Status _status;
private List _subnetIds = new List();
private List _vpcSecurityGroupIds = new List();
///
/// Gets and sets the property AdminUserName.
///
/// The name of the Elastic DocumentDB cluster administrator.
///
///
[AWSProperty(Required=true)]
public string AdminUserName
{
get { return this._adminUserName; }
set { this._adminUserName = value; }
}
// Check to see if AdminUserName property is set
internal bool IsSetAdminUserName()
{
return this._adminUserName != null;
}
///
/// Gets and sets the property ClusterArn.
///
/// The arn of the Elastic DocumentDB cluster.
///
///
[AWSProperty(Required=true)]
public string ClusterArn
{
get { return this._clusterArn; }
set { this._clusterArn = value; }
}
// Check to see if ClusterArn property is set
internal bool IsSetClusterArn()
{
return this._clusterArn != null;
}
///
/// Gets and sets the property ClusterCreationTime.
///
/// The time when the Elastic DocumentDB cluster was created in Universal Coordinated
/// Time (UTC).
///
///
[AWSProperty(Required=true)]
public string ClusterCreationTime
{
get { return this._clusterCreationTime; }
set { this._clusterCreationTime = value; }
}
// Check to see if ClusterCreationTime property is set
internal bool IsSetClusterCreationTime()
{
return this._clusterCreationTime != null;
}
///
/// Gets and sets the property KmsKeyId.
///
/// The KMS key identifier to use to encrypt the Elastic DocumentDB cluster.
///
///
[AWSProperty(Required=true)]
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 SnapshotArn.
///
/// The arn of the Elastic DocumentDB snapshot
///
///
[AWSProperty(Required=true)]
public string SnapshotArn
{
get { return this._snapshotArn; }
set { this._snapshotArn = value; }
}
// Check to see if SnapshotArn property is set
internal bool IsSetSnapshotArn()
{
return this._snapshotArn != null;
}
///
/// Gets and sets the property SnapshotCreationTime.
///
/// The time when the Elastic DocumentDB snapshot was created in Universal Coordinated
/// Time (UTC).
///
///
[AWSProperty(Required=true)]
public string SnapshotCreationTime
{
get { return this._snapshotCreationTime; }
set { this._snapshotCreationTime = value; }
}
// Check to see if SnapshotCreationTime property is set
internal bool IsSetSnapshotCreationTime()
{
return this._snapshotCreationTime != null;
}
///
/// Gets and sets the property SnapshotName.
///
/// The name of the Elastic DocumentDB snapshot.
///
///
[AWSProperty(Required=true)]
public string SnapshotName
{
get { return this._snapshotName; }
set { this._snapshotName = value; }
}
// Check to see if SnapshotName property is set
internal bool IsSetSnapshotName()
{
return this._snapshotName != null;
}
///
/// Gets and sets the property Status.
///
/// The status of the Elastic DocumentDB snapshot.
///
///
[AWSProperty(Required=true)]
public Status 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 SubnetIds.
///
/// A list of the IDs of subnets associated with the DB cluster snapshot.
///
///
[AWSProperty(Required=true)]
public List SubnetIds
{
get { return this._subnetIds; }
set { this._subnetIds = value; }
}
// Check to see if SubnetIds property is set
internal bool IsSetSubnetIds()
{
return this._subnetIds != null && this._subnetIds.Count > 0;
}
///
/// Gets and sets the property VpcSecurityGroupIds.
///
/// A list of the IDs of the VPC security groups associated with the cluster snapshot.
///
///
[AWSProperty(Required=true)]
public List VpcSecurityGroupIds
{
get { return this._vpcSecurityGroupIds; }
set { this._vpcSecurityGroupIds = value; }
}
// Check to see if VpcSecurityGroupIds property is set
internal bool IsSetVpcSecurityGroupIds()
{
return this._vpcSecurityGroupIds != null && this._vpcSecurityGroupIds.Count > 0;
}
}
}