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

commonMain.aws.sdk.kotlin.services.omics.model.StartRunRequest.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.omics.model

import aws.smithy.kotlin.runtime.content.Document

public class StartRunRequest private constructor(builder: Builder) {
    /**
     * A log level for the run.
     */
    public val logLevel: aws.sdk.kotlin.services.omics.model.RunLogLevel? = builder.logLevel
    /**
     * A name for the run.
     */
    public val name: kotlin.String? = builder.name
    /**
     * An output URI for the run.
     */
    public val outputUri: kotlin.String? = builder.outputUri
    /**
     * Parameters for the run.
     */
    public val parameters: aws.smithy.kotlin.runtime.content.Document? = builder.parameters
    /**
     * A priority for the run.
     */
    public val priority: kotlin.Int? = builder.priority
    /**
     * To ensure that requests don't run multiple times, specify a unique ID for each request.
     */
    public val requestId: kotlin.String? = builder.requestId
    /**
     * The retention mode for the run.
     */
    public val retentionMode: aws.sdk.kotlin.services.omics.model.RunRetentionMode? = builder.retentionMode
    /**
     * A service role for the run.
     */
    public val roleArn: kotlin.String? = builder.roleArn
    /**
     * The run's group ID.
     */
    public val runGroupId: kotlin.String? = builder.runGroupId
    /**
     * The ID of a run to duplicate.
     */
    public val runId: kotlin.String? = builder.runId
    /**
     * A storage capacity for the run in gigabytes.
     */
    public val storageCapacity: kotlin.Int? = builder.storageCapacity
    /**
     * Tags for the run.
     */
    public val tags: Map? = builder.tags
    /**
     * The run's workflow ID.
     */
    public val workflowId: kotlin.String? = builder.workflowId
    /**
     * The run's workflow type.
     */
    public val workflowType: aws.sdk.kotlin.services.omics.model.WorkflowType? = builder.workflowType

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

    override fun toString(): kotlin.String = buildString {
        append("StartRunRequest(")
        append("logLevel=$logLevel,")
        append("name=$name,")
        append("outputUri=$outputUri,")
        append("parameters=$parameters,")
        append("priority=$priority,")
        append("requestId=$requestId,")
        append("retentionMode=$retentionMode,")
        append("roleArn=$roleArn,")
        append("runGroupId=$runGroupId,")
        append("runId=$runId,")
        append("storageCapacity=$storageCapacity,")
        append("tags=$tags,")
        append("workflowId=$workflowId,")
        append("workflowType=$workflowType")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = logLevel?.hashCode() ?: 0
        result = 31 * result + (name?.hashCode() ?: 0)
        result = 31 * result + (outputUri?.hashCode() ?: 0)
        result = 31 * result + (parameters?.hashCode() ?: 0)
        result = 31 * result + (priority ?: 0)
        result = 31 * result + (requestId?.hashCode() ?: 0)
        result = 31 * result + (retentionMode?.hashCode() ?: 0)
        result = 31 * result + (roleArn?.hashCode() ?: 0)
        result = 31 * result + (runGroupId?.hashCode() ?: 0)
        result = 31 * result + (runId?.hashCode() ?: 0)
        result = 31 * result + (storageCapacity ?: 0)
        result = 31 * result + (tags?.hashCode() ?: 0)
        result = 31 * result + (workflowId?.hashCode() ?: 0)
        result = 31 * result + (workflowType?.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 StartRunRequest

        if (logLevel != other.logLevel) return false
        if (name != other.name) return false
        if (outputUri != other.outputUri) return false
        if (parameters != other.parameters) return false
        if (priority != other.priority) return false
        if (requestId != other.requestId) return false
        if (retentionMode != other.retentionMode) return false
        if (roleArn != other.roleArn) return false
        if (runGroupId != other.runGroupId) return false
        if (runId != other.runId) return false
        if (storageCapacity != other.storageCapacity) return false
        if (tags != other.tags) return false
        if (workflowId != other.workflowId) return false
        if (workflowType != other.workflowType) return false

        return true
    }

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

    public class Builder {
        /**
         * A log level for the run.
         */
        public var logLevel: aws.sdk.kotlin.services.omics.model.RunLogLevel? = null
        /**
         * A name for the run.
         */
        public var name: kotlin.String? = null
        /**
         * An output URI for the run.
         */
        public var outputUri: kotlin.String? = null
        /**
         * Parameters for the run.
         */
        public var parameters: aws.smithy.kotlin.runtime.content.Document? = null
        /**
         * A priority for the run.
         */
        public var priority: kotlin.Int? = null
        /**
         * To ensure that requests don't run multiple times, specify a unique ID for each request.
         */
        public var requestId: kotlin.String? = null
        /**
         * The retention mode for the run.
         */
        public var retentionMode: aws.sdk.kotlin.services.omics.model.RunRetentionMode? = null
        /**
         * A service role for the run.
         */
        public var roleArn: kotlin.String? = null
        /**
         * The run's group ID.
         */
        public var runGroupId: kotlin.String? = null
        /**
         * The ID of a run to duplicate.
         */
        public var runId: kotlin.String? = null
        /**
         * A storage capacity for the run in gigabytes.
         */
        public var storageCapacity: kotlin.Int? = null
        /**
         * Tags for the run.
         */
        public var tags: Map? = null
        /**
         * The run's workflow ID.
         */
        public var workflowId: kotlin.String? = null
        /**
         * The run's workflow type.
         */
        public var workflowType: aws.sdk.kotlin.services.omics.model.WorkflowType? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.omics.model.StartRunRequest) : this() {
            this.logLevel = x.logLevel
            this.name = x.name
            this.outputUri = x.outputUri
            this.parameters = x.parameters
            this.priority = x.priority
            this.requestId = x.requestId
            this.retentionMode = x.retentionMode
            this.roleArn = x.roleArn
            this.runGroupId = x.runGroupId
            this.runId = x.runId
            this.storageCapacity = x.storageCapacity
            this.tags = x.tags
            this.workflowId = x.workflowId
            this.workflowType = x.workflowType
        }

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy