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

commonMain.aws.sdk.kotlin.services.comprehendmedical.model.ComprehendMedicalAsyncJobProperties.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.comprehendmedical.model

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

/**
 * Provides information about a detection job.
 */
public class ComprehendMedicalAsyncJobProperties private constructor(builder: Builder) {
    /**
     * The Amazon Resource Name (ARN) that gives Amazon Comprehend Medical read access to your input data.
     */
    public val dataAccessRoleArn: kotlin.String? = builder.dataAccessRoleArn
    /**
     * The time that the detection job completed.
     */
    public val endTime: aws.smithy.kotlin.runtime.time.Instant? = builder.endTime
    /**
     * The date and time that job metadata is deleted from the server. Output files in your S3 bucket will not be deleted. After the metadata is deleted, the job will no longer appear in the results of the `ListEntitiesDetectionV2Job` or the `ListPHIDetectionJobs` operation.
     */
    public val expirationTime: aws.smithy.kotlin.runtime.time.Instant? = builder.expirationTime
    /**
     * The input data configuration that you supplied when you created the detection job.
     */
    public val inputDataConfig: aws.sdk.kotlin.services.comprehendmedical.model.InputDataConfig? = builder.inputDataConfig
    /**
     * The identifier assigned to the detection job.
     */
    public val jobId: kotlin.String? = builder.jobId
    /**
     * The name that you assigned to the detection job.
     */
    public val jobName: kotlin.String? = builder.jobName
    /**
     * The current status of the detection job. If the status is `FAILED`, the `Message` field shows the reason for the failure.
     */
    public val jobStatus: aws.sdk.kotlin.services.comprehendmedical.model.JobStatus? = builder.jobStatus
    /**
     * The AWS Key Management Service key, if any, used to encrypt the output files.
     */
    public val kmsKey: kotlin.String? = builder.kmsKey
    /**
     * The language code of the input documents.
     */
    public val languageCode: aws.sdk.kotlin.services.comprehendmedical.model.LanguageCode? = builder.languageCode
    /**
     * The path to the file that describes the results of a batch job.
     */
    public val manifestFilePath: kotlin.String? = builder.manifestFilePath
    /**
     * A description of the status of a job.
     */
    public val message: kotlin.String? = builder.message
    /**
     * The version of the model used to analyze the documents. The version number looks like X.X.X. You can use this information to track the model used for a particular batch of documents.
     */
    public val modelVersion: kotlin.String? = builder.modelVersion
    /**
     * The output data configuration that you supplied when you created the detection job.
     */
    public val outputDataConfig: aws.sdk.kotlin.services.comprehendmedical.model.OutputDataConfig? = builder.outputDataConfig
    /**
     * The time that the detection job was submitted for processing.
     */
    public val submitTime: aws.smithy.kotlin.runtime.time.Instant? = builder.submitTime

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

    override fun toString(): kotlin.String = buildString {
        append("ComprehendMedicalAsyncJobProperties(")
        append("dataAccessRoleArn=$dataAccessRoleArn,")
        append("endTime=$endTime,")
        append("expirationTime=$expirationTime,")
        append("inputDataConfig=$inputDataConfig,")
        append("jobId=$jobId,")
        append("jobName=$jobName,")
        append("jobStatus=$jobStatus,")
        append("kmsKey=$kmsKey,")
        append("languageCode=$languageCode,")
        append("manifestFilePath=$manifestFilePath,")
        append("message=$message,")
        append("modelVersion=$modelVersion,")
        append("outputDataConfig=$outputDataConfig,")
        append("submitTime=$submitTime")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = dataAccessRoleArn?.hashCode() ?: 0
        result = 31 * result + (endTime?.hashCode() ?: 0)
        result = 31 * result + (expirationTime?.hashCode() ?: 0)
        result = 31 * result + (inputDataConfig?.hashCode() ?: 0)
        result = 31 * result + (jobId?.hashCode() ?: 0)
        result = 31 * result + (jobName?.hashCode() ?: 0)
        result = 31 * result + (jobStatus?.hashCode() ?: 0)
        result = 31 * result + (kmsKey?.hashCode() ?: 0)
        result = 31 * result + (languageCode?.hashCode() ?: 0)
        result = 31 * result + (manifestFilePath?.hashCode() ?: 0)
        result = 31 * result + (message?.hashCode() ?: 0)
        result = 31 * result + (modelVersion?.hashCode() ?: 0)
        result = 31 * result + (outputDataConfig?.hashCode() ?: 0)
        result = 31 * result + (submitTime?.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 ComprehendMedicalAsyncJobProperties

        if (dataAccessRoleArn != other.dataAccessRoleArn) return false
        if (endTime != other.endTime) return false
        if (expirationTime != other.expirationTime) return false
        if (inputDataConfig != other.inputDataConfig) return false
        if (jobId != other.jobId) return false
        if (jobName != other.jobName) return false
        if (jobStatus != other.jobStatus) return false
        if (kmsKey != other.kmsKey) return false
        if (languageCode != other.languageCode) return false
        if (manifestFilePath != other.manifestFilePath) return false
        if (message != other.message) return false
        if (modelVersion != other.modelVersion) return false
        if (outputDataConfig != other.outputDataConfig) return false
        if (submitTime != other.submitTime) return false

        return true
    }

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

    public class Builder {
        /**
         * The Amazon Resource Name (ARN) that gives Amazon Comprehend Medical read access to your input data.
         */
        public var dataAccessRoleArn: kotlin.String? = null
        /**
         * The time that the detection job completed.
         */
        public var endTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The date and time that job metadata is deleted from the server. Output files in your S3 bucket will not be deleted. After the metadata is deleted, the job will no longer appear in the results of the `ListEntitiesDetectionV2Job` or the `ListPHIDetectionJobs` operation.
         */
        public var expirationTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The input data configuration that you supplied when you created the detection job.
         */
        public var inputDataConfig: aws.sdk.kotlin.services.comprehendmedical.model.InputDataConfig? = null
        /**
         * The identifier assigned to the detection job.
         */
        public var jobId: kotlin.String? = null
        /**
         * The name that you assigned to the detection job.
         */
        public var jobName: kotlin.String? = null
        /**
         * The current status of the detection job. If the status is `FAILED`, the `Message` field shows the reason for the failure.
         */
        public var jobStatus: aws.sdk.kotlin.services.comprehendmedical.model.JobStatus? = null
        /**
         * The AWS Key Management Service key, if any, used to encrypt the output files.
         */
        public var kmsKey: kotlin.String? = null
        /**
         * The language code of the input documents.
         */
        public var languageCode: aws.sdk.kotlin.services.comprehendmedical.model.LanguageCode? = null
        /**
         * The path to the file that describes the results of a batch job.
         */
        public var manifestFilePath: kotlin.String? = null
        /**
         * A description of the status of a job.
         */
        public var message: kotlin.String? = null
        /**
         * The version of the model used to analyze the documents. The version number looks like X.X.X. You can use this information to track the model used for a particular batch of documents.
         */
        public var modelVersion: kotlin.String? = null
        /**
         * The output data configuration that you supplied when you created the detection job.
         */
        public var outputDataConfig: aws.sdk.kotlin.services.comprehendmedical.model.OutputDataConfig? = null
        /**
         * The time that the detection job was submitted for processing.
         */
        public var submitTime: aws.smithy.kotlin.runtime.time.Instant? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.comprehendmedical.model.ComprehendMedicalAsyncJobProperties) : this() {
            this.dataAccessRoleArn = x.dataAccessRoleArn
            this.endTime = x.endTime
            this.expirationTime = x.expirationTime
            this.inputDataConfig = x.inputDataConfig
            this.jobId = x.jobId
            this.jobName = x.jobName
            this.jobStatus = x.jobStatus
            this.kmsKey = x.kmsKey
            this.languageCode = x.languageCode
            this.manifestFilePath = x.manifestFilePath
            this.message = x.message
            this.modelVersion = x.modelVersion
            this.outputDataConfig = x.outputDataConfig
            this.submitTime = x.submitTime
        }

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

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy