/* * Copyright 2018-2023 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.securityhub.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Parameters that are used to automatically set up EBS volumes when an instance is launched. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails implements Serializable, Cloneable, StructuredPojo { /** ** Whether to delete the volume when the instance is terminated. *
*/ private Boolean deleteOnTermination; /** ** Whether to encrypt the volume. *
*/ private Boolean encrypted; /** ** The number of input/output (I/O) operations per second (IOPS) to provision for the volume. *
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes. Not used
* with standard
, gp2
, st1
, or sc1
volumes.
*
* The snapshot ID of the volume to use. *
*
* You must specify either VolumeSize
or SnapshotId
.
*
* The volume size, in GiBs. The following are the supported volumes sizes for each volume type: *
** gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the size of
* the snapshot.
*
* The volume type. Valid values are as follows: *
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*
* Whether to delete the volume when the instance is terminated. *
* * @param deleteOnTermination * Whether to delete the volume when the instance is terminated. */ public void setDeleteOnTermination(Boolean deleteOnTermination) { this.deleteOnTermination = deleteOnTermination; } /** ** Whether to delete the volume when the instance is terminated. *
* * @return Whether to delete the volume when the instance is terminated. */ public Boolean getDeleteOnTermination() { return this.deleteOnTermination; } /** ** Whether to delete the volume when the instance is terminated. *
* * @param deleteOnTermination * Whether to delete the volume when the instance is terminated. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails withDeleteOnTermination(Boolean deleteOnTermination) { setDeleteOnTermination(deleteOnTermination); return this; } /** ** Whether to delete the volume when the instance is terminated. *
* * @return Whether to delete the volume when the instance is terminated. */ public Boolean isDeleteOnTermination() { return this.deleteOnTermination; } /** ** Whether to encrypt the volume. *
* * @param encrypted * Whether to encrypt the volume. */ public void setEncrypted(Boolean encrypted) { this.encrypted = encrypted; } /** ** Whether to encrypt the volume. *
* * @return Whether to encrypt the volume. */ public Boolean getEncrypted() { return this.encrypted; } /** ** Whether to encrypt the volume. *
* * @param encrypted * Whether to encrypt the volume. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails withEncrypted(Boolean encrypted) { setEncrypted(encrypted); return this; } /** ** Whether to encrypt the volume. *
* * @return Whether to encrypt the volume. */ public Boolean isEncrypted() { return this.encrypted; } /** ** The number of input/output (I/O) operations per second (IOPS) to provision for the volume. *
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes. Not used
* with standard
, gp2
, st1
, or sc1
volumes.
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes.
* Not used with standard
, gp2
, st1
, or sc1
volumes.
*/
public void setIops(Integer iops) {
this.iops = iops;
}
/**
*
* The number of input/output (I/O) operations per second (IOPS) to provision for the volume. *
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes. Not used
* with standard
, gp2
, st1
, or sc1
volumes.
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes.
* Not used with standard
, gp2
, st1
, or sc1
volumes.
*/
public Integer getIops() {
return this.iops;
}
/**
*
* The number of input/output (I/O) operations per second (IOPS) to provision for the volume. *
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes. Not used
* with standard
, gp2
, st1
, or sc1
volumes.
*
* Only supported for gp3
or io1
volumes. Required for io1
volumes.
* Not used with standard
, gp2
, st1
, or sc1
volumes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails withIops(Integer iops) {
setIops(iops);
return this;
}
/**
*
* The snapshot ID of the volume to use. *
*
* You must specify either VolumeSize
or SnapshotId
.
*
* You must specify either VolumeSize
or SnapshotId
.
*/
public void setSnapshotId(String snapshotId) {
this.snapshotId = snapshotId;
}
/**
*
* The snapshot ID of the volume to use. *
*
* You must specify either VolumeSize
or SnapshotId
.
*
* You must specify either VolumeSize
or SnapshotId
.
*/
public String getSnapshotId() {
return this.snapshotId;
}
/**
*
* The snapshot ID of the volume to use. *
*
* You must specify either VolumeSize
or SnapshotId
.
*
* You must specify either VolumeSize
or SnapshotId
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails withSnapshotId(String snapshotId) {
setSnapshotId(snapshotId);
return this;
}
/**
*
* The volume size, in GiBs. The following are the supported volumes sizes for each volume type: *
** gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the size of
* the snapshot.
*
* gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the
* size of the snapshot.
*/
public void setVolumeSize(Integer volumeSize) {
this.volumeSize = volumeSize;
}
/**
*
* The volume size, in GiBs. The following are the supported volumes sizes for each volume type: *
** gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the size of
* the snapshot.
*
* gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the
* size of the snapshot.
*/
public Integer getVolumeSize() {
return this.volumeSize;
}
/**
*
* The volume size, in GiBs. The following are the supported volumes sizes for each volume type: *
** gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the size of
* the snapshot.
*
* gp2 and gp3: 1-16,384 *
** io1: 4-16,384 *
** st1 and sc1: 125-16,384 *
** standard: 1-1,024 *
*
* You must specify either SnapshotId
or VolumeSize
. If you specify both
* SnapshotId
and VolumeSize
, the volume size must be equal or greater than the
* size of the snapshot.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails withVolumeSize(Integer volumeSize) {
setVolumeSize(volumeSize);
return this;
}
/**
*
* The volume type. Valid values are as follows: *
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*
* The volume type. Valid values are as follows: *
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*
* The volume type. Valid values are as follows: *
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*
* gp2
*
* gp3
*
* io1
*
* sc1
*
* st1
*
* standard
*