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

commonMain.aws.sdk.kotlin.services.opensearchserverless.model.GetPoliciesStatsResponse.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.opensearchserverless.model



public class GetPoliciesStatsResponse private constructor(builder: Builder) {
    /**
     * Information about the data access policies in your account.
     */
    public val accessPolicyStats: aws.sdk.kotlin.services.opensearchserverless.model.AccessPolicyStats? = builder.accessPolicyStats
    /**
     * Information about the lifecycle policies in your account.
     */
    public val lifecyclePolicyStats: aws.sdk.kotlin.services.opensearchserverless.model.LifecyclePolicyStats? = builder.lifecyclePolicyStats
    /**
     * Information about the security configurations in your account.
     */
    public val securityConfigStats: aws.sdk.kotlin.services.opensearchserverless.model.SecurityConfigStats? = builder.securityConfigStats
    /**
     * Information about the security policies in your account.
     */
    public val securityPolicyStats: aws.sdk.kotlin.services.opensearchserverless.model.SecurityPolicyStats? = builder.securityPolicyStats
    /**
     * The total number of OpenSearch Serverless security policies and configurations in your account.
     */
    public val totalPolicyCount: kotlin.Long? = builder.totalPolicyCount

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

    override fun toString(): kotlin.String = buildString {
        append("GetPoliciesStatsResponse(")
        append("accessPolicyStats=$accessPolicyStats,")
        append("lifecyclePolicyStats=$lifecyclePolicyStats,")
        append("securityConfigStats=$securityConfigStats,")
        append("securityPolicyStats=$securityPolicyStats,")
        append("totalPolicyCount=$totalPolicyCount")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = accessPolicyStats?.hashCode() ?: 0
        result = 31 * result + (lifecyclePolicyStats?.hashCode() ?: 0)
        result = 31 * result + (securityConfigStats?.hashCode() ?: 0)
        result = 31 * result + (securityPolicyStats?.hashCode() ?: 0)
        result = 31 * result + (totalPolicyCount?.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 GetPoliciesStatsResponse

        if (accessPolicyStats != other.accessPolicyStats) return false
        if (lifecyclePolicyStats != other.lifecyclePolicyStats) return false
        if (securityConfigStats != other.securityConfigStats) return false
        if (securityPolicyStats != other.securityPolicyStats) return false
        if (totalPolicyCount != other.totalPolicyCount) return false

        return true
    }

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

    public class Builder {
        /**
         * Information about the data access policies in your account.
         */
        public var accessPolicyStats: aws.sdk.kotlin.services.opensearchserverless.model.AccessPolicyStats? = null
        /**
         * Information about the lifecycle policies in your account.
         */
        public var lifecyclePolicyStats: aws.sdk.kotlin.services.opensearchserverless.model.LifecyclePolicyStats? = null
        /**
         * Information about the security configurations in your account.
         */
        public var securityConfigStats: aws.sdk.kotlin.services.opensearchserverless.model.SecurityConfigStats? = null
        /**
         * Information about the security policies in your account.
         */
        public var securityPolicyStats: aws.sdk.kotlin.services.opensearchserverless.model.SecurityPolicyStats? = null
        /**
         * The total number of OpenSearch Serverless security policies and configurations in your account.
         */
        public var totalPolicyCount: kotlin.Long? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.opensearchserverless.model.GetPoliciesStatsResponse) : this() {
            this.accessPolicyStats = x.accessPolicyStats
            this.lifecyclePolicyStats = x.lifecyclePolicyStats
            this.securityConfigStats = x.securityConfigStats
            this.securityPolicyStats = x.securityPolicyStats
            this.totalPolicyCount = x.totalPolicyCount
        }

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

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

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

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy