commonMain.aws.sdk.kotlin.services.redshift.model.ModifyRedshiftIdcApplicationRequest.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of redshift-jvm Show documentation
Show all versions of redshift-jvm Show documentation
The AWS SDK for Kotlin client for Redshift
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.redshift.model
import aws.smithy.kotlin.runtime.SdkDsl
public class ModifyRedshiftIdcApplicationRequest private constructor(builder: Builder) {
/**
* The authorized token issuer list for the Amazon Redshift IAM Identity Center application to change.
*/
public val authorizedTokenIssuerList: List? = builder.authorizedTokenIssuerList
/**
* The IAM role ARN associated with the Amazon Redshift IAM Identity Center application to change. It has the required permissions to be assumed and invoke the IDC Identity Center API.
*/
public val iamRoleArn: kotlin.String? = builder.iamRoleArn
/**
* The display name for the Amazon Redshift IAM Identity Center application to change. It appears on the console.
*/
public val idcDisplayName: kotlin.String? = builder.idcDisplayName
/**
* The namespace for the Amazon Redshift IAM Identity Center application to change. It determines which managed application verifies the connection token.
*/
public val identityNamespace: kotlin.String? = builder.identityNamespace
/**
* The ARN for the Redshift application that integrates with IAM Identity Center.
*/
public val redshiftIdcApplicationArn: kotlin.String? = builder.redshiftIdcApplicationArn
/**
* A collection of service integrations associated with the application.
*/
public val serviceIntegrations: List? = builder.serviceIntegrations
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.redshift.model.ModifyRedshiftIdcApplicationRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("ModifyRedshiftIdcApplicationRequest(")
append("authorizedTokenIssuerList=$authorizedTokenIssuerList,")
append("iamRoleArn=$iamRoleArn,")
append("idcDisplayName=$idcDisplayName,")
append("identityNamespace=$identityNamespace,")
append("redshiftIdcApplicationArn=$redshiftIdcApplicationArn,")
append("serviceIntegrations=$serviceIntegrations")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = authorizedTokenIssuerList?.hashCode() ?: 0
result = 31 * result + (iamRoleArn?.hashCode() ?: 0)
result = 31 * result + (idcDisplayName?.hashCode() ?: 0)
result = 31 * result + (identityNamespace?.hashCode() ?: 0)
result = 31 * result + (redshiftIdcApplicationArn?.hashCode() ?: 0)
result = 31 * result + (serviceIntegrations?.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 ModifyRedshiftIdcApplicationRequest
if (authorizedTokenIssuerList != other.authorizedTokenIssuerList) return false
if (iamRoleArn != other.iamRoleArn) return false
if (idcDisplayName != other.idcDisplayName) return false
if (identityNamespace != other.identityNamespace) return false
if (redshiftIdcApplicationArn != other.redshiftIdcApplicationArn) return false
if (serviceIntegrations != other.serviceIntegrations) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.redshift.model.ModifyRedshiftIdcApplicationRequest = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The authorized token issuer list for the Amazon Redshift IAM Identity Center application to change.
*/
public var authorizedTokenIssuerList: List? = null
/**
* The IAM role ARN associated with the Amazon Redshift IAM Identity Center application to change. It has the required permissions to be assumed and invoke the IDC Identity Center API.
*/
public var iamRoleArn: kotlin.String? = null
/**
* The display name for the Amazon Redshift IAM Identity Center application to change. It appears on the console.
*/
public var idcDisplayName: kotlin.String? = null
/**
* The namespace for the Amazon Redshift IAM Identity Center application to change. It determines which managed application verifies the connection token.
*/
public var identityNamespace: kotlin.String? = null
/**
* The ARN for the Redshift application that integrates with IAM Identity Center.
*/
public var redshiftIdcApplicationArn: kotlin.String? = null
/**
* A collection of service integrations associated with the application.
*/
public var serviceIntegrations: List? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.redshift.model.ModifyRedshiftIdcApplicationRequest) : this() {
this.authorizedTokenIssuerList = x.authorizedTokenIssuerList
this.iamRoleArn = x.iamRoleArn
this.idcDisplayName = x.idcDisplayName
this.identityNamespace = x.identityNamespace
this.redshiftIdcApplicationArn = x.redshiftIdcApplicationArn
this.serviceIntegrations = x.serviceIntegrations
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.redshift.model.ModifyRedshiftIdcApplicationRequest = ModifyRedshiftIdcApplicationRequest(this)
internal fun correctErrors(): Builder {
return this
}
}
}