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

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

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

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



public class InferSnomedctResponse private constructor(builder: Builder) {
    /**
     * The number of characters in the input request documentation.
     */
    public val characters: aws.sdk.kotlin.services.comprehendmedical.model.Characters? = builder.characters
    /**
     * The collection of medical concept entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in the detection and analysis. Attributes and traits of the entity are also returned.
     */
    public val entities: List = requireNotNull(builder.entities) { "A non-null value must be provided for entities" }
    /**
     * The version of the model used to analyze the documents, in the format n.n.n You can use this information to track the model used for a particular batch of documents.
     */
    public val modelVersion: kotlin.String? = builder.modelVersion
    /**
     * If the result of the request is truncated, the pagination token can be used to fetch the next page of entities.
     */
    public val paginationToken: kotlin.String? = builder.paginationToken
    /**
     * The details of the SNOMED-CT revision, including the edition, language, and version date.
     */
    public val snomedctDetails: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctDetails? = builder.snomedctDetails

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

    override fun toString(): kotlin.String = buildString {
        append("InferSnomedctResponse(")
        append("characters=$characters,")
        append("entities=$entities,")
        append("modelVersion=$modelVersion,")
        append("paginationToken=$paginationToken,")
        append("snomedctDetails=$snomedctDetails")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = characters?.hashCode() ?: 0
        result = 31 * result + (entities.hashCode())
        result = 31 * result + (modelVersion?.hashCode() ?: 0)
        result = 31 * result + (paginationToken?.hashCode() ?: 0)
        result = 31 * result + (snomedctDetails?.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 InferSnomedctResponse

        if (characters != other.characters) return false
        if (entities != other.entities) return false
        if (modelVersion != other.modelVersion) return false
        if (paginationToken != other.paginationToken) return false
        if (snomedctDetails != other.snomedctDetails) return false

        return true
    }

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

    public class Builder {
        /**
         * The number of characters in the input request documentation.
         */
        public var characters: aws.sdk.kotlin.services.comprehendmedical.model.Characters? = null
        /**
         * The collection of medical concept entities extracted from the input text and their associated information. For each entity, the response provides the entity text, the entity category, where the entity text begins and ends, and the level of confidence that Amazon Comprehend Medical has in the detection and analysis. Attributes and traits of the entity are also returned.
         */
        public var entities: List? = null
        /**
         * The version of the model used to analyze the documents, in the format n.n.n You can use this information to track the model used for a particular batch of documents.
         */
        public var modelVersion: kotlin.String? = null
        /**
         * If the result of the request is truncated, the pagination token can be used to fetch the next page of entities.
         */
        public var paginationToken: kotlin.String? = null
        /**
         * The details of the SNOMED-CT revision, including the edition, language, and version date.
         */
        public var snomedctDetails: aws.sdk.kotlin.services.comprehendmedical.model.SnomedctDetails? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.comprehendmedical.model.InferSnomedctResponse) : this() {
            this.characters = x.characters
            this.entities = x.entities
            this.modelVersion = x.modelVersion
            this.paginationToken = x.paginationToken
            this.snomedctDetails = x.snomedctDetails
        }

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

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

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

        internal fun correctErrors(): Builder {
            if (entities == null) entities = emptyList()
            return this
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy