All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azure.datafactory.kotlin.inputs.TriggerScheduleScheduleArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.datafactory.kotlin.inputs

import com.pulumi.azure.datafactory.inputs.TriggerScheduleScheduleArgs.builder
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.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property daysOfMonths Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only.
 * @property daysOfWeeks Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency.
 * @property hours Hours of the day on which the trigger is scheduled.
 * @property minutes Minutes of the hour on which the trigger is scheduled.
 * @property monthlies A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
 */
public data class TriggerScheduleScheduleArgs(
    public val daysOfMonths: Output>? = null,
    public val daysOfWeeks: Output>? = null,
    public val hours: Output>? = null,
    public val minutes: Output>? = null,
    public val monthlies: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.datafactory.inputs.TriggerScheduleScheduleArgs =
        com.pulumi.azure.datafactory.inputs.TriggerScheduleScheduleArgs.builder()
            .daysOfMonths(daysOfMonths?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .daysOfWeeks(daysOfWeeks?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .hours(hours?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .minutes(minutes?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .monthlies(
                monthlies?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

/**
 * Builder for [TriggerScheduleScheduleArgs].
 */
@PulumiTagMarker
public class TriggerScheduleScheduleArgsBuilder internal constructor() {
    private var daysOfMonths: Output>? = null

    private var daysOfWeeks: Output>? = null

    private var hours: Output>? = null

    private var minutes: Output>? = null

    private var monthlies: Output>? = null

    /**
     * @param value Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only.
     */
    @JvmName("jyiccmbwbwtfcqqb")
    public suspend fun daysOfMonths(`value`: Output>) {
        this.daysOfMonths = value
    }

    @JvmName("tatbigeebblrtspl")
    public suspend fun daysOfMonths(vararg values: Output) {
        this.daysOfMonths = Output.all(values.asList())
    }

    /**
     * @param values Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only.
     */
    @JvmName("iankuxqafqrpicrx")
    public suspend fun daysOfMonths(values: List>) {
        this.daysOfMonths = Output.all(values)
    }

    /**
     * @param value Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency.
     */
    @JvmName("omyhyrqkqrybiobh")
    public suspend fun daysOfWeeks(`value`: Output>) {
        this.daysOfWeeks = value
    }

    @JvmName("btlcuhotktkwmmhj")
    public suspend fun daysOfWeeks(vararg values: Output) {
        this.daysOfWeeks = Output.all(values.asList())
    }

    /**
     * @param values Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency.
     */
    @JvmName("mqortwpvwujkykoy")
    public suspend fun daysOfWeeks(values: List>) {
        this.daysOfWeeks = Output.all(values)
    }

    /**
     * @param value Hours of the day on which the trigger is scheduled.
     */
    @JvmName("rhrpajxsicuglntr")
    public suspend fun hours(`value`: Output>) {
        this.hours = value
    }

    @JvmName("cjwsbakkixapvmuq")
    public suspend fun hours(vararg values: Output) {
        this.hours = Output.all(values.asList())
    }

    /**
     * @param values Hours of the day on which the trigger is scheduled.
     */
    @JvmName("sdcxttiuvgobklkw")
    public suspend fun hours(values: List>) {
        this.hours = Output.all(values)
    }

    /**
     * @param value Minutes of the hour on which the trigger is scheduled.
     */
    @JvmName("tdwtvtepdtxfrmfx")
    public suspend fun minutes(`value`: Output>) {
        this.minutes = value
    }

    @JvmName("cgrtsrkqammlghxg")
    public suspend fun minutes(vararg values: Output) {
        this.minutes = Output.all(values.asList())
    }

    /**
     * @param values Minutes of the hour on which the trigger is scheduled.
     */
    @JvmName("luwptpnrxvoiaivw")
    public suspend fun minutes(values: List>) {
        this.minutes = Output.all(values)
    }

    /**
     * @param value A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("lqsklcuovsmghohx")
    public suspend fun monthlies(`value`: Output>) {
        this.monthlies = value
    }

    @JvmName("ajqiomlfgurwiynd")
    public suspend fun monthlies(vararg values: Output) {
        this.monthlies = Output.all(values.asList())
    }

    /**
     * @param values A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("hsbhkskhbmryvleq")
    public suspend fun monthlies(values: List>) {
        this.monthlies = Output.all(values)
    }

    /**
     * @param value Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only.
     */
    @JvmName("mhjgrutunowlwfhc")
    public suspend fun daysOfMonths(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.daysOfMonths = mapped
    }

    /**
     * @param values Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only.
     */
    @JvmName("kcoxgntmpqrckclo")
    public suspend fun daysOfMonths(vararg values: Int) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.daysOfMonths = mapped
    }

    /**
     * @param value Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency.
     */
    @JvmName("ukmwydewehnwkysg")
    public suspend fun daysOfWeeks(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.daysOfWeeks = mapped
    }

    /**
     * @param values Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency.
     */
    @JvmName("bqkhksqtxtghigtc")
    public suspend fun daysOfWeeks(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.daysOfWeeks = mapped
    }

    /**
     * @param value Hours of the day on which the trigger is scheduled.
     */
    @JvmName("becrkevvufwreceo")
    public suspend fun hours(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hours = mapped
    }

    /**
     * @param values Hours of the day on which the trigger is scheduled.
     */
    @JvmName("fqawnxmvvifjwiai")
    public suspend fun hours(vararg values: Int) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.hours = mapped
    }

    /**
     * @param value Minutes of the hour on which the trigger is scheduled.
     */
    @JvmName("nugapxiejpfcwbdr")
    public suspend fun minutes(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.minutes = mapped
    }

    /**
     * @param values Minutes of the hour on which the trigger is scheduled.
     */
    @JvmName("fyvtlcmsqunlyxrt")
    public suspend fun minutes(vararg values: Int) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.minutes = mapped
    }

    /**
     * @param value A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("cdtsulyppantylnk")
    public suspend fun monthlies(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.monthlies = mapped
    }

    /**
     * @param argument A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("hhsqkkgbqwdqhnff")
    public suspend fun monthlies(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            TriggerScheduleScheduleMonthlyArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.monthlies = mapped
    }

    /**
     * @param argument A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("ttnjpcxfihgmxhce")
    public suspend fun monthlies(vararg argument: suspend TriggerScheduleScheduleMonthlyArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            TriggerScheduleScheduleMonthlyArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.monthlies = mapped
    }

    /**
     * @param argument A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("qtcxajaolftaholw")
    public suspend fun monthlies(argument: suspend TriggerScheduleScheduleMonthlyArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            TriggerScheduleScheduleMonthlyArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.monthlies = mapped
    }

    /**
     * @param values A `monthly` block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency.
     */
    @JvmName("receatifxcwrierq")
    public suspend fun monthlies(vararg values: TriggerScheduleScheduleMonthlyArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.monthlies = mapped
    }

    internal fun build(): TriggerScheduleScheduleArgs = TriggerScheduleScheduleArgs(
        daysOfMonths = daysOfMonths,
        daysOfWeeks = daysOfWeeks,
        hours = hours,
        minutes = minutes,
        monthlies = monthlies,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy