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

com.pulumi.alicloud.emrv2.kotlin.inputs.ClusterNodeGroupSubscriptionConfigArgs.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: 3.62.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.alicloud.emrv2.kotlin.inputs

import com.pulumi.alicloud.emrv2.inputs.ClusterNodeGroupSubscriptionConfigArgs.builder
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 kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property autoPayOrder Auto pay order for payment type of subscription, ’true’ or ‘false’ .
 * @property autoRenew Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.
 * @property autoRenewDuration If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.
 * @property autoRenewDurationUnit If paymentType is Subscription, this should be specified. Supported value: Month or Year.
 * @property paymentDuration If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.
 * @property paymentDurationUnit If paymentType is Subscription, this should be specified. Supported value: Month or Year.
 */
public data class ClusterNodeGroupSubscriptionConfigArgs(
    public val autoPayOrder: Output? = null,
    public val autoRenew: Output? = null,
    public val autoRenewDuration: Output? = null,
    public val autoRenewDurationUnit: Output? = null,
    public val paymentDuration: Output,
    public val paymentDurationUnit: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.alicloud.emrv2.inputs.ClusterNodeGroupSubscriptionConfigArgs =
        com.pulumi.alicloud.emrv2.inputs.ClusterNodeGroupSubscriptionConfigArgs.builder()
            .autoPayOrder(autoPayOrder?.applyValue({ args0 -> args0 }))
            .autoRenew(autoRenew?.applyValue({ args0 -> args0 }))
            .autoRenewDuration(autoRenewDuration?.applyValue({ args0 -> args0 }))
            .autoRenewDurationUnit(autoRenewDurationUnit?.applyValue({ args0 -> args0 }))
            .paymentDuration(paymentDuration.applyValue({ args0 -> args0 }))
            .paymentDurationUnit(paymentDurationUnit.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ClusterNodeGroupSubscriptionConfigArgs].
 */
@PulumiTagMarker
public class ClusterNodeGroupSubscriptionConfigArgsBuilder internal constructor() {
    private var autoPayOrder: Output? = null

    private var autoRenew: Output? = null

    private var autoRenewDuration: Output? = null

    private var autoRenewDurationUnit: Output? = null

    private var paymentDuration: Output? = null

    private var paymentDurationUnit: Output? = null

    /**
     * @param value Auto pay order for payment type of subscription, ’true’ or ‘false’ .
     */
    @JvmName("oebjsngleisagydw")
    public suspend fun autoPayOrder(`value`: Output) {
        this.autoPayOrder = value
    }

    /**
     * @param value Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.
     */
    @JvmName("wglvxsjphglyeqoq")
    public suspend fun autoRenew(`value`: Output) {
        this.autoRenew = value
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.
     */
    @JvmName("ttibgkcprfelxrce")
    public suspend fun autoRenewDuration(`value`: Output) {
        this.autoRenewDuration = value
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: Month or Year.
     */
    @JvmName("ajypqekiqxjqktfn")
    public suspend fun autoRenewDurationUnit(`value`: Output) {
        this.autoRenewDurationUnit = value
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.
     */
    @JvmName("vgtqwxgtjbfeyvxm")
    public suspend fun paymentDuration(`value`: Output) {
        this.paymentDuration = value
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: Month or Year.
     */
    @JvmName("vgvtdrxtghgchkls")
    public suspend fun paymentDurationUnit(`value`: Output) {
        this.paymentDurationUnit = value
    }

    /**
     * @param value Auto pay order for payment type of subscription, ’true’ or ‘false’ .
     */
    @JvmName("qbbybpffuiqaabti")
    public suspend fun autoPayOrder(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoPayOrder = mapped
    }

    /**
     * @param value Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.
     */
    @JvmName("rshkfqfvebxhcylw")
    public suspend fun autoRenew(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoRenew = mapped
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.
     */
    @JvmName("sydtdpetuhfvycig")
    public suspend fun autoRenewDuration(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoRenewDuration = mapped
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: Month or Year.
     */
    @JvmName("lwgwhxtbkreguvgs")
    public suspend fun autoRenewDurationUnit(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoRenewDurationUnit = mapped
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.
     */
    @JvmName("wdjrqvcfsaatjxpk")
    public suspend fun paymentDuration(`value`: Int) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.paymentDuration = mapped
    }

    /**
     * @param value If paymentType is Subscription, this should be specified. Supported value: Month or Year.
     */
    @JvmName("vhapdhsgncnqmxwd")
    public suspend fun paymentDurationUnit(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.paymentDurationUnit = mapped
    }

    internal fun build(): ClusterNodeGroupSubscriptionConfigArgs =
        ClusterNodeGroupSubscriptionConfigArgs(
            autoPayOrder = autoPayOrder,
            autoRenew = autoRenew,
            autoRenewDuration = autoRenewDuration,
            autoRenewDurationUnit = autoRenewDurationUnit,
            paymentDuration = paymentDuration ?: throw PulumiNullFieldException("paymentDuration"),
            paymentDurationUnit = paymentDurationUnit ?: throw PulumiNullFieldException("paymentDurationUnit"),
        )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy