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

commonMain.aws.sdk.kotlin.services.fms.model.PutResourceSetRequest.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.fms.model



public class PutResourceSetRequest private constructor(builder: Builder) {
    /**
     * Details about the resource set to be created or updated.>
     */
    public val resourceSet: aws.sdk.kotlin.services.fms.model.ResourceSet? = builder.resourceSet
    /**
     * Retrieves the tags associated with the specified resource set. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each Amazon Web Services resource, up to 50 tags for a resource.
     */
    public val tagList: List? = builder.tagList

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

    override fun toString(): kotlin.String = buildString {
        append("PutResourceSetRequest(")
        append("resourceSet=$resourceSet,")
        append("tagList=$tagList")
        append(")")
    }

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

        if (resourceSet != other.resourceSet) return false
        if (tagList != other.tagList) return false

        return true
    }

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

    public class Builder {
        /**
         * Details about the resource set to be created or updated.>
         */
        public var resourceSet: aws.sdk.kotlin.services.fms.model.ResourceSet? = null
        /**
         * Retrieves the tags associated with the specified resource set. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each Amazon Web Services resource, up to 50 tags for a resource.
         */
        public var tagList: List? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.fms.model.PutResourceSetRequest) : this() {
            this.resourceSet = x.resourceSet
            this.tagList = x.tagList
        }

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy