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

com.pulumi.kubernetes.resource.v1alpha3.kotlin.inputs.DeviceAllocationResultArgs.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: 4.18.2.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.kubernetes.resource.v1alpha3.kotlin.inputs

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 com.pulumi.kubernetes.resource.v1alpha3.inputs.DeviceAllocationResultArgs.builder
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * DeviceAllocationResult is the result of allocating devices.
 * @property config This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
 * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
 * @property results Results lists all allocated devices.
 */
public data class DeviceAllocationResultArgs(
    public val config: Output>? = null,
    public val results: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.kubernetes.resource.v1alpha3.inputs.DeviceAllocationResultArgs =
        com.pulumi.kubernetes.resource.v1alpha3.inputs.DeviceAllocationResultArgs.builder()
            .config(config?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
            .results(
                results?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

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

    private var results: Output>? = null

    /**
     * @param value This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("tosynfrwkgyqgsno")
    public suspend fun config(`value`: Output>) {
        this.config = value
    }

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

    /**
     * @param values This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("hirocikqcmcgqxfa")
    public suspend fun config(values: List>) {
        this.config = Output.all(values)
    }

    /**
     * @param value Results lists all allocated devices.
     */
    @JvmName("uoenalljxlkexyme")
    public suspend fun results(`value`: Output>) {
        this.results = value
    }

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

    /**
     * @param values Results lists all allocated devices.
     */
    @JvmName("ojqqrygndsrkjjpt")
    public suspend fun results(values: List>) {
        this.results = Output.all(values)
    }

    /**
     * @param value This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("esufhowmqmraetqh")
    public suspend fun config(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.config = mapped
    }

    /**
     * @param argument This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("frdqcvdbwsginfwf")
    public suspend fun config(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DeviceAllocationConfigurationArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.config = mapped
    }

    /**
     * @param argument This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("umfbuaniqvidoelu")
    public suspend fun config(vararg argument: suspend DeviceAllocationConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DeviceAllocationConfigurationArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.config = mapped
    }

    /**
     * @param argument This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("plcmhmkdibnbxwkc")
    public suspend fun config(argument: suspend DeviceAllocationConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DeviceAllocationConfigurationArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.config = mapped
    }

    /**
     * @param values This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag.
     * This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters.
     */
    @JvmName("svbuqgftmlwvadch")
    public suspend fun config(vararg values: DeviceAllocationConfigurationArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.config = mapped
    }

    /**
     * @param value Results lists all allocated devices.
     */
    @JvmName("emtknxdbxebixhnl")
    public suspend fun results(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.results = mapped
    }

    /**
     * @param argument Results lists all allocated devices.
     */
    @JvmName("ukneelgidkcxmvco")
    public suspend fun results(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DeviceRequestAllocationResultArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.results = mapped
    }

    /**
     * @param argument Results lists all allocated devices.
     */
    @JvmName("tsdddxiwjvbladxb")
    public suspend fun results(vararg argument: suspend DeviceRequestAllocationResultArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DeviceRequestAllocationResultArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.results = mapped
    }

    /**
     * @param argument Results lists all allocated devices.
     */
    @JvmName("qjajwyhhuxywtpvd")
    public suspend fun results(argument: suspend DeviceRequestAllocationResultArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DeviceRequestAllocationResultArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.results = mapped
    }

    /**
     * @param values Results lists all allocated devices.
     */
    @JvmName("giywxuhycroujukx")
    public suspend fun results(vararg values: DeviceRequestAllocationResultArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.results = mapped
    }

    internal fun build(): DeviceAllocationResultArgs = DeviceAllocationResultArgs(
        config = config,
        results = results,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy