commonMain.aws.sdk.kotlin.services.snowdevicemanagement.model.EbsInstanceBlockDevice.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of snowdevicemanagement Show documentation
Show all versions of snowdevicemanagement Show documentation
The AWS Kotlin client for Snow Device Management
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.snowdevicemanagement.model
import aws.smithy.kotlin.runtime.time.Instant
/**
* Describes a parameter used to set up an Amazon Elastic Block Store (Amazon EBS) volume in a block device mapping.
*/
public class EbsInstanceBlockDevice private constructor(builder: Builder) {
/**
* When the attachment was initiated.
*/
public val attachTime: aws.smithy.kotlin.runtime.time.Instant? = builder.attachTime
/**
* A value that indicates whether the volume is deleted on instance termination.
*/
public val deleteOnTermination: kotlin.Boolean? = builder.deleteOnTermination
/**
* The attachment state.
*/
public val status: aws.sdk.kotlin.services.snowdevicemanagement.model.AttachmentStatus? = builder.status
/**
* The ID of the Amazon EBS volume.
*/
public val volumeId: kotlin.String? = builder.volumeId
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.snowdevicemanagement.model.EbsInstanceBlockDevice = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("EbsInstanceBlockDevice(")
append("attachTime=$attachTime,")
append("deleteOnTermination=$deleteOnTermination,")
append("status=$status,")
append("volumeId=$volumeId")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = attachTime?.hashCode() ?: 0
result = 31 * result + (deleteOnTermination?.hashCode() ?: 0)
result = 31 * result + (status?.hashCode() ?: 0)
result = 31 * result + (volumeId?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as EbsInstanceBlockDevice
if (attachTime != other.attachTime) return false
if (deleteOnTermination != other.deleteOnTermination) return false
if (status != other.status) return false
if (volumeId != other.volumeId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.snowdevicemanagement.model.EbsInstanceBlockDevice = Builder(this).apply(block).build()
public class Builder {
/**
* When the attachment was initiated.
*/
public var attachTime: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* A value that indicates whether the volume is deleted on instance termination.
*/
public var deleteOnTermination: kotlin.Boolean? = null
/**
* The attachment state.
*/
public var status: aws.sdk.kotlin.services.snowdevicemanagement.model.AttachmentStatus? = null
/**
* The ID of the Amazon EBS volume.
*/
public var volumeId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.snowdevicemanagement.model.EbsInstanceBlockDevice) : this() {
this.attachTime = x.attachTime
this.deleteOnTermination = x.deleteOnTermination
this.status = x.status
this.volumeId = x.volumeId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.snowdevicemanagement.model.EbsInstanceBlockDevice = EbsInstanceBlockDevice(this)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy