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

com.pulumi.azurenative.azurearcdata.kotlin.inputs.SqlManagedInstancePropertiesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.azurearcdata.kotlin.inputs

import com.pulumi.azurenative.azurearcdata.inputs.SqlManagedInstancePropertiesArgs.builder
import com.pulumi.azurenative.azurearcdata.kotlin.enums.ArcSqlManagedInstanceLicenseType
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

/**
 * Properties of sqlManagedInstance.
 * @property activeDirectoryInformation Active Directory information related to this SQL Managed Instance.
 * @property admin The instance admin user
 * @property basicLoginInformation Username and password for basic authentication.
 * @property clusterId If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to.
 * @property dataControllerId null
 * @property endTime The instance end time
 * @property extensionId If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to.
 * @property k8sRaw The raw kubernetes information
 * @property lastUploadedDate Last uploaded date from Kubernetes cluster. Defaults to current date time
 * @property licenseType The license type to apply for this managed instance.
 * @property startTime The instance start time
 */
public data class SqlManagedInstancePropertiesArgs(
    public val activeDirectoryInformation: Output? = null,
    public val admin: Output? = null,
    public val basicLoginInformation: Output? = null,
    public val clusterId: Output? = null,
    public val dataControllerId: Output? = null,
    public val endTime: Output? = null,
    public val extensionId: Output? = null,
    public val k8sRaw: Output? = null,
    public val lastUploadedDate: Output? = null,
    public val licenseType: Output>? = null,
    public val startTime: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.azurearcdata.inputs.SqlManagedInstancePropertiesArgs = com.pulumi.azurenative.azurearcdata.inputs.SqlManagedInstancePropertiesArgs.builder()
        .activeDirectoryInformation(
            activeDirectoryInformation?.applyValue({ args0 ->
                args0.let({ args0 ->
                    args0.toJava()
                })
            }),
        )
        .admin(admin?.applyValue({ args0 -> args0 }))
        .basicLoginInformation(
            basicLoginInformation?.applyValue({ args0 ->
                args0.let({ args0 ->
                    args0.toJava()
                })
            }),
        )
        .clusterId(clusterId?.applyValue({ args0 -> args0 }))
        .dataControllerId(dataControllerId?.applyValue({ args0 -> args0 }))
        .endTime(endTime?.applyValue({ args0 -> args0 }))
        .extensionId(extensionId?.applyValue({ args0 -> args0 }))
        .k8sRaw(k8sRaw?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
        .lastUploadedDate(lastUploadedDate?.applyValue({ args0 -> args0 }))
        .licenseType(
            licenseType?.applyValue({ args0 ->
                args0.transform({ args0 -> args0 }, { args0 ->
                    args0.let({ args0 -> args0.toJava() })
                })
            }),
        )
        .startTime(startTime?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [SqlManagedInstancePropertiesArgs].
 */
@PulumiTagMarker
public class SqlManagedInstancePropertiesArgsBuilder internal constructor() {
    private var activeDirectoryInformation: Output? = null

    private var admin: Output? = null

    private var basicLoginInformation: Output? = null

    private var clusterId: Output? = null

    private var dataControllerId: Output? = null

    private var endTime: Output? = null

    private var extensionId: Output? = null

    private var k8sRaw: Output? = null

    private var lastUploadedDate: Output? = null

    private var licenseType: Output>? = null

    private var startTime: Output? = null

    /**
     * @param value Active Directory information related to this SQL Managed Instance.
     */
    @JvmName("aewygxehwnmdafng")
    public suspend fun activeDirectoryInformation(`value`: Output) {
        this.activeDirectoryInformation = value
    }

    /**
     * @param value The instance admin user
     */
    @JvmName("amsfqtrxuoginiao")
    public suspend fun admin(`value`: Output) {
        this.admin = value
    }

    /**
     * @param value Username and password for basic authentication.
     */
    @JvmName("veomxduchpnnmcws")
    public suspend fun basicLoginInformation(`value`: Output) {
        this.basicLoginInformation = value
    }

    /**
     * @param value If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to.
     */
    @JvmName("xiaxasuvwsmmmuej")
    public suspend fun clusterId(`value`: Output) {
        this.clusterId = value
    }

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

    /**
     * @param value The instance end time
     */
    @JvmName("vfvewgecllynllkk")
    public suspend fun endTime(`value`: Output) {
        this.endTime = value
    }

    /**
     * @param value If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to.
     */
    @JvmName("yyyjcnevyadtxnnx")
    public suspend fun extensionId(`value`: Output) {
        this.extensionId = value
    }

    /**
     * @param value The raw kubernetes information
     */
    @JvmName("ngfpgseofocvnopl")
    public suspend fun k8sRaw(`value`: Output) {
        this.k8sRaw = value
    }

    /**
     * @param value Last uploaded date from Kubernetes cluster. Defaults to current date time
     */
    @JvmName("icpuxobuxmpghvvi")
    public suspend fun lastUploadedDate(`value`: Output) {
        this.lastUploadedDate = value
    }

    /**
     * @param value The license type to apply for this managed instance.
     */
    @JvmName("kwxeqpbcwuujfxpc")
    public suspend fun licenseType(`value`: Output>) {
        this.licenseType = value
    }

    /**
     * @param value The instance start time
     */
    @JvmName("ujepwtlhnqetypgy")
    public suspend fun startTime(`value`: Output) {
        this.startTime = value
    }

    /**
     * @param value Active Directory information related to this SQL Managed Instance.
     */
    @JvmName("makemwxsvdkaqiun")
    public suspend fun activeDirectoryInformation(`value`: ActiveDirectoryInformationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.activeDirectoryInformation = mapped
    }

    /**
     * @param argument Active Directory information related to this SQL Managed Instance.
     */
    @JvmName("purtegcupoichxvf")
    public suspend fun activeDirectoryInformation(argument: suspend ActiveDirectoryInformationArgsBuilder.() -> Unit) {
        val toBeMapped = ActiveDirectoryInformationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.activeDirectoryInformation = mapped
    }

    /**
     * @param value The instance admin user
     */
    @JvmName("thtucshwtphxsqwc")
    public suspend fun admin(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.admin = mapped
    }

    /**
     * @param value Username and password for basic authentication.
     */
    @JvmName("nbubaelgxfxdiucy")
    public suspend fun basicLoginInformation(`value`: BasicLoginInformationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.basicLoginInformation = mapped
    }

    /**
     * @param argument Username and password for basic authentication.
     */
    @JvmName("pqoegdtokngphlad")
    public suspend fun basicLoginInformation(argument: suspend BasicLoginInformationArgsBuilder.() -> Unit) {
        val toBeMapped = BasicLoginInformationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.basicLoginInformation = mapped
    }

    /**
     * @param value If a CustomLocation is provided, this contains the ARM id of the connected cluster the custom location belongs to.
     */
    @JvmName("msowaredkphbglmb")
    public suspend fun clusterId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clusterId = mapped
    }

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

    /**
     * @param value The instance end time
     */
    @JvmName("yuckowjxjfttvwxr")
    public suspend fun endTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.endTime = mapped
    }

    /**
     * @param value If a CustomLocation is provided, this contains the ARM id of the extension the custom location belongs to.
     */
    @JvmName("nqdyijavvxyiwxwu")
    public suspend fun extensionId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.extensionId = mapped
    }

    /**
     * @param value The raw kubernetes information
     */
    @JvmName("kmotmuqtnmcxmgbm")
    public suspend fun k8sRaw(`value`: SqlManagedInstanceK8sRawArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.k8sRaw = mapped
    }

    /**
     * @param argument The raw kubernetes information
     */
    @JvmName("pcwncxuxivqojijo")
    public suspend fun k8sRaw(argument: suspend SqlManagedInstanceK8sRawArgsBuilder.() -> Unit) {
        val toBeMapped = SqlManagedInstanceK8sRawArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.k8sRaw = mapped
    }

    /**
     * @param value Last uploaded date from Kubernetes cluster. Defaults to current date time
     */
    @JvmName("apigxyxxyldnicid")
    public suspend fun lastUploadedDate(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.lastUploadedDate = mapped
    }

    /**
     * @param value The license type to apply for this managed instance.
     */
    @JvmName("gutxapnjqhajtajx")
    public suspend fun licenseType(`value`: Either?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.licenseType = mapped
    }

    /**
     * @param value The license type to apply for this managed instance.
     */
    @JvmName("axavcvbiywedqujm")
    public fun licenseType(`value`: String) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.licenseType = mapped
    }

    /**
     * @param value The license type to apply for this managed instance.
     */
    @JvmName("bracpjtglcklilpm")
    public fun licenseType(`value`: ArcSqlManagedInstanceLicenseType) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.licenseType = mapped
    }

    /**
     * @param value The instance start time
     */
    @JvmName("lpemaaycxhatacnm")
    public suspend fun startTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.startTime = mapped
    }

    internal fun build(): SqlManagedInstancePropertiesArgs = SqlManagedInstancePropertiesArgs(
        activeDirectoryInformation = activeDirectoryInformation,
        admin = admin,
        basicLoginInformation = basicLoginInformation,
        clusterId = clusterId,
        dataControllerId = dataControllerId,
        endTime = endTime,
        extensionId = extensionId,
        k8sRaw = k8sRaw,
        lastUploadedDate = lastUploadedDate,
        licenseType = licenseType,
        startTime = startTime,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy