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

com.pulumi.azurenative.providerhub.kotlin.inputs.DefaultRolloutPropertiesSpecificationArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.providerhub.kotlin.inputs

import com.pulumi.azurenative.providerhub.inputs.DefaultRolloutPropertiesSpecificationArgs.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 canary
 * @property expeditedRollout
 * @property highTraffic
 * @property lowTraffic
 * @property mediumTraffic
 * @property providerRegistration
 * @property resourceTypeRegistrations
 * @property restOfTheWorldGroupOne
 * @property restOfTheWorldGroupTwo
 */
public data class DefaultRolloutPropertiesSpecificationArgs(
    public val canary: Output? = null,
    public val expeditedRollout: Output? = null,
    public val highTraffic: Output? = null,
    public val lowTraffic: Output? = null,
    public val mediumTraffic: Output? = null,
    public val providerRegistration: Output? =
        null,
    public val resourceTypeRegistrations: Output>? = null,
    public val restOfTheWorldGroupOne: Output? =
        null,
    public val restOfTheWorldGroupTwo: Output? =
        null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.providerhub.inputs.DefaultRolloutPropertiesSpecificationArgs =
        com.pulumi.azurenative.providerhub.inputs.DefaultRolloutPropertiesSpecificationArgs.builder()
            .canary(canary?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .expeditedRollout(expeditedRollout?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .highTraffic(highTraffic?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .lowTraffic(lowTraffic?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .mediumTraffic(mediumTraffic?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .providerRegistration(
                providerRegistration?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .resourceTypeRegistrations(
                resourceTypeRegistrations?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .restOfTheWorldGroupOne(
                restOfTheWorldGroupOne?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .restOfTheWorldGroupTwo(
                restOfTheWorldGroupTwo?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [DefaultRolloutPropertiesSpecificationArgs].
 */
@PulumiTagMarker
public class DefaultRolloutPropertiesSpecificationArgsBuilder internal constructor() {
    private var canary: Output? = null

    private var expeditedRollout: Output? = null

    private var highTraffic: Output? = null

    private var lowTraffic: Output? = null

    private var mediumTraffic: Output? = null

    private var providerRegistration: Output? =
        null

    private var resourceTypeRegistrations: Output>? = null

    private var restOfTheWorldGroupOne: Output? =
        null

    private var restOfTheWorldGroupTwo: Output? =
        null

    /**
     * @param value
     */
    @JvmName("yptmpaynhmvmlavn")
    public suspend fun canary(`value`: Output) {
        this.canary = value
    }

    /**
     * @param value
     */
    @JvmName("vgvmsruuixmjhxdd")
    public suspend fun expeditedRollout(`value`: Output) {
        this.expeditedRollout = value
    }

    /**
     * @param value
     */
    @JvmName("nqlglsiikugwfohr")
    public suspend fun highTraffic(`value`: Output) {
        this.highTraffic = value
    }

    /**
     * @param value
     */
    @JvmName("oobxvtbhbukkqbwg")
    public suspend fun lowTraffic(`value`: Output) {
        this.lowTraffic = value
    }

    /**
     * @param value
     */
    @JvmName("esbyqplsqmdciyes")
    public suspend fun mediumTraffic(`value`: Output) {
        this.mediumTraffic = value
    }

    /**
     * @param value
     */
    @JvmName("ksadopdfxglepyax")
    public suspend fun providerRegistration(`value`: Output) {
        this.providerRegistration = value
    }

    /**
     * @param value
     */
    @JvmName("lbprpoxvfbupktfa")
    public suspend fun resourceTypeRegistrations(`value`: Output>) {
        this.resourceTypeRegistrations = value
    }

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

    /**
     * @param values
     */
    @JvmName("neufbidsgksaapwr")
    public suspend fun resourceTypeRegistrations(values: List>) {
        this.resourceTypeRegistrations = Output.all(values)
    }

    /**
     * @param value
     */
    @JvmName("twlsdvtlulmyeqwl")
    public suspend fun restOfTheWorldGroupOne(`value`: Output) {
        this.restOfTheWorldGroupOne = value
    }

    /**
     * @param value
     */
    @JvmName("wwxrcojfwcxtjlxm")
    public suspend fun restOfTheWorldGroupTwo(`value`: Output) {
        this.restOfTheWorldGroupTwo = value
    }

    /**
     * @param value
     */
    @JvmName("duwlcvkifybhdhcb")
    public suspend fun canary(`value`: DefaultRolloutSpecificationCanaryArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.canary = mapped
    }

    /**
     * @param argument
     */
    @JvmName("hhknovyhbsyrithf")
    public suspend fun canary(argument: suspend DefaultRolloutSpecificationCanaryArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationCanaryArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.canary = mapped
    }

    /**
     * @param value
     */
    @JvmName("vjopnrbgabvlduge")
    public suspend fun expeditedRollout(`value`: DefaultRolloutSpecificationExpeditedRolloutArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.expeditedRollout = mapped
    }

    /**
     * @param argument
     */
    @JvmName("pdjtrkouejyueomt")
    public suspend fun expeditedRollout(argument: suspend DefaultRolloutSpecificationExpeditedRolloutArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationExpeditedRolloutArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.expeditedRollout = mapped
    }

    /**
     * @param value
     */
    @JvmName("kluchynqowtrwrkd")
    public suspend fun highTraffic(`value`: DefaultRolloutSpecificationHighTrafficArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.highTraffic = mapped
    }

    /**
     * @param argument
     */
    @JvmName("xckmprbsxdksjjhm")
    public suspend fun highTraffic(argument: suspend DefaultRolloutSpecificationHighTrafficArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationHighTrafficArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.highTraffic = mapped
    }

    /**
     * @param value
     */
    @JvmName("uoyyfqqwysklsrjr")
    public suspend fun lowTraffic(`value`: DefaultRolloutSpecificationLowTrafficArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.lowTraffic = mapped
    }

    /**
     * @param argument
     */
    @JvmName("ewwofyctqqgchtmy")
    public suspend fun lowTraffic(argument: suspend DefaultRolloutSpecificationLowTrafficArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationLowTrafficArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.lowTraffic = mapped
    }

    /**
     * @param value
     */
    @JvmName("ickltkyvpeqbvxft")
    public suspend fun mediumTraffic(`value`: DefaultRolloutSpecificationMediumTrafficArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mediumTraffic = mapped
    }

    /**
     * @param argument
     */
    @JvmName("blbjeudowsaciwve")
    public suspend fun mediumTraffic(argument: suspend DefaultRolloutSpecificationMediumTrafficArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationMediumTrafficArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.mediumTraffic = mapped
    }

    /**
     * @param value
     */
    @JvmName("ptdbmorcvpbodcyy")
    public suspend fun providerRegistration(`value`: DefaultRolloutSpecificationProviderRegistrationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.providerRegistration = mapped
    }

    /**
     * @param argument
     */
    @JvmName("owieaymkhoaxngei")
    public suspend fun providerRegistration(argument: suspend DefaultRolloutSpecificationProviderRegistrationArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationProviderRegistrationArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.providerRegistration = mapped
    }

    /**
     * @param value
     */
    @JvmName("imrpfgdynaorwukt")
    public suspend fun resourceTypeRegistrations(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.resourceTypeRegistrations = mapped
    }

    /**
     * @param argument
     */
    @JvmName("fbsevwltxepmlvrm")
    public suspend fun resourceTypeRegistrations(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ResourceTypeRegistrationArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.resourceTypeRegistrations = mapped
    }

    /**
     * @param argument
     */
    @JvmName("hbuhkbyakvdxdcyf")
    public suspend fun resourceTypeRegistrations(vararg argument: suspend ResourceTypeRegistrationArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            ResourceTypeRegistrationArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.resourceTypeRegistrations = mapped
    }

    /**
     * @param argument
     */
    @JvmName("kjqyhfobcjtppuuh")
    public suspend fun resourceTypeRegistrations(argument: suspend ResourceTypeRegistrationArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            ResourceTypeRegistrationArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.resourceTypeRegistrations = mapped
    }

    /**
     * @param values
     */
    @JvmName("ywutswsjcuctvybn")
    public suspend fun resourceTypeRegistrations(vararg values: ResourceTypeRegistrationArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.resourceTypeRegistrations = mapped
    }

    /**
     * @param value
     */
    @JvmName("ncqkopwkutqmuenq")
    public suspend fun restOfTheWorldGroupOne(`value`: DefaultRolloutSpecificationRestOfTheWorldGroupOneArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.restOfTheWorldGroupOne = mapped
    }

    /**
     * @param argument
     */
    @JvmName("pqsutpkxuvspiriw")
    public suspend fun restOfTheWorldGroupOne(argument: suspend DefaultRolloutSpecificationRestOfTheWorldGroupOneArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationRestOfTheWorldGroupOneArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.restOfTheWorldGroupOne = mapped
    }

    /**
     * @param value
     */
    @JvmName("yogvedpsgqbhnfpx")
    public suspend fun restOfTheWorldGroupTwo(`value`: DefaultRolloutSpecificationRestOfTheWorldGroupTwoArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.restOfTheWorldGroupTwo = mapped
    }

    /**
     * @param argument
     */
    @JvmName("oydaiodiebgmcuax")
    public suspend fun restOfTheWorldGroupTwo(argument: suspend DefaultRolloutSpecificationRestOfTheWorldGroupTwoArgsBuilder.() -> Unit) {
        val toBeMapped = DefaultRolloutSpecificationRestOfTheWorldGroupTwoArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.restOfTheWorldGroupTwo = mapped
    }

    internal fun build(): DefaultRolloutPropertiesSpecificationArgs =
        DefaultRolloutPropertiesSpecificationArgs(
            canary = canary,
            expeditedRollout = expeditedRollout,
            highTraffic = highTraffic,
            lowTraffic = lowTraffic,
            mediumTraffic = mediumTraffic,
            providerRegistration = providerRegistration,
            resourceTypeRegistrations = resourceTypeRegistrations,
            restOfTheWorldGroupOne = restOfTheWorldGroupOne,
            restOfTheWorldGroupTwo = restOfTheWorldGroupTwo,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy