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

com.pulumi.kubernetes.resource.v1alpha2.kotlin.inputs.ResourceClaimParametersReferenceArgs.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.

The newest version!
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

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

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kubernetes.resource.v1alpha2.inputs.ResourceClaimParametersReferenceArgs.builder
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * ResourceClaimParametersReference contains enough information to let you locate the parameters for a ResourceClaim. The object must be in the same namespace as the ResourceClaim.
 * @property apiGroup APIGroup is the group for the resource being referenced. It is empty for the core API. This matches the group in the APIVersion that is used when creating the resources.
 * @property kind Kind is the type of resource being referenced. This is the same value as in the parameter object's metadata, for example "ConfigMap".
 * @property name Name is the name of resource being referenced.
 */
public data class ResourceClaimParametersReferenceArgs(
    public val apiGroup: Output? = null,
    public val kind: Output,
    public val name: Output,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.kubernetes.resource.v1alpha2.inputs.ResourceClaimParametersReferenceArgs =
        com.pulumi.kubernetes.resource.v1alpha2.inputs.ResourceClaimParametersReferenceArgs.builder()
            .apiGroup(apiGroup?.applyValue({ args0 -> args0 }))
            .kind(kind.applyValue({ args0 -> args0 }))
            .name(name.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ResourceClaimParametersReferenceArgs].
 */
@PulumiTagMarker
public class ResourceClaimParametersReferenceArgsBuilder internal constructor() {
    private var apiGroup: Output? = null

    private var kind: Output? = null

    private var name: Output? = null

    /**
     * @param value APIGroup is the group for the resource being referenced. It is empty for the core API. This matches the group in the APIVersion that is used when creating the resources.
     */
    @JvmName("pohiydvwlbbknoty")
    public suspend fun apiGroup(`value`: Output) {
        this.apiGroup = value
    }

    /**
     * @param value Kind is the type of resource being referenced. This is the same value as in the parameter object's metadata, for example "ConfigMap".
     */
    @JvmName("vwillhrjhaykrjku")
    public suspend fun kind(`value`: Output) {
        this.kind = value
    }

    /**
     * @param value Name is the name of resource being referenced.
     */
    @JvmName("mnerrxfmlhmcroqc")
    public suspend fun name(`value`: Output) {
        this.name = value
    }

    /**
     * @param value APIGroup is the group for the resource being referenced. It is empty for the core API. This matches the group in the APIVersion that is used when creating the resources.
     */
    @JvmName("sggktruchsppchuj")
    public suspend fun apiGroup(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.apiGroup = mapped
    }

    /**
     * @param value Kind is the type of resource being referenced. This is the same value as in the parameter object's metadata, for example "ConfigMap".
     */
    @JvmName("ncfbpafomygmyqlc")
    public suspend fun kind(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kind = mapped
    }

    /**
     * @param value Name is the name of resource being referenced.
     */
    @JvmName("uwkuammkcggqkbnx")
    public suspend fun name(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.name = mapped
    }

    internal fun build(): ResourceClaimParametersReferenceArgs = ResourceClaimParametersReferenceArgs(
        apiGroup = apiGroup,
        kind = kind ?: throw PulumiNullFieldException("kind"),
        name = name ?: throw PulumiNullFieldException("name"),
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy