/* * 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 redshift-2012-12-01.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.Redshift.Model { /// /// Container for the parameters to the CopyClusterSnapshot operation. /// Copies the specified automated cluster snapshot to a new manual cluster snapshot. /// The source must be an automated snapshot and it must be in the available state. /// /// /// /// When you delete a cluster, Amazon Redshift deletes any automated snapshots of the /// cluster. Also, when the retention period of the snapshot expires, Amazon Redshift /// automatically deletes it. If you want to keep an automated snapshot for a longer period, /// you can make a manual copy of the snapshot. Manual snapshots are retained until you /// delete them. /// /// /// /// For more information about working with snapshots, go to Amazon /// Redshift Snapshots in the Amazon Redshift Cluster Management Guide. /// /// public partial class CopyClusterSnapshotRequest : AmazonRedshiftRequest { private int? _manualSnapshotRetentionPeriod; private string _sourceSnapshotClusterIdentifier; private string _sourceSnapshotIdentifier; private string _targetSnapshotIdentifier; /// /// Gets and sets the property ManualSnapshotRetentionPeriod. /// /// The number of days that a manual snapshot is retained. If the value is -1, the manual /// snapshot is retained indefinitely. /// /// /// /// The value must be either -1 or an integer between 1 and 3,653. /// /// /// /// The default value is -1. /// /// public int ManualSnapshotRetentionPeriod { get { return this._manualSnapshotRetentionPeriod.GetValueOrDefault(); } set { this._manualSnapshotRetentionPeriod = value; } } // Check to see if ManualSnapshotRetentionPeriod property is set internal bool IsSetManualSnapshotRetentionPeriod() { return this._manualSnapshotRetentionPeriod.HasValue; } /// /// Gets and sets the property SourceSnapshotClusterIdentifier. /// /// The identifier of the cluster the source snapshot was created from. This parameter /// is required if your IAM user has a policy containing a snapshot resource element that /// specifies anything other than * for the cluster name. /// /// /// /// Constraints: /// /// /// [AWSProperty(Max=2147483647)] public string SourceSnapshotClusterIdentifier { get { return this._sourceSnapshotClusterIdentifier; } set { this._sourceSnapshotClusterIdentifier = value; } } // Check to see if SourceSnapshotClusterIdentifier property is set internal bool IsSetSourceSnapshotClusterIdentifier() { return this._sourceSnapshotClusterIdentifier != null; } /// /// Gets and sets the property SourceSnapshotIdentifier. /// /// The identifier for the source snapshot. /// /// /// /// Constraints: /// /// /// [AWSProperty(Required=true, Max=2147483647)] public string SourceSnapshotIdentifier { get { return this._sourceSnapshotIdentifier; } set { this._sourceSnapshotIdentifier = value; } } // Check to see if SourceSnapshotIdentifier property is set internal bool IsSetSourceSnapshotIdentifier() { return this._sourceSnapshotIdentifier != null; } /// /// Gets and sets the property TargetSnapshotIdentifier. /// /// The identifier given to the new manual snapshot. /// /// /// /// Constraints: /// /// /// [AWSProperty(Required=true, Max=2147483647)] public string TargetSnapshotIdentifier { get { return this._targetSnapshotIdentifier; } set { this._targetSnapshotIdentifier = value; } } // Check to see if TargetSnapshotIdentifier property is set internal bool IsSetTargetSnapshotIdentifier() { return this._targetSnapshotIdentifier != null; } } }