/*
* 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 ModifyDBClusterSnapshotAttribute operation.
/// Adds an attribute and values to, or removes an attribute and values from, a manual
/// DB cluster snapshot.
///
///
///
/// To share a manual DB cluster snapshot with other Amazon Web Services accounts, specify
/// restore
as the AttributeName
and use the ValuesToAdd
/// parameter to add a list of IDs of the Amazon Web Services accounts that are authorized
/// to restore the manual DB cluster snapshot. Use the value all
to make
/// the manual DB cluster snapshot public, which means that it can be copied or restored
/// by all Amazon Web Services accounts.
///
///
///
/// Don't add the all
value for any manual DB cluster snapshots that contain
/// private information that you don't want available to all Amazon Web Services accounts.
///
///
///
/// If a manual DB cluster snapshot is encrypted, it can be shared, but only by specifying
/// a list of authorized Amazon Web Services account IDs for the ValuesToAdd
/// parameter. You can't use all
as a value for that parameter in this case.
///
///
///
/// To view which Amazon Web Services accounts have access to copy or restore a manual
/// DB cluster snapshot, or whether a manual DB cluster snapshot is public or private,
/// use the DescribeDBClusterSnapshotAttributes API operation. The accounts are
/// returned as values for the restore
attribute.
///
///
public partial class ModifyDBClusterSnapshotAttributeRequest : AmazonRDSRequest
{
private string _attributeName;
private string _dbClusterSnapshotIdentifier;
private List _valuesToAdd = new List();
private List _valuesToRemove = new List();
///
/// Gets and sets the property AttributeName.
///
/// The name of the DB cluster snapshot attribute to modify.
///
///
///
/// To manage authorization for other Amazon Web Services accounts to copy or restore
/// a manual DB cluster snapshot, set this value to restore
.
///
///
///
/// To view the list of attributes available to modify, use the DescribeDBClusterSnapshotAttributes
/// API operation.
///
///
///
[AWSProperty(Required=true)]
public string AttributeName
{
get { return this._attributeName; }
set { this._attributeName = value; }
}
// Check to see if AttributeName property is set
internal bool IsSetAttributeName()
{
return this._attributeName != null;
}
///
/// Gets and sets the property DBClusterSnapshotIdentifier.
///
/// The identifier for the DB cluster snapshot to modify the attributes for.
///
///
[AWSProperty(Required=true)]
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 ValuesToAdd.
///
/// A list of DB cluster snapshot attributes to add to the attribute specified by AttributeName
.
///
///
///
/// To authorize other Amazon Web Services accounts to copy or restore a manual DB cluster
/// snapshot, set this list to include one or more Amazon Web Services account IDs, or
/// all
to make the manual DB cluster snapshot restorable by any Amazon Web
/// Services account. Do not add the all
value for any manual DB cluster
/// snapshots that contain private information that you don't want available to all Amazon
/// Web Services accounts.
///
///
public List ValuesToAdd
{
get { return this._valuesToAdd; }
set { this._valuesToAdd = value; }
}
// Check to see if ValuesToAdd property is set
internal bool IsSetValuesToAdd()
{
return this._valuesToAdd != null && this._valuesToAdd.Count > 0;
}
///
/// Gets and sets the property ValuesToRemove.
///
/// A list of DB cluster snapshot attributes to remove from the attribute specified by
/// AttributeName
.
///
///
///
/// To remove authorization for other Amazon Web Services accounts to copy or restore
/// a manual DB cluster snapshot, set this list to include one or more Amazon Web Services
/// account identifiers, or all
to remove authorization for any Amazon Web
/// Services account to copy or restore the DB cluster snapshot. If you specify all
,
/// an Amazon Web Services account whose account ID is explicitly added to the restore
/// attribute can still copy or restore a manual DB cluster snapshot.
///
///
public List ValuesToRemove
{
get { return this._valuesToRemove; }
set { this._valuesToRemove = value; }
}
// Check to see if ValuesToRemove property is set
internal bool IsSetValuesToRemove()
{
return this._valuesToRemove != null && this._valuesToRemove.Count > 0;
}
}
}