All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.ec2.model.DescribeVolumesRequest Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2010-2015 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 Amazon EBS volumes. *

*

* For more information about Amazon 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, DryRunSupportedRequest { /** * One or more volume IDs. */ private com.amazonaws.internal.ListWithAutoConstructFlag volumeIds; /** * 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) volumes, * io1 for Provisioned IOPS (SSD) volumes, or * standard for Magnetic volumes.

*/ private com.amazonaws.internal.ListWithAutoConstructFlag filters; /** * 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 volumeIds) { setVolumeIds(volumeIds); } /** * One or more volume IDs. * * @return One or more volume IDs. */ public java.util.List getVolumeIds() { if (volumeIds == null) { volumeIds = new com.amazonaws.internal.ListWithAutoConstructFlag(); volumeIds.setAutoConstruct(true); } return volumeIds; } /** * One or more volume IDs. * * @param volumeIds One or more volume IDs. */ public void setVolumeIds(java.util.Collection volumeIds) { if (volumeIds == null) { this.volumeIds = null; return; } com.amazonaws.internal.ListWithAutoConstructFlag volumeIdsCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(volumeIds.size()); volumeIdsCopy.addAll(volumeIds); this.volumeIds = volumeIdsCopy; } /** * One or more volume IDs. *

* 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(volumeIds.length)); for (String value : volumeIds) { getVolumeIds().add(value); } return this; } /** * One or more volume IDs. *

* 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 volumeIds) { if (volumeIds == null) { this.volumeIds = null; } else { com.amazonaws.internal.ListWithAutoConstructFlag volumeIdsCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(volumeIds.size()); volumeIdsCopy.addAll(volumeIds); this.volumeIds = volumeIdsCopy; } return this; } /** * 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) volumes, * io1 for Provisioned IOPS (SSD) volumes, or * standard for Magnetic volumes.

* * @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) volumes, * io1 for Provisioned IOPS (SSD) volumes, or * standard for Magnetic volumes.

*/ public java.util.List getFilters() { if (filters == null) { filters = new com.amazonaws.internal.ListWithAutoConstructFlag(); filters.setAutoConstruct(true); } return 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) volumes, * io1 for Provisioned IOPS (SSD) volumes, 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) volumes, * io1 for Provisioned IOPS (SSD) volumes, or * standard for Magnetic volumes.

*/ public void setFilters(java.util.Collection filters) { if (filters == null) { this.filters = null; return; } com.amazonaws.internal.ListWithAutoConstructFlag filtersCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(filters.size()); filtersCopy.addAll(filters); this.filters = filtersCopy; } /** * 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) volumes, * io1 for Provisioned IOPS (SSD) volumes, or * standard for Magnetic volumes.

*

* Returns a reference to this object so that method calls can be chained together. * * @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) volumes, * io1 for Provisioned IOPS (SSD) volumes, 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.ArrayList(filters.length)); for (Filter value : filters) { getFilters().add(value); } return this; } /** * 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) volumes, * io1 for Provisioned IOPS (SSD) volumes, or * standard for Magnetic volumes.

*

* Returns a reference to this object so that method calls can be chained together. * * @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) volumes, * io1 for Provisioned IOPS (SSD) volumes, 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.Collection filters) { if (filters == null) { this.filters = null; } else { com.amazonaws.internal.ListWithAutoConstructFlag filtersCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(filters.size()); filtersCopy.addAll(filters); this.filters = filtersCopy; } 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 getDryRunRequest() { Request request = new DescribeVolumesRequestMarshaller().marshall(this); request.addParameter("DryRun", Boolean.toString(true)); return request; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getVolumeIds() != null) sb.append("VolumeIds: " + getVolumeIds() + ","); if (getFilters() != null) sb.append("Filters: " + getFilters() ); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getVolumeIds() == null) ? 0 : getVolumeIds().hashCode()); hashCode = prime * hashCode + ((getFilters() == null) ? 0 : getFilters().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DescribeVolumesRequest == false) return false; DescribeVolumesRequest other = (DescribeVolumesRequest)obj; if (other.getVolumeIds() == null ^ this.getVolumeIds() == null) return false; if (other.getVolumeIds() != null && other.getVolumeIds().equals(this.getVolumeIds()) == false) return false; if (other.getFilters() == null ^ this.getFilters() == null) return false; if (other.getFilters() != null && other.getFilters().equals(this.getFilters()) == false) return false; return true; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy