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

aws.sdk.kotlin.services.sagemaker.model.CreateInferenceRecommendationsJobRequest.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 CreateInferenceRecommendationsJobRequest private constructor(builder: Builder) {
    /**
     * Provides information about the versioned model package Amazon Resource Name (ARN),
     * the traffic pattern, and endpoint configurations.
     */
    val inputConfig: aws.sdk.kotlin.services.sagemaker.model.RecommendationJobInputConfig? = builder.inputConfig
    /**
     * Description of the recommendation job.
     */
    val jobDescription: kotlin.String? = builder.jobDescription
    /**
     * A name for the recommendation job. The name must be unique within
     * the Amazon Web Services Region and within your Amazon Web Services account.
     */
    val jobName: kotlin.String? = builder.jobName
    /**
     * Defines the type of recommendation job. Specify Default to initiate an instance
     * recommendation and Advanced to initiate a load test. If left unspecified,
     * Amazon SageMaker Inference Recommender will run an instance recommendation (DEFAULT) job.
     */
    val jobType: aws.sdk.kotlin.services.sagemaker.model.RecommendationJobType? = builder.jobType
    /**
     * The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker
     * to perform tasks on your behalf.
     */
    val roleArn: kotlin.String? = builder.roleArn
    /**
     * A set of conditions for stopping a recommendation job.  If any of
     * the conditions are met, the job is automatically stopped.
     */
    val stoppingConditions: aws.sdk.kotlin.services.sagemaker.model.RecommendationJobStoppingConditions? = builder.stoppingConditions
    /**
     * The metadata that you apply to Amazon Web Services resources to help you
     * categorize and organize them. Each tag consists of a key and a value, both of
     * which you define. For more information, see
     * Tagging Amazon Web Services Resources
     * in the Amazon Web Services General Reference.
     */
    val tags: List? = builder.tags

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

    override fun toString(): kotlin.String = buildString {
        append("CreateInferenceRecommendationsJobRequest(")
        append("inputConfig=$inputConfig,")
        append("jobDescription=$jobDescription,")
        append("jobName=$jobName,")
        append("jobType=$jobType,")
        append("roleArn=$roleArn,")
        append("stoppingConditions=$stoppingConditions,")
        append("tags=$tags)")
    }

    override fun hashCode(): kotlin.Int {
        var result = inputConfig?.hashCode() ?: 0
        result = 31 * result + (jobDescription?.hashCode() ?: 0)
        result = 31 * result + (jobName?.hashCode() ?: 0)
        result = 31 * result + (jobType?.hashCode() ?: 0)
        result = 31 * result + (roleArn?.hashCode() ?: 0)
        result = 31 * result + (stoppingConditions?.hashCode() ?: 0)
        result = 31 * result + (tags?.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 CreateInferenceRecommendationsJobRequest

        if (inputConfig != other.inputConfig) return false
        if (jobDescription != other.jobDescription) return false
        if (jobName != other.jobName) return false
        if (jobType != other.jobType) return false
        if (roleArn != other.roleArn) return false
        if (stoppingConditions != other.stoppingConditions) return false
        if (tags != other.tags) return false

        return true
    }

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

    class Builder {
        /**
         * Provides information about the versioned model package Amazon Resource Name (ARN),
         * the traffic pattern, and endpoint configurations.
         */
        var inputConfig: aws.sdk.kotlin.services.sagemaker.model.RecommendationJobInputConfig? = null
        /**
         * Description of the recommendation job.
         */
        var jobDescription: kotlin.String? = null
        /**
         * A name for the recommendation job. The name must be unique within
         * the Amazon Web Services Region and within your Amazon Web Services account.
         */
        var jobName: kotlin.String? = null
        /**
         * Defines the type of recommendation job. Specify Default to initiate an instance
         * recommendation and Advanced to initiate a load test. If left unspecified,
         * Amazon SageMaker Inference Recommender will run an instance recommendation (DEFAULT) job.
         */
        var jobType: aws.sdk.kotlin.services.sagemaker.model.RecommendationJobType? = null
        /**
         * The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker
         * to perform tasks on your behalf.
         */
        var roleArn: kotlin.String? = null
        /**
         * A set of conditions for stopping a recommendation job.  If any of
         * the conditions are met, the job is automatically stopped.
         */
        var stoppingConditions: aws.sdk.kotlin.services.sagemaker.model.RecommendationJobStoppingConditions? = null
        /**
         * The metadata that you apply to Amazon Web Services resources to help you
         * categorize and organize them. Each tag consists of a key and a value, both of
         * which you define. For more information, see
         * Tagging Amazon Web Services Resources
         * in the Amazon Web Services General Reference.
         */
        var tags: List? = null

        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.sagemaker.model.CreateInferenceRecommendationsJobRequest) : this() {
            this.inputConfig = x.inputConfig
            this.jobDescription = x.jobDescription
            this.jobName = x.jobName
            this.jobType = x.jobType
            this.roleArn = x.roleArn
            this.stoppingConditions = x.stoppingConditions
            this.tags = x.tags
        }

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy