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

com.pulumi.aws.sagemaker.kotlin.inputs.ModelContainerModelDataSourceS3DataSourceArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.57.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.aws.sagemaker.kotlin.inputs

import com.pulumi.aws.sagemaker.inputs.ModelContainerModelDataSourceS3DataSourceArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property compressionType How the model data is prepared. Allowed values are: `None` and `Gzip`.
 * @property modelAccessConfig Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
 * @property s3DataType The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
 * @property s3Uri The S3 path of model data to deploy.
 */
public data class ModelContainerModelDataSourceS3DataSourceArgs(
    public val compressionType: Output,
    public val modelAccessConfig: Output? = null,
    public val s3DataType: Output,
    public val s3Uri: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.sagemaker.inputs.ModelContainerModelDataSourceS3DataSourceArgs =
        com.pulumi.aws.sagemaker.inputs.ModelContainerModelDataSourceS3DataSourceArgs.builder()
            .compressionType(compressionType.applyValue({ args0 -> args0 }))
            .modelAccessConfig(modelAccessConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .s3DataType(s3DataType.applyValue({ args0 -> args0 }))
            .s3Uri(s3Uri.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ModelContainerModelDataSourceS3DataSourceArgs].
 */
@PulumiTagMarker
public class ModelContainerModelDataSourceS3DataSourceArgsBuilder internal constructor() {
    private var compressionType: Output? = null

    private var modelAccessConfig:
        Output? = null

    private var s3DataType: Output? = null

    private var s3Uri: Output? = null

    /**
     * @param value How the model data is prepared. Allowed values are: `None` and `Gzip`.
     */
    @JvmName("ohtyguowfnxdcivp")
    public suspend fun compressionType(`value`: Output) {
        this.compressionType = value
    }

    /**
     * @param value Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
     */
    @JvmName("yhbauvldlljwsqia")
    public suspend fun modelAccessConfig(`value`: Output) {
        this.modelAccessConfig = value
    }

    /**
     * @param value The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
     */
    @JvmName("gntindebyohxrdbd")
    public suspend fun s3DataType(`value`: Output) {
        this.s3DataType = value
    }

    /**
     * @param value The S3 path of model data to deploy.
     */
    @JvmName("qqrnkwoojsrafmpo")
    public suspend fun s3Uri(`value`: Output) {
        this.s3Uri = value
    }

    /**
     * @param value How the model data is prepared. Allowed values are: `None` and `Gzip`.
     */
    @JvmName("sssvvrnrqhfdrfwn")
    public suspend fun compressionType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.compressionType = mapped
    }

    /**
     * @param value Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
     */
    @JvmName("ishxkxgpirlfmhho")
    public suspend fun modelAccessConfig(`value`: ModelContainerModelDataSourceS3DataSourceModelAccessConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.modelAccessConfig = mapped
    }

    /**
     * @param argument Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
     */
    @JvmName("uvbmpxftxltjhcrx")
    public suspend fun modelAccessConfig(argument: suspend ModelContainerModelDataSourceS3DataSourceModelAccessConfigArgsBuilder.() -> Unit) {
        val toBeMapped =
            ModelContainerModelDataSourceS3DataSourceModelAccessConfigArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.modelAccessConfig = mapped
    }

    /**
     * @param value The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
     */
    @JvmName("lrmnvqlraxvhbvwc")
    public suspend fun s3DataType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.s3DataType = mapped
    }

    /**
     * @param value The S3 path of model data to deploy.
     */
    @JvmName("premthowlfeccykf")
    public suspend fun s3Uri(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.s3Uri = mapped
    }

    internal fun build(): ModelContainerModelDataSourceS3DataSourceArgs =
        ModelContainerModelDataSourceS3DataSourceArgs(
            compressionType = compressionType ?: throw PulumiNullFieldException("compressionType"),
            modelAccessConfig = modelAccessConfig,
            s3DataType = s3DataType ?: throw PulumiNullFieldException("s3DataType"),
            s3Uri = s3Uri ?: throw PulumiNullFieldException("s3Uri"),
        )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy