/* * 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 neptune-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.Neptune.Model { /// /// Container for the parameters to the CopyDBClusterSnapshot operation. /// Copies a snapshot of a DB cluster. /// /// /// /// To copy a DB cluster snapshot from a shared manual DB cluster snapshot, SourceDBClusterSnapshotIdentifier /// must be the Amazon Resource Name (ARN) of the shared DB cluster snapshot. /// /// public partial class CopyDBClusterSnapshotRequest : AmazonNeptuneRequest { private bool? _copyTags; private string _kmsKeyId; private string _preSignedUrl; private string _sourceDBClusterSnapshotIdentifier; private List _tags = new List(); private string _targetDBClusterSnapshotIdentifier; /// /// Gets and sets the property CopyTags. /// /// True to copy all tags from the source DB cluster snapshot to the target DB cluster /// snapshot, and otherwise false. The default is false. /// /// public bool CopyTags { get { return this._copyTags.GetValueOrDefault(); } set { this._copyTags = value; } } // Check to see if CopyTags property is set internal bool IsSetCopyTags() { return this._copyTags.HasValue; } /// /// Gets and sets the property KmsKeyId. /// /// The Amazon Amazon KMS key ID for an encrypted DB cluster snapshot. The KMS key ID /// is the Amazon Resource Name (ARN), KMS key identifier, or the KMS key alias for the /// KMS encryption key. /// /// /// /// If you copy an encrypted DB cluster snapshot from your Amazon account, you can specify /// a value for KmsKeyId to encrypt the copy with a new KMS encryption key. /// If you don't specify a value for KmsKeyId, then the copy of the DB cluster /// snapshot is encrypted with the same KMS key as the source DB cluster snapshot. /// /// /// /// If you copy an encrypted DB cluster snapshot that is shared from another Amazon account, /// then you must specify a value for KmsKeyId. /// /// /// /// KMS encryption keys are specific to the Amazon Region that they are created in, and /// you can't use encryption keys from one Amazon Region in another Amazon Region. /// /// /// /// You cannot encrypt an unencrypted DB cluster snapshot when you copy it. If you try /// to copy an unencrypted DB cluster snapshot and specify a value for the KmsKeyId parameter, /// an error is returned. /// /// 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 PreSignedUrl. /// /// Not currently supported. /// /// public string PreSignedUrl { get { return this._preSignedUrl; } set { this._preSignedUrl = value; } } // Check to see if PreSignedUrl property is set internal bool IsSetPreSignedUrl() { return this._preSignedUrl != null; } /// /// Gets and sets the property SourceDBClusterSnapshotIdentifier. /// /// The identifier of the DB cluster snapshot to copy. This parameter is not case-sensitive. /// /// /// /// Constraints: /// ///
  • /// /// Must specify a valid system snapshot in the "available" state. /// ///
  • /// /// Specify a valid DB snapshot identifier. /// ///
/// /// Example: my-cluster-snapshot1 /// ///
[AWSProperty(Required=true)] public string SourceDBClusterSnapshotIdentifier { get { return this._sourceDBClusterSnapshotIdentifier; } set { this._sourceDBClusterSnapshotIdentifier = value; } } // Check to see if SourceDBClusterSnapshotIdentifier property is set internal bool IsSetSourceDBClusterSnapshotIdentifier() { return this._sourceDBClusterSnapshotIdentifier != null; } /// /// Gets and sets the property Tags. /// /// The tags to assign to the new DB cluster snapshot copy. /// /// 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 TargetDBClusterSnapshotIdentifier. /// /// The identifier of the new DB cluster snapshot to create from the source DB cluster /// snapshot. This parameter is not case-sensitive. /// /// /// /// Constraints: /// ///
  • /// /// Must contain from 1 to 63 letters, numbers, or hyphens. /// ///
  • /// /// First character must be a letter. /// ///
  • /// /// Cannot end with a hyphen or contain two consecutive hyphens. /// ///
/// /// Example: my-cluster-snapshot2 /// ///
[AWSProperty(Required=true)] public string TargetDBClusterSnapshotIdentifier { get { return this._targetDBClusterSnapshotIdentifier; } set { this._targetDBClusterSnapshotIdentifier = value; } } // Check to see if TargetDBClusterSnapshotIdentifier property is set internal bool IsSetTargetDBClusterSnapshotIdentifier() { return this._targetDBClusterSnapshotIdentifier != null; } } }