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

aws.sdk.kotlin.services.sagemaker.model.HumanTaskUiSummary.kt Maven / Gradle / Ivy

There is a newer version: 1.3.99
Show newest version
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.sagemaker.model

import aws.smithy.kotlin.runtime.time.Instant

/**
 * Container for human task user interface information.
 */
class HumanTaskUiSummary private constructor(builder: BuilderImpl) {
    /**
     * A timestamp when SageMaker created the human task user interface.
     */
    val creationTime: Instant? = builder.creationTime
    /**
     * The Amazon Resource Name (ARN) of the human task user interface.
     */
    val humanTaskUiArn: String? = builder.humanTaskUiArn
    /**
     * The name of the human task user interface.
     */
    val humanTaskUiName: String? = builder.humanTaskUiName

    companion object {
        @JvmStatic
        fun fluentBuilder(): FluentBuilder = BuilderImpl()

        internal fun builder(): DslBuilder = BuilderImpl()

        operator fun invoke(block: DslBuilder.() -> kotlin.Unit): HumanTaskUiSummary = BuilderImpl().apply(block).build()

    }

    override fun toString(): kotlin.String = buildString {
        append("HumanTaskUiSummary(")
        append("creationTime=$creationTime,")
        append("humanTaskUiArn=$humanTaskUiArn,")
        append("humanTaskUiName=$humanTaskUiName)")
    }

    override fun hashCode(): kotlin.Int {
        var result = creationTime?.hashCode() ?: 0
        result = 31 * result + (humanTaskUiArn?.hashCode() ?: 0)
        result = 31 * result + (humanTaskUiName?.hashCode() ?: 0)
        return result
    }

    override fun equals(other: kotlin.Any?): kotlin.Boolean {
        if (this === other) return true
        if (javaClass != other?.javaClass) return false

        other as HumanTaskUiSummary

        if (creationTime != other.creationTime) return false
        if (humanTaskUiArn != other.humanTaskUiArn) return false
        if (humanTaskUiName != other.humanTaskUiName) return false

        return true
    }

    fun copy(block: DslBuilder.() -> kotlin.Unit = {}): HumanTaskUiSummary = BuilderImpl(this).apply(block).build()

    interface FluentBuilder {
        fun build(): HumanTaskUiSummary
        /**
         * A timestamp when SageMaker created the human task user interface.
         */
        fun creationTime(creationTime: Instant): FluentBuilder
        /**
         * The Amazon Resource Name (ARN) of the human task user interface.
         */
        fun humanTaskUiArn(humanTaskUiArn: String): FluentBuilder
        /**
         * The name of the human task user interface.
         */
        fun humanTaskUiName(humanTaskUiName: String): FluentBuilder
    }

    interface DslBuilder {
        /**
         * A timestamp when SageMaker created the human task user interface.
         */
        var creationTime: Instant?
        /**
         * The Amazon Resource Name (ARN) of the human task user interface.
         */
        var humanTaskUiArn: String?
        /**
         * The name of the human task user interface.
         */
        var humanTaskUiName: String?

        fun build(): HumanTaskUiSummary
    }

    private class BuilderImpl() : FluentBuilder, DslBuilder {
        override var creationTime: Instant? = null
        override var humanTaskUiArn: String? = null
        override var humanTaskUiName: String? = null

        constructor(x: HumanTaskUiSummary) : this() {
            this.creationTime = x.creationTime
            this.humanTaskUiArn = x.humanTaskUiArn
            this.humanTaskUiName = x.humanTaskUiName
        }

        override fun build(): HumanTaskUiSummary = HumanTaskUiSummary(this)
        override fun creationTime(creationTime: Instant): FluentBuilder = apply { this.creationTime = creationTime }
        override fun humanTaskUiArn(humanTaskUiArn: String): FluentBuilder = apply { this.humanTaskUiArn = humanTaskUiArn }
        override fun humanTaskUiName(humanTaskUiName: String): FluentBuilder = apply { this.humanTaskUiName = humanTaskUiName }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy