com.pulumi.azurenative.cache.kotlin.inputs.ScheduleEntryArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.cache.kotlin.inputs
import com.pulumi.azurenative.cache.inputs.ScheduleEntryArgs.builder
import com.pulumi.azurenative.cache.kotlin.enums.DayOfWeek
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 kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Patch schedule entry for a Premium Redis Cache.
* @property dayOfWeek Day of the week when a cache can be patched.
* @property maintenanceWindow ISO8601 timespan specifying how much time cache patching can take.
* @property startHourUtc Start hour after which cache patching can start.
*/
public data class ScheduleEntryArgs(
public val dayOfWeek: Output,
public val maintenanceWindow: Output? = null,
public val startHourUtc: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.cache.inputs.ScheduleEntryArgs =
com.pulumi.azurenative.cache.inputs.ScheduleEntryArgs.builder()
.dayOfWeek(dayOfWeek.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.maintenanceWindow(maintenanceWindow?.applyValue({ args0 -> args0 }))
.startHourUtc(startHourUtc.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ScheduleEntryArgs].
*/
@PulumiTagMarker
public class ScheduleEntryArgsBuilder internal constructor() {
private var dayOfWeek: Output? = null
private var maintenanceWindow: Output? = null
private var startHourUtc: Output? = null
/**
* @param value Day of the week when a cache can be patched.
*/
@JvmName("buyevolelsvhqcjf")
public suspend fun dayOfWeek(`value`: Output) {
this.dayOfWeek = value
}
/**
* @param value ISO8601 timespan specifying how much time cache patching can take.
*/
@JvmName("loksqwcxdeiclnvg")
public suspend fun maintenanceWindow(`value`: Output) {
this.maintenanceWindow = value
}
/**
* @param value Start hour after which cache patching can start.
*/
@JvmName("laombhspvryjpiym")
public suspend fun startHourUtc(`value`: Output) {
this.startHourUtc = value
}
/**
* @param value Day of the week when a cache can be patched.
*/
@JvmName("fpaxgyrkmawsgqbt")
public suspend fun dayOfWeek(`value`: DayOfWeek) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.dayOfWeek = mapped
}
/**
* @param value ISO8601 timespan specifying how much time cache patching can take.
*/
@JvmName("rycwhlflcqrmvavq")
public suspend fun maintenanceWindow(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maintenanceWindow = mapped
}
/**
* @param value Start hour after which cache patching can start.
*/
@JvmName("agpalxhwrluiwffe")
public suspend fun startHourUtc(`value`: Int) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.startHourUtc = mapped
}
internal fun build(): ScheduleEntryArgs = ScheduleEntryArgs(
dayOfWeek = dayOfWeek ?: throw PulumiNullFieldException("dayOfWeek"),
maintenanceWindow = maintenanceWindow,
startHourUtc = startHourUtc ?: throw PulumiNullFieldException("startHourUtc"),
)
}