
com.pulumi.azurenative.migrate.kotlin.inputs.WorkloadDeploymentModelPropertiesArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.migrate.kotlin.inputs
import com.pulumi.azurenative.migrate.inputs.WorkloadDeploymentModelPropertiesArgs.builder
import com.pulumi.azurenative.migrate.kotlin.enums.WorkloadDeploymentTarget
import com.pulumi.core.Either
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Workload deployment model properties.
* @property customProperties Workload deployment model custom properties.
* @property displayName Gets or sets the display name.
* @property targetPlatform Gets or sets the deployment target platform.
* @property workloadInstanceProperties Workload instance model properties.
*/
public data class WorkloadDeploymentModelPropertiesArgs(
public val customProperties: Output>? =
null,
public val displayName: Output? = null,
public val targetPlatform: Output>? = null,
public val workloadInstanceProperties: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.migrate.inputs.WorkloadDeploymentModelPropertiesArgs = com.pulumi.azurenative.migrate.inputs.WorkloadDeploymentModelPropertiesArgs.builder()
.customProperties(
customProperties?.applyValue({ args0 ->
args0.transform({ args0 ->
args0.let({ args0 -> args0.toJava() })
}, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.displayName(displayName?.applyValue({ args0 -> args0 }))
.targetPlatform(
targetPlatform?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.workloadInstanceProperties(
workloadInstanceProperties?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [WorkloadDeploymentModelPropertiesArgs].
*/
@PulumiTagMarker
public class WorkloadDeploymentModelPropertiesArgsBuilder internal constructor() {
private var customProperties:
Output>? =
null
private var displayName: Output? = null
private var targetPlatform: Output>? = null
private var workloadInstanceProperties: Output? = null
/**
* @param value Workload deployment model custom properties.
*/
@JvmName("soaqagaxqgbcumdy")
public suspend fun customProperties(`value`: Output>) {
this.customProperties = value
}
/**
* @param value Gets or sets the display name.
*/
@JvmName("iqgrqovfmmtukqom")
public suspend fun displayName(`value`: Output) {
this.displayName = value
}
/**
* @param value Gets or sets the deployment target platform.
*/
@JvmName("ltvubgjaobbhauxx")
public suspend fun targetPlatform(`value`: Output>) {
this.targetPlatform = value
}
/**
* @param value Workload instance model properties.
*/
@JvmName("dupmktecfeugmmrk")
public suspend fun workloadInstanceProperties(`value`: Output) {
this.workloadInstanceProperties = value
}
/**
* @param value Workload deployment model custom properties.
*/
@JvmName("duqauorokyxscqdg")
public suspend fun customProperties(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.customProperties = mapped
}
/**
* @param value Workload deployment model custom properties.
*/
@JvmName("tfykhvrsryewxweq")
public fun customProperties(`value`: ApacheTomcatAKSWorkloadDeploymentModelCustomPropertiesArgs) {
val toBeMapped = Either.ofLeft<
ApacheTomcatAKSWorkloadDeploymentModelCustomPropertiesArgs,
IISAKSWorkloadDeploymentModelCustomPropertiesArgs,
>(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.customProperties = mapped
}
/**
* @param value Workload deployment model custom properties.
*/
@JvmName("twusegjmsdkacsww")
public fun customProperties(`value`: IISAKSWorkloadDeploymentModelCustomPropertiesArgs) {
val toBeMapped = Either.ofRight<
ApacheTomcatAKSWorkloadDeploymentModelCustomPropertiesArgs,
IISAKSWorkloadDeploymentModelCustomPropertiesArgs,
>(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.customProperties = mapped
}
/**
* @param value Gets or sets the display name.
*/
@JvmName("jewpiniugymueltk")
public suspend fun displayName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.displayName = mapped
}
/**
* @param value Gets or sets the deployment target platform.
*/
@JvmName("cqwpoohwvuuewlop")
public suspend fun targetPlatform(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.targetPlatform = mapped
}
/**
* @param value Gets or sets the deployment target platform.
*/
@JvmName("cdvbyiwointntlep")
public fun targetPlatform(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.targetPlatform = mapped
}
/**
* @param value Gets or sets the deployment target platform.
*/
@JvmName("xebadutocwxrsqmo")
public fun targetPlatform(`value`: WorkloadDeploymentTarget) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.targetPlatform = mapped
}
/**
* @param value Workload instance model properties.
*/
@JvmName("nscfaknjuluxinhl")
public suspend fun workloadInstanceProperties(`value`: WorkloadInstanceModelPropertiesArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.workloadInstanceProperties = mapped
}
/**
* @param argument Workload instance model properties.
*/
@JvmName("xsbumnuiweulguok")
public suspend fun workloadInstanceProperties(argument: suspend WorkloadInstanceModelPropertiesArgsBuilder.() -> Unit) {
val toBeMapped = WorkloadInstanceModelPropertiesArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.workloadInstanceProperties = mapped
}
internal fun build(): WorkloadDeploymentModelPropertiesArgs =
WorkloadDeploymentModelPropertiesArgs(
customProperties = customProperties,
displayName = displayName,
targetPlatform = targetPlatform,
workloadInstanceProperties = workloadInstanceProperties,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy