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

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

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2010-2016 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.CreateVolumeRequestMarshaller;

/**
 * 

* Contains the parameters for CreateVolume. *

*/ public class CreateVolumeRequest extends AmazonWebServiceRequest implements Serializable, Cloneable, DryRunSupportedRequest { /** *

* The size of the volume, in GiBs. *

*

* Constraints: 1-16384 for gp2, 4-16384 for io1, * 500-16384 for st1, 500-16384 for sc1, and * 1-1024 for standard. 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 size; /** *

* The snapshot from which to create the volume. *

*/ private String snapshotId; /** *

* The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones that are * currently available to you. *

*/ private String availabilityZone; /** *

* The 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. *

*

* Default: standard *

*/ private String volumeType; /** *

* Only valid for Provisioned IOPS SSD volumes. The number of I/O operations * per second (IOPS) to provision for the volume, with a maximum ratio of 30 * IOPS/GiB. *

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes *

*/ private Integer iops; /** *

* Specifies whether the volume should be encrypted. Encrypted Amazon EBS * volumes may only be attached to instances that support Amazon EBS * encryption. Volumes that are created from encrypted snapshots are * automatically encrypted. There is no way to create an encrypted volume * from an unencrypted snapshot or vice versa. If your AMI uses encrypted * volumes, you can only launch it on supported instance types. For more * information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User * Guide. *

*/ private Boolean encrypted; /** *

* The full ARN of the AWS Key Management Service (AWS KMS) customer master * key (CMK) to use when creating the encrypted volume. This parameter is * only required if you want to use a non-default CMK; if this parameter is * not specified, the default CMK for EBS is used. The ARN contains the * arn:aws:kms namespace, followed by the region of the CMK, * the AWS account ID of the CMK owner, the key namespace, and * then the CMK ID. For example, * arn:aws:kms:us-east-1:012345678910 * :key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a * KmsKeyId is specified, the Encrypted flag must * also be set. *

*/ private String kmsKeyId; /** * Default constructor for CreateVolumeRequest object. Callers should use * the setter or fluent setter (with...) methods to initialize the object * after creating it. */ public CreateVolumeRequest() { } /** * Constructs a new CreateVolumeRequest object. Callers should use the * setter or fluent setter (with...) methods to initialize any additional * object members. * * @param size * The size of the volume, in GiBs.

*

* Constraints: 1-16384 for gp2, 4-16384 for * io1, 500-16384 for st1, 500-16384 for * sc1, and 1-1024 for standard. 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. * @param availabilityZone * The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones * that are currently available to you. */ public CreateVolumeRequest(Integer size, String availabilityZone) { setSize(size); setAvailabilityZone(availabilityZone); } /** * Constructs a new CreateVolumeRequest object. Callers should use the * setter or fluent setter (with...) methods to initialize any additional * object members. * * @param snapshotId * The snapshot from which to create the volume. * @param availabilityZone * The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones * that are currently available to you. */ public CreateVolumeRequest(String snapshotId, String availabilityZone) { setSnapshotId(snapshotId); setAvailabilityZone(availabilityZone); } /** *

* The size of the volume, in GiBs. *

*

* Constraints: 1-16384 for gp2, 4-16384 for io1, * 500-16384 for st1, 500-16384 for sc1, and * 1-1024 for standard. 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. *

* * @param size * The size of the volume, in GiBs.

*

* Constraints: 1-16384 for gp2, 4-16384 for * io1, 500-16384 for st1, 500-16384 for * sc1, and 1-1024 for standard. 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 setSize(Integer size) { this.size = size; } /** *

* The size of the volume, in GiBs. *

*

* Constraints: 1-16384 for gp2, 4-16384 for io1, * 500-16384 for st1, 500-16384 for sc1, and * 1-1024 for standard. 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. *

* * @return The size of the volume, in GiBs.

*

* Constraints: 1-16384 for gp2, 4-16384 for * io1, 500-16384 for st1, 500-16384 for * sc1, and 1-1024 for standard. 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 getSize() { return this.size; } /** *

* The size of the volume, in GiBs. *

*

* Constraints: 1-16384 for gp2, 4-16384 for io1, * 500-16384 for st1, 500-16384 for sc1, and * 1-1024 for standard. 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. *

* * @param size * The size of the volume, in GiBs.

*

* Constraints: 1-16384 for gp2, 4-16384 for * io1, 500-16384 for st1, 500-16384 for * sc1, and 1-1024 for standard. 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. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateVolumeRequest withSize(Integer size) { setSize(size); return this; } /** *

* The snapshot from which to create the volume. *

* * @param snapshotId * The snapshot from which to create the volume. */ public void setSnapshotId(String snapshotId) { this.snapshotId = snapshotId; } /** *

* The snapshot from which to create the volume. *

* * @return The snapshot from which to create the volume. */ public String getSnapshotId() { return this.snapshotId; } /** *

* The snapshot from which to create the volume. *

* * @param snapshotId * The snapshot from which to create the volume. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateVolumeRequest withSnapshotId(String snapshotId) { setSnapshotId(snapshotId); return this; } /** *

* The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones that are * currently available to you. *

* * @param availabilityZone * The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones * that are currently available to you. */ public void setAvailabilityZone(String availabilityZone) { this.availabilityZone = availabilityZone; } /** *

* The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones that are * currently available to you. *

* * @return The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones * that are currently available to you. */ public String getAvailabilityZone() { return this.availabilityZone; } /** *

* The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones that are * currently available to you. *

* * @param availabilityZone * The Availability Zone in which to create the volume. Use * DescribeAvailabilityZones to list the Availability Zones * that are currently available to you. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateVolumeRequest withAvailabilityZone(String availabilityZone) { setAvailabilityZone(availabilityZone); return this; } /** *

* The 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. *

*

* Default: standard *

* * @param volumeType * The 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.

*

* Default: standard * @see VolumeType */ public void setVolumeType(String volumeType) { this.volumeType = volumeType; } /** *

* The 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. *

*

* Default: standard *

* * @return The 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.

*

* Default: standard * @see VolumeType */ public String getVolumeType() { return this.volumeType; } /** *

* The 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. *

*

* Default: standard *

* * @param volumeType * The 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.

*

* Default: standard * @return Returns a reference to this object so that method calls can be * chained together. * @see VolumeType */ public CreateVolumeRequest withVolumeType(String volumeType) { setVolumeType(volumeType); return this; } /** *

* The 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. *

*

* Default: standard *

* * @param volumeType * The 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.

*

* Default: standard * @see VolumeType */ public void setVolumeType(VolumeType volumeType) { this.volumeType = volumeType.toString(); } /** *

* The 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. *

*

* Default: standard *

* * @param volumeType * The 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.

*

* Default: standard * @return Returns a reference to this object so that method calls can be * chained together. * @see VolumeType */ public CreateVolumeRequest withVolumeType(VolumeType volumeType) { setVolumeType(volumeType); return this; } /** *

* Only valid for Provisioned IOPS SSD volumes. The number of I/O operations * per second (IOPS) to provision for the volume, with a maximum ratio of 30 * IOPS/GiB. *

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes *

* * @param iops * Only valid for Provisioned IOPS SSD volumes. The number of I/O * operations per second (IOPS) to provision for the volume, with a * maximum ratio of 30 IOPS/GiB.

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes */ public void setIops(Integer iops) { this.iops = iops; } /** *

* Only valid for Provisioned IOPS SSD volumes. The number of I/O operations * per second (IOPS) to provision for the volume, with a maximum ratio of 30 * IOPS/GiB. *

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes *

* * @return Only valid for Provisioned IOPS SSD volumes. The number of I/O * operations per second (IOPS) to provision for the volume, with a * maximum ratio of 30 IOPS/GiB.

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD * volumes */ public Integer getIops() { return this.iops; } /** *

* Only valid for Provisioned IOPS SSD volumes. The number of I/O operations * per second (IOPS) to provision for the volume, with a maximum ratio of 30 * IOPS/GiB. *

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes *

* * @param iops * Only valid for Provisioned IOPS SSD volumes. The number of I/O * operations per second (IOPS) to provision for the volume, with a * maximum ratio of 30 IOPS/GiB.

*

* Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateVolumeRequest withIops(Integer iops) { setIops(iops); return this; } /** *

* Specifies whether the volume should be encrypted. Encrypted Amazon EBS * volumes may only be attached to instances that support Amazon EBS * encryption. Volumes that are created from encrypted snapshots are * automatically encrypted. There is no way to create an encrypted volume * from an unencrypted snapshot or vice versa. If your AMI uses encrypted * volumes, you can only launch it on supported instance types. For more * information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User * Guide. *

* * @param encrypted * Specifies whether the volume should be encrypted. Encrypted Amazon * EBS volumes may only be attached to instances that support Amazon * EBS encryption. Volumes that are created from encrypted snapshots * are automatically encrypted. There is no way to create an * encrypted volume from an unencrypted snapshot or vice versa. If * your AMI uses encrypted volumes, you can only launch it on * supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud * User Guide. */ public void setEncrypted(Boolean encrypted) { this.encrypted = encrypted; } /** *

* Specifies whether the volume should be encrypted. Encrypted Amazon EBS * volumes may only be attached to instances that support Amazon EBS * encryption. Volumes that are created from encrypted snapshots are * automatically encrypted. There is no way to create an encrypted volume * from an unencrypted snapshot or vice versa. If your AMI uses encrypted * volumes, you can only launch it on supported instance types. For more * information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User * Guide. *

* * @return Specifies whether the volume should be encrypted. Encrypted * Amazon EBS volumes may only be attached to instances that support * Amazon EBS encryption. Volumes that are created from encrypted * snapshots are automatically encrypted. There is no way to create * an encrypted volume from an unencrypted snapshot or vice versa. * If your AMI uses encrypted volumes, you can only launch it on * supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud * User Guide. */ public Boolean getEncrypted() { return this.encrypted; } /** *

* Specifies whether the volume should be encrypted. Encrypted Amazon EBS * volumes may only be attached to instances that support Amazon EBS * encryption. Volumes that are created from encrypted snapshots are * automatically encrypted. There is no way to create an encrypted volume * from an unencrypted snapshot or vice versa. If your AMI uses encrypted * volumes, you can only launch it on supported instance types. For more * information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User * Guide. *

* * @param encrypted * Specifies whether the volume should be encrypted. Encrypted Amazon * EBS volumes may only be attached to instances that support Amazon * EBS encryption. Volumes that are created from encrypted snapshots * are automatically encrypted. There is no way to create an * encrypted volume from an unencrypted snapshot or vice versa. If * your AMI uses encrypted volumes, you can only launch it on * supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud * User Guide. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateVolumeRequest withEncrypted(Boolean encrypted) { setEncrypted(encrypted); return this; } /** *

* Specifies whether the volume should be encrypted. Encrypted Amazon EBS * volumes may only be attached to instances that support Amazon EBS * encryption. Volumes that are created from encrypted snapshots are * automatically encrypted. There is no way to create an encrypted volume * from an unencrypted snapshot or vice versa. If your AMI uses encrypted * volumes, you can only launch it on supported instance types. For more * information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User * Guide. *

* * @return Specifies whether the volume should be encrypted. Encrypted * Amazon EBS volumes may only be attached to instances that support * Amazon EBS encryption. Volumes that are created from encrypted * snapshots are automatically encrypted. There is no way to create * an encrypted volume from an unencrypted snapshot or vice versa. * If your AMI uses encrypted volumes, you can only launch it on * supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud * User Guide. */ public Boolean isEncrypted() { return this.encrypted; } /** *

* The full ARN of the AWS Key Management Service (AWS KMS) customer master * key (CMK) to use when creating the encrypted volume. This parameter is * only required if you want to use a non-default CMK; if this parameter is * not specified, the default CMK for EBS is used. The ARN contains the * arn:aws:kms namespace, followed by the region of the CMK, * the AWS account ID of the CMK owner, the key namespace, and * then the CMK ID. For example, * arn:aws:kms:us-east-1:012345678910 * :key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a * KmsKeyId is specified, the Encrypted flag must * also be set. *

* * @param kmsKeyId * The full ARN of the AWS Key Management Service (AWS KMS) customer * master key (CMK) to use when creating the encrypted volume. This * parameter is only required if you want to use a non-default CMK; * if this parameter is not specified, the default CMK for EBS is * used. The ARN contains the arn:aws:kms namespace, * followed by the region of the CMK, the AWS account ID of the CMK * owner, the key namespace, and then the CMK ID. For * example, * arn:aws:kms:us-east-1:012345678910:key/abcd1234 * -a123-456a-a12b-a123b4cd56ef. If a KmsKeyId is * specified, the Encrypted flag must also be set. */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** *

* The full ARN of the AWS Key Management Service (AWS KMS) customer master * key (CMK) to use when creating the encrypted volume. This parameter is * only required if you want to use a non-default CMK; if this parameter is * not specified, the default CMK for EBS is used. The ARN contains the * arn:aws:kms namespace, followed by the region of the CMK, * the AWS account ID of the CMK owner, the key namespace, and * then the CMK ID. For example, * arn:aws:kms:us-east-1:012345678910 * :key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a * KmsKeyId is specified, the Encrypted flag must * also be set. *

* * @return The full ARN of the AWS Key Management Service (AWS KMS) customer * master key (CMK) to use when creating the encrypted volume. This * parameter is only required if you want to use a non-default CMK; * if this parameter is not specified, the default CMK for EBS is * used. The ARN contains the arn:aws:kms namespace, * followed by the region of the CMK, the AWS account ID of the CMK * owner, the key namespace, and then the CMK ID. For * example, arn:aws:kms:us-east-1:012345678910:key/ * abcd1234-a123-456a-a12b-a123b4cd56ef. If a * KmsKeyId is specified, the Encrypted * flag must also be set. */ public String getKmsKeyId() { return this.kmsKeyId; } /** *

* The full ARN of the AWS Key Management Service (AWS KMS) customer master * key (CMK) to use when creating the encrypted volume. This parameter is * only required if you want to use a non-default CMK; if this parameter is * not specified, the default CMK for EBS is used. The ARN contains the * arn:aws:kms namespace, followed by the region of the CMK, * the AWS account ID of the CMK owner, the key namespace, and * then the CMK ID. For example, * arn:aws:kms:us-east-1:012345678910 * :key/abcd1234-a123-456a-a12b-a123b4cd56ef. If a * KmsKeyId is specified, the Encrypted flag must * also be set. *

* * @param kmsKeyId * The full ARN of the AWS Key Management Service (AWS KMS) customer * master key (CMK) to use when creating the encrypted volume. This * parameter is only required if you want to use a non-default CMK; * if this parameter is not specified, the default CMK for EBS is * used. The ARN contains the arn:aws:kms namespace, * followed by the region of the CMK, the AWS account ID of the CMK * owner, the key namespace, and then the CMK ID. For * example, * arn:aws:kms:us-east-1:012345678910:key/abcd1234 * -a123-456a-a12b-a123b4cd56ef. If a KmsKeyId is * specified, the Encrypted flag must also be set. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateVolumeRequest withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); 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 CreateVolumeRequestMarshaller() .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 (getSize() != null) sb.append("Size: " + getSize() + ","); if (getSnapshotId() != null) sb.append("SnapshotId: " + getSnapshotId() + ","); if (getAvailabilityZone() != null) sb.append("AvailabilityZone: " + getAvailabilityZone() + ","); if (getVolumeType() != null) sb.append("VolumeType: " + getVolumeType() + ","); if (getIops() != null) sb.append("Iops: " + getIops() + ","); if (getEncrypted() != null) sb.append("Encrypted: " + getEncrypted() + ","); if (getKmsKeyId() != null) sb.append("KmsKeyId: " + getKmsKeyId()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateVolumeRequest == false) return false; CreateVolumeRequest other = (CreateVolumeRequest) obj; if (other.getSize() == null ^ this.getSize() == null) return false; if (other.getSize() != null && other.getSize().equals(this.getSize()) == false) return false; if (other.getSnapshotId() == null ^ this.getSnapshotId() == null) return false; if (other.getSnapshotId() != null && other.getSnapshotId().equals(this.getSnapshotId()) == false) return false; if (other.getAvailabilityZone() == null ^ this.getAvailabilityZone() == null) return false; if (other.getAvailabilityZone() != null && other.getAvailabilityZone().equals( this.getAvailabilityZone()) == false) return false; if (other.getVolumeType() == null ^ this.getVolumeType() == null) return false; if (other.getVolumeType() != null && other.getVolumeType().equals(this.getVolumeType()) == false) return false; if (other.getIops() == null ^ this.getIops() == null) return false; if (other.getIops() != null && other.getIops().equals(this.getIops()) == false) return false; if (other.getEncrypted() == null ^ this.getEncrypted() == null) return false; if (other.getEncrypted() != null && other.getEncrypted().equals(this.getEncrypted()) == false) return false; if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null) return false; if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getSize() == null) ? 0 : getSize().hashCode()); hashCode = prime * hashCode + ((getSnapshotId() == null) ? 0 : getSnapshotId().hashCode()); hashCode = prime * hashCode + ((getAvailabilityZone() == null) ? 0 : getAvailabilityZone() .hashCode()); hashCode = prime * hashCode + ((getVolumeType() == null) ? 0 : getVolumeType().hashCode()); hashCode = prime * hashCode + ((getIops() == null) ? 0 : getIops().hashCode()); hashCode = prime * hashCode + ((getEncrypted() == null) ? 0 : getEncrypted().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); return hashCode; } @Override public CreateVolumeRequest clone() { return (CreateVolumeRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy