com.pulumi.azurenative.labservices.kotlin.inputs.ImageReferenceArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.labservices.kotlin.inputs
import com.pulumi.azurenative.labservices.inputs.ImageReferenceArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Image reference information. Used in the virtual machine profile.
* @property id Image resource ID
* @property offer The image offer if applicable.
* @property publisher The image publisher
* @property sku The image SKU
* @property version The image version specified on creation.
*/
public data class ImageReferenceArgs(
public val id: Output? = null,
public val offer: Output? = null,
public val publisher: Output? = null,
public val sku: Output? = null,
public val version: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.labservices.inputs.ImageReferenceArgs =
com.pulumi.azurenative.labservices.inputs.ImageReferenceArgs.builder()
.id(id?.applyValue({ args0 -> args0 }))
.offer(offer?.applyValue({ args0 -> args0 }))
.publisher(publisher?.applyValue({ args0 -> args0 }))
.sku(sku?.applyValue({ args0 -> args0 }))
.version(version?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ImageReferenceArgs].
*/
@PulumiTagMarker
public class ImageReferenceArgsBuilder internal constructor() {
private var id: Output? = null
private var offer: Output? = null
private var publisher: Output? = null
private var sku: Output? = null
private var version: Output? = null
/**
* @param value Image resource ID
*/
@JvmName("uhpjvtvlaymjojot")
public suspend fun id(`value`: Output) {
this.id = value
}
/**
* @param value The image offer if applicable.
*/
@JvmName("flhjjckcifugakhs")
public suspend fun offer(`value`: Output) {
this.offer = value
}
/**
* @param value The image publisher
*/
@JvmName("lsxoutyfnhwqctqt")
public suspend fun publisher(`value`: Output) {
this.publisher = value
}
/**
* @param value The image SKU
*/
@JvmName("uajhnkuvflffkcnv")
public suspend fun sku(`value`: Output) {
this.sku = value
}
/**
* @param value The image version specified on creation.
*/
@JvmName("pqfmsuucaqpicovd")
public suspend fun version(`value`: Output) {
this.version = value
}
/**
* @param value Image resource ID
*/
@JvmName("lhkuxujfiiabwlug")
public suspend fun id(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.id = mapped
}
/**
* @param value The image offer if applicable.
*/
@JvmName("qxxqaarmokdklarr")
public suspend fun offer(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.offer = mapped
}
/**
* @param value The image publisher
*/
@JvmName("skyuwrhggqfoefew")
public suspend fun publisher(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.publisher = mapped
}
/**
* @param value The image SKU
*/
@JvmName("oaeegxjkfglfnqnu")
public suspend fun sku(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sku = mapped
}
/**
* @param value The image version specified on creation.
*/
@JvmName("gbbfcqgirfnhsbcd")
public suspend fun version(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.version = mapped
}
internal fun build(): ImageReferenceArgs = ImageReferenceArgs(
id = id,
offer = offer,
publisher = publisher,
sku = sku,
version = version,
)
}