
commonMain.aws.sdk.kotlin.services.qbusiness.model.UpdateChatControlsConfigurationRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.qbusiness.model
public class UpdateChatControlsConfigurationRequest private constructor(builder: Builder) {
/**
* The identifier of the application for which the chat controls are configured.
*/
public val applicationId: kotlin.String? = builder.applicationId
/**
* The phrases blocked from chat by your chat control configuration.
*/
public val blockedPhrasesConfigurationUpdate: aws.sdk.kotlin.services.qbusiness.model.BlockedPhrasesConfigurationUpdate? = builder.blockedPhrasesConfigurationUpdate
/**
* A token that you provide to identify the request to update a Amazon Q Business application chat configuration.
*/
public val clientToken: kotlin.String? = builder.clientToken
/**
* The configuration details for `CREATOR_MODE`.
*/
public val creatorModeConfiguration: aws.sdk.kotlin.services.qbusiness.model.CreatorModeConfiguration? = builder.creatorModeConfiguration
/**
* The response scope configured for your application. This determines whether your application uses its retrieval augmented generation (RAG) system to generate answers only from your enterprise data, or also uses the large language models (LLM) knowledge to respons to end user questions in chat.
*/
public val responseScope: aws.sdk.kotlin.services.qbusiness.model.ResponseScope? = builder.responseScope
/**
* The configured topic specific chat controls you want to update.
*/
public val topicConfigurationsToCreateOrUpdate: List? = builder.topicConfigurationsToCreateOrUpdate
/**
* The configured topic specific chat controls you want to delete.
*/
public val topicConfigurationsToDelete: List? = builder.topicConfigurationsToDelete
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.qbusiness.model.UpdateChatControlsConfigurationRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("UpdateChatControlsConfigurationRequest(")
append("applicationId=$applicationId,")
append("blockedPhrasesConfigurationUpdate=$blockedPhrasesConfigurationUpdate,")
append("clientToken=$clientToken,")
append("creatorModeConfiguration=$creatorModeConfiguration,")
append("responseScope=$responseScope,")
append("topicConfigurationsToCreateOrUpdate=$topicConfigurationsToCreateOrUpdate,")
append("topicConfigurationsToDelete=$topicConfigurationsToDelete")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = applicationId?.hashCode() ?: 0
result = 31 * result + (blockedPhrasesConfigurationUpdate?.hashCode() ?: 0)
result = 31 * result + (clientToken?.hashCode() ?: 0)
result = 31 * result + (creatorModeConfiguration?.hashCode() ?: 0)
result = 31 * result + (responseScope?.hashCode() ?: 0)
result = 31 * result + (topicConfigurationsToCreateOrUpdate?.hashCode() ?: 0)
result = 31 * result + (topicConfigurationsToDelete?.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 UpdateChatControlsConfigurationRequest
if (applicationId != other.applicationId) return false
if (blockedPhrasesConfigurationUpdate != other.blockedPhrasesConfigurationUpdate) return false
if (clientToken != other.clientToken) return false
if (creatorModeConfiguration != other.creatorModeConfiguration) return false
if (responseScope != other.responseScope) return false
if (topicConfigurationsToCreateOrUpdate != other.topicConfigurationsToCreateOrUpdate) return false
if (topicConfigurationsToDelete != other.topicConfigurationsToDelete) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.qbusiness.model.UpdateChatControlsConfigurationRequest = Builder(this).apply(block).build()
public class Builder {
/**
* The identifier of the application for which the chat controls are configured.
*/
public var applicationId: kotlin.String? = null
/**
* The phrases blocked from chat by your chat control configuration.
*/
public var blockedPhrasesConfigurationUpdate: aws.sdk.kotlin.services.qbusiness.model.BlockedPhrasesConfigurationUpdate? = null
/**
* A token that you provide to identify the request to update a Amazon Q Business application chat configuration.
*/
public var clientToken: kotlin.String? = null
/**
* The configuration details for `CREATOR_MODE`.
*/
public var creatorModeConfiguration: aws.sdk.kotlin.services.qbusiness.model.CreatorModeConfiguration? = null
/**
* The response scope configured for your application. This determines whether your application uses its retrieval augmented generation (RAG) system to generate answers only from your enterprise data, or also uses the large language models (LLM) knowledge to respons to end user questions in chat.
*/
public var responseScope: aws.sdk.kotlin.services.qbusiness.model.ResponseScope? = null
/**
* The configured topic specific chat controls you want to update.
*/
public var topicConfigurationsToCreateOrUpdate: List? = null
/**
* The configured topic specific chat controls you want to delete.
*/
public var topicConfigurationsToDelete: List? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.qbusiness.model.UpdateChatControlsConfigurationRequest) : this() {
this.applicationId = x.applicationId
this.blockedPhrasesConfigurationUpdate = x.blockedPhrasesConfigurationUpdate
this.clientToken = x.clientToken
this.creatorModeConfiguration = x.creatorModeConfiguration
this.responseScope = x.responseScope
this.topicConfigurationsToCreateOrUpdate = x.topicConfigurationsToCreateOrUpdate
this.topicConfigurationsToDelete = x.topicConfigurationsToDelete
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.qbusiness.model.UpdateChatControlsConfigurationRequest = UpdateChatControlsConfigurationRequest(this)
/**
* construct an [aws.sdk.kotlin.services.qbusiness.model.BlockedPhrasesConfigurationUpdate] inside the given [block]
*/
public fun blockedPhrasesConfigurationUpdate(block: aws.sdk.kotlin.services.qbusiness.model.BlockedPhrasesConfigurationUpdate.Builder.() -> kotlin.Unit) {
this.blockedPhrasesConfigurationUpdate = aws.sdk.kotlin.services.qbusiness.model.BlockedPhrasesConfigurationUpdate.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.qbusiness.model.CreatorModeConfiguration] inside the given [block]
*/
public fun creatorModeConfiguration(block: aws.sdk.kotlin.services.qbusiness.model.CreatorModeConfiguration.Builder.() -> kotlin.Unit) {
this.creatorModeConfiguration = aws.sdk.kotlin.services.qbusiness.model.CreatorModeConfiguration.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy