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

aws.sdk.kotlin.services.sagemaker.model.LabelingJobS3DataSource.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



/**
 * The Amazon S3 location of the input data objects.
 */
class LabelingJobS3DataSource private constructor(builder: BuilderImpl) {
    /**
     * The Amazon S3 location of the manifest file that describes the input data objects.
     * The input manifest file referenced in ManifestS3Uri must contain one of
     * the following keys: source-ref or source. The value of the
     * keys are interpreted as follows:
     * source-ref: The source of the object is the Amazon S3 object
     * specified in the value. Use this value when the object is a binary object, such
     * as an image.
     * source: The source of the object is the value. Use this
     * value when the object is a text value.
     * If you are a new user of Ground Truth, it is recommended you review Use an Input Manifest File  in the Amazon SageMaker Developer Guide to learn how to
     * create an input manifest file.
     */
    val manifestS3Uri: String? = builder.manifestS3Uri

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

        internal fun builder(): DslBuilder = BuilderImpl()

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

    }

    override fun toString(): kotlin.String = buildString {
        append("LabelingJobS3DataSource(")
        append("manifestS3Uri=$manifestS3Uri)")
    }

    override fun hashCode(): kotlin.Int {
        var result = manifestS3Uri?.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 LabelingJobS3DataSource

        if (manifestS3Uri != other.manifestS3Uri) return false

        return true
    }

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

    interface FluentBuilder {
        fun build(): LabelingJobS3DataSource
        /**
         * The Amazon S3 location of the manifest file that describes the input data objects.
         * The input manifest file referenced in ManifestS3Uri must contain one of
         * the following keys: source-ref or source. The value of the
         * keys are interpreted as follows:
         * source-ref: The source of the object is the Amazon S3 object
         * specified in the value. Use this value when the object is a binary object, such
         * as an image.
         * source: The source of the object is the value. Use this
         * value when the object is a text value.
         * If you are a new user of Ground Truth, it is recommended you review Use an Input Manifest File  in the Amazon SageMaker Developer Guide to learn how to
         * create an input manifest file.
         */
        fun manifestS3Uri(manifestS3Uri: String): FluentBuilder
    }

    interface DslBuilder {
        /**
         * The Amazon S3 location of the manifest file that describes the input data objects.
         * The input manifest file referenced in ManifestS3Uri must contain one of
         * the following keys: source-ref or source. The value of the
         * keys are interpreted as follows:
         * source-ref: The source of the object is the Amazon S3 object
         * specified in the value. Use this value when the object is a binary object, such
         * as an image.
         * source: The source of the object is the value. Use this
         * value when the object is a text value.
         * If you are a new user of Ground Truth, it is recommended you review Use an Input Manifest File  in the Amazon SageMaker Developer Guide to learn how to
         * create an input manifest file.
         */
        var manifestS3Uri: String?

        fun build(): LabelingJobS3DataSource
    }

    private class BuilderImpl() : FluentBuilder, DslBuilder {
        override var manifestS3Uri: String? = null

        constructor(x: LabelingJobS3DataSource) : this() {
            this.manifestS3Uri = x.manifestS3Uri
        }

        override fun build(): LabelingJobS3DataSource = LabelingJobS3DataSource(this)
        override fun manifestS3Uri(manifestS3Uri: String): FluentBuilder = apply { this.manifestS3Uri = manifestS3Uri }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy