
com.pulumi.azurenative.recoveryservices.kotlin.inputs.AzureWorkloadContainerArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.recoveryservices.kotlin.inputs
import com.pulumi.azurenative.recoveryservices.inputs.AzureWorkloadContainerArgs.builder
import com.pulumi.azurenative.recoveryservices.kotlin.enums.BackupManagementType
import com.pulumi.azurenative.recoveryservices.kotlin.enums.OperationType
import com.pulumi.azurenative.recoveryservices.kotlin.enums.WorkloadType
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.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Container for the workloads running inside Azure Compute or Classic Compute.
* @property backupManagementType Type of backup management for the container.
* @property containerType Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.
* Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is
* Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload
* Backup is VMAppContainer
* Expected value is 'AzureWorkloadContainer'.
* @property extendedInfo Additional details of a workload container.
* @property friendlyName Friendly name of the container.
* @property healthStatus Status of health of the container.
* @property lastUpdatedTime Time stamp when this container was updated.
* @property operationType Re-Do Operation
* @property protectableObjectType Type of the protectable object associated with this container
* @property registrationStatus Status of registration of the container with the Recovery Services Vault.
* @property sourceResourceId ARM ID of the virtual machine represented by this Azure Workload Container
* @property workloadType Workload type for which registration was sent.
*/
public data class AzureWorkloadContainerArgs(
public val backupManagementType: Output>? = null,
public val containerType: Output,
public val extendedInfo: Output? = null,
public val friendlyName: Output? = null,
public val healthStatus: Output? = null,
public val lastUpdatedTime: Output? = null,
public val operationType: Output>? = null,
public val protectableObjectType: Output? = null,
public val registrationStatus: Output? = null,
public val sourceResourceId: Output? = null,
public val workloadType: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.recoveryservices.inputs.AzureWorkloadContainerArgs =
com.pulumi.azurenative.recoveryservices.inputs.AzureWorkloadContainerArgs.builder()
.backupManagementType(
backupManagementType?.applyValue({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
}),
)
.containerType(containerType.applyValue({ args0 -> args0 }))
.extendedInfo(extendedInfo?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.friendlyName(friendlyName?.applyValue({ args0 -> args0 }))
.healthStatus(healthStatus?.applyValue({ args0 -> args0 }))
.lastUpdatedTime(lastUpdatedTime?.applyValue({ args0 -> args0 }))
.operationType(
operationType?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.protectableObjectType(protectableObjectType?.applyValue({ args0 -> args0 }))
.registrationStatus(registrationStatus?.applyValue({ args0 -> args0 }))
.sourceResourceId(sourceResourceId?.applyValue({ args0 -> args0 }))
.workloadType(
workloadType?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
).build()
}
/**
* Builder for [AzureWorkloadContainerArgs].
*/
@PulumiTagMarker
public class AzureWorkloadContainerArgsBuilder internal constructor() {
private var backupManagementType: Output>? = null
private var containerType: Output? = null
private var extendedInfo: Output? = null
private var friendlyName: Output? = null
private var healthStatus: Output? = null
private var lastUpdatedTime: Output? = null
private var operationType: Output>? = null
private var protectableObjectType: Output? = null
private var registrationStatus: Output? = null
private var sourceResourceId: Output? = null
private var workloadType: Output>? = null
/**
* @param value Type of backup management for the container.
*/
@JvmName("ubslagnsxvplinap")
public suspend fun backupManagementType(`value`: Output>) {
this.backupManagementType = value
}
/**
* @param value Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.
* Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is
* Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload
* Backup is VMAppContainer
* Expected value is 'AzureWorkloadContainer'.
*/
@JvmName("agwkmarurewjnahs")
public suspend fun containerType(`value`: Output) {
this.containerType = value
}
/**
* @param value Additional details of a workload container.
*/
@JvmName("icpfylxlnmunjhhp")
public suspend fun extendedInfo(`value`: Output) {
this.extendedInfo = value
}
/**
* @param value Friendly name of the container.
*/
@JvmName("rowvnlwsjbkyvtpj")
public suspend fun friendlyName(`value`: Output) {
this.friendlyName = value
}
/**
* @param value Status of health of the container.
*/
@JvmName("oxxabvigfrvddbhc")
public suspend fun healthStatus(`value`: Output) {
this.healthStatus = value
}
/**
* @param value Time stamp when this container was updated.
*/
@JvmName("ifixrjfibxvwsrbl")
public suspend fun lastUpdatedTime(`value`: Output) {
this.lastUpdatedTime = value
}
/**
* @param value Re-Do Operation
*/
@JvmName("ddnfvhndiijhayoq")
public suspend fun operationType(`value`: Output>) {
this.operationType = value
}
/**
* @param value Type of the protectable object associated with this container
*/
@JvmName("ysbqmpguwloegxlg")
public suspend fun protectableObjectType(`value`: Output) {
this.protectableObjectType = value
}
/**
* @param value Status of registration of the container with the Recovery Services Vault.
*/
@JvmName("vkdtdodbgokbdnjt")
public suspend fun registrationStatus(`value`: Output) {
this.registrationStatus = value
}
/**
* @param value ARM ID of the virtual machine represented by this Azure Workload Container
*/
@JvmName("unmwowryftclhits")
public suspend fun sourceResourceId(`value`: Output) {
this.sourceResourceId = value
}
/**
* @param value Workload type for which registration was sent.
*/
@JvmName("grjqgekbcpyxjiae")
public suspend fun workloadType(`value`: Output>) {
this.workloadType = value
}
/**
* @param value Type of backup management for the container.
*/
@JvmName("pnhavjgsvwpjuyfo")
public suspend fun backupManagementType(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.backupManagementType = mapped
}
/**
* @param value Type of backup management for the container.
*/
@JvmName("qnsftbifqleivoub")
public fun backupManagementType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.backupManagementType = mapped
}
/**
* @param value Type of backup management for the container.
*/
@JvmName("yvkasmwibqiktdub")
public fun backupManagementType(`value`: BackupManagementType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.backupManagementType = mapped
}
/**
* @param value Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.
* Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is
* Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload
* Backup is VMAppContainer
* Expected value is 'AzureWorkloadContainer'.
*/
@JvmName("hksjdrkbhjvfistp")
public suspend fun containerType(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.containerType = mapped
}
/**
* @param value Additional details of a workload container.
*/
@JvmName("vwcxdjeaefsvlcbk")
public suspend fun extendedInfo(`value`: AzureWorkloadContainerExtendedInfoArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.extendedInfo = mapped
}
/**
* @param argument Additional details of a workload container.
*/
@JvmName("dqqwscpafqhnupst")
public suspend fun extendedInfo(argument: suspend AzureWorkloadContainerExtendedInfoArgsBuilder.() -> Unit) {
val toBeMapped = AzureWorkloadContainerExtendedInfoArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.extendedInfo = mapped
}
/**
* @param value Friendly name of the container.
*/
@JvmName("tyuspcigvacbgrnc")
public suspend fun friendlyName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.friendlyName = mapped
}
/**
* @param value Status of health of the container.
*/
@JvmName("wwfmearyhsnyjlwn")
public suspend fun healthStatus(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.healthStatus = mapped
}
/**
* @param value Time stamp when this container was updated.
*/
@JvmName("fomvhcariaqwiklc")
public suspend fun lastUpdatedTime(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.lastUpdatedTime = mapped
}
/**
* @param value Re-Do Operation
*/
@JvmName("gvgppvetojeclgwg")
public suspend fun operationType(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.operationType = mapped
}
/**
* @param value Re-Do Operation
*/
@JvmName("hjkqawrubhybawup")
public fun operationType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.operationType = mapped
}
/**
* @param value Re-Do Operation
*/
@JvmName("bxxgqqepdxvcvscy")
public fun operationType(`value`: OperationType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.operationType = mapped
}
/**
* @param value Type of the protectable object associated with this container
*/
@JvmName("hbywpigmohixlspe")
public suspend fun protectableObjectType(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.protectableObjectType = mapped
}
/**
* @param value Status of registration of the container with the Recovery Services Vault.
*/
@JvmName("hpsfkmkbhioitgjt")
public suspend fun registrationStatus(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.registrationStatus = mapped
}
/**
* @param value ARM ID of the virtual machine represented by this Azure Workload Container
*/
@JvmName("awigdtffgwlvvwpq")
public suspend fun sourceResourceId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sourceResourceId = mapped
}
/**
* @param value Workload type for which registration was sent.
*/
@JvmName("jjdwtojxmjvihynj")
public suspend fun workloadType(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.workloadType = mapped
}
/**
* @param value Workload type for which registration was sent.
*/
@JvmName("dtodrpticrffluev")
public fun workloadType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.workloadType = mapped
}
/**
* @param value Workload type for which registration was sent.
*/
@JvmName("dvssnjcuibvuebct")
public fun workloadType(`value`: WorkloadType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.workloadType = mapped
}
internal fun build(): AzureWorkloadContainerArgs = AzureWorkloadContainerArgs(
backupManagementType = backupManagementType,
containerType = containerType ?: throw PulumiNullFieldException("containerType"),
extendedInfo = extendedInfo,
friendlyName = friendlyName,
healthStatus = healthStatus,
lastUpdatedTime = lastUpdatedTime,
operationType = operationType,
protectableObjectType = protectableObjectType,
registrationStatus = registrationStatus,
sourceResourceId = sourceResourceId,
workloadType = workloadType,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy