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

commonMain.aws.sdk.kotlin.services.glue.model.GetMlTransformResponse.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.glue.model

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

public class GetMlTransformResponse private constructor(builder: Builder) {
    /**
     * The date and time when the transform was created.
     */
    public val createdOn: aws.smithy.kotlin.runtime.time.Instant? = builder.createdOn
    /**
     * A description of the transform.
     */
    public val description: kotlin.String? = builder.description
    /**
     * The latest evaluation metrics.
     */
    public val evaluationMetrics: aws.sdk.kotlin.services.glue.model.EvaluationMetrics? = builder.evaluationMetrics
    /**
     * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more information, see [Glue Versions](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html#release-notes-versions) in the developer guide.
     */
    public val glueVersion: kotlin.String? = builder.glueVersion
    /**
     * A list of Glue table definitions used by the transform.
     */
    public val inputRecordTables: List? = builder.inputRecordTables
    /**
     * The number of labels available for this transform.
     */
    public val labelCount: kotlin.Int = builder.labelCount
    /**
     * The date and time when the transform was last modified.
     */
    public val lastModifiedOn: aws.smithy.kotlin.runtime.time.Instant? = builder.lastModifiedOn
    /**
     * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the [Glue pricing page](https://aws.amazon.com/glue/pricing/).
     *
     * When the `WorkerType` field is set to a value other than `Standard`, the `MaxCapacity` field is set automatically and becomes read-only.
     */
    public val maxCapacity: kotlin.Double? = builder.maxCapacity
    /**
     * The maximum number of times to retry a task for this transform after a task run fails.
     */
    public val maxRetries: kotlin.Int? = builder.maxRetries
    /**
     * The unique name given to the transform when it was created.
     */
    public val name: kotlin.String? = builder.name
    /**
     * The number of workers of a defined `workerType` that are allocated when this task runs.
     */
    public val numberOfWorkers: kotlin.Int? = builder.numberOfWorkers
    /**
     * The configuration parameters that are specific to the algorithm used.
     */
    public val parameters: aws.sdk.kotlin.services.glue.model.TransformParameters? = builder.parameters
    /**
     * The name or Amazon Resource Name (ARN) of the IAM role with the required permissions.
     */
    public val role: kotlin.String? = builder.role
    /**
     * The `Map` object that represents the schema that this transform accepts. Has an upper bound of 100 columns.
     */
    public val schema: List? = builder.schema
    /**
     * The last known status of the transform (to indicate whether it can be used or not). One of "NOT_READY", "READY", or "DELETING".
     */
    public val status: aws.sdk.kotlin.services.glue.model.TransformStatusType? = builder.status
    /**
     * The timeout for a task run for this transform in minutes. This is the maximum time that a task run for this transform can consume resources before it is terminated and enters `TIMEOUT` status. The default is 2,880 minutes (48 hours).
     */
    public val timeout: kotlin.Int? = builder.timeout
    /**
     * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning transforms can access user data encrypted in Amazon S3 using KMS.
     */
    public val transformEncryption: aws.sdk.kotlin.services.glue.model.TransformEncryption? = builder.transformEncryption
    /**
     * The unique identifier of the transform, generated at the time that the transform was created.
     */
    public val transformId: kotlin.String? = builder.transformId
    /**
     * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X.
     * + For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker.
     * + For the `G.1X` worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per worker.
     * + For the `G.2X` worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per worker.
     */
    public val workerType: aws.sdk.kotlin.services.glue.model.WorkerType? = builder.workerType

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

    override fun toString(): kotlin.String = buildString {
        append("GetMlTransformResponse(")
        append("createdOn=$createdOn,")
        append("description=$description,")
        append("evaluationMetrics=$evaluationMetrics,")
        append("glueVersion=$glueVersion,")
        append("inputRecordTables=$inputRecordTables,")
        append("labelCount=$labelCount,")
        append("lastModifiedOn=$lastModifiedOn,")
        append("maxCapacity=$maxCapacity,")
        append("maxRetries=$maxRetries,")
        append("name=$name,")
        append("numberOfWorkers=$numberOfWorkers,")
        append("parameters=$parameters,")
        append("role=$role,")
        append("schema=$schema,")
        append("status=$status,")
        append("timeout=$timeout,")
        append("transformEncryption=$transformEncryption,")
        append("transformId=$transformId,")
        append("workerType=$workerType")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = createdOn?.hashCode() ?: 0
        result = 31 * result + (description?.hashCode() ?: 0)
        result = 31 * result + (evaluationMetrics?.hashCode() ?: 0)
        result = 31 * result + (glueVersion?.hashCode() ?: 0)
        result = 31 * result + (inputRecordTables?.hashCode() ?: 0)
        result = 31 * result + (labelCount)
        result = 31 * result + (lastModifiedOn?.hashCode() ?: 0)
        result = 31 * result + (maxCapacity?.hashCode() ?: 0)
        result = 31 * result + (maxRetries ?: 0)
        result = 31 * result + (name?.hashCode() ?: 0)
        result = 31 * result + (numberOfWorkers ?: 0)
        result = 31 * result + (parameters?.hashCode() ?: 0)
        result = 31 * result + (role?.hashCode() ?: 0)
        result = 31 * result + (schema?.hashCode() ?: 0)
        result = 31 * result + (status?.hashCode() ?: 0)
        result = 31 * result + (timeout ?: 0)
        result = 31 * result + (transformEncryption?.hashCode() ?: 0)
        result = 31 * result + (transformId?.hashCode() ?: 0)
        result = 31 * result + (workerType?.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 GetMlTransformResponse

        if (createdOn != other.createdOn) return false
        if (description != other.description) return false
        if (evaluationMetrics != other.evaluationMetrics) return false
        if (glueVersion != other.glueVersion) return false
        if (inputRecordTables != other.inputRecordTables) return false
        if (labelCount != other.labelCount) return false
        if (lastModifiedOn != other.lastModifiedOn) return false
        if (maxCapacity != other.maxCapacity) return false
        if (maxRetries != other.maxRetries) return false
        if (name != other.name) return false
        if (numberOfWorkers != other.numberOfWorkers) return false
        if (parameters != other.parameters) return false
        if (role != other.role) return false
        if (schema != other.schema) return false
        if (status != other.status) return false
        if (timeout != other.timeout) return false
        if (transformEncryption != other.transformEncryption) return false
        if (transformId != other.transformId) return false
        if (workerType != other.workerType) return false

        return true
    }

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

    public class Builder {
        /**
         * The date and time when the transform was created.
         */
        public var createdOn: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * A description of the transform.
         */
        public var description: kotlin.String? = null
        /**
         * The latest evaluation metrics.
         */
        public var evaluationMetrics: aws.sdk.kotlin.services.glue.model.EvaluationMetrics? = null
        /**
         * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more information, see [Glue Versions](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html#release-notes-versions) in the developer guide.
         */
        public var glueVersion: kotlin.String? = null
        /**
         * A list of Glue table definitions used by the transform.
         */
        public var inputRecordTables: List? = null
        /**
         * The number of labels available for this transform.
         */
        public var labelCount: kotlin.Int = 0
        /**
         * The date and time when the transform was last modified.
         */
        public var lastModifiedOn: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the [Glue pricing page](https://aws.amazon.com/glue/pricing/).
         *
         * When the `WorkerType` field is set to a value other than `Standard`, the `MaxCapacity` field is set automatically and becomes read-only.
         */
        public var maxCapacity: kotlin.Double? = null
        /**
         * The maximum number of times to retry a task for this transform after a task run fails.
         */
        public var maxRetries: kotlin.Int? = null
        /**
         * The unique name given to the transform when it was created.
         */
        public var name: kotlin.String? = null
        /**
         * The number of workers of a defined `workerType` that are allocated when this task runs.
         */
        public var numberOfWorkers: kotlin.Int? = null
        /**
         * The configuration parameters that are specific to the algorithm used.
         */
        public var parameters: aws.sdk.kotlin.services.glue.model.TransformParameters? = null
        /**
         * The name or Amazon Resource Name (ARN) of the IAM role with the required permissions.
         */
        public var role: kotlin.String? = null
        /**
         * The `Map` object that represents the schema that this transform accepts. Has an upper bound of 100 columns.
         */
        public var schema: List? = null
        /**
         * The last known status of the transform (to indicate whether it can be used or not). One of "NOT_READY", "READY", or "DELETING".
         */
        public var status: aws.sdk.kotlin.services.glue.model.TransformStatusType? = null
        /**
         * The timeout for a task run for this transform in minutes. This is the maximum time that a task run for this transform can consume resources before it is terminated and enters `TIMEOUT` status. The default is 2,880 minutes (48 hours).
         */
        public var timeout: kotlin.Int? = null
        /**
         * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning transforms can access user data encrypted in Amazon S3 using KMS.
         */
        public var transformEncryption: aws.sdk.kotlin.services.glue.model.TransformEncryption? = null
        /**
         * The unique identifier of the transform, generated at the time that the transform was created.
         */
        public var transformId: kotlin.String? = null
        /**
         * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X.
         * + For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker.
         * + For the `G.1X` worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per worker.
         * + For the `G.2X` worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per worker.
         */
        public var workerType: aws.sdk.kotlin.services.glue.model.WorkerType? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.glue.model.GetMlTransformResponse) : this() {
            this.createdOn = x.createdOn
            this.description = x.description
            this.evaluationMetrics = x.evaluationMetrics
            this.glueVersion = x.glueVersion
            this.inputRecordTables = x.inputRecordTables
            this.labelCount = x.labelCount
            this.lastModifiedOn = x.lastModifiedOn
            this.maxCapacity = x.maxCapacity
            this.maxRetries = x.maxRetries
            this.name = x.name
            this.numberOfWorkers = x.numberOfWorkers
            this.parameters = x.parameters
            this.role = x.role
            this.schema = x.schema
            this.status = x.status
            this.timeout = x.timeout
            this.transformEncryption = x.transformEncryption
            this.transformId = x.transformId
            this.workerType = x.workerType
        }

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

        /**
         * construct an [aws.sdk.kotlin.services.glue.model.EvaluationMetrics] inside the given [block]
         */
        public fun evaluationMetrics(block: aws.sdk.kotlin.services.glue.model.EvaluationMetrics.Builder.() -> kotlin.Unit) {
            this.evaluationMetrics = aws.sdk.kotlin.services.glue.model.EvaluationMetrics.invoke(block)
        }

        /**
         * construct an [aws.sdk.kotlin.services.glue.model.TransformParameters] inside the given [block]
         */
        public fun parameters(block: aws.sdk.kotlin.services.glue.model.TransformParameters.Builder.() -> kotlin.Unit) {
            this.parameters = aws.sdk.kotlin.services.glue.model.TransformParameters.invoke(block)
        }

        /**
         * construct an [aws.sdk.kotlin.services.glue.model.TransformEncryption] inside the given [block]
         */
        public fun transformEncryption(block: aws.sdk.kotlin.services.glue.model.TransformEncryption.Builder.() -> kotlin.Unit) {
            this.transformEncryption = aws.sdk.kotlin.services.glue.model.TransformEncryption.invoke(block)
        }

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy