
com.pulumi.azurenative.machinelearningservices.kotlin.inputs.RecurrenceTriggerArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.machinelearningservices.kotlin.inputs
import com.pulumi.azurenative.machinelearningservices.inputs.RecurrenceTriggerArgs.builder
import com.pulumi.azurenative.machinelearningservices.kotlin.enums.RecurrenceFrequency
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.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property endTime Specifies end time of schedule in ISO 8601, but without a UTC offset. Refer https://en.wikipedia.org/wiki/ISO_8601.
* Recommented format would be "2022-06-01T00:00:01"
* If not present, the schedule will run indefinitely
* @property frequency [Required] The frequency to trigger schedule.
* @property interval [Required] Specifies schedule interval in conjunction with frequency
* @property schedule The recurrence schedule.
* @property startTime Specifies start time of schedule in ISO 8601 format, but without a UTC offset.
* @property timeZone Specifies time zone in which the schedule runs.
* TimeZone should follow Windows time zone format. Refer: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones?view=windows-11
* @property triggerType
* Expected value is 'Recurrence'.
*/
public data class RecurrenceTriggerArgs(
public val endTime: Output? = null,
public val frequency: Output>,
public val interval: Output,
public val schedule: Output? = null,
public val startTime: Output? = null,
public val timeZone: Output? = null,
public val triggerType: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.machinelearningservices.inputs.RecurrenceTriggerArgs = com.pulumi.azurenative.machinelearningservices.inputs.RecurrenceTriggerArgs.builder()
.endTime(endTime?.applyValue({ args0 -> args0 }))
.frequency(
frequency.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.interval(interval.applyValue({ args0 -> args0 }))
.schedule(schedule?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.startTime(startTime?.applyValue({ args0 -> args0 }))
.timeZone(timeZone?.applyValue({ args0 -> args0 }))
.triggerType(triggerType.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [RecurrenceTriggerArgs].
*/
@PulumiTagMarker
public class RecurrenceTriggerArgsBuilder internal constructor() {
private var endTime: Output? = null
private var frequency: Output>? = null
private var interval: Output? = null
private var schedule: Output? = null
private var startTime: Output? = null
private var timeZone: Output? = null
private var triggerType: Output? = null
/**
* @param value Specifies end time of schedule in ISO 8601, but without a UTC offset. Refer https://en.wikipedia.org/wiki/ISO_8601.
* Recommented format would be "2022-06-01T00:00:01"
* If not present, the schedule will run indefinitely
*/
@JvmName("aktvkdvqyuvbejhb")
public suspend fun endTime(`value`: Output) {
this.endTime = value
}
/**
* @param value [Required] The frequency to trigger schedule.
*/
@JvmName("upxdqirgkporqdcg")
public suspend fun frequency(`value`: Output>) {
this.frequency = value
}
/**
* @param value [Required] Specifies schedule interval in conjunction with frequency
*/
@JvmName("bbghomfkrorovvwg")
public suspend fun interval(`value`: Output) {
this.interval = value
}
/**
* @param value The recurrence schedule.
*/
@JvmName("kjseaefjjmbqoskx")
public suspend fun schedule(`value`: Output) {
this.schedule = value
}
/**
* @param value Specifies start time of schedule in ISO 8601 format, but without a UTC offset.
*/
@JvmName("nglinwmxjeaupxqe")
public suspend fun startTime(`value`: Output) {
this.startTime = value
}
/**
* @param value Specifies time zone in which the schedule runs.
* TimeZone should follow Windows time zone format. Refer: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones?view=windows-11
*/
@JvmName("vnknbagkhfnbgojq")
public suspend fun timeZone(`value`: Output) {
this.timeZone = value
}
/**
* @param value
* Expected value is 'Recurrence'.
*/
@JvmName("lvdfylrmduwnrpto")
public suspend fun triggerType(`value`: Output) {
this.triggerType = value
}
/**
* @param value Specifies end time of schedule in ISO 8601, but without a UTC offset. Refer https://en.wikipedia.org/wiki/ISO_8601.
* Recommented format would be "2022-06-01T00:00:01"
* If not present, the schedule will run indefinitely
*/
@JvmName("ignomkfmqixicwil")
public suspend fun endTime(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.endTime = mapped
}
/**
* @param value [Required] The frequency to trigger schedule.
*/
@JvmName("bsetmdeotnmobrlq")
public suspend fun frequency(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.frequency = mapped
}
/**
* @param value [Required] The frequency to trigger schedule.
*/
@JvmName("winupoacxvaetqfy")
public fun frequency(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.frequency = mapped
}
/**
* @param value [Required] The frequency to trigger schedule.
*/
@JvmName("jshrhoaknqtdibnf")
public fun frequency(`value`: RecurrenceFrequency) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.frequency = mapped
}
/**
* @param value [Required] Specifies schedule interval in conjunction with frequency
*/
@JvmName("ykoecvivgkyqaavv")
public suspend fun interval(`value`: Int) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.interval = mapped
}
/**
* @param value The recurrence schedule.
*/
@JvmName("jogvshmanugymspf")
public suspend fun schedule(`value`: RecurrenceScheduleArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.schedule = mapped
}
/**
* @param argument The recurrence schedule.
*/
@JvmName("qwtviaxhyvfulqio")
public suspend fun schedule(argument: suspend RecurrenceScheduleArgsBuilder.() -> Unit) {
val toBeMapped = RecurrenceScheduleArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.schedule = mapped
}
/**
* @param value Specifies start time of schedule in ISO 8601 format, but without a UTC offset.
*/
@JvmName("ytvqbqnsgkqfufmi")
public suspend fun startTime(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.startTime = mapped
}
/**
* @param value Specifies time zone in which the schedule runs.
* TimeZone should follow Windows time zone format. Refer: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones?view=windows-11
*/
@JvmName("wufcwlxgqpkpdyhp")
public suspend fun timeZone(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.timeZone = mapped
}
/**
* @param value
* Expected value is 'Recurrence'.
*/
@JvmName("imoosqownjptcxjj")
public suspend fun triggerType(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.triggerType = mapped
}
internal fun build(): RecurrenceTriggerArgs = RecurrenceTriggerArgs(
endTime = endTime,
frequency = frequency ?: throw PulumiNullFieldException("frequency"),
interval = interval ?: throw PulumiNullFieldException("interval"),
schedule = schedule,
startTime = startTime,
timeZone = timeZone,
triggerType = triggerType ?: throw PulumiNullFieldException("triggerType"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy