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

com.pulumi.azurenative.cognitiveservices.kotlin.inputs.AccountPropertiesArgs.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: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.cognitiveservices.kotlin.inputs

import com.pulumi.azurenative.cognitiveservices.inputs.AccountPropertiesArgs.builder
import com.pulumi.azurenative.cognitiveservices.kotlin.enums.PublicNetworkAccess
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * Properties of Cognitive Services account.
 * @property allowedFqdnList
 * @property apiProperties The api properties for special APIs.
 * @property customSubDomainName Optional subdomain name used for token-based authentication.
 * @property disableLocalAuth
 * @property dynamicThrottlingEnabled The flag to enable dynamic throttling.
 * @property encryption The encryption properties for this resource.
 * @property locations The multiregion settings of Cognitive Services account.
 * @property migrationToken Resource migration token.
 * @property networkAcls A collection of rules governing the accessibility from specific network locations.
 * @property publicNetworkAccess Whether or not public endpoint access is allowed for this account.
 * @property restore
 * @property restrictOutboundNetworkAccess
 * @property userOwnedStorage The storage accounts for this resource.
 */
public data class AccountPropertiesArgs(
    public val allowedFqdnList: Output>? = null,
    public val apiProperties: Output? = null,
    public val customSubDomainName: Output? = null,
    public val disableLocalAuth: Output? = null,
    public val dynamicThrottlingEnabled: Output? = null,
    public val encryption: Output? = null,
    public val locations: Output? = null,
    public val migrationToken: Output? = null,
    public val networkAcls: Output? = null,
    public val publicNetworkAccess: Output>? = null,
    public val restore: Output? = null,
    public val restrictOutboundNetworkAccess: Output? = null,
    public val userOwnedStorage: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.cognitiveservices.inputs.AccountPropertiesArgs =
        com.pulumi.azurenative.cognitiveservices.inputs.AccountPropertiesArgs.builder()
            .allowedFqdnList(allowedFqdnList?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .apiProperties(apiProperties?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .customSubDomainName(customSubDomainName?.applyValue({ args0 -> args0 }))
            .disableLocalAuth(disableLocalAuth?.applyValue({ args0 -> args0 }))
            .dynamicThrottlingEnabled(dynamicThrottlingEnabled?.applyValue({ args0 -> args0 }))
            .encryption(encryption?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .locations(locations?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .migrationToken(migrationToken?.applyValue({ args0 -> args0 }))
            .networkAcls(networkAcls?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .publicNetworkAccess(
                publicNetworkAccess?.applyValue({ args0 ->
                    args0.transform(
                        { args0 -> args0 },
                        { args0 -> args0.let({ args0 -> args0.toJava() }) },
                    )
                }),
            )
            .restore(restore?.applyValue({ args0 -> args0 }))
            .restrictOutboundNetworkAccess(restrictOutboundNetworkAccess?.applyValue({ args0 -> args0 }))
            .userOwnedStorage(
                userOwnedStorage?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

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

    private var apiProperties: Output? = null

    private var customSubDomainName: Output? = null

    private var disableLocalAuth: Output? = null

    private var dynamicThrottlingEnabled: Output? = null

    private var encryption: Output? = null

    private var locations: Output? = null

    private var migrationToken: Output? = null

    private var networkAcls: Output? = null

    private var publicNetworkAccess: Output>? = null

    private var restore: Output? = null

    private var restrictOutboundNetworkAccess: Output? = null

    private var userOwnedStorage: Output>? = null

    /**
     * @param value
     */
    @JvmName("yfrbehatupfiksda")
    public suspend fun allowedFqdnList(`value`: Output>) {
        this.allowedFqdnList = value
    }

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

    /**
     * @param values
     */
    @JvmName("ugpoirsowdyixpui")
    public suspend fun allowedFqdnList(values: List>) {
        this.allowedFqdnList = Output.all(values)
    }

    /**
     * @param value The api properties for special APIs.
     */
    @JvmName("yvlhadagvqxxgvlq")
    public suspend fun apiProperties(`value`: Output) {
        this.apiProperties = value
    }

    /**
     * @param value Optional subdomain name used for token-based authentication.
     */
    @JvmName("lmtfcpmcspsyacqs")
    public suspend fun customSubDomainName(`value`: Output) {
        this.customSubDomainName = value
    }

    /**
     * @param value
     */
    @JvmName("ehyvffeciuxmgtjg")
    public suspend fun disableLocalAuth(`value`: Output) {
        this.disableLocalAuth = value
    }

    /**
     * @param value The flag to enable dynamic throttling.
     */
    @JvmName("gfphllaqehsnmeia")
    public suspend fun dynamicThrottlingEnabled(`value`: Output) {
        this.dynamicThrottlingEnabled = value
    }

    /**
     * @param value The encryption properties for this resource.
     */
    @JvmName("qhhbxwrixayokujm")
    public suspend fun encryption(`value`: Output) {
        this.encryption = value
    }

    /**
     * @param value The multiregion settings of Cognitive Services account.
     */
    @JvmName("bacfiqjotoyuxpnx")
    public suspend fun locations(`value`: Output) {
        this.locations = value
    }

    /**
     * @param value Resource migration token.
     */
    @JvmName("yosrbgarqeqycniv")
    public suspend fun migrationToken(`value`: Output) {
        this.migrationToken = value
    }

    /**
     * @param value A collection of rules governing the accessibility from specific network locations.
     */
    @JvmName("yqbqqgildwnqyxhe")
    public suspend fun networkAcls(`value`: Output) {
        this.networkAcls = value
    }

    /**
     * @param value Whether or not public endpoint access is allowed for this account.
     */
    @JvmName("ilalduqcdxrfjpji")
    public suspend fun publicNetworkAccess(`value`: Output>) {
        this.publicNetworkAccess = value
    }

    /**
     * @param value
     */
    @JvmName("bjvagcvqwyxmrrca")
    public suspend fun restore(`value`: Output) {
        this.restore = value
    }

    /**
     * @param value
     */
    @JvmName("iyrrutxagjirsaij")
    public suspend fun restrictOutboundNetworkAccess(`value`: Output) {
        this.restrictOutboundNetworkAccess = value
    }

    /**
     * @param value The storage accounts for this resource.
     */
    @JvmName("ruaqeqosxobrmrtx")
    public suspend fun userOwnedStorage(`value`: Output>) {
        this.userOwnedStorage = value
    }

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

    /**
     * @param values The storage accounts for this resource.
     */
    @JvmName("bxiocdbklhmmyxeo")
    public suspend fun userOwnedStorage(values: List>) {
        this.userOwnedStorage = Output.all(values)
    }

    /**
     * @param value
     */
    @JvmName("nofnridyjbnabeeo")
    public suspend fun allowedFqdnList(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.allowedFqdnList = mapped
    }

    /**
     * @param values
     */
    @JvmName("moryjwiddtckcnct")
    public suspend fun allowedFqdnList(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.allowedFqdnList = mapped
    }

    /**
     * @param value The api properties for special APIs.
     */
    @JvmName("bcbhklrlxqotlruh")
    public suspend fun apiProperties(`value`: ApiPropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.apiProperties = mapped
    }

    /**
     * @param argument The api properties for special APIs.
     */
    @JvmName("ekhruyuroqxqyoaj")
    public suspend fun apiProperties(argument: suspend ApiPropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = ApiPropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.apiProperties = mapped
    }

    /**
     * @param value Optional subdomain name used for token-based authentication.
     */
    @JvmName("wydrhrbglaxsjxgf")
    public suspend fun customSubDomainName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.customSubDomainName = mapped
    }

    /**
     * @param value
     */
    @JvmName("uwkrfhajslyyuebw")
    public suspend fun disableLocalAuth(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.disableLocalAuth = mapped
    }

    /**
     * @param value The flag to enable dynamic throttling.
     */
    @JvmName("umvuxdiglyxdjdos")
    public suspend fun dynamicThrottlingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dynamicThrottlingEnabled = mapped
    }

    /**
     * @param value The encryption properties for this resource.
     */
    @JvmName("vleyyivtmgqenrln")
    public suspend fun encryption(`value`: EncryptionArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.encryption = mapped
    }

    /**
     * @param argument The encryption properties for this resource.
     */
    @JvmName("clsmpmpiosknqisn")
    public suspend fun encryption(argument: suspend EncryptionArgsBuilder.() -> Unit) {
        val toBeMapped = EncryptionArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.encryption = mapped
    }

    /**
     * @param value The multiregion settings of Cognitive Services account.
     */
    @JvmName("ntugvrkowqatqeiv")
    public suspend fun locations(`value`: MultiRegionSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.locations = mapped
    }

    /**
     * @param argument The multiregion settings of Cognitive Services account.
     */
    @JvmName("hjckwmvprbvcptmt")
    public suspend fun locations(argument: suspend MultiRegionSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = MultiRegionSettingsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.locations = mapped
    }

    /**
     * @param value Resource migration token.
     */
    @JvmName("hsahuqhnrixuedsw")
    public suspend fun migrationToken(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.migrationToken = mapped
    }

    /**
     * @param value A collection of rules governing the accessibility from specific network locations.
     */
    @JvmName("vwcrivvpjshggxsf")
    public suspend fun networkAcls(`value`: NetworkRuleSetArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.networkAcls = mapped
    }

    /**
     * @param argument A collection of rules governing the accessibility from specific network locations.
     */
    @JvmName("jwlygchwoulwykie")
    public suspend fun networkAcls(argument: suspend NetworkRuleSetArgsBuilder.() -> Unit) {
        val toBeMapped = NetworkRuleSetArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.networkAcls = mapped
    }

    /**
     * @param value Whether or not public endpoint access is allowed for this account.
     */
    @JvmName("kwxttbtvkpnsrwjo")
    public suspend fun publicNetworkAccess(`value`: Either?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.publicNetworkAccess = mapped
    }

    /**
     * @param value Whether or not public endpoint access is allowed for this account.
     */
    @JvmName("hlepshofkmbjdgcr")
    public fun publicNetworkAccess(`value`: String) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.publicNetworkAccess = mapped
    }

    /**
     * @param value Whether or not public endpoint access is allowed for this account.
     */
    @JvmName("gkiecpechyatqshq")
    public fun publicNetworkAccess(`value`: PublicNetworkAccess) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.publicNetworkAccess = mapped
    }

    /**
     * @param value
     */
    @JvmName("tjoutmtvlxqsxubm")
    public suspend fun restore(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.restore = mapped
    }

    /**
     * @param value
     */
    @JvmName("jgnstoihdbftlgph")
    public suspend fun restrictOutboundNetworkAccess(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.restrictOutboundNetworkAccess = mapped
    }

    /**
     * @param value The storage accounts for this resource.
     */
    @JvmName("xfnngmjlcrqllkxw")
    public suspend fun userOwnedStorage(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userOwnedStorage = mapped
    }

    /**
     * @param argument The storage accounts for this resource.
     */
    @JvmName("vcstnalyvdgjfqkp")
    public suspend fun userOwnedStorage(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            UserOwnedStorageArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.userOwnedStorage = mapped
    }

    /**
     * @param argument The storage accounts for this resource.
     */
    @JvmName("ayisvkeddxwrrmfc")
    public suspend fun userOwnedStorage(vararg argument: suspend UserOwnedStorageArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            UserOwnedStorageArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.userOwnedStorage = mapped
    }

    /**
     * @param argument The storage accounts for this resource.
     */
    @JvmName("imtobceusdcnkjln")
    public suspend fun userOwnedStorage(argument: suspend UserOwnedStorageArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(UserOwnedStorageArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.userOwnedStorage = mapped
    }

    /**
     * @param values The storage accounts for this resource.
     */
    @JvmName("beqayulnuhhjiqjj")
    public suspend fun userOwnedStorage(vararg values: UserOwnedStorageArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.userOwnedStorage = mapped
    }

    internal fun build(): AccountPropertiesArgs = AccountPropertiesArgs(
        allowedFqdnList = allowedFqdnList,
        apiProperties = apiProperties,
        customSubDomainName = customSubDomainName,
        disableLocalAuth = disableLocalAuth,
        dynamicThrottlingEnabled = dynamicThrottlingEnabled,
        encryption = encryption,
        locations = locations,
        migrationToken = migrationToken,
        networkAcls = networkAcls,
        publicNetworkAccess = publicNetworkAccess,
        restore = restore,
        restrictOutboundNetworkAccess = restrictOutboundNetworkAccess,
        userOwnedStorage = userOwnedStorage,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy