/* * Copyright 2010-2018 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. */ package com.amazonaws.services.ec2.model; import java.io.Serializable; import com.amazonaws.AmazonWebServiceRequest; import com.amazonaws.Request; import com.amazonaws.services.ec2.model.transform.DescribeVolumesRequestMarshaller; /** * Container for the parameters to the {@link com.amazonaws.services.ec2.AmazonEC2#describeVolumes(DescribeVolumesRequest) DescribeVolumes operation}. *
* Describes the specified EBS volumes. *
*
* If you are describing a long list of volumes, you can paginate the
* output to make the list more manageable. The MaxResults
* parameter sets the maximum number of results returned in a single
* page. If the list of results exceeds your MaxResults
* value, then that number of results is returned along with a
* NextToken
value that can be passed to a subsequent
* DescribeVolumes
request to retrieve the remaining
* results.
*
* For more information about EBS volumes, see * Amazon EBS Volumes * in the Amazon Elastic Compute Cloud User Guide . *
* * @see com.amazonaws.services.ec2.AmazonEC2#describeVolumes(DescribeVolumesRequest) */ public class DescribeVolumesRequest extends AmazonWebServiceRequest implements Serializable, DryRunSupportedRequestattachment.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 that is exposed to
* the instance (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
| detached
).
availability-zone
- The Availability Zone in which the
* volume was created.
create-time
- The time
* stamp when the volume was created.
encrypted
- The encryption status of the volume.
size
- The size of the volume, in GiB.
snapshot-id
- The snapshot from which the volume was
* created.
status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
*
tag
:key=value - The key/value
* combination of a tag assigned to the resource.
tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter.
tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter.
volume-id
- The volume ID.
volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
*/
private String nextToken;
/**
* The maximum number of volume results returned by
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
*/
private Integer maxResults;
/**
* Default constructor for a new DescribeVolumesRequest object. Callers should use the
* setter or fluent setter (with...) methods to initialize this object after creating it.
*/
public DescribeVolumesRequest() {}
/**
* Constructs a new DescribeVolumesRequest object.
* Callers should use the setter or fluent setter (with...) methods to
* initialize any additional object members.
*
* @param volumeIds One or more volume IDs.
*/
public DescribeVolumesRequest(java.util.List
* Returns a reference to this object so that method calls can be chained together.
*
* @param volumeIds One or more volume IDs.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public DescribeVolumesRequest withVolumeIds(String... volumeIds) {
if (getVolumeIds() == null) setVolumeIds(new java.util.ArrayList
* Returns a reference to this object so that method calls can be chained together.
*
* @param volumeIds One or more volume IDs.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public DescribeVolumesRequest withVolumeIds(java.util.Collection
* Returns a reference to this object so that method calls can be chained together.
*
* @param filters One or more filters.
* Returns a reference to this object so that method calls can be chained together.
*
* @param filters One or more filters.
* Returns a reference to this object so that method calls can be chained together.
*
* @param nextToken The
* Returns a reference to this object so that method calls can be chained together.
*
* @param maxResults The maximum number of volume results returned by
*
*
* @return One or more 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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
*/
public java.util.Listattachment.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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
*
* @param filters One or more 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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
*/
public void setFilters(java.util.Collectionattachment.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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
* 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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public DescribeVolumesRequest withFilters(Filter... filters) {
if (getFilters() == null) setFilters(new java.util.ArrayListattachment.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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
* 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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public DescribeVolumesRequest withFilters(java.util.Collectionattachment.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 that is exposed to
* the instance (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
| detached
). availability-zone
- The Availability Zone in which the
* volume was created. create-time
- The time
* stamp when the volume was created. encrypted
- The encryption status of the volume. size
- The size of the volume, in GiB. snapshot-id
- The snapshot from which the volume was
* created. status
- The status of the volume
* (creating
| available
| in-use
* | deleting
| deleted
| error
).
* tag
:key=value - The key/value
* combination of a tag assigned to the resource. tag-key
- The key of a tag assigned to the resource.
* This filter is independent of the tag-value
filter. For
* example, if you use both the filter "tag-key=Purpose" and the filter
* "tag-value=X", you get any resources assigned both the tag key Purpose
* (regardless of what the tag's value is), and the tag value X
* (regardless of what the tag's key is). If you want to list only
* resources where Purpose is X, see the
* tag
:key=value filter. tag-value
- The value of a tag assigned to the
* resource. This filter is independent of the tag-key
* filter. volume-id
- The volume ID. volume-type
- The Amazon EBS volume type. This
* can be gp2
for General Purpose SSD, io1
for
* Provisioned IOPS SSD, st1
for Throughput Optimized HDD,
* sc1
for Cold HDD, or standard
for Magnetic
* volumes. NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
*
* @return The NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
*/
public String getNextToken() {
return nextToken;
}
/**
* The NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
*
* @param nextToken The NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
*/
public void setNextToken(String nextToken) {
this.nextToken = nextToken;
}
/**
* The NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
* NextToken
value returned from a previous paginated
* DescribeVolumes
request where MaxResults
was
* used and the results exceeded the value of that parameter. Pagination
* continues from the end of the previous results that returned the
* NextToken
value. This value is null
when
* there are no more results to return.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public DescribeVolumesRequest withNextToken(String nextToken) {
this.nextToken = nextToken;
return this;
}
/**
* The maximum number of volume results returned by
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
*
* @return The maximum number of volume results returned by
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
*/
public Integer getMaxResults() {
return maxResults;
}
/**
* The maximum number of volume results returned by
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
*
* @param maxResults The maximum number of volume results returned by
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
*/
public void setMaxResults(Integer maxResults) {
this.maxResults = maxResults;
}
/**
* The maximum number of volume results returned by
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
* DescribeVolumes
in paginated output. When this parameter
* is used, DescribeVolumes
only returns
* MaxResults
results in a single page along with a
* NextToken
response element. The remaining results of the
* initial request can be seen by sending another
* DescribeVolumes
request with the returned
* NextToken
value. This value can be between 5 and 1000; if
* MaxResults
is given a value larger than 1000, only 1000
* results are returned. If this parameter is not used, then
* DescribeVolumes
returns all results. You cannot specify
* this parameter and the volume IDs parameter in the same request.
*
* @return A reference to this updated object so that method calls can be chained
* together.
*/
public DescribeVolumesRequest withMaxResults(Integer maxResults) {
this.maxResults = maxResults;
return this;
}
/**
* This method is intended for internal use only.
* Returns the marshaled request configured with additional parameters to
* enable operation dry-run.
*/
@Override
public Request