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

commonMain.aws.sdk.kotlin.services.configservice.model.ConformancePackStatusDetail.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.configservice.model

import aws.smithy.kotlin.runtime.time.Instant

/**
 * Status details of a conformance pack.
 */
class ConformancePackStatusDetail private constructor(builder: Builder) {
    /**
     * Amazon Resource Name (ARN) of comformance pack.
     */
    val conformancePackArn: kotlin.String? = builder.conformancePackArn
    /**
     * ID of the conformance pack.
     */
    val conformancePackId: kotlin.String? = builder.conformancePackId
    /**
     * Name of the conformance pack.
     */
    val conformancePackName: kotlin.String? = builder.conformancePackName
    /**
     * Indicates deployment status of conformance pack.
     *
     * Config sets the state of the conformance pack to:
     * + CREATE_IN_PROGRESS when a conformance pack creation is in progress for an account.
     * + CREATE_COMPLETE when a conformance pack has been successfully created in your account.
     * + CREATE_FAILED when a conformance pack creation failed in your account.
     * + DELETE_IN_PROGRESS when a conformance pack deletion is in progress.
     * + DELETE_FAILED when a conformance pack deletion failed in your account.
     */
    val conformancePackState: aws.sdk.kotlin.services.configservice.model.ConformancePackState? = builder.conformancePackState
    /**
     * The reason of conformance pack creation failure.
     */
    val conformancePackStatusReason: kotlin.String? = builder.conformancePackStatusReason
    /**
     * Last time when conformation pack creation and update was successful.
     */
    val lastUpdateCompletedTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdateCompletedTime
    /**
     * Last time when conformation pack creation and update was requested.
     */
    val lastUpdateRequestedTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdateRequestedTime
    /**
     * Amazon Resource Name (ARN) of CloudFormation stack.
     */
    val stackArn: kotlin.String? = builder.stackArn

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

    override fun toString(): kotlin.String = buildString {
        append("ConformancePackStatusDetail(")
        append("conformancePackArn=$conformancePackArn,")
        append("conformancePackId=$conformancePackId,")
        append("conformancePackName=$conformancePackName,")
        append("conformancePackState=$conformancePackState,")
        append("conformancePackStatusReason=$conformancePackStatusReason,")
        append("lastUpdateCompletedTime=$lastUpdateCompletedTime,")
        append("lastUpdateRequestedTime=$lastUpdateRequestedTime,")
        append("stackArn=$stackArn)")
    }

    override fun hashCode(): kotlin.Int {
        var result = conformancePackArn?.hashCode() ?: 0
        result = 31 * result + (conformancePackId?.hashCode() ?: 0)
        result = 31 * result + (conformancePackName?.hashCode() ?: 0)
        result = 31 * result + (conformancePackState?.hashCode() ?: 0)
        result = 31 * result + (conformancePackStatusReason?.hashCode() ?: 0)
        result = 31 * result + (lastUpdateCompletedTime?.hashCode() ?: 0)
        result = 31 * result + (lastUpdateRequestedTime?.hashCode() ?: 0)
        result = 31 * result + (stackArn?.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 ConformancePackStatusDetail

        if (conformancePackArn != other.conformancePackArn) return false
        if (conformancePackId != other.conformancePackId) return false
        if (conformancePackName != other.conformancePackName) return false
        if (conformancePackState != other.conformancePackState) return false
        if (conformancePackStatusReason != other.conformancePackStatusReason) return false
        if (lastUpdateCompletedTime != other.lastUpdateCompletedTime) return false
        if (lastUpdateRequestedTime != other.lastUpdateRequestedTime) return false
        if (stackArn != other.stackArn) return false

        return true
    }

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

    class Builder {
        /**
         * Amazon Resource Name (ARN) of comformance pack.
         */
        var conformancePackArn: kotlin.String? = null
        /**
         * ID of the conformance pack.
         */
        var conformancePackId: kotlin.String? = null
        /**
         * Name of the conformance pack.
         */
        var conformancePackName: kotlin.String? = null
        /**
         * Indicates deployment status of conformance pack.
         *
         * Config sets the state of the conformance pack to:
         * + CREATE_IN_PROGRESS when a conformance pack creation is in progress for an account.
         * + CREATE_COMPLETE when a conformance pack has been successfully created in your account.
         * + CREATE_FAILED when a conformance pack creation failed in your account.
         * + DELETE_IN_PROGRESS when a conformance pack deletion is in progress.
         * + DELETE_FAILED when a conformance pack deletion failed in your account.
         */
        var conformancePackState: aws.sdk.kotlin.services.configservice.model.ConformancePackState? = null
        /**
         * The reason of conformance pack creation failure.
         */
        var conformancePackStatusReason: kotlin.String? = null
        /**
         * Last time when conformation pack creation and update was successful.
         */
        var lastUpdateCompletedTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * Last time when conformation pack creation and update was requested.
         */
        var lastUpdateRequestedTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * Amazon Resource Name (ARN) of CloudFormation stack.
         */
        var stackArn: kotlin.String? = null

        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.configservice.model.ConformancePackStatusDetail) : this() {
            this.conformancePackArn = x.conformancePackArn
            this.conformancePackId = x.conformancePackId
            this.conformancePackName = x.conformancePackName
            this.conformancePackState = x.conformancePackState
            this.conformancePackStatusReason = x.conformancePackStatusReason
            this.lastUpdateCompletedTime = x.lastUpdateCompletedTime
            this.lastUpdateRequestedTime = x.lastUpdateRequestedTime
            this.stackArn = x.stackArn
        }

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy