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

com.pulumi.azurenative.machinelearningservices.kotlin.inputs.ModelVersionArgs.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: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.machinelearningservices.kotlin.inputs

import com.pulumi.azurenative.machinelearningservices.inputs.ModelVersionArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 * Model asset version details.
 * @property description The asset description text.
 * @property flavors Mapping of model flavors to their properties.
 * @property isAnonymous If the name version are system generated (anonymous registration).
 * @property isArchived Is the asset archived?
 * @property jobName Name of the training job which produced this model
 * @property modelType The storage format for this entity. Used for NCD.
 * @property modelUri The URI path to the model contents.
 * @property properties The asset property dictionary.
 * @property stage Stage in the model lifecycle assigned to this model
 * @property tags Tag dictionary. Tags can be added, removed, and updated.
 */
public data class ModelVersionArgs(
    public val description: Output? = null,
    public val flavors: Output>? = null,
    public val isAnonymous: Output? = null,
    public val isArchived: Output? = null,
    public val jobName: Output? = null,
    public val modelType: Output? = null,
    public val modelUri: Output? = null,
    public val properties: Output>? = null,
    public val stage: Output? = null,
    public val tags: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.machinelearningservices.inputs.ModelVersionArgs =
        com.pulumi.azurenative.machinelearningservices.inputs.ModelVersionArgs.builder()
            .description(description?.applyValue({ args0 -> args0 }))
            .flavors(
                flavors?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(
                            args0.value.let({ args0 ->
                                args0.toJava()
                            }),
                        )
                    }).toMap()
                }),
            )
            .isAnonymous(isAnonymous?.applyValue({ args0 -> args0 }))
            .isArchived(isArchived?.applyValue({ args0 -> args0 }))
            .jobName(jobName?.applyValue({ args0 -> args0 }))
            .modelType(modelType?.applyValue({ args0 -> args0 }))
            .modelUri(modelUri?.applyValue({ args0 -> args0 }))
            .properties(
                properties?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value)
                    }).toMap()
                }),
            )
            .stage(stage?.applyValue({ args0 -> args0 }))
            .tags(
                tags?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value)
                    }).toMap()
                }),
            ).build()
}

/**
 * Builder for [ModelVersionArgs].
 */
@PulumiTagMarker
public class ModelVersionArgsBuilder internal constructor() {
    private var description: Output? = null

    private var flavors: Output>? = null

    private var isAnonymous: Output? = null

    private var isArchived: Output? = null

    private var jobName: Output? = null

    private var modelType: Output? = null

    private var modelUri: Output? = null

    private var properties: Output>? = null

    private var stage: Output? = null

    private var tags: Output>? = null

    /**
     * @param value The asset description text.
     */
    @JvmName("xjacalnieowihrfq")
    public suspend fun description(`value`: Output) {
        this.description = value
    }

    /**
     * @param value Mapping of model flavors to their properties.
     */
    @JvmName("kmqtfrcwjtofumpo")
    public suspend fun flavors(`value`: Output>) {
        this.flavors = value
    }

    /**
     * @param value If the name version are system generated (anonymous registration).
     */
    @JvmName("jueiwwqksplhuhcb")
    public suspend fun isAnonymous(`value`: Output) {
        this.isAnonymous = value
    }

    /**
     * @param value Is the asset archived?
     */
    @JvmName("hdxetkjhjmfmlpba")
    public suspend fun isArchived(`value`: Output) {
        this.isArchived = value
    }

    /**
     * @param value Name of the training job which produced this model
     */
    @JvmName("junlmqiekvwvfxtf")
    public suspend fun jobName(`value`: Output) {
        this.jobName = value
    }

    /**
     * @param value The storage format for this entity. Used for NCD.
     */
    @JvmName("drqxsbhksiafynae")
    public suspend fun modelType(`value`: Output) {
        this.modelType = value
    }

    /**
     * @param value The URI path to the model contents.
     */
    @JvmName("hswsnupvbsdxoich")
    public suspend fun modelUri(`value`: Output) {
        this.modelUri = value
    }

    /**
     * @param value The asset property dictionary.
     */
    @JvmName("atnehjmnhwpgwwsm")
    public suspend fun properties(`value`: Output>) {
        this.properties = value
    }

    /**
     * @param value Stage in the model lifecycle assigned to this model
     */
    @JvmName("ssvqxocmvujfeach")
    public suspend fun stage(`value`: Output) {
        this.stage = value
    }

    /**
     * @param value Tag dictionary. Tags can be added, removed, and updated.
     */
    @JvmName("xtjfbdxvtedxstmx")
    public suspend fun tags(`value`: Output>) {
        this.tags = value
    }

    /**
     * @param value The asset description text.
     */
    @JvmName("dixvaobywuodsrpn")
    public suspend fun description(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.description = mapped
    }

    /**
     * @param value Mapping of model flavors to their properties.
     */
    @JvmName("relorvcuapgsadin")
    public suspend fun flavors(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.flavors = mapped
    }

    /**
     * @param argument Mapping of model flavors to their properties.
     */
    @JvmName("mellmaannmmmxwvn")
    public suspend fun flavors(vararg argument: Pair Unit>) {
        val toBeMapped = argument.toList().map { (left, right) ->
            left to
                FlavorDataArgsBuilder().applySuspend { right() }.build()
        }.toMap()
        val mapped = of(toBeMapped)
        this.flavors = mapped
    }

    /**
     * @param values Mapping of model flavors to their properties.
     */
    @JvmName("pjwmmeqdtcsvwpdf")
    public fun flavors(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.flavors = mapped
    }

    /**
     * @param value If the name version are system generated (anonymous registration).
     */
    @JvmName("cbvnldmneqrtnbtd")
    public suspend fun isAnonymous(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isAnonymous = mapped
    }

    /**
     * @param value Is the asset archived?
     */
    @JvmName("kahmpimfelpfbiwx")
    public suspend fun isArchived(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isArchived = mapped
    }

    /**
     * @param value Name of the training job which produced this model
     */
    @JvmName("ogxgstpfrxjdhspn")
    public suspend fun jobName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.jobName = mapped
    }

    /**
     * @param value The storage format for this entity. Used for NCD.
     */
    @JvmName("sawhjpjhjddnxfrq")
    public suspend fun modelType(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.modelType = mapped
    }

    /**
     * @param value The URI path to the model contents.
     */
    @JvmName("yspndccebjmfxplv")
    public suspend fun modelUri(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.modelUri = mapped
    }

    /**
     * @param value The asset property dictionary.
     */
    @JvmName("omsbxxlxvmltsvtu")
    public suspend fun properties(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.properties = mapped
    }

    /**
     * @param values The asset property dictionary.
     */
    @JvmName("jtrqydefdscyuaps")
    public fun properties(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.properties = mapped
    }

    /**
     * @param value Stage in the model lifecycle assigned to this model
     */
    @JvmName("fxtsprxkddfuhxjk")
    public suspend fun stage(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.stage = mapped
    }

    /**
     * @param value Tag dictionary. Tags can be added, removed, and updated.
     */
    @JvmName("avjkdnypknsmgloe")
    public suspend fun tags(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.tags = mapped
    }

    /**
     * @param values Tag dictionary. Tags can be added, removed, and updated.
     */
    @JvmName("erkywbuoxerfxqdv")
    public fun tags(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.tags = mapped
    }

    internal fun build(): ModelVersionArgs = ModelVersionArgs(
        description = description,
        flavors = flavors,
        isAnonymous = isAnonymous,
        isArchived = isArchived,
        jobName = jobName,
        modelType = modelType,
        modelUri = modelUri,
        properties = properties,
        stage = stage,
        tags = tags,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy