/* * 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 { /// /// 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. /// /// /// /// You can copy an encrypted DB cluster snapshot from another Amazon Web Services Region. /// In that case, the Amazon Web Services Region where you call the CopyDBClusterSnapshot /// operation is the destination Amazon Web Services Region for the encrypted DB cluster /// snapshot to be copied to. To copy an encrypted DB cluster snapshot from another Amazon /// Web Services Region, you must provide the following values: /// /// /// /// To cancel the copy operation once it is in progress, delete the target DB cluster /// snapshot identified by TargetDBClusterSnapshotIdentifier while that DB /// cluster snapshot is in "copying" status. /// /// /// /// For more information on copying encrypted Amazon Aurora DB cluster snapshots from /// one Amazon Web Services Region to another, see /// Copying a Snapshot in the Amazon Aurora User Guide. /// /// /// /// For more information on Amazon Aurora DB clusters, see /// What is Amazon Aurora? in the Amazon Aurora User Guide. /// /// /// /// For more information on Multi-AZ DB clusters, see /// Multi-AZ DB cluster deployments in the Amazon RDS User Guide. /// /// public partial class CopyDBClusterSnapshotRequest : AmazonRDSRequest { 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. /// /// A value that indicates whether to copy all tags from the source DB cluster snapshot /// to the target DB cluster snapshot. By default, tags are not copied. /// /// 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 Web Services KMS key identifier for an encrypted DB cluster snapshot. The /// Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias /// name for the Amazon Web Services KMS key. /// /// /// /// If you copy an encrypted DB cluster snapshot from your Amazon Web Services account, /// you can specify a value for KmsKeyId to encrypt the copy with a new KMS /// 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 Web /// Services account, then you must specify a value for KmsKeyId. /// /// /// /// To copy an encrypted DB cluster snapshot to another Amazon Web Services Region, you /// must set KmsKeyId to the Amazon Web Services KMS key identifier you want /// to use to encrypt the copy of the DB cluster snapshot in the destination Amazon Web /// Services Region. KMS keys are specific to the Amazon Web Services Region that they /// are created in, and you can't use KMS keys from one Amazon Web Services Region in /// another Amazon Web Services Region. /// /// /// /// If you 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. /// /// When you are copying a DB cluster snapshot from one Amazon Web Services GovCloud (US) /// Region to another, the URL that contains a Signature Version 4 signed request for /// the CopyDBClusterSnapshot API operation in the Amazon Web Services Region /// that contains the source DB cluster snapshot to copy. Use the PreSignedUrl /// parameter when copying an encrypted DB cluster snapshot from another Amazon Web Services /// Region. Don't specify PreSignedUrl when copying an encrypted DB cluster /// snapshot in the same Amazon Web Services Region. /// /// /// /// This setting applies only to Amazon Web Services GovCloud (US) Regions. It's ignored /// in other Amazon Web Services Regions. /// /// /// /// The presigned URL must be a valid request for the CopyDBClusterSnapshot /// API operation that can run in the source Amazon Web Services Region that contains /// the encrypted DB cluster snapshot to copy. The presigned URL request must contain /// the following parameter values: /// ///
  • /// /// KmsKeyId - The KMS key identifier for the KMS key to use to encrypt /// the copy of the DB cluster snapshot in the destination Amazon Web Services Region. /// This is the same identifier for both the CopyDBClusterSnapshot operation /// that is called in the destination Amazon Web Services Region, and the operation contained /// in the presigned URL. /// ///
  • /// /// DestinationRegion - The name of the Amazon Web Services Region that /// the DB cluster snapshot is to be created in. /// ///
  • /// /// SourceDBClusterSnapshotIdentifier - The DB cluster snapshot identifier /// for the encrypted DB cluster snapshot to be copied. This identifier must be in the /// Amazon Resource Name (ARN) format for the source Amazon Web Services Region. For example, /// if you are copying an encrypted DB cluster snapshot from the us-west-2 Amazon Web /// Services Region, then your SourceDBClusterSnapshotIdentifier looks like /// the following example: arn:aws:rds:us-west-2:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20161115. /// ///
/// /// To learn how to generate a Signature Version 4 signed request, see /// Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version /// 4) and /// Signature Version 4 Signing Process. /// /// /// /// If you are using an Amazon Web Services SDK tool or the CLI, you can specify SourceRegion /// (or --source-region for the CLI) instead of specifying PreSignedUrl /// manually. Specifying SourceRegion autogenerates a presigned URL that /// is a valid request for the operation that can run in the source Amazon Web Services /// Region. /// /// ///
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 isn't case-sensitive. /// /// /// /// You can't copy an encrypted, shared DB cluster snapshot from one Amazon Web Services /// Region to another. /// /// /// /// Constraints: /// ///
  • /// /// Must specify a valid system snapshot in the "available" state. /// ///
  • /// /// If the source snapshot is in the same Amazon Web Services Region as the copy, specify /// a valid DB snapshot identifier. /// ///
  • /// /// If the source snapshot is in a different Amazon Web Services Region than the copy, /// specify a valid DB cluster snapshot ARN. For more information, go to /// Copying Snapshots Across Amazon Web Services Regions in the Amazon Aurora User /// Guide. /// ///
/// /// 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. /// 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 isn't case-sensitive. /// /// /// /// Constraints: /// ///
  • /// /// Must contain from 1 to 63 letters, numbers, or hyphens. /// ///
  • /// /// First character must be a letter. /// ///
  • /// /// Can't 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; } } }