Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.eventhub.kotlin.NamespaceArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.eventhub.kotlin
import com.pulumi.azurenative.eventhub.NamespaceArgs.builder
import com.pulumi.azurenative.eventhub.kotlin.enums.PublicNetworkAccess
import com.pulumi.azurenative.eventhub.kotlin.enums.TlsVersion
import com.pulumi.azurenative.eventhub.kotlin.inputs.EncryptionArgs
import com.pulumi.azurenative.eventhub.kotlin.inputs.EncryptionArgsBuilder
import com.pulumi.azurenative.eventhub.kotlin.inputs.IdentityArgs
import com.pulumi.azurenative.eventhub.kotlin.inputs.IdentityArgsBuilder
import com.pulumi.azurenative.eventhub.kotlin.inputs.PrivateEndpointConnectionArgs
import com.pulumi.azurenative.eventhub.kotlin.inputs.PrivateEndpointConnectionArgsBuilder
import com.pulumi.azurenative.eventhub.kotlin.inputs.SkuArgs
import com.pulumi.azurenative.eventhub.kotlin.inputs.SkuArgsBuilder
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.Boolean
import kotlin.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Single Namespace item in List or Get Operation
* Azure REST API version: 2022-10-01-preview. Prior API version in Azure Native 1.x: 2017-04-01.
* Other available API versions: 2015-08-01, 2023-01-01-preview, 2024-01-01, 2024-05-01-preview.
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:eventhub:Namespace NamespaceSample /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}
* ```
* @property alternateName Alternate name specified when alias and namespace names are same.
* @property clusterArmId Cluster ARM ID of the Namespace.
* @property disableLocalAuth This property disables SAS authentication for the Event Hubs namespace.
* @property encryption Properties of BYOK Encryption description
* @property identity Properties of BYOK Identity description
* @property isAutoInflateEnabled Value that indicates whether AutoInflate is enabled for eventhub namespace.
* @property kafkaEnabled Value that indicates whether Kafka is enabled for eventhub namespace.
* @property location Resource location.
* @property maximumThroughputUnits Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)
* @property minimumTlsVersion The minimum TLS version for the cluster to support, e.g. '1.2'
* @property namespaceName The Namespace name
* @property privateEndpointConnections List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
* @property publicNetworkAccess This determines if traffic is allowed over public network. By default it is enabled.
* @property resourceGroupName Name of the resource group within the azure subscription.
* @property sku Properties of sku resource
* @property tags Resource tags.
* @property zoneRedundant Enabling this property creates a Standard Event Hubs Namespace in regions supported availability zones.
*/
public data class NamespaceArgs(
public val alternateName: Output? = null,
public val clusterArmId: Output? = null,
public val disableLocalAuth: Output? = null,
public val encryption: Output? = null,
public val identity: Output? = null,
public val isAutoInflateEnabled: Output? = null,
public val kafkaEnabled: Output? = null,
public val location: Output? = null,
public val maximumThroughputUnits: Output? = null,
public val minimumTlsVersion: Output>? = null,
public val namespaceName: Output? = null,
public val privateEndpointConnections: Output>? = null,
public val publicNetworkAccess: Output>? = null,
public val resourceGroupName: Output? = null,
public val sku: Output? = null,
public val tags: Output>? = null,
public val zoneRedundant: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.eventhub.NamespaceArgs =
com.pulumi.azurenative.eventhub.NamespaceArgs.builder()
.alternateName(alternateName?.applyValue({ args0 -> args0 }))
.clusterArmId(clusterArmId?.applyValue({ args0 -> args0 }))
.disableLocalAuth(disableLocalAuth?.applyValue({ args0 -> args0 }))
.encryption(encryption?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.identity(identity?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.isAutoInflateEnabled(isAutoInflateEnabled?.applyValue({ args0 -> args0 }))
.kafkaEnabled(kafkaEnabled?.applyValue({ args0 -> args0 }))
.location(location?.applyValue({ args0 -> args0 }))
.maximumThroughputUnits(maximumThroughputUnits?.applyValue({ args0 -> args0 }))
.minimumTlsVersion(
minimumTlsVersion?.applyValue({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
}),
)
.namespaceName(namespaceName?.applyValue({ args0 -> args0 }))
.privateEndpointConnections(
privateEndpointConnections?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.publicNetworkAccess(
publicNetworkAccess?.applyValue({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
}),
)
.resourceGroupName(resourceGroupName?.applyValue({ args0 -> args0 }))
.sku(sku?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.key.to(args0.value) }).toMap() }))
.zoneRedundant(zoneRedundant?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [NamespaceArgs].
*/
@PulumiTagMarker
public class NamespaceArgsBuilder internal constructor() {
private var alternateName: Output? = null
private var clusterArmId: Output? = null
private var disableLocalAuth: Output? = null
private var encryption: Output? = null
private var identity: Output? = null
private var isAutoInflateEnabled: Output? = null
private var kafkaEnabled: Output? = null
private var location: Output? = null
private var maximumThroughputUnits: Output? = null
private var minimumTlsVersion: Output>? = null
private var namespaceName: Output? = null
private var privateEndpointConnections: Output>? = null
private var publicNetworkAccess: Output>? = null
private var resourceGroupName: Output? = null
private var sku: Output? = null
private var tags: Output>? = null
private var zoneRedundant: Output? = null
/**
* @param value Alternate name specified when alias and namespace names are same.
*/
@JvmName("montqyjuqngdkuty")
public suspend fun alternateName(`value`: Output) {
this.alternateName = value
}
/**
* @param value Cluster ARM ID of the Namespace.
*/
@JvmName("gltmuycksookcbxs")
public suspend fun clusterArmId(`value`: Output) {
this.clusterArmId = value
}
/**
* @param value This property disables SAS authentication for the Event Hubs namespace.
*/
@JvmName("bohtyjnqnkesiwqn")
public suspend fun disableLocalAuth(`value`: Output) {
this.disableLocalAuth = value
}
/**
* @param value Properties of BYOK Encryption description
*/
@JvmName("seqcycxjgusqwqum")
public suspend fun encryption(`value`: Output) {
this.encryption = value
}
/**
* @param value Properties of BYOK Identity description
*/
@JvmName("ugjofhgcshquslxw")
public suspend fun identity(`value`: Output) {
this.identity = value
}
/**
* @param value Value that indicates whether AutoInflate is enabled for eventhub namespace.
*/
@JvmName("ansjucytyndrkuvq")
public suspend fun isAutoInflateEnabled(`value`: Output) {
this.isAutoInflateEnabled = value
}
/**
* @param value Value that indicates whether Kafka is enabled for eventhub namespace.
*/
@JvmName("duqavldnkqvibepk")
public suspend fun kafkaEnabled(`value`: Output) {
this.kafkaEnabled = value
}
/**
* @param value Resource location.
*/
@JvmName("vltuhovxlwlepsca")
public suspend fun location(`value`: Output) {
this.location = value
}
/**
* @param value Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)
*/
@JvmName("egejxpjxmcxkibyh")
public suspend fun maximumThroughputUnits(`value`: Output) {
this.maximumThroughputUnits = value
}
/**
* @param value The minimum TLS version for the cluster to support, e.g. '1.2'
*/
@JvmName("mroxubhavqbixnye")
public suspend fun minimumTlsVersion(`value`: Output>) {
this.minimumTlsVersion = value
}
/**
* @param value The Namespace name
*/
@JvmName("oeedbgncwlkugbsd")
public suspend fun namespaceName(`value`: Output) {
this.namespaceName = value
}
/**
* @param value List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("yeeikvcklxvihlgg")
public suspend fun privateEndpointConnections(`value`: Output>) {
this.privateEndpointConnections = value
}
@JvmName("gjsmuoffmxnfllya")
public suspend fun privateEndpointConnections(vararg values: Output) {
this.privateEndpointConnections = Output.all(values.asList())
}
/**
* @param values List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("oenaoihxjxmbxqdr")
public suspend fun privateEndpointConnections(values: List>) {
this.privateEndpointConnections = Output.all(values)
}
/**
* @param value This determines if traffic is allowed over public network. By default it is enabled.
*/
@JvmName("wlcitxxthaajkdou")
public suspend fun publicNetworkAccess(`value`: Output>) {
this.publicNetworkAccess = value
}
/**
* @param value Name of the resource group within the azure subscription.
*/
@JvmName("ghcludjiagykamya")
public suspend fun resourceGroupName(`value`: Output) {
this.resourceGroupName = value
}
/**
* @param value Properties of sku resource
*/
@JvmName("mokuyxoxxprjflvb")
public suspend fun sku(`value`: Output) {
this.sku = value
}
/**
* @param value Resource tags.
*/
@JvmName("ycephgjbyillgocu")
public suspend fun tags(`value`: Output>) {
this.tags = value
}
/**
* @param value Enabling this property creates a Standard Event Hubs Namespace in regions supported availability zones.
*/
@JvmName("xeerchsfoexfutfi")
public suspend fun zoneRedundant(`value`: Output) {
this.zoneRedundant = value
}
/**
* @param value Alternate name specified when alias and namespace names are same.
*/
@JvmName("qsowpvoehbesqbrv")
public suspend fun alternateName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.alternateName = mapped
}
/**
* @param value Cluster ARM ID of the Namespace.
*/
@JvmName("aeabtoyuerkwjowv")
public suspend fun clusterArmId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.clusterArmId = mapped
}
/**
* @param value This property disables SAS authentication for the Event Hubs namespace.
*/
@JvmName("ijcrupqcmkdxuofm")
public suspend fun disableLocalAuth(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.disableLocalAuth = mapped
}
/**
* @param value Properties of BYOK Encryption description
*/
@JvmName("ncfmhynmhsfqehml")
public suspend fun encryption(`value`: EncryptionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.encryption = mapped
}
/**
* @param argument Properties of BYOK Encryption description
*/
@JvmName("fgeenjocqogoqets")
public suspend fun encryption(argument: suspend EncryptionArgsBuilder.() -> Unit) {
val toBeMapped = EncryptionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.encryption = mapped
}
/**
* @param value Properties of BYOK Identity description
*/
@JvmName("qsebfhylckjsdqpn")
public suspend fun identity(`value`: IdentityArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.identity = mapped
}
/**
* @param argument Properties of BYOK Identity description
*/
@JvmName("fdgxxpanhmxweutp")
public suspend fun identity(argument: suspend IdentityArgsBuilder.() -> Unit) {
val toBeMapped = IdentityArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.identity = mapped
}
/**
* @param value Value that indicates whether AutoInflate is enabled for eventhub namespace.
*/
@JvmName("cvrceattuwamuhpx")
public suspend fun isAutoInflateEnabled(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.isAutoInflateEnabled = mapped
}
/**
* @param value Value that indicates whether Kafka is enabled for eventhub namespace.
*/
@JvmName("mjmpahgfoumjxlvt")
public suspend fun kafkaEnabled(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kafkaEnabled = mapped
}
/**
* @param value Resource location.
*/
@JvmName("lucgecywlnkqxmiq")
public suspend fun location(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.location = mapped
}
/**
* @param value Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)
*/
@JvmName("sscbogxlsyasnbth")
public suspend fun maximumThroughputUnits(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maximumThroughputUnits = mapped
}
/**
* @param value The minimum TLS version for the cluster to support, e.g. '1.2'
*/
@JvmName("askcsgdvesvtxdxt")
public suspend fun minimumTlsVersion(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.minimumTlsVersion = mapped
}
/**
* @param value The minimum TLS version for the cluster to support, e.g. '1.2'
*/
@JvmName("ernyawjvjmdrmdhw")
public fun minimumTlsVersion(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.minimumTlsVersion = mapped
}
/**
* @param value The minimum TLS version for the cluster to support, e.g. '1.2'
*/
@JvmName("touvkiycoretmfab")
public fun minimumTlsVersion(`value`: TlsVersion) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.minimumTlsVersion = mapped
}
/**
* @param value The Namespace name
*/
@JvmName("ufbfdpigsdenpmtv")
public suspend fun namespaceName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.namespaceName = mapped
}
/**
* @param value List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("kjpqfrbkqgvrkiim")
public suspend fun privateEndpointConnections(`value`: List?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.privateEndpointConnections = mapped
}
/**
* @param argument List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("xuhmloekjobosjtc")
public suspend fun privateEndpointConnections(argument: List Unit>) {
val toBeMapped = argument.toList().map {
PrivateEndpointConnectionArgsBuilder().applySuspend {
it()
}.build()
}
val mapped = of(toBeMapped)
this.privateEndpointConnections = mapped
}
/**
* @param argument List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("cxsarlyehedifixr")
public suspend fun privateEndpointConnections(vararg argument: suspend PrivateEndpointConnectionArgsBuilder.() -> Unit) {
val toBeMapped = argument.toList().map {
PrivateEndpointConnectionArgsBuilder().applySuspend {
it()
}.build()
}
val mapped = of(toBeMapped)
this.privateEndpointConnections = mapped
}
/**
* @param argument List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("jguydyiinujweued")
public suspend fun privateEndpointConnections(argument: suspend PrivateEndpointConnectionArgsBuilder.() -> Unit) {
val toBeMapped = listOf(
PrivateEndpointConnectionArgsBuilder().applySuspend {
argument()
}.build(),
)
val mapped = of(toBeMapped)
this.privateEndpointConnections = mapped
}
/**
* @param values List of private endpoint connections.
* These are also available as standalone resources. Do not mix inline and standalone resource as they will conflict with each other, leading to resources deletion.
*/
@JvmName("aiieypmfwbfxgdpf")
public suspend fun privateEndpointConnections(vararg values: PrivateEndpointConnectionArgs) {
val toBeMapped = values.toList()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.privateEndpointConnections = mapped
}
/**
* @param value This determines if traffic is allowed over public network. By default it is enabled.
*/
@JvmName("nnjaqpuylralxsqg")
public suspend fun publicNetworkAccess(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.publicNetworkAccess = mapped
}
/**
* @param value This determines if traffic is allowed over public network. By default it is enabled.
*/
@JvmName("jnbmsgfesfgctint")
public fun publicNetworkAccess(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.publicNetworkAccess = mapped
}
/**
* @param value This determines if traffic is allowed over public network. By default it is enabled.
*/
@JvmName("atvimhfnaxdicgnj")
public fun publicNetworkAccess(`value`: PublicNetworkAccess) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.publicNetworkAccess = mapped
}
/**
* @param value Name of the resource group within the azure subscription.
*/
@JvmName("vtfpwxhuxbojiees")
public suspend fun resourceGroupName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resourceGroupName = mapped
}
/**
* @param value Properties of sku resource
*/
@JvmName("qrbppniiytbejpes")
public suspend fun sku(`value`: SkuArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sku = mapped
}
/**
* @param argument Properties of sku resource
*/
@JvmName("snnbioqtwpnlbiyg")
public suspend fun sku(argument: suspend SkuArgsBuilder.() -> Unit) {
val toBeMapped = SkuArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.sku = mapped
}
/**
* @param value Resource tags.
*/
@JvmName("asnlurgcxwqhnfrr")
public suspend fun tags(`value`: Map?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.tags = mapped
}
/**
* @param values Resource tags.
*/
@JvmName("xxynwihbpfebmguh")
public fun tags(vararg values: Pair) {
val toBeMapped = values.toMap()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.tags = mapped
}
/**
* @param value Enabling this property creates a Standard Event Hubs Namespace in regions supported availability zones.
*/
@JvmName("jvuciwtnogiklaqp")
public suspend fun zoneRedundant(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.zoneRedundant = mapped
}
internal fun build(): NamespaceArgs = NamespaceArgs(
alternateName = alternateName,
clusterArmId = clusterArmId,
disableLocalAuth = disableLocalAuth,
encryption = encryption,
identity = identity,
isAutoInflateEnabled = isAutoInflateEnabled,
kafkaEnabled = kafkaEnabled,
location = location,
maximumThroughputUnits = maximumThroughputUnits,
minimumTlsVersion = minimumTlsVersion,
namespaceName = namespaceName,
privateEndpointConnections = privateEndpointConnections,
publicNetworkAccess = publicNetworkAccess,
resourceGroupName = resourceGroupName,
sku = sku,
tags = tags,
zoneRedundant = zoneRedundant,
)
}