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

aws.sdk.kotlin.services.sagemaker.model.StartPipelineExecutionRequest.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.sagemaker.model



class StartPipelineExecutionRequest private constructor(builder: BuilderImpl) {
    /**
     * A unique, case-sensitive identifier that you provide to ensure the idempotency of the
     * operation. An idempotent operation completes no more than once.
     */
    val clientRequestToken: String? = builder.clientRequestToken
    /**
     * The description of the pipeline execution.
     */
    val pipelineExecutionDescription: String? = builder.pipelineExecutionDescription
    /**
     * The display name of the pipeline execution.
     */
    val pipelineExecutionDisplayName: String? = builder.pipelineExecutionDisplayName
    /**
     * The name of the pipeline.
     */
    val pipelineName: String? = builder.pipelineName
    /**
     * Contains a list of pipeline parameters. This list can be empty.
     */
    val pipelineParameters: List? = builder.pipelineParameters

    companion object {
        @JvmStatic
        fun fluentBuilder(): FluentBuilder = BuilderImpl()

        internal fun builder(): DslBuilder = BuilderImpl()

        operator fun invoke(block: DslBuilder.() -> kotlin.Unit): StartPipelineExecutionRequest = BuilderImpl().apply(block).build()

    }

    override fun toString(): kotlin.String = buildString {
        append("StartPipelineExecutionRequest(")
        append("clientRequestToken=$clientRequestToken,")
        append("pipelineExecutionDescription=$pipelineExecutionDescription,")
        append("pipelineExecutionDisplayName=$pipelineExecutionDisplayName,")
        append("pipelineName=$pipelineName,")
        append("pipelineParameters=$pipelineParameters)")
    }

    override fun hashCode(): kotlin.Int {
        var result = clientRequestToken?.hashCode() ?: 0
        result = 31 * result + (pipelineExecutionDescription?.hashCode() ?: 0)
        result = 31 * result + (pipelineExecutionDisplayName?.hashCode() ?: 0)
        result = 31 * result + (pipelineName?.hashCode() ?: 0)
        result = 31 * result + (pipelineParameters?.hashCode() ?: 0)
        return result
    }

    override fun equals(other: kotlin.Any?): kotlin.Boolean {
        if (this === other) return true
        if (javaClass != other?.javaClass) return false

        other as StartPipelineExecutionRequest

        if (clientRequestToken != other.clientRequestToken) return false
        if (pipelineExecutionDescription != other.pipelineExecutionDescription) return false
        if (pipelineExecutionDisplayName != other.pipelineExecutionDisplayName) return false
        if (pipelineName != other.pipelineName) return false
        if (pipelineParameters != other.pipelineParameters) return false

        return true
    }

    fun copy(block: DslBuilder.() -> kotlin.Unit = {}): StartPipelineExecutionRequest = BuilderImpl(this).apply(block).build()

    interface FluentBuilder {
        fun build(): StartPipelineExecutionRequest
        /**
         * A unique, case-sensitive identifier that you provide to ensure the idempotency of the
         * operation. An idempotent operation completes no more than once.
         */
        fun clientRequestToken(clientRequestToken: String): FluentBuilder
        /**
         * The description of the pipeline execution.
         */
        fun pipelineExecutionDescription(pipelineExecutionDescription: String): FluentBuilder
        /**
         * The display name of the pipeline execution.
         */
        fun pipelineExecutionDisplayName(pipelineExecutionDisplayName: String): FluentBuilder
        /**
         * The name of the pipeline.
         */
        fun pipelineName(pipelineName: String): FluentBuilder
        /**
         * Contains a list of pipeline parameters. This list can be empty.
         */
        fun pipelineParameters(pipelineParameters: List): FluentBuilder
    }

    interface DslBuilder {
        /**
         * A unique, case-sensitive identifier that you provide to ensure the idempotency of the
         * operation. An idempotent operation completes no more than once.
         */
        var clientRequestToken: String?
        /**
         * The description of the pipeline execution.
         */
        var pipelineExecutionDescription: String?
        /**
         * The display name of the pipeline execution.
         */
        var pipelineExecutionDisplayName: String?
        /**
         * The name of the pipeline.
         */
        var pipelineName: String?
        /**
         * Contains a list of pipeline parameters. This list can be empty.
         */
        var pipelineParameters: List?

        fun build(): StartPipelineExecutionRequest
    }

    private class BuilderImpl() : FluentBuilder, DslBuilder {
        override var clientRequestToken: String? = null
        override var pipelineExecutionDescription: String? = null
        override var pipelineExecutionDisplayName: String? = null
        override var pipelineName: String? = null
        override var pipelineParameters: List? = null

        constructor(x: StartPipelineExecutionRequest) : this() {
            this.clientRequestToken = x.clientRequestToken
            this.pipelineExecutionDescription = x.pipelineExecutionDescription
            this.pipelineExecutionDisplayName = x.pipelineExecutionDisplayName
            this.pipelineName = x.pipelineName
            this.pipelineParameters = x.pipelineParameters
        }

        override fun build(): StartPipelineExecutionRequest = StartPipelineExecutionRequest(this)
        override fun clientRequestToken(clientRequestToken: String): FluentBuilder = apply { this.clientRequestToken = clientRequestToken }
        override fun pipelineExecutionDescription(pipelineExecutionDescription: String): FluentBuilder = apply { this.pipelineExecutionDescription = pipelineExecutionDescription }
        override fun pipelineExecutionDisplayName(pipelineExecutionDisplayName: String): FluentBuilder = apply { this.pipelineExecutionDisplayName = pipelineExecutionDisplayName }
        override fun pipelineName(pipelineName: String): FluentBuilder = apply { this.pipelineName = pipelineName }
        override fun pipelineParameters(pipelineParameters: List): FluentBuilder = apply { this.pipelineParameters = pipelineParameters }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy