All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.aws.sdk.kotlin.services.quicksight.model.AccountSettings.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.quicksight.model



/**
 * The Amazon QuickSight settings associated with your Amazon Web Services account.
 */
class AccountSettings private constructor(builder: Builder) {
    /**
     * The "account name" you provided for the Amazon QuickSight subscription in your Amazon Web Services account. You create this name when you sign up for Amazon QuickSight. It is unique in all of Amazon Web Services and it appears only when users sign in.
     */
    val accountName: kotlin.String? = builder.accountName
    /**
     * The default Amazon QuickSight namespace for your Amazon Web Services account.
     */
    val defaultNamespace: kotlin.String? = builder.defaultNamespace
    /**
     * The edition of Amazon QuickSight that you're currently subscribed to: Enterprise edition or Standard edition.
     */
    val edition: aws.sdk.kotlin.services.quicksight.model.Edition? = builder.edition
    /**
     * The main notification email for your Amazon QuickSight subscription.
     */
    val notificationEmail: kotlin.String? = builder.notificationEmail

    companion object {
        operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.quicksight.model.AccountSettings = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("AccountSettings(")
        append("accountName=$accountName,")
        append("defaultNamespace=$defaultNamespace,")
        append("edition=$edition,")
        append("notificationEmail=$notificationEmail)")
    }

    override fun hashCode(): kotlin.Int {
        var result = accountName?.hashCode() ?: 0
        result = 31 * result + (defaultNamespace?.hashCode() ?: 0)
        result = 31 * result + (edition?.hashCode() ?: 0)
        result = 31 * result + (notificationEmail?.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 AccountSettings

        if (accountName != other.accountName) return false
        if (defaultNamespace != other.defaultNamespace) return false
        if (edition != other.edition) return false
        if (notificationEmail != other.notificationEmail) return false

        return true
    }

    inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.quicksight.model.AccountSettings = Builder(this).apply(block).build()

    class Builder {
        /**
         * The "account name" you provided for the Amazon QuickSight subscription in your Amazon Web Services account. You create this name when you sign up for Amazon QuickSight. It is unique in all of Amazon Web Services and it appears only when users sign in.
         */
        var accountName: kotlin.String? = null
        /**
         * The default Amazon QuickSight namespace for your Amazon Web Services account.
         */
        var defaultNamespace: kotlin.String? = null
        /**
         * The edition of Amazon QuickSight that you're currently subscribed to: Enterprise edition or Standard edition.
         */
        var edition: aws.sdk.kotlin.services.quicksight.model.Edition? = null
        /**
         * The main notification email for your Amazon QuickSight subscription.
         */
        var notificationEmail: kotlin.String? = null

        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.quicksight.model.AccountSettings) : this() {
            this.accountName = x.accountName
            this.defaultNamespace = x.defaultNamespace
            this.edition = x.edition
            this.notificationEmail = x.notificationEmail
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.quicksight.model.AccountSettings = AccountSettings(this)
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy