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

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

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

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

import aws.smithy.kotlin.runtime.SdkDsl

/**
 * Information about the health of Amazon Web Services resources in your account that are specified by an Amazon Web Services CloudFormation stack.
 */
public class CloudFormationHealth private constructor(builder: Builder) {
    /**
     * Number of resources that DevOps Guru is monitoring in your account that are specified by an Amazon Web Services CloudFormation stack.
     */
    public val analyzedResourceCount: kotlin.Long? = builder.analyzedResourceCount
    /**
     * Information about the health of the Amazon Web Services resources in your account that are specified by an Amazon Web Services CloudFormation stack, 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.InsightHealth? = builder.insight
    /**
     * The name of the CloudFormation stack.
     */
    public val stackName: kotlin.String? = builder.stackName

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

    override fun toString(): kotlin.String = buildString {
        append("CloudFormationHealth(")
        append("analyzedResourceCount=$analyzedResourceCount,")
        append("insight=$insight,")
        append("stackName=$stackName")
        append(")")
    }

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

        if (analyzedResourceCount != other.analyzedResourceCount) return false
        if (insight != other.insight) return false
        if (stackName != other.stackName) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * Number of resources that DevOps Guru is monitoring in your account that are specified by an Amazon Web Services CloudFormation stack.
         */
        public var analyzedResourceCount: kotlin.Long? = null
        /**
         * Information about the health of the Amazon Web Services resources in your account that are specified by an Amazon Web Services CloudFormation stack, 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.InsightHealth? = null
        /**
         * The name of the CloudFormation stack.
         */
        public var stackName: kotlin.String? = null

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

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

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy