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

commonMain.aws.sdk.kotlin.services.cloudhsmv2.model.CopyBackupToRegionRequest.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.cloudhsmv2.model



public class CopyBackupToRegionRequest private constructor(builder: Builder) {
    /**
     * The ID of the backup that will be copied to the destination region.
     */
    public val backupId: kotlin.String? = builder.backupId
    /**
     * The AWS region that will contain your copied CloudHSM cluster backup.
     */
    public val destinationRegion: kotlin.String? = builder.destinationRegion
    /**
     * Tags to apply to the destination backup during creation. If you specify tags, only these tags will be applied to the destination backup. If you do not specify tags, the service copies tags from the source backup to the destination backup.
     */
    public val tagList: List? = builder.tagList

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.cloudhsmv2.model.CopyBackupToRegionRequest = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("CopyBackupToRegionRequest(")
        append("backupId=$backupId,")
        append("destinationRegion=$destinationRegion,")
        append("tagList=$tagList")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = backupId?.hashCode() ?: 0
        result = 31 * result + (destinationRegion?.hashCode() ?: 0)
        result = 31 * result + (tagList?.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 CopyBackupToRegionRequest

        if (backupId != other.backupId) return false
        if (destinationRegion != other.destinationRegion) return false
        if (tagList != other.tagList) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.cloudhsmv2.model.CopyBackupToRegionRequest = Builder(this).apply(block).build()

    public class Builder {
        /**
         * The ID of the backup that will be copied to the destination region.
         */
        public var backupId: kotlin.String? = null
        /**
         * The AWS region that will contain your copied CloudHSM cluster backup.
         */
        public var destinationRegion: kotlin.String? = null
        /**
         * Tags to apply to the destination backup during creation. If you specify tags, only these tags will be applied to the destination backup. If you do not specify tags, the service copies tags from the source backup to the destination backup.
         */
        public var tagList: List? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.cloudhsmv2.model.CopyBackupToRegionRequest) : this() {
            this.backupId = x.backupId
            this.destinationRegion = x.destinationRegion
            this.tagList = x.tagList
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.cloudhsmv2.model.CopyBackupToRegionRequest = CopyBackupToRegionRequest(this)
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy