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

commonMain.aws.sdk.kotlin.services.deadline.model.UpdateQueueRequest.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.deadline.model

import aws.smithy.kotlin.runtime.SdkDsl

public class UpdateQueueRequest private constructor(builder: Builder) {
    /**
     * The storage profile IDs to add.
     */
    public val allowedStorageProfileIdsToAdd: List? = builder.allowedStorageProfileIdsToAdd
    /**
     * The storage profile ID to remove.
     */
    public val allowedStorageProfileIdsToRemove: List? = builder.allowedStorageProfileIdsToRemove
    /**
     * The idempotency token to update in the queue.
     */
    public val clientToken: kotlin.String? = builder.clientToken
    /**
     * The default action to take for a queue update if a budget isn't configured.
     */
    public val defaultBudgetAction: aws.sdk.kotlin.services.deadline.model.DefaultQueueBudgetAction? = builder.defaultBudgetAction
    /**
     * The description of the queue to update.
     *
     * This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.
     */
    public val description: kotlin.String? = builder.description
    /**
     * The display name of the queue to update.
     *
     * This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.
     */
    public val displayName: kotlin.String? = builder.displayName
    /**
     * The farm ID to update in the queue.
     */
    public val farmId: kotlin.String? = builder.farmId
    /**
     * The job attachment settings to update for the queue.
     */
    public val jobAttachmentSettings: aws.sdk.kotlin.services.deadline.model.JobAttachmentSettings? = builder.jobAttachmentSettings
    /**
     * Update the jobs in the queue to run as a specified POSIX user.
     */
    public val jobRunAsUser: aws.sdk.kotlin.services.deadline.model.JobRunAsUser? = builder.jobRunAsUser
    /**
     * The queue ID to update.
     */
    public val queueId: kotlin.String? = builder.queueId
    /**
     * The required file system location names to add to the queue.
     */
    public val requiredFileSystemLocationNamesToAdd: List? = builder.requiredFileSystemLocationNamesToAdd
    /**
     * The required file system location names to remove from the queue.
     */
    public val requiredFileSystemLocationNamesToRemove: List? = builder.requiredFileSystemLocationNamesToRemove
    /**
     * The IAM role ARN that's used to run jobs from this queue.
     */
    public val roleArn: kotlin.String? = builder.roleArn

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

    override fun toString(): kotlin.String = buildString {
        append("UpdateQueueRequest(")
        append("allowedStorageProfileIdsToAdd=$allowedStorageProfileIdsToAdd,")
        append("allowedStorageProfileIdsToRemove=$allowedStorageProfileIdsToRemove,")
        append("clientToken=$clientToken,")
        append("defaultBudgetAction=$defaultBudgetAction,")
        append("description=*** Sensitive Data Redacted ***,")
        append("displayName=$displayName,")
        append("farmId=$farmId,")
        append("jobAttachmentSettings=$jobAttachmentSettings,")
        append("jobRunAsUser=$jobRunAsUser,")
        append("queueId=$queueId,")
        append("requiredFileSystemLocationNamesToAdd=*** Sensitive Data Redacted ***,")
        append("requiredFileSystemLocationNamesToRemove=*** Sensitive Data Redacted ***,")
        append("roleArn=$roleArn")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = allowedStorageProfileIdsToAdd?.hashCode() ?: 0
        result = 31 * result + (allowedStorageProfileIdsToRemove?.hashCode() ?: 0)
        result = 31 * result + (clientToken?.hashCode() ?: 0)
        result = 31 * result + (defaultBudgetAction?.hashCode() ?: 0)
        result = 31 * result + (description?.hashCode() ?: 0)
        result = 31 * result + (displayName?.hashCode() ?: 0)
        result = 31 * result + (farmId?.hashCode() ?: 0)
        result = 31 * result + (jobAttachmentSettings?.hashCode() ?: 0)
        result = 31 * result + (jobRunAsUser?.hashCode() ?: 0)
        result = 31 * result + (queueId?.hashCode() ?: 0)
        result = 31 * result + (requiredFileSystemLocationNamesToAdd?.hashCode() ?: 0)
        result = 31 * result + (requiredFileSystemLocationNamesToRemove?.hashCode() ?: 0)
        result = 31 * result + (roleArn?.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 UpdateQueueRequest

        if (allowedStorageProfileIdsToAdd != other.allowedStorageProfileIdsToAdd) return false
        if (allowedStorageProfileIdsToRemove != other.allowedStorageProfileIdsToRemove) return false
        if (clientToken != other.clientToken) return false
        if (defaultBudgetAction != other.defaultBudgetAction) return false
        if (description != other.description) return false
        if (displayName != other.displayName) return false
        if (farmId != other.farmId) return false
        if (jobAttachmentSettings != other.jobAttachmentSettings) return false
        if (jobRunAsUser != other.jobRunAsUser) return false
        if (queueId != other.queueId) return false
        if (requiredFileSystemLocationNamesToAdd != other.requiredFileSystemLocationNamesToAdd) return false
        if (requiredFileSystemLocationNamesToRemove != other.requiredFileSystemLocationNamesToRemove) return false
        if (roleArn != other.roleArn) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The storage profile IDs to add.
         */
        public var allowedStorageProfileIdsToAdd: List? = null
        /**
         * The storage profile ID to remove.
         */
        public var allowedStorageProfileIdsToRemove: List? = null
        /**
         * The idempotency token to update in the queue.
         */
        public var clientToken: kotlin.String? = null
        /**
         * The default action to take for a queue update if a budget isn't configured.
         */
        public var defaultBudgetAction: aws.sdk.kotlin.services.deadline.model.DefaultQueueBudgetAction? = null
        /**
         * The description of the queue to update.
         *
         * This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.
         */
        public var description: kotlin.String? = null
        /**
         * The display name of the queue to update.
         *
         * This field can store any content. Escape or encode this content before displaying it on a webpage or any other system that might interpret the content of this field.
         */
        public var displayName: kotlin.String? = null
        /**
         * The farm ID to update in the queue.
         */
        public var farmId: kotlin.String? = null
        /**
         * The job attachment settings to update for the queue.
         */
        public var jobAttachmentSettings: aws.sdk.kotlin.services.deadline.model.JobAttachmentSettings? = null
        /**
         * Update the jobs in the queue to run as a specified POSIX user.
         */
        public var jobRunAsUser: aws.sdk.kotlin.services.deadline.model.JobRunAsUser? = null
        /**
         * The queue ID to update.
         */
        public var queueId: kotlin.String? = null
        /**
         * The required file system location names to add to the queue.
         */
        public var requiredFileSystemLocationNamesToAdd: List? = null
        /**
         * The required file system location names to remove from the queue.
         */
        public var requiredFileSystemLocationNamesToRemove: List? = null
        /**
         * The IAM role ARN that's used to run jobs from this queue.
         */
        public var roleArn: kotlin.String? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.deadline.model.UpdateQueueRequest) : this() {
            this.allowedStorageProfileIdsToAdd = x.allowedStorageProfileIdsToAdd
            this.allowedStorageProfileIdsToRemove = x.allowedStorageProfileIdsToRemove
            this.clientToken = x.clientToken
            this.defaultBudgetAction = x.defaultBudgetAction
            this.description = x.description
            this.displayName = x.displayName
            this.farmId = x.farmId
            this.jobAttachmentSettings = x.jobAttachmentSettings
            this.jobRunAsUser = x.jobRunAsUser
            this.queueId = x.queueId
            this.requiredFileSystemLocationNamesToAdd = x.requiredFileSystemLocationNamesToAdd
            this.requiredFileSystemLocationNamesToRemove = x.requiredFileSystemLocationNamesToRemove
            this.roleArn = x.roleArn
        }

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

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

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy