Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * 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;
 

Describes a block device for an EBS volume.

 
 public class EbsBlockDevice implements SerializableCloneable {

    
The ID of the snapshot.
 
     private String snapshotId;

    
The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

 
     private Integer volumeSize;

    
Indicates whether the EBS volume is deleted on instance termination.
 
     private Boolean deleteOnTermination;

    
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Constraints:
Allowed Values: standard, io1, gp2

 
     private String volumeType;

    
The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

 
     private Integer iops;

    
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.
 
     private Boolean encrypted;

    
The ID of the snapshot.

Returns:
The ID of the snapshot.
 
     public String getSnapshotId() {
         return ;
     }
    
    
The ID of the snapshot.

Parameters:
snapshotId The ID of the snapshot.
 
     public void setSnapshotId(String snapshotId) {
         this. = snapshotId;
     }
    
    
The ID of the snapshot.

Returns a reference to this object so that method calls can be chained together.

Parameters:
snapshotId The ID of the snapshot.
Returns:
A reference to this updated object so that method calls can be chained together.
    public EbsBlockDevice withSnapshotId(String snapshotId) {
        this. = snapshotId;
        return this;
    }

    
The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

Returns:
The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

    public Integer getVolumeSize() {
        return ;
    }
    
    
The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

Parameters:
volumeSize The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

    public void setVolumeSize(Integer volumeSize) {
        this. = volumeSize;
    }
    
    
The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

Returns a reference to this object so that method calls can be chained together.

Parameters:
volumeSize The size of the volume, in GiB.

Constraints: 1-1024 for standard volumes, 1-16384 for gp2 volumes, and 4-16384 for io1 volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

Returns:
A reference to this updated object so that method calls can be chained together.
    public EbsBlockDevice withVolumeSize(Integer volumeSize) {
        this. = volumeSize;
        return this;
    }

    
Indicates whether the EBS volume is deleted on instance termination.

Returns:
Indicates whether the EBS volume is deleted on instance termination.
    public Boolean isDeleteOnTermination() {
        return ;
    }
    
    
Indicates whether the EBS volume is deleted on instance termination.

Parameters:
deleteOnTermination Indicates whether the EBS volume is deleted on instance termination.
    public void setDeleteOnTermination(Boolean deleteOnTermination) {
        this. = deleteOnTermination;
    }
    
    
Indicates whether the EBS volume is deleted on instance termination.

Returns a reference to this object so that method calls can be chained together.

Parameters:
deleteOnTermination Indicates whether the EBS volume is deleted on instance termination.
Returns:
A reference to this updated object so that method calls can be chained together.
    public EbsBlockDevice withDeleteOnTermination(Boolean deleteOnTermination) {
        this. = deleteOnTermination;
        return this;
    }

    
Indicates whether the EBS volume is deleted on instance termination.

Returns:
Indicates whether the EBS volume is deleted on instance termination.
    public Boolean getDeleteOnTermination() {
        return ;
    }

    
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Constraints:
Allowed Values: standard, io1, gp2

Returns:
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

See also:
VolumeType
    public String getVolumeType() {
        return ;
    }
    
    
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Constraints:
Allowed Values: standard, io1, gp2

Parameters:
volumeType The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

See also:
VolumeType
    public void setVolumeType(String volumeType) {
        this. = volumeType;
    }
    
    
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Returns a reference to this object so that method calls can be chained together.

Constraints:
Allowed Values: standard, io1, gp2

Parameters:
volumeType The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Returns:
A reference to this updated object so that method calls can be chained together.
See also:
VolumeType
    public EbsBlockDevice withVolumeType(String volumeType) {
        this. = volumeType;
        return this;
    }

    
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Constraints:
Allowed Values: standard, io1, gp2

Parameters:
volumeType The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

See also:
VolumeType
    public void setVolumeType(VolumeType volumeType) {
        this. = volumeType.toString();
    }
    
    
The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Returns a reference to this object so that method calls can be chained together.

Constraints:
Allowed Values: standard, io1, gp2

Parameters:
volumeType The volume type. gp2 for General Purpose (SSD) volumes, io1 for Provisioned IOPS (SSD) volumes, and standard for Magnetic volumes.

Default: standard

Returns:
A reference to this updated object so that method calls can be chained together.
See also:
VolumeType
    public EbsBlockDevice withVolumeType(VolumeType volumeType) {
        this. = volumeType.toString();
        return this;
    }

    
The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

Returns:
The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

    public Integer getIops() {
        return ;
    }
    
    
The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

Parameters:
iops The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

    public void setIops(Integer iops) {
        this. = iops;
    }
    
    
The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

Returns a reference to this object so that method calls can be chained together.

Parameters:
iops The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS (SSD) volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose (SSD) volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information on General Purpose (SSD) baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide.

Constraint: Range is 100 to 20000 for Provisioned IOPS (SSD) volumes and 3 to 10000 for General Purpose (SSD) volumes.

Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create standard or gp2 volumes.

Returns:
A reference to this updated object so that method calls can be chained together.
    public EbsBlockDevice withIops(Integer iops) {
        this. = iops;
        return this;
    }

    
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

Returns:
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.
    public Boolean isEncrypted() {
        return ;
    }
    
    
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

Parameters:
encrypted Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.
    public void setEncrypted(Boolean encrypted) {
        this. = encrypted;
    }
    
    
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

Returns a reference to this object so that method calls can be chained together.

Parameters:
encrypted Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.
Returns:
A reference to this updated object so that method calls can be chained together.
    public EbsBlockDevice withEncrypted(Boolean encrypted) {
        this. = encrypted;
        return this;
    }

    
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.

Returns:
Indicates whether the EBS volume is encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption.
    public Boolean getEncrypted() {
        return ;
    }

    
Returns a string representation of this object; useful for testing and debugging.

Returns:
A string representation of this object.
See also:
java.lang.Object.toString()
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getSnapshotId() != nullsb.append("SnapshotId: " + getSnapshotId() + ",");
        if (getVolumeSize() != nullsb.append("VolumeSize: " + getVolumeSize() + ",");
        if (isDeleteOnTermination() != nullsb.append("DeleteOnTermination: " + isDeleteOnTermination() + ",");
        if (getVolumeType() != nullsb.append("VolumeType: " + getVolumeType() + ",");
        if (getIops() != nullsb.append("Iops: " + getIops() + ",");
        if (isEncrypted() != nullsb.append("Encrypted: " + isEncrypted() );
        sb.append("}");
        return sb.toString();
    }
    
    @Override
    public int hashCode() {
        final int prime = 31;
        int hashCode = 1;
        
        hashCode = prime * hashCode + ((getSnapshotId() == null) ? 0 : getSnapshotId().hashCode()); 
        hashCode = prime * hashCode + ((getVolumeSize() == null) ? 0 : getVolumeSize().hashCode()); 
        hashCode = prime * hashCode + ((isDeleteOnTermination() == null) ? 0 : isDeleteOnTermination().hashCode()); 
        hashCode = prime * hashCode + ((getVolumeType() == null) ? 0 : getVolumeType().hashCode()); 
        hashCode = prime * hashCode + ((getIops() == null) ? 0 : getIops().hashCode()); 
        hashCode = prime * hashCode + ((isEncrypted() == null) ? 0 : isEncrypted().hashCode()); 
        return hashCode;
    }
    
    @Override
    public boolean equals(Object obj) {
        if (this == objreturn true;
        if (obj == nullreturn false;
        if (obj instanceof EbsBlockDevice == falsereturn false;
        EbsBlockDevice other = (EbsBlockDevice)obj;
        
        if (other.getSnapshotId() == null ^ this.getSnapshotId() == nullreturn false;
        if (other.getSnapshotId() != null && other.getSnapshotId().equals(this.getSnapshotId()) == falsereturn false
        if (other.getVolumeSize() == null ^ this.getVolumeSize() == nullreturn false;
        if (other.getVolumeSize() != null && other.getVolumeSize().equals(this.getVolumeSize()) == falsereturn false
        if (other.isDeleteOnTermination() == null ^ this.isDeleteOnTermination() == nullreturn false;
        if (other.isDeleteOnTermination() != null && other.isDeleteOnTermination().equals(this.isDeleteOnTermination()) == falsereturn false
        if (other.getVolumeType() == null ^ this.getVolumeType() == nullreturn false;
        if (other.getVolumeType() != null && other.getVolumeType().equals(this.getVolumeType()) == falsereturn false
        if (other.getIops() == null ^ this.getIops() == nullreturn false;
        if (other.getIops() != null && other.getIops().equals(this.getIops()) == falsereturn false
        if (other.isEncrypted() == null ^ this.isEncrypted() == nullreturn false;
        if (other.isEncrypted() != null && other.isEncrypted().equals(this.isEncrypted()) == falsereturn false
        return true;
    }
    
    @Override
    public EbsBlockDevice clone() {
        try {
            return (EbsBlockDevicesuper.clone();
        
        } catch (CloneNotSupportedException e) {
            throw new IllegalStateException(
                    "Got a CloneNotSupportedException from Object.clone() "
                    + "even though we're Cloneable!",
                    e);
        }
        
    }
}
    
New to GrepCode? Check out our FAQ X