
com.pulumi.azurenative.subscription.kotlin.inputs.PutAliasRequestPropertiesArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.subscription.kotlin.inputs
import com.pulumi.azurenative.subscription.inputs.PutAliasRequestPropertiesArgs.builder
import com.pulumi.azurenative.subscription.kotlin.enums.Workload
import com.pulumi.core.Either
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.jvm.JvmName
/**
* Put subscription properties.
* @property additionalProperties Put alias request additional properties.
* @property billingScope Billing scope of the subscription.
* For CustomerLed and FieldLed - /billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}
* For PartnerLed - /billingAccounts/{billingAccountName}/customers/{customerName}
* For Legacy EA - /billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}
* @property displayName The friendly name of the subscription.
* @property resellerId Reseller Id
* @property subscriptionId This parameter can be used to create alias for existing subscription Id
* @property workload The workload type of the subscription. It can be either Production or DevTest.
*/
public data class PutAliasRequestPropertiesArgs(
public val additionalProperties: Output? = null,
public val billingScope: Output? = null,
public val displayName: Output? = null,
public val resellerId: Output? = null,
public val subscriptionId: Output? = null,
public val workload: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.subscription.inputs.PutAliasRequestPropertiesArgs =
com.pulumi.azurenative.subscription.inputs.PutAliasRequestPropertiesArgs.builder()
.additionalProperties(
additionalProperties?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.billingScope(billingScope?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.resellerId(resellerId?.applyValue({ args0 -> args0 }))
.subscriptionId(subscriptionId?.applyValue({ args0 -> args0 }))
.workload(
workload?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
).build()
}
/**
* Builder for [PutAliasRequestPropertiesArgs].
*/
@PulumiTagMarker
public class PutAliasRequestPropertiesArgsBuilder internal constructor() {
private var additionalProperties: Output? = null
private var billingScope: Output? = null
private var displayName: Output? = null
private var resellerId: Output? = null
private var subscriptionId: Output? = null
private var workload: Output>? = null
/**
* @param value Put alias request additional properties.
*/
@JvmName("rugjjfhnenwochea")
public suspend fun additionalProperties(`value`: Output) {
this.additionalProperties = value
}
/**
* @param value Billing scope of the subscription.
* For CustomerLed and FieldLed - /billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}
* For PartnerLed - /billingAccounts/{billingAccountName}/customers/{customerName}
* For Legacy EA - /billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}
*/
@JvmName("ywqtudgnvmnunuaa")
public suspend fun billingScope(`value`: Output) {
this.billingScope = value
}
/**
* @param value The friendly name of the subscription.
*/
@JvmName("almhrvdsnasufbmt")
public suspend fun displayName(`value`: Output) {
this.displayName = value
}
/**
* @param value Reseller Id
*/
@JvmName("tdbqxexvsavylsld")
public suspend fun resellerId(`value`: Output) {
this.resellerId = value
}
/**
* @param value This parameter can be used to create alias for existing subscription Id
*/
@JvmName("ferwlsrbksuoriwg")
public suspend fun subscriptionId(`value`: Output) {
this.subscriptionId = value
}
/**
* @param value The workload type of the subscription. It can be either Production or DevTest.
*/
@JvmName("kcdkwbnaobvxiyex")
public suspend fun workload(`value`: Output>) {
this.workload = value
}
/**
* @param value Put alias request additional properties.
*/
@JvmName("rkecwaitwduyjcva")
public suspend fun additionalProperties(`value`: PutAliasRequestAdditionalPropertiesArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.additionalProperties = mapped
}
/**
* @param argument Put alias request additional properties.
*/
@JvmName("bdyyjkdshnkctltd")
public suspend fun additionalProperties(argument: suspend PutAliasRequestAdditionalPropertiesArgsBuilder.() -> Unit) {
val toBeMapped = PutAliasRequestAdditionalPropertiesArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.additionalProperties = mapped
}
/**
* @param value Billing scope of the subscription.
* For CustomerLed and FieldLed - /billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}
* For PartnerLed - /billingAccounts/{billingAccountName}/customers/{customerName}
* For Legacy EA - /billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}
*/
@JvmName("xceiucrmvrxdspex")
public suspend fun billingScope(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.billingScope = mapped
}
/**
* @param value The friendly name of the subscription.
*/
@JvmName("sudjtljpqmxjqcej")
public suspend fun displayName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.displayName = mapped
}
/**
* @param value Reseller Id
*/
@JvmName("qddpdqvuqabghmyc")
public suspend fun resellerId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resellerId = mapped
}
/**
* @param value This parameter can be used to create alias for existing subscription Id
*/
@JvmName("jgpmofsjcigknvqn")
public suspend fun subscriptionId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.subscriptionId = mapped
}
/**
* @param value The workload type of the subscription. It can be either Production or DevTest.
*/
@JvmName("gpfgvdprqlmutsfh")
public suspend fun workload(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.workload = mapped
}
/**
* @param value The workload type of the subscription. It can be either Production or DevTest.
*/
@JvmName("rifwxdevafdiftcb")
public fun workload(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.workload = mapped
}
/**
* @param value The workload type of the subscription. It can be either Production or DevTest.
*/
@JvmName("htonjcvjoxdxfuyq")
public fun workload(`value`: Workload) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.workload = mapped
}
internal fun build(): PutAliasRequestPropertiesArgs = PutAliasRequestPropertiesArgs(
additionalProperties = additionalProperties,
billingScope = billingScope,
displayName = displayName,
resellerId = resellerId,
subscriptionId = subscriptionId,
workload = workload,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy