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

commonMain.aws.sdk.kotlin.services.snowball.model.TargetOnDeviceService.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.snowball.model

import aws.smithy.kotlin.runtime.SdkDsl

/**
 * An object that represents the service or services on the Snow Family device that your transferred data will be exported from or imported into. Amazon Web Services Snow Family supports Amazon S3 and NFS (Network File System).
 */
public class TargetOnDeviceService private constructor(builder: Builder) {
    /**
     * Specifies the name of the service on the Snow Family device that your transferred data will be exported from or imported into.
     */
    public val serviceName: aws.sdk.kotlin.services.snowball.model.DeviceServiceName? = builder.serviceName
    /**
     * Specifies whether the data is being imported or exported. You can import or export the data, or use it locally on the device.
     */
    public val transferOption: aws.sdk.kotlin.services.snowball.model.TransferOption? = builder.transferOption

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

    override fun toString(): kotlin.String = buildString {
        append("TargetOnDeviceService(")
        append("serviceName=$serviceName,")
        append("transferOption=$transferOption")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = serviceName?.hashCode() ?: 0
        result = 31 * result + (transferOption?.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 TargetOnDeviceService

        if (serviceName != other.serviceName) return false
        if (transferOption != other.transferOption) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * Specifies the name of the service on the Snow Family device that your transferred data will be exported from or imported into.
         */
        public var serviceName: aws.sdk.kotlin.services.snowball.model.DeviceServiceName? = null
        /**
         * Specifies whether the data is being imported or exported. You can import or export the data, or use it locally on the device.
         */
        public var transferOption: aws.sdk.kotlin.services.snowball.model.TransferOption? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.snowball.model.TargetOnDeviceService) : this() {
            this.serviceName = x.serviceName
            this.transferOption = x.transferOption
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.snowball.model.TargetOnDeviceService = TargetOnDeviceService(this)

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy