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

com.pulumi.azure.sql.kotlin.inputs.DatabaseImportArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.sql.kotlin.inputs

import com.pulumi.azure.sql.inputs.DatabaseImportArgs.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.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property administratorLogin Specifies the name of the SQL administrator.
 * @property administratorLoginPassword Specifies the password of the SQL administrator.
 * @property authenticationType Specifies the type of authentication used to access the server. Valid values are `SQL` or `ADPassword`.
 * @property operationMode Specifies the type of import operation being performed. The only allowable value is `Import`. Defaults to `Import`.
 * @property storageKey Specifies the access key for the storage account.
 * @property storageKeyType Specifies the type of access key for the storage account. Valid values are `StorageAccessKey` or `SharedAccessKey`.
 * @property storageUri Specifies the blob URI of the .bacpac file.
 */
public data class DatabaseImportArgs(
    public val administratorLogin: Output,
    public val administratorLoginPassword: Output,
    public val authenticationType: Output,
    public val operationMode: Output? = null,
    public val storageKey: Output,
    public val storageKeyType: Output,
    public val storageUri: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.sql.inputs.DatabaseImportArgs =
        com.pulumi.azure.sql.inputs.DatabaseImportArgs.builder()
            .administratorLogin(administratorLogin.applyValue({ args0 -> args0 }))
            .administratorLoginPassword(administratorLoginPassword.applyValue({ args0 -> args0 }))
            .authenticationType(authenticationType.applyValue({ args0 -> args0 }))
            .operationMode(operationMode?.applyValue({ args0 -> args0 }))
            .storageKey(storageKey.applyValue({ args0 -> args0 }))
            .storageKeyType(storageKeyType.applyValue({ args0 -> args0 }))
            .storageUri(storageUri.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [DatabaseImportArgs].
 */
@PulumiTagMarker
public class DatabaseImportArgsBuilder internal constructor() {
    private var administratorLogin: Output? = null

    private var administratorLoginPassword: Output? = null

    private var authenticationType: Output? = null

    private var operationMode: Output? = null

    private var storageKey: Output? = null

    private var storageKeyType: Output? = null

    private var storageUri: Output? = null

    /**
     * @param value Specifies the name of the SQL administrator.
     */
    @JvmName("mbblvabebtlkgjoq")
    public suspend fun administratorLogin(`value`: Output) {
        this.administratorLogin = value
    }

    /**
     * @param value Specifies the password of the SQL administrator.
     */
    @JvmName("wcnquyexogrolyhy")
    public suspend fun administratorLoginPassword(`value`: Output) {
        this.administratorLoginPassword = value
    }

    /**
     * @param value Specifies the type of authentication used to access the server. Valid values are `SQL` or `ADPassword`.
     */
    @JvmName("bkhurihuiupwkwir")
    public suspend fun authenticationType(`value`: Output) {
        this.authenticationType = value
    }

    /**
     * @param value Specifies the type of import operation being performed. The only allowable value is `Import`. Defaults to `Import`.
     */
    @JvmName("qkdjbpditjowmeqf")
    public suspend fun operationMode(`value`: Output) {
        this.operationMode = value
    }

    /**
     * @param value Specifies the access key for the storage account.
     */
    @JvmName("evmxvxyxcaroihgx")
    public suspend fun storageKey(`value`: Output) {
        this.storageKey = value
    }

    /**
     * @param value Specifies the type of access key for the storage account. Valid values are `StorageAccessKey` or `SharedAccessKey`.
     */
    @JvmName("huacvjutpilspedn")
    public suspend fun storageKeyType(`value`: Output) {
        this.storageKeyType = value
    }

    /**
     * @param value Specifies the blob URI of the .bacpac file.
     */
    @JvmName("keghgfgnmqxehtmd")
    public suspend fun storageUri(`value`: Output) {
        this.storageUri = value
    }

    /**
     * @param value Specifies the name of the SQL administrator.
     */
    @JvmName("wqghmddwoxxmiupd")
    public suspend fun administratorLogin(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.administratorLogin = mapped
    }

    /**
     * @param value Specifies the password of the SQL administrator.
     */
    @JvmName("kjpfgiamakvpbysu")
    public suspend fun administratorLoginPassword(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.administratorLoginPassword = mapped
    }

    /**
     * @param value Specifies the type of authentication used to access the server. Valid values are `SQL` or `ADPassword`.
     */
    @JvmName("eewlafnvwxffylnm")
    public suspend fun authenticationType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.authenticationType = mapped
    }

    /**
     * @param value Specifies the type of import operation being performed. The only allowable value is `Import`. Defaults to `Import`.
     */
    @JvmName("teutydfxtwaletvi")
    public suspend fun operationMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.operationMode = mapped
    }

    /**
     * @param value Specifies the access key for the storage account.
     */
    @JvmName("emfsgdaigyoaxqke")
    public suspend fun storageKey(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.storageKey = mapped
    }

    /**
     * @param value Specifies the type of access key for the storage account. Valid values are `StorageAccessKey` or `SharedAccessKey`.
     */
    @JvmName("mvlbmslsiibedtmg")
    public suspend fun storageKeyType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.storageKeyType = mapped
    }

    /**
     * @param value Specifies the blob URI of the .bacpac file.
     */
    @JvmName("smrsryksimxpqrya")
    public suspend fun storageUri(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.storageUri = mapped
    }

    internal fun build(): DatabaseImportArgs = DatabaseImportArgs(
        administratorLogin = administratorLogin ?: throw PulumiNullFieldException("administratorLogin"),
        administratorLoginPassword = administratorLoginPassword ?: throw
            PulumiNullFieldException("administratorLoginPassword"),
        authenticationType = authenticationType ?: throw PulumiNullFieldException("authenticationType"),
        operationMode = operationMode,
        storageKey = storageKey ?: throw PulumiNullFieldException("storageKey"),
        storageKeyType = storageKeyType ?: throw PulumiNullFieldException("storageKeyType"),
        storageUri = storageUri ?: throw PulumiNullFieldException("storageUri"),
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy