
commonMain.aws.sdk.kotlin.services.qbusiness.model.CreatePluginRequest.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.qbusiness.model
public class CreatePluginRequest private constructor(builder: Builder) {
/**
* The identifier of the application that will contain the plugin.
*/
public val applicationId: kotlin.String? = builder.applicationId
/**
* Authentication configuration information for an Amazon Q Business plugin.
*/
public val authConfiguration: aws.sdk.kotlin.services.qbusiness.model.PluginAuthConfiguration? = builder.authConfiguration
/**
* A token that you provide to identify the request to create your Amazon Q Business plugin.
*/
public val clientToken: kotlin.String? = builder.clientToken
/**
* A the name for your plugin.
*/
public val displayName: kotlin.String? = builder.displayName
/**
* The source URL used for plugin configuration.
*/
public val serverUrl: kotlin.String? = builder.serverUrl
/**
* A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.
*/
public val tags: List? = builder.tags
/**
* The type of plugin you want to create.
*/
public val type: aws.sdk.kotlin.services.qbusiness.model.PluginType? = builder.type
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.qbusiness.model.CreatePluginRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("CreatePluginRequest(")
append("applicationId=$applicationId,")
append("authConfiguration=$authConfiguration,")
append("clientToken=$clientToken,")
append("displayName=$displayName,")
append("serverUrl=$serverUrl,")
append("tags=$tags,")
append("type=$type")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = applicationId?.hashCode() ?: 0
result = 31 * result + (authConfiguration?.hashCode() ?: 0)
result = 31 * result + (clientToken?.hashCode() ?: 0)
result = 31 * result + (displayName?.hashCode() ?: 0)
result = 31 * result + (serverUrl?.hashCode() ?: 0)
result = 31 * result + (tags?.hashCode() ?: 0)
result = 31 * result + (type?.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 CreatePluginRequest
if (applicationId != other.applicationId) return false
if (authConfiguration != other.authConfiguration) return false
if (clientToken != other.clientToken) return false
if (displayName != other.displayName) return false
if (serverUrl != other.serverUrl) return false
if (tags != other.tags) return false
if (type != other.type) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.qbusiness.model.CreatePluginRequest = Builder(this).apply(block).build()
public class Builder {
/**
* The identifier of the application that will contain the plugin.
*/
public var applicationId: kotlin.String? = null
/**
* Authentication configuration information for an Amazon Q Business plugin.
*/
public var authConfiguration: aws.sdk.kotlin.services.qbusiness.model.PluginAuthConfiguration? = null
/**
* A token that you provide to identify the request to create your Amazon Q Business plugin.
*/
public var clientToken: kotlin.String? = null
/**
* A the name for your plugin.
*/
public var displayName: kotlin.String? = null
/**
* The source URL used for plugin configuration.
*/
public var serverUrl: kotlin.String? = null
/**
* A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.
*/
public var tags: List? = null
/**
* The type of plugin you want to create.
*/
public var type: aws.sdk.kotlin.services.qbusiness.model.PluginType? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.qbusiness.model.CreatePluginRequest) : this() {
this.applicationId = x.applicationId
this.authConfiguration = x.authConfiguration
this.clientToken = x.clientToken
this.displayName = x.displayName
this.serverUrl = x.serverUrl
this.tags = x.tags
this.type = x.type
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.qbusiness.model.CreatePluginRequest = CreatePluginRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy