![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.recoveryservices.kotlin.inputs.GenericProtectionPolicyArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-native-kotlin Show documentation
Show all versions of pulumi-azure-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.recoveryservices.kotlin.inputs
import com.pulumi.azurenative.recoveryservices.inputs.GenericProtectionPolicyArgs.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.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Azure VM (Mercury) workload-specific backup policy.
* @property backupManagementType This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
* Expected value is 'GenericProtectionPolicy'.
* @property fabricName Name of this policy's fabric.
* @property protectedItemsCount Number of items associated with this policy.
* @property resourceGuardOperationRequests ResourceGuard Operation Requests
* @property subProtectionPolicy List of sub-protection policies which includes schedule and retention
* @property timeZone TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time".
*/
public data class GenericProtectionPolicyArgs(
public val backupManagementType: Output,
public val fabricName: Output? = null,
public val protectedItemsCount: Output? = null,
public val resourceGuardOperationRequests: Output>? = null,
public val subProtectionPolicy: Output>? = null,
public val timeZone: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.recoveryservices.inputs.GenericProtectionPolicyArgs = com.pulumi.azurenative.recoveryservices.inputs.GenericProtectionPolicyArgs.builder()
.backupManagementType(backupManagementType.applyValue({ args0 -> args0 }))
.fabricName(fabricName?.applyValue({ args0 -> args0 }))
.protectedItemsCount(protectedItemsCount?.applyValue({ args0 -> args0 }))
.resourceGuardOperationRequests(
resourceGuardOperationRequests?.applyValue({ args0 ->
args0.map({ args0 -> args0 })
}),
)
.subProtectionPolicy(
subProtectionPolicy?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.timeZone(timeZone?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [GenericProtectionPolicyArgs].
*/
@PulumiTagMarker
public class GenericProtectionPolicyArgsBuilder internal constructor() {
private var backupManagementType: Output? = null
private var fabricName: Output? = null
private var protectedItemsCount: Output? = null
private var resourceGuardOperationRequests: Output>? = null
private var subProtectionPolicy: Output>? = null
private var timeZone: Output? = null
/**
* @param value This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
* Expected value is 'GenericProtectionPolicy'.
*/
@JvmName("sqqfesctvigfmcuy")
public suspend fun backupManagementType(`value`: Output) {
this.backupManagementType = value
}
/**
* @param value Name of this policy's fabric.
*/
@JvmName("mlerthrtfjbyiwnc")
public suspend fun fabricName(`value`: Output) {
this.fabricName = value
}
/**
* @param value Number of items associated with this policy.
*/
@JvmName("ofdmyfwrxgrwclsh")
public suspend fun protectedItemsCount(`value`: Output) {
this.protectedItemsCount = value
}
/**
* @param value ResourceGuard Operation Requests
*/
@JvmName("asibetqgymkfrlsg")
public suspend fun resourceGuardOperationRequests(`value`: Output>) {
this.resourceGuardOperationRequests = value
}
@JvmName("nofxsghnhhyexrfe")
public suspend fun resourceGuardOperationRequests(vararg values: Output) {
this.resourceGuardOperationRequests = Output.all(values.asList())
}
/**
* @param values ResourceGuard Operation Requests
*/
@JvmName("bepbsfnfvpydfsnm")
public suspend fun resourceGuardOperationRequests(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy