
aws.sdk.kotlin.services.lexmodelsv2.model.StartImportRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.lexmodelsv2.model
class StartImportRequest private constructor(builder: Builder) {
/**
* The password used to encrypt the zip archive that contains the
* resource definition. You should always encrypt the zip archive to
* protect it during transit between your site and Amazon Lex.
*/
val filePassword: kotlin.String? = builder.filePassword
/**
* The unique identifier for the import. It is included in the response
* from the CreateUploadUrl operation.
*/
val importId: kotlin.String? = builder.importId
/**
* The strategy to use when there is a name conflict between the
* imported resource and an existing resource. When the merge strategy is
* FailOnConflict existing resources are not overwritten
* and the import fails.
*/
val mergeStrategy: aws.sdk.kotlin.services.lexmodelsv2.model.MergeStrategy? = builder.mergeStrategy
/**
* Parameters for creating the bot, bot locale or custom
* vocabulary.
*/
val resourceSpecification: aws.sdk.kotlin.services.lexmodelsv2.model.ImportResourceSpecification? = builder.resourceSpecification
companion object {
operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.lexmodelsv2.model.StartImportRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("StartImportRequest(")
append("filePassword=*** Sensitive Data Redacted ***,")
append("importId=$importId,")
append("mergeStrategy=$mergeStrategy,")
append("resourceSpecification=$resourceSpecification)")
}
override fun hashCode(): kotlin.Int {
var result = filePassword?.hashCode() ?: 0
result = 31 * result + (importId?.hashCode() ?: 0)
result = 31 * result + (mergeStrategy?.hashCode() ?: 0)
result = 31 * result + (resourceSpecification?.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 StartImportRequest
if (filePassword != other.filePassword) return false
if (importId != other.importId) return false
if (mergeStrategy != other.mergeStrategy) return false
if (resourceSpecification != other.resourceSpecification) return false
return true
}
inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.lexmodelsv2.model.StartImportRequest = Builder(this).apply(block).build()
class Builder {
/**
* The password used to encrypt the zip archive that contains the
* resource definition. You should always encrypt the zip archive to
* protect it during transit between your site and Amazon Lex.
*/
var filePassword: kotlin.String? = null
/**
* The unique identifier for the import. It is included in the response
* from the CreateUploadUrl operation.
*/
var importId: kotlin.String? = null
/**
* The strategy to use when there is a name conflict between the
* imported resource and an existing resource. When the merge strategy is
* FailOnConflict existing resources are not overwritten
* and the import fails.
*/
var mergeStrategy: aws.sdk.kotlin.services.lexmodelsv2.model.MergeStrategy? = null
/**
* Parameters for creating the bot, bot locale or custom
* vocabulary.
*/
var resourceSpecification: aws.sdk.kotlin.services.lexmodelsv2.model.ImportResourceSpecification? = null
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.lexmodelsv2.model.StartImportRequest) : this() {
this.filePassword = x.filePassword
this.importId = x.importId
this.mergeStrategy = x.mergeStrategy
this.resourceSpecification = x.resourceSpecification
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.lexmodelsv2.model.StartImportRequest = StartImportRequest(this)
/**
* construct an [aws.sdk.kotlin.services.lexmodelsv2.model.ImportResourceSpecification] inside the given [block]
*/
fun resourceSpecification(block: aws.sdk.kotlin.services.lexmodelsv2.model.ImportResourceSpecification.Builder.() -> kotlin.Unit) {
this.resourceSpecification = aws.sdk.kotlin.services.lexmodelsv2.model.ImportResourceSpecification.invoke(block)
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy