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

com.pulumi.gcp.sql.kotlin.inputs.DatabaseInstanceSettingsIpConfigurationPscConfigArgs.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: 8.12.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.sql.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationPscConfigArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property allowedConsumerProjects List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
 * @property pscEnabled Whether PSC connectivity is enabled for this instance.
 */
public data class DatabaseInstanceSettingsIpConfigurationPscConfigArgs(
    public val allowedConsumerProjects: Output>? = null,
    public val pscEnabled: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationPscConfigArgs =
        com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationPscConfigArgs.builder()
            .allowedConsumerProjects(
                allowedConsumerProjects?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .pscEnabled(pscEnabled?.applyValue({ args0 -> args0 })).build()
}

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

    private var pscEnabled: Output? = null

    /**
     * @param value List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
     */
    @JvmName("iuqmtgofrejwkgec")
    public suspend fun allowedConsumerProjects(`value`: Output>) {
        this.allowedConsumerProjects = value
    }

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

    /**
     * @param values List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
     */
    @JvmName("qxccxqprxqhectap")
    public suspend fun allowedConsumerProjects(values: List>) {
        this.allowedConsumerProjects = Output.all(values)
    }

    /**
     * @param value Whether PSC connectivity is enabled for this instance.
     */
    @JvmName("jsqbsskhahveerdf")
    public suspend fun pscEnabled(`value`: Output) {
        this.pscEnabled = value
    }

    /**
     * @param value List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
     */
    @JvmName("kobjcckjyfbjnlcj")
    public suspend fun allowedConsumerProjects(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.allowedConsumerProjects = mapped
    }

    /**
     * @param values List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
     */
    @JvmName("tvwwqcwjrnratdjq")
    public suspend fun allowedConsumerProjects(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.allowedConsumerProjects = mapped
    }

    /**
     * @param value Whether PSC connectivity is enabled for this instance.
     */
    @JvmName("dovjgbkacctoscbf")
    public suspend fun pscEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pscEnabled = mapped
    }

    internal fun build(): DatabaseInstanceSettingsIpConfigurationPscConfigArgs =
        DatabaseInstanceSettingsIpConfigurationPscConfigArgs(
            allowedConsumerProjects = allowedConsumerProjects,
            pscEnabled = pscEnabled,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy