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

com.pulumi.azure.monitoring.kotlin.inputs.AlertProcessingRuleActionGroupScheduleRecurrenceArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.monitoring.kotlin.inputs

import com.pulumi.azure.monitoring.inputs.AlertProcessingRuleActionGroupScheduleRecurrenceArgs.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.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property dailies One or more `daily` blocks as defined above.
 * @property monthlies One or more `monthly` blocks as defined above.
 * @property weeklies One or more `weekly` blocks as defined below.
 */
public data class AlertProcessingRuleActionGroupScheduleRecurrenceArgs(
    public val dailies: Output>? =
        null,
    public val monthlies: Output>? =
        null,
    public val weeklies: Output>? =
        null,
) :
    ConvertibleToJava {
    override fun toJava():
        com.pulumi.azure.monitoring.inputs.AlertProcessingRuleActionGroupScheduleRecurrenceArgs =
        com.pulumi.azure.monitoring.inputs.AlertProcessingRuleActionGroupScheduleRecurrenceArgs.builder()
            .dailies(
                dailies?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .monthlies(
                monthlies?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .weeklies(
                weeklies?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

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

    private var monthlies: Output>? =
        null

    private var weeklies: Output>? =
        null

    /**
     * @param value One or more `daily` blocks as defined above.
     */
    @JvmName("xhgkpqvdfxiivkjy")
    public suspend
    fun dailies(`value`: Output>) {
        this.dailies = value
    }

    @JvmName("iicbvfyorpjssxnc")
    public suspend fun dailies(
        vararg
        values: Output,
    ) {
        this.dailies = Output.all(values.asList())
    }

    /**
     * @param values One or more `daily` blocks as defined above.
     */
    @JvmName("nfvlubumaldiqqot")
    public suspend
    fun dailies(values: List>) {
        this.dailies = Output.all(values)
    }

    /**
     * @param value One or more `monthly` blocks as defined above.
     */
    @JvmName("jfcwaxxxvoiiiptf")
    public suspend
    fun monthlies(`value`: Output>) {
        this.monthlies = value
    }

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

    /**
     * @param values One or more `monthly` blocks as defined above.
     */
    @JvmName("raugcaxaxkmocmrd")
    public suspend
    fun monthlies(values: List>) {
        this.monthlies = Output.all(values)
    }

    /**
     * @param value One or more `weekly` blocks as defined below.
     */
    @JvmName("wftecfeeoudptsfp")
    public suspend
    fun weeklies(`value`: Output>) {
        this.weeklies = value
    }

    @JvmName("okmthiwlyqgqcbdj")
    public suspend fun weeklies(
        vararg
        values: Output,
    ) {
        this.weeklies = Output.all(values.asList())
    }

    /**
     * @param values One or more `weekly` blocks as defined below.
     */
    @JvmName("fdshplluadeajoge")
    public suspend
    fun weeklies(values: List>) {
        this.weeklies = Output.all(values)
    }

    /**
     * @param value One or more `daily` blocks as defined above.
     */
    @JvmName("anxlvfegtikkaaje")
    public suspend
    fun dailies(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dailies = mapped
    }

    /**
     * @param argument One or more `daily` blocks as defined above.
     */
    @JvmName("vhvrvbpqloldvfbp")
    public suspend
    fun dailies(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AlertProcessingRuleActionGroupScheduleRecurrenceDailyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.dailies = mapped
    }

    /**
     * @param argument One or more `daily` blocks as defined above.
     */
    @JvmName("mnkfdlmnglsqgjbk")
    public suspend fun dailies(
        vararg
        argument: suspend AlertProcessingRuleActionGroupScheduleRecurrenceDailyArgsBuilder.() -> Unit,
    ) {
        val toBeMapped = argument.toList().map {
            AlertProcessingRuleActionGroupScheduleRecurrenceDailyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.dailies = mapped
    }

    /**
     * @param argument One or more `daily` blocks as defined above.
     */
    @JvmName("oifuxujcuvndmmvh")
    public suspend
    fun dailies(argument: suspend AlertProcessingRuleActionGroupScheduleRecurrenceDailyArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                AlertProcessingRuleActionGroupScheduleRecurrenceDailyArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.dailies = mapped
    }

    /**
     * @param values One or more `daily` blocks as defined above.
     */
    @JvmName("orgqakpakvdkoweg")
    public suspend fun dailies(
        vararg
        values: AlertProcessingRuleActionGroupScheduleRecurrenceDailyArgs,
    ) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.dailies = mapped
    }

    /**
     * @param value One or more `monthly` blocks as defined above.
     */
    @JvmName("lgfyxflodtkdtrhe")
    public suspend
    fun monthlies(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.monthlies = mapped
    }

    /**
     * @param argument One or more `monthly` blocks as defined above.
     */
    @JvmName("qjpyfhojoeuekdki")
    public suspend
    fun monthlies(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AlertProcessingRuleActionGroupScheduleRecurrenceMonthlyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.monthlies = mapped
    }

    /**
     * @param argument One or more `monthly` blocks as defined above.
     */
    @JvmName("mcvutshfnkpipixc")
    public suspend fun monthlies(
        vararg
        argument: suspend AlertProcessingRuleActionGroupScheduleRecurrenceMonthlyArgsBuilder.() -> Unit,
    ) {
        val toBeMapped = argument.toList().map {
            AlertProcessingRuleActionGroupScheduleRecurrenceMonthlyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.monthlies = mapped
    }

    /**
     * @param argument One or more `monthly` blocks as defined above.
     */
    @JvmName("uudufmfvxxqnqdme")
    public suspend
    fun monthlies(argument: suspend AlertProcessingRuleActionGroupScheduleRecurrenceMonthlyArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                AlertProcessingRuleActionGroupScheduleRecurrenceMonthlyArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.monthlies = mapped
    }

    /**
     * @param values One or more `monthly` blocks as defined above.
     */
    @JvmName("xhdmflkqsdhkxsgy")
    public suspend fun monthlies(
        vararg
        values: AlertProcessingRuleActionGroupScheduleRecurrenceMonthlyArgs,
    ) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.monthlies = mapped
    }

    /**
     * @param value One or more `weekly` blocks as defined below.
     */
    @JvmName("ldlymjywjpipvfen")
    public suspend
    fun weeklies(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.weeklies = mapped
    }

    /**
     * @param argument One or more `weekly` blocks as defined below.
     */
    @JvmName("eaotoxiasiuahalk")
    public suspend
    fun weeklies(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AlertProcessingRuleActionGroupScheduleRecurrenceWeeklyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.weeklies = mapped
    }

    /**
     * @param argument One or more `weekly` blocks as defined below.
     */
    @JvmName("mtxbgubyhqakgjqt")
    public suspend fun weeklies(
        vararg
        argument: suspend AlertProcessingRuleActionGroupScheduleRecurrenceWeeklyArgsBuilder.() -> Unit,
    ) {
        val toBeMapped = argument.toList().map {
            AlertProcessingRuleActionGroupScheduleRecurrenceWeeklyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.weeklies = mapped
    }

    /**
     * @param argument One or more `weekly` blocks as defined below.
     */
    @JvmName("gjtyjcimnigsqonp")
    public suspend
    fun weeklies(argument: suspend AlertProcessingRuleActionGroupScheduleRecurrenceWeeklyArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                AlertProcessingRuleActionGroupScheduleRecurrenceWeeklyArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.weeklies = mapped
    }

    /**
     * @param values One or more `weekly` blocks as defined below.
     */
    @JvmName("coxmyylrpqbcatso")
    public suspend fun weeklies(
        vararg
        values: AlertProcessingRuleActionGroupScheduleRecurrenceWeeklyArgs,
    ) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.weeklies = mapped
    }

    internal fun build(): AlertProcessingRuleActionGroupScheduleRecurrenceArgs =
        AlertProcessingRuleActionGroupScheduleRecurrenceArgs(
            dailies = dailies,
            monthlies = monthlies,
            weeklies = weeklies,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy