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

commonMain.aws.sdk.kotlin.services.devopsguru.model.AccountHealth.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.devopsguru.model

import aws.smithy.kotlin.runtime.SdkDsl

/**
 * Returns the number of open reactive insights, the number of open proactive insights, and the number of metrics analyzed in your Amazon Web Services account. Use these numbers to gauge the health of operations in your Amazon Web Services account.
 */
public class AccountHealth private constructor(builder: Builder) {
    /**
     * The ID of the Amazon Web Services account.
     */
    public val accountId: kotlin.String? = builder.accountId
    /**
     * Information about the health of the Amazon Web Services resources in your account, including the number of open proactive, open reactive insights, and the Mean Time to Recover (MTTR) of closed insights.
     */
    public val insight: aws.sdk.kotlin.services.devopsguru.model.AccountInsightHealth? = builder.insight

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

    override fun toString(): kotlin.String = buildString {
        append("AccountHealth(")
        append("accountId=$accountId,")
        append("insight=$insight")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = accountId?.hashCode() ?: 0
        result = 31 * result + (insight?.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 AccountHealth

        if (accountId != other.accountId) return false
        if (insight != other.insight) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The ID of the Amazon Web Services account.
         */
        public var accountId: kotlin.String? = null
        /**
         * Information about the health of the Amazon Web Services resources in your account, including the number of open proactive, open reactive insights, and the Mean Time to Recover (MTTR) of closed insights.
         */
        public var insight: aws.sdk.kotlin.services.devopsguru.model.AccountInsightHealth? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.devopsguru.model.AccountHealth) : this() {
            this.accountId = x.accountId
            this.insight = x.insight
        }

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

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy