
commonMain.aws.sdk.kotlin.services.qbusiness.model.UpdateIndexRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.qbusiness.model
public class UpdateIndexRequest private constructor(builder: Builder) {
/**
* The identifier of the Amazon Q Business application connected to the index.
*/
public val applicationId: kotlin.String? = builder.applicationId
/**
* The storage capacity units you want to provision for your Amazon Q Business index. You can add and remove capacity to fit your usage needs.
*/
public val capacityConfiguration: aws.sdk.kotlin.services.qbusiness.model.IndexCapacityConfiguration? = builder.capacityConfiguration
/**
* The description of the Amazon Q Business index.
*/
public val description: kotlin.String? = builder.description
/**
* The name of the Amazon Q Business index.
*/
public val displayName: kotlin.String? = builder.displayName
/**
* Configuration information for document metadata or fields. Document metadata are fields or attributes associated with your documents. For example, the company department name associated with each document. For more information, see [Understanding document attributes](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes).
*/
public val documentAttributeConfigurations: List? = builder.documentAttributeConfigurations
/**
* The identifier of the Amazon Q Business index.
*/
public val indexId: kotlin.String? = builder.indexId
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.qbusiness.model.UpdateIndexRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("UpdateIndexRequest(")
append("applicationId=$applicationId,")
append("capacityConfiguration=$capacityConfiguration,")
append("description=$description,")
append("displayName=$displayName,")
append("documentAttributeConfigurations=$documentAttributeConfigurations,")
append("indexId=$indexId")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = applicationId?.hashCode() ?: 0
result = 31 * result + (capacityConfiguration?.hashCode() ?: 0)
result = 31 * result + (description?.hashCode() ?: 0)
result = 31 * result + (displayName?.hashCode() ?: 0)
result = 31 * result + (documentAttributeConfigurations?.hashCode() ?: 0)
result = 31 * result + (indexId?.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 UpdateIndexRequest
if (applicationId != other.applicationId) return false
if (capacityConfiguration != other.capacityConfiguration) return false
if (description != other.description) return false
if (displayName != other.displayName) return false
if (documentAttributeConfigurations != other.documentAttributeConfigurations) return false
if (indexId != other.indexId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.qbusiness.model.UpdateIndexRequest = Builder(this).apply(block).build()
public class Builder {
/**
* The identifier of the Amazon Q Business application connected to the index.
*/
public var applicationId: kotlin.String? = null
/**
* The storage capacity units you want to provision for your Amazon Q Business index. You can add and remove capacity to fit your usage needs.
*/
public var capacityConfiguration: aws.sdk.kotlin.services.qbusiness.model.IndexCapacityConfiguration? = null
/**
* The description of the Amazon Q Business index.
*/
public var description: kotlin.String? = null
/**
* The name of the Amazon Q Business index.
*/
public var displayName: kotlin.String? = null
/**
* Configuration information for document metadata or fields. Document metadata are fields or attributes associated with your documents. For example, the company department name associated with each document. For more information, see [Understanding document attributes](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes-types.html#doc-attributes).
*/
public var documentAttributeConfigurations: List? = null
/**
* The identifier of the Amazon Q Business index.
*/
public var indexId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.qbusiness.model.UpdateIndexRequest) : this() {
this.applicationId = x.applicationId
this.capacityConfiguration = x.capacityConfiguration
this.description = x.description
this.displayName = x.displayName
this.documentAttributeConfigurations = x.documentAttributeConfigurations
this.indexId = x.indexId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.qbusiness.model.UpdateIndexRequest = UpdateIndexRequest(this)
/**
* construct an [aws.sdk.kotlin.services.qbusiness.model.IndexCapacityConfiguration] inside the given [block]
*/
public fun capacityConfiguration(block: aws.sdk.kotlin.services.qbusiness.model.IndexCapacityConfiguration.Builder.() -> kotlin.Unit) {
this.capacityConfiguration = aws.sdk.kotlin.services.qbusiness.model.IndexCapacityConfiguration.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy