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

com.pulumi.azure.maintenance.kotlin.inputs.ConfigurationInstallPatchesArgs.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.14.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.maintenance.kotlin.inputs

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

/**
 *
 * @property linuxes A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
 * @property reboot Possible reboot preference as defined by the user based on which it would be decided to reboot the machine or not after the patch operation is completed. Possible values are `Always`, `IfRequired` and `Never`. This property only applies when `scope` is set to `InGuestPatch`.
 * @property windows A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
 */
public data class ConfigurationInstallPatchesArgs(
    public val linuxes: Output>? = null,
    public val reboot: Output? = null,
    public val windows: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.maintenance.inputs.ConfigurationInstallPatchesArgs =
        com.pulumi.azure.maintenance.inputs.ConfigurationInstallPatchesArgs.builder()
            .linuxes(
                linuxes?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .reboot(reboot?.applyValue({ args0 -> args0 }))
            .windows(
                windows?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

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

    private var reboot: Output? = null

    private var windows: Output>? = null

    /**
     * @param value A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("poaeigeesbnbtvhm")
    public suspend fun linuxes(`value`: Output>) {
        this.linuxes = value
    }

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

    /**
     * @param values A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("mtwqyuhymteiyadl")
    public suspend fun linuxes(values: List>) {
        this.linuxes = Output.all(values)
    }

    /**
     * @param value Possible reboot preference as defined by the user based on which it would be decided to reboot the machine or not after the patch operation is completed. Possible values are `Always`, `IfRequired` and `Never`. This property only applies when `scope` is set to `InGuestPatch`.
     */
    @JvmName("jgxvbloktpjyuqdf")
    public suspend fun reboot(`value`: Output) {
        this.reboot = value
    }

    /**
     * @param value A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("obebhdmpmmiwxper")
    public suspend fun windows(`value`: Output>) {
        this.windows = value
    }

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

    /**
     * @param values A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("yfnqioanaurewtcy")
    public suspend fun windows(values: List>) {
        this.windows = Output.all(values)
    }

    /**
     * @param value A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("dqjqmjmfmuxmkyuq")
    public suspend fun linuxes(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.linuxes = mapped
    }

    /**
     * @param argument A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("wocxcxxpshpkmrqv")
    public suspend
    fun linuxes(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ConfigurationInstallPatchesLinuxArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.linuxes = mapped
    }

    /**
     * @param argument A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("ntgiileyiojnddgw")
    public suspend fun linuxes(
        vararg
        argument: suspend ConfigurationInstallPatchesLinuxArgsBuilder.() -> Unit,
    ) {
        val toBeMapped = argument.toList().map {
            ConfigurationInstallPatchesLinuxArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.linuxes = mapped
    }

    /**
     * @param argument A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("sbhsljpothadbkdp")
    public suspend
    fun linuxes(argument: suspend ConfigurationInstallPatchesLinuxArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            ConfigurationInstallPatchesLinuxArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.linuxes = mapped
    }

    /**
     * @param values A `linux` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("gnflqkejeblhodkn")
    public suspend fun linuxes(vararg values: ConfigurationInstallPatchesLinuxArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.linuxes = mapped
    }

    /**
     * @param value Possible reboot preference as defined by the user based on which it would be decided to reboot the machine or not after the patch operation is completed. Possible values are `Always`, `IfRequired` and `Never`. This property only applies when `scope` is set to `InGuestPatch`.
     */
    @JvmName("ylrbgyifmiteeuph")
    public suspend fun reboot(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.reboot = mapped
    }

    /**
     * @param value A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("tuhllbnmgqxiuuyh")
    public suspend fun windows(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.windows = mapped
    }

    /**
     * @param argument A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("yeaduwbdgrfqsqnk")
    public suspend
    fun windows(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ConfigurationInstallPatchesWindowArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windows = mapped
    }

    /**
     * @param argument A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("mretmoprrxsggpcf")
    public suspend fun windows(
        vararg
        argument: suspend ConfigurationInstallPatchesWindowArgsBuilder.() -> Unit,
    ) {
        val toBeMapped = argument.toList().map {
            ConfigurationInstallPatchesWindowArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windows = mapped
    }

    /**
     * @param argument A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("cstbbtkgdpfwbaiv")
    public suspend
    fun windows(argument: suspend ConfigurationInstallPatchesWindowArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            ConfigurationInstallPatchesWindowArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.windows = mapped
    }

    /**
     * @param values A `windows` block as defined above. This property only applies when `scope` is set to `InGuestPatch`
     */
    @JvmName("uyikvoyohuvstboh")
    public suspend fun windows(vararg values: ConfigurationInstallPatchesWindowArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.windows = mapped
    }

    internal fun build(): ConfigurationInstallPatchesArgs = ConfigurationInstallPatchesArgs(
        linuxes = linuxes,
        reboot = reboot,
        windows = windows,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy