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

aws.sdk.kotlin.services.lexmodelsv2.model.UpdateBotAliasResponse.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.lexmodelsv2.model

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

class UpdateBotAliasResponse private constructor(builder: Builder) {
    /**
     * The identifier of the updated bot alias.
     */
    val botAliasId: kotlin.String? = builder.botAliasId
    /**
     * The updated Lambda functions to use in each locale for the bot
     * alias.
     */
    val botAliasLocaleSettings: Map? = builder.botAliasLocaleSettings
    /**
     * The updated name of the bot alias.
     */
    val botAliasName: kotlin.String? = builder.botAliasName
    /**
     * The current status of the bot alias. When the status is
     * Available the alias is ready for use.
     */
    val botAliasStatus: aws.sdk.kotlin.services.lexmodelsv2.model.BotAliasStatus? = builder.botAliasStatus
    /**
     * The identifier of the bot with the updated alias.
     */
    val botId: kotlin.String? = builder.botId
    /**
     * The updated version of the bot that the alias points to.
     */
    val botVersion: kotlin.String? = builder.botVersion
    /**
     * The updated settings for storing conversation logs in Amazon CloudWatch Logs and
     * Amazon S3 buckets.
     */
    val conversationLogSettings: aws.sdk.kotlin.services.lexmodelsv2.model.ConversationLogSettings? = builder.conversationLogSettings
    /**
     * A timestamp of the date and time that the bot was created.
     */
    val creationDateTime: aws.smithy.kotlin.runtime.time.Instant? = builder.creationDateTime
    /**
     * The updated description of the bot alias.
     */
    val description: kotlin.String? = builder.description
    /**
     * A timestamp of the date and time that the bot was last
     * updated.
     */
    val lastUpdatedDateTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdatedDateTime
    /**
     * Determines whether Amazon Lex will use Amazon Comprehend to detect the sentiment of
     * user utterances.
     */
    val sentimentAnalysisSettings: aws.sdk.kotlin.services.lexmodelsv2.model.SentimentAnalysisSettings? = builder.sentimentAnalysisSettings

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

    override fun toString(): kotlin.String = buildString {
        append("UpdateBotAliasResponse(")
        append("botAliasId=$botAliasId,")
        append("botAliasLocaleSettings=$botAliasLocaleSettings,")
        append("botAliasName=$botAliasName,")
        append("botAliasStatus=$botAliasStatus,")
        append("botId=$botId,")
        append("botVersion=$botVersion,")
        append("conversationLogSettings=$conversationLogSettings,")
        append("creationDateTime=$creationDateTime,")
        append("description=$description,")
        append("lastUpdatedDateTime=$lastUpdatedDateTime,")
        append("sentimentAnalysisSettings=$sentimentAnalysisSettings)")
    }

    override fun hashCode(): kotlin.Int {
        var result = botAliasId?.hashCode() ?: 0
        result = 31 * result + (botAliasLocaleSettings?.hashCode() ?: 0)
        result = 31 * result + (botAliasName?.hashCode() ?: 0)
        result = 31 * result + (botAliasStatus?.hashCode() ?: 0)
        result = 31 * result + (botId?.hashCode() ?: 0)
        result = 31 * result + (botVersion?.hashCode() ?: 0)
        result = 31 * result + (conversationLogSettings?.hashCode() ?: 0)
        result = 31 * result + (creationDateTime?.hashCode() ?: 0)
        result = 31 * result + (description?.hashCode() ?: 0)
        result = 31 * result + (lastUpdatedDateTime?.hashCode() ?: 0)
        result = 31 * result + (sentimentAnalysisSettings?.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 UpdateBotAliasResponse

        if (botAliasId != other.botAliasId) return false
        if (botAliasLocaleSettings != other.botAliasLocaleSettings) return false
        if (botAliasName != other.botAliasName) return false
        if (botAliasStatus != other.botAliasStatus) return false
        if (botId != other.botId) return false
        if (botVersion != other.botVersion) return false
        if (conversationLogSettings != other.conversationLogSettings) return false
        if (creationDateTime != other.creationDateTime) return false
        if (description != other.description) return false
        if (lastUpdatedDateTime != other.lastUpdatedDateTime) return false
        if (sentimentAnalysisSettings != other.sentimentAnalysisSettings) return false

        return true
    }

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

    class Builder {
        /**
         * The identifier of the updated bot alias.
         */
        var botAliasId: kotlin.String? = null
        /**
         * The updated Lambda functions to use in each locale for the bot
         * alias.
         */
        var botAliasLocaleSettings: Map? = null
        /**
         * The updated name of the bot alias.
         */
        var botAliasName: kotlin.String? = null
        /**
         * The current status of the bot alias. When the status is
         * Available the alias is ready for use.
         */
        var botAliasStatus: aws.sdk.kotlin.services.lexmodelsv2.model.BotAliasStatus? = null
        /**
         * The identifier of the bot with the updated alias.
         */
        var botId: kotlin.String? = null
        /**
         * The updated version of the bot that the alias points to.
         */
        var botVersion: kotlin.String? = null
        /**
         * The updated settings for storing conversation logs in Amazon CloudWatch Logs and
         * Amazon S3 buckets.
         */
        var conversationLogSettings: aws.sdk.kotlin.services.lexmodelsv2.model.ConversationLogSettings? = null
        /**
         * A timestamp of the date and time that the bot was created.
         */
        var creationDateTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The updated description of the bot alias.
         */
        var description: kotlin.String? = null
        /**
         * A timestamp of the date and time that the bot was last
         * updated.
         */
        var lastUpdatedDateTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * Determines whether Amazon Lex will use Amazon Comprehend to detect the sentiment of
         * user utterances.
         */
        var sentimentAnalysisSettings: aws.sdk.kotlin.services.lexmodelsv2.model.SentimentAnalysisSettings? = null

        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.lexmodelsv2.model.UpdateBotAliasResponse) : this() {
            this.botAliasId = x.botAliasId
            this.botAliasLocaleSettings = x.botAliasLocaleSettings
            this.botAliasName = x.botAliasName
            this.botAliasStatus = x.botAliasStatus
            this.botId = x.botId
            this.botVersion = x.botVersion
            this.conversationLogSettings = x.conversationLogSettings
            this.creationDateTime = x.creationDateTime
            this.description = x.description
            this.lastUpdatedDateTime = x.lastUpdatedDateTime
            this.sentimentAnalysisSettings = x.sentimentAnalysisSettings
        }

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy