/*
* 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 ec2-2016-11-15.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.EC2.Model
{
///
/// Container for the parameters to the DescribeVolumes operation.
/// Describes the specified EBS volumes or all of your EBS volumes.
///
///
///
/// If you are describing a long list of volumes, we recommend that you paginate the output
/// to make the list more manageable. For more information, see Pagination.
///
///
///
/// For more information about EBS volumes, see Amazon
/// EBS volumes in the Amazon Elastic Compute Cloud User Guide.
///
///
public partial class DescribeVolumesRequest : AmazonEC2Request
{
private List _filters = new List();
private int? _maxResults;
private string _nextToken;
private List _volumeIds = new List();
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public DescribeVolumesRequest() { }
///
/// Instantiates DescribeVolumesRequest with the parameterized properties
///
/// The volume IDs.
public DescribeVolumesRequest(List volumeIds)
{
_volumeIds = volumeIds;
}
///
/// Gets and sets the property Filters.
///
/// The filters.
///
/// -
///
///
attachment.attach-time
- The time stamp when the attachment initiated.
///
/// -
///
///
attachment.delete-on-termination
- Whether the volume is deleted on
/// instance termination.
///
/// -
///
///
attachment.device
- The device name specified in the block device mapping
/// (for example, /dev/sda1
).
///
/// -
///
///
attachment.instance-id
- The ID of the instance the volume is attached
/// to.
///
/// -
///
///
attachment.status
- The attachment state (attaching
| attached
/// | detaching
).
///
/// -
///
///
availability-zone
- The Availability Zone in which the volume was created.
///
/// -
///
///
create-time
- The time stamp when the volume was created.
///
/// -
///
///
encrypted
- Indicates whether the volume is encrypted (true
/// | false
)
///
/// -
///
///
multi-attach-enabled
- Indicates whether the volume is enabled for Multi-Attach
/// (true
| false
)
///
/// -
///
///
fast-restored
- Indicates whether the volume was created from a snapshot
/// that is enabled for fast snapshot restore (true
| false
).
///
/// -
///
///
size
- The size of the volume, in GiB.
///
/// -
///
///
snapshot-id
- The snapshot from which the volume was created.
///
/// -
///
///
status
- The state of the volume (creating
| available
/// | in-use
| deleting
| deleted
| error
).
///
/// -
///
///
tag
:<key> - The key/value combination of a tag assigned to the
/// resource. Use the tag key in the filter name and the tag value as the filter value.
/// For example, to find all resources that have a tag with the key Owner
/// and the value TeamA
, specify tag:Owner
for the filter name
/// and TeamA
for the filter value.
///
/// -
///
///
tag-key
- The key of a tag assigned to the resource. Use this filter
/// to find all resources assigned a tag with a specific key, regardless of the tag value.
///
/// -
///
///
volume-id
- The volume ID.
///
/// -
///
///
volume-type
- The Amazon EBS volume type (gp2
| gp3
/// | io1
| io2
| st1
| sc1
| standard
)
///
///
///
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 MaxResults.
///
/// The maximum number of volumes to return for this request. This value can be between
/// 5 and 500; if you specify a value larger than 500, only 500 items are returned. If
/// this parameter is not used, then all items are returned. You cannot specify this parameter
/// and the volume IDs parameter in the same request. For more information, see Pagination.
///
///
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property NextToken.
///
/// The token returned from a previous paginated request. Pagination continues from the
/// end of the items returned from the previous request.
///
///
public string NextToken
{
get { return this._nextToken; }
set { this._nextToken = value; }
}
// Check to see if NextToken property is set
internal bool IsSetNextToken()
{
return this._nextToken != null;
}
///
/// Gets and sets the property VolumeIds.
///
/// The volume IDs.
///
///
public List VolumeIds
{
get { return this._volumeIds; }
set { this._volumeIds = value; }
}
// Check to see if VolumeIds property is set
internal bool IsSetVolumeIds()
{
return this._volumeIds != null && this._volumeIds.Count > 0;
}
}
}