/*
* 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 DescribeNodeConfigurationOptions operation.
/// Returns properties of possible node configurations such as node type, number of nodes,
/// and disk usage for the specified action type.
///
public partial class DescribeNodeConfigurationOptionsRequest : AmazonRedshiftRequest
{
private ActionType _actionType;
private string _clusterIdentifier;
private List _filters = new List();
private string _marker;
private int? _maxRecords;
private string _ownerAccount;
private string _snapshotArn;
private string _snapshotIdentifier;
///
/// Gets and sets the property ActionType.
///
/// The action type to evaluate for possible node configurations. Specify "restore-cluster"
/// to get configuration combinations based on an existing snapshot. Specify "recommend-node-config"
/// to get configuration recommendations based on an existing cluster or snapshot. Specify
/// "resize-cluster" to get configuration combinations for elastic resize based on an
/// existing cluster.
///
///
[AWSProperty(Required=true)]
public ActionType ActionType
{
get { return this._actionType; }
set { this._actionType = value; }
}
// Check to see if ActionType property is set
internal bool IsSetActionType()
{
return this._actionType != null;
}
///
/// Gets and sets the property ClusterIdentifier.
///
/// The identifier of the cluster to evaluate for possible node configurations.
///
///
[AWSProperty(Max=2147483647)]
public string ClusterIdentifier
{
get { return this._clusterIdentifier; }
set { this._clusterIdentifier = value; }
}
// Check to see if ClusterIdentifier property is set
internal bool IsSetClusterIdentifier()
{
return this._clusterIdentifier != null;
}
///
/// Gets and sets the property Filters.
///
/// A set of name, operator, and value items to filter the results.
///
///
public List Filters
{
get { return this._filters; }
set { this._filters = value; }
}
// Check to see if Filters property is set
internal bool IsSetFilters()
{
return this._filters != null && this._filters.Count > 0;
}
///
/// Gets and sets the property Marker.
///
/// An optional parameter that specifies the starting point to return a set of response
/// records. When the results of a DescribeNodeConfigurationOptions request exceed
/// the value specified in MaxRecords
, Amazon Web Services returns a value
/// in the Marker
field of the response. You can retrieve the next set of
/// response records by providing the returned marker value in the Marker
/// parameter and retrying the request.
///
///
[AWSProperty(Max=2147483647)]
public string Marker
{
get { return this._marker; }
set { this._marker = value; }
}
// Check to see if Marker property is set
internal bool IsSetMarker()
{
return this._marker != null;
}
///
/// Gets and sets the property MaxRecords.
///
/// The maximum number of response records to return in each call. If the number of remaining
/// response records exceeds the specified MaxRecords
value, a value is returned
/// in a marker
field of the response. You can retrieve the next set of records
/// by retrying the command with the returned marker value.
///
///
///
/// Default: 500
///
///
///
/// Constraints: minimum 100, maximum 500.
///
///
public int MaxRecords
{
get { return this._maxRecords.GetValueOrDefault(); }
set { this._maxRecords = value; }
}
// Check to see if MaxRecords property is set
internal bool IsSetMaxRecords()
{
return this._maxRecords.HasValue;
}
///
/// Gets and sets the property OwnerAccount.
///
/// The Amazon Web Services account used to create or copy the snapshot. Required if you
/// are restoring a snapshot you do not own, optional if you own the snapshot.
///
///
[AWSProperty(Max=2147483647)]
public string OwnerAccount
{
get { return this._ownerAccount; }
set { this._ownerAccount = value; }
}
// Check to see if OwnerAccount property is set
internal bool IsSetOwnerAccount()
{
return this._ownerAccount != null;
}
///
/// Gets and sets the property SnapshotArn.
///
/// The Amazon Resource Name (ARN) of the snapshot associated with the message to describe
/// node configuration.
///
///
[AWSProperty(Max=2147483647)]
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 SnapshotIdentifier.
///
/// The identifier of the snapshot to evaluate for possible node configurations.
///
///
[AWSProperty(Max=2147483647)]
public string SnapshotIdentifier
{
get { return this._snapshotIdentifier; }
set { this._snapshotIdentifier = value; }
}
// Check to see if SnapshotIdentifier property is set
internal bool IsSetSnapshotIdentifier()
{
return this._snapshotIdentifier != null;
}
}
}