
com.pulumi.azurenative.workloads.kotlin.inputs.MonthlyRetentionScheduleArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.workloads.kotlin.inputs
import com.pulumi.azurenative.workloads.inputs.MonthlyRetentionScheduleArgs.builder
import com.pulumi.azurenative.workloads.kotlin.enums.RetentionScheduleFormat
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.collections.List
import kotlin.jvm.JvmName
/**
* Monthly retention schedule.
* @property retentionDuration Retention duration of retention Policy.
* @property retentionScheduleDaily Daily retention format for monthly retention policy.
* @property retentionScheduleFormatType Retention schedule format type for monthly retention policy.
* @property retentionScheduleWeekly Weekly retention format for monthly retention policy.
* @property retentionTimes Retention times of retention policy.
*/
public data class MonthlyRetentionScheduleArgs(
public val retentionDuration: Output? = null,
public val retentionScheduleDaily: Output? = null,
public val retentionScheduleFormatType: Output>? = null,
public val retentionScheduleWeekly: Output? = null,
public val retentionTimes: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.workloads.inputs.MonthlyRetentionScheduleArgs =
com.pulumi.azurenative.workloads.inputs.MonthlyRetentionScheduleArgs.builder()
.retentionDuration(retentionDuration?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.retentionScheduleDaily(
retentionScheduleDaily?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.retentionScheduleFormatType(
retentionScheduleFormatType?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.retentionScheduleWeekly(
retentionScheduleWeekly?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.retentionTimes(retentionTimes?.applyValue({ args0 -> args0.map({ args0 -> args0 }) })).build()
}
/**
* Builder for [MonthlyRetentionScheduleArgs].
*/
@PulumiTagMarker
public class MonthlyRetentionScheduleArgsBuilder internal constructor() {
private var retentionDuration: Output? = null
private var retentionScheduleDaily: Output? = null
private var retentionScheduleFormatType: Output>? = null
private var retentionScheduleWeekly: Output? = null
private var retentionTimes: Output>? = null
/**
* @param value Retention duration of retention Policy.
*/
@JvmName("uqjugxuvfwtwukxd")
public suspend fun retentionDuration(`value`: Output) {
this.retentionDuration = value
}
/**
* @param value Daily retention format for monthly retention policy.
*/
@JvmName("bokshbhpcofgnpoc")
public suspend fun retentionScheduleDaily(`value`: Output) {
this.retentionScheduleDaily = value
}
/**
* @param value Retention schedule format type for monthly retention policy.
*/
@JvmName("kfisxhoixedusuhc")
public suspend fun retentionScheduleFormatType(`value`: Output>) {
this.retentionScheduleFormatType = value
}
/**
* @param value Weekly retention format for monthly retention policy.
*/
@JvmName("okhokycqdqbthqta")
public suspend fun retentionScheduleWeekly(`value`: Output) {
this.retentionScheduleWeekly = value
}
/**
* @param value Retention times of retention policy.
*/
@JvmName("uuvivbdkvytcocad")
public suspend fun retentionTimes(`value`: Output>) {
this.retentionTimes = value
}
@JvmName("betmjuwbscjwexws")
public suspend fun retentionTimes(vararg values: Output) {
this.retentionTimes = Output.all(values.asList())
}
/**
* @param values Retention times of retention policy.
*/
@JvmName("banxxiwmbahuuebe")
public suspend fun retentionTimes(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy