commonMain.aws.sdk.kotlin.services.dataexchange.model.UpdateAssetRequest.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dataexchange-jvm Show documentation
Show all versions of dataexchange-jvm Show documentation
The AWS Kotlin client for DataExchange
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.dataexchange.model
import aws.smithy.kotlin.runtime.SdkDsl
public class UpdateAssetRequest private constructor(builder: Builder) {
/**
* The unique identifier for an asset.
*/
public val assetId: kotlin.String = requireNotNull(builder.assetId) { "A non-null value must be provided for assetId" }
/**
* The unique identifier for a data set.
*/
public val dataSetId: kotlin.String = requireNotNull(builder.dataSetId) { "A non-null value must be provided for dataSetId" }
/**
* The name of the asset. When importing from Amazon S3, the Amazon S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target Amazon S3 object key. When importing from Amazon API Gateway API, the API name is used as the asset name. When importing from Amazon Redshift, the datashare name is used as the asset name. When importing from AWS Lake Formation, the static values of "Database(s) included in the LF-tag policy" or "Table(s) included in LF-tag policy" are used as the name.
*/
public val name: kotlin.String = requireNotNull(builder.name) { "A non-null value must be provided for name" }
/**
* The unique identifier for a revision.
*/
public val revisionId: kotlin.String = requireNotNull(builder.revisionId) { "A non-null value must be provided for revisionId" }
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.dataexchange.model.UpdateAssetRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("UpdateAssetRequest(")
append("assetId=$assetId,")
append("dataSetId=$dataSetId,")
append("name=$name,")
append("revisionId=$revisionId")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = assetId.hashCode()
result = 31 * result + (dataSetId.hashCode())
result = 31 * result + (name.hashCode())
result = 31 * result + (revisionId.hashCode())
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 UpdateAssetRequest
if (assetId != other.assetId) return false
if (dataSetId != other.dataSetId) return false
if (name != other.name) return false
if (revisionId != other.revisionId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.dataexchange.model.UpdateAssetRequest = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The unique identifier for an asset.
*/
public var assetId: kotlin.String? = null
/**
* The unique identifier for a data set.
*/
public var dataSetId: kotlin.String? = null
/**
* The name of the asset. When importing from Amazon S3, the Amazon S3 object key is used as the asset name. When exporting to Amazon S3, the asset name is used as default target Amazon S3 object key. When importing from Amazon API Gateway API, the API name is used as the asset name. When importing from Amazon Redshift, the datashare name is used as the asset name. When importing from AWS Lake Formation, the static values of "Database(s) included in the LF-tag policy" or "Table(s) included in LF-tag policy" are used as the name.
*/
public var name: kotlin.String? = null
/**
* The unique identifier for a revision.
*/
public var revisionId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.dataexchange.model.UpdateAssetRequest) : this() {
this.assetId = x.assetId
this.dataSetId = x.dataSetId
this.name = x.name
this.revisionId = x.revisionId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.dataexchange.model.UpdateAssetRequest = UpdateAssetRequest(this)
internal fun correctErrors(): Builder {
if (assetId == null) assetId = ""
if (dataSetId == null) dataSetId = ""
if (name == null) name = ""
if (revisionId == null) revisionId = ""
return this
}
}
}