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

commonMain.aws.sdk.kotlin.services.pinpointemail.model.CreateEmailIdentityResponse.kt Maven / Gradle / Ivy

There is a newer version: 1.3.77
Show newest version
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.pinpointemail.model

import aws.smithy.kotlin.runtime.SdkDsl

/**
 * If the email identity is a domain, this object contains tokens that you can use to create a set of CNAME records. To sucessfully verify your domain, you have to add these records to the DNS configuration for your domain.
 *
 * If the email identity is an email address, this object is empty.
 */
public class CreateEmailIdentityResponse private constructor(builder: Builder) {
    /**
     * An object that contains information about the DKIM attributes for the identity. This object includes the tokens that you use to create the CNAME records that are required to complete the DKIM verification process.
     */
    public val dkimAttributes: aws.sdk.kotlin.services.pinpointemail.model.DkimAttributes? = builder.dkimAttributes
    /**
     * The email identity type.
     */
    public val identityType: aws.sdk.kotlin.services.pinpointemail.model.IdentityType? = builder.identityType
    /**
     * Specifies whether or not the identity is verified. In Amazon Pinpoint, you can only send email from verified email addresses or domains. For more information about verifying identities, see the [Amazon Pinpoint User Guide](https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-email-manage-verify.html).
     */
    public val verifiedForSendingStatus: kotlin.Boolean = builder.verifiedForSendingStatus

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

    override fun toString(): kotlin.String = buildString {
        append("CreateEmailIdentityResponse(")
        append("dkimAttributes=$dkimAttributes,")
        append("identityType=$identityType,")
        append("verifiedForSendingStatus=$verifiedForSendingStatus")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = dkimAttributes?.hashCode() ?: 0
        result = 31 * result + (identityType?.hashCode() ?: 0)
        result = 31 * result + (verifiedForSendingStatus.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 CreateEmailIdentityResponse

        if (dkimAttributes != other.dkimAttributes) return false
        if (identityType != other.identityType) return false
        if (verifiedForSendingStatus != other.verifiedForSendingStatus) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * An object that contains information about the DKIM attributes for the identity. This object includes the tokens that you use to create the CNAME records that are required to complete the DKIM verification process.
         */
        public var dkimAttributes: aws.sdk.kotlin.services.pinpointemail.model.DkimAttributes? = null
        /**
         * The email identity type.
         */
        public var identityType: aws.sdk.kotlin.services.pinpointemail.model.IdentityType? = null
        /**
         * Specifies whether or not the identity is verified. In Amazon Pinpoint, you can only send email from verified email addresses or domains. For more information about verifying identities, see the [Amazon Pinpoint User Guide](https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-email-manage-verify.html).
         */
        public var verifiedForSendingStatus: kotlin.Boolean = false

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.pinpointemail.model.CreateEmailIdentityResponse) : this() {
            this.dkimAttributes = x.dkimAttributes
            this.identityType = x.identityType
            this.verifiedForSendingStatus = x.verifiedForSendingStatus
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.pinpointemail.model.CreateEmailIdentityResponse = CreateEmailIdentityResponse(this)

        /**
         * construct an [aws.sdk.kotlin.services.pinpointemail.model.DkimAttributes] inside the given [block]
         */
        public fun dkimAttributes(block: aws.sdk.kotlin.services.pinpointemail.model.DkimAttributes.Builder.() -> kotlin.Unit) {
            this.dkimAttributes = aws.sdk.kotlin.services.pinpointemail.model.DkimAttributes.invoke(block)
        }

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy