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

com.pulumi.awsnative.rds.kotlin.DbProxyTargetGroupArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.rds.kotlin

import com.pulumi.awsnative.rds.DbProxyTargetGroupArgs.builder
import com.pulumi.awsnative.rds.kotlin.enums.DbProxyTargetGroupTargetGroupName
import com.pulumi.awsnative.rds.kotlin.inputs.DbProxyTargetGroupConnectionPoolConfigurationInfoFormatArgs
import com.pulumi.awsnative.rds.kotlin.inputs.DbProxyTargetGroupConnectionPoolConfigurationInfoFormatArgsBuilder
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.collections.List
import kotlin.jvm.JvmName

/**
 * Resource schema for AWS::RDS::DBProxyTargetGroup
 * @property connectionPoolConfigurationInfo Displays the settings that control the size and behavior of the connection pool associated with a `DBProxyTarget` .
 * @property dbClusterIdentifiers One or more DB cluster identifiers.
 * @property dbInstanceIdentifiers One or more DB instance identifiers.
 * @property dbProxyName The identifier for the proxy.
 * @property targetGroupName The identifier for the DBProxyTargetGroup
 */
public data class DbProxyTargetGroupArgs(
    public val connectionPoolConfigurationInfo: Output? = null,
    public val dbClusterIdentifiers: Output>? = null,
    public val dbInstanceIdentifiers: Output>? = null,
    public val dbProxyName: Output? = null,
    public val targetGroupName: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.rds.DbProxyTargetGroupArgs =
        com.pulumi.awsnative.rds.DbProxyTargetGroupArgs.builder()
            .connectionPoolConfigurationInfo(
                connectionPoolConfigurationInfo?.applyValue({ args0 ->
                    args0.let({ args0 -> args0.toJava() })
                }),
            )
            .dbClusterIdentifiers(dbClusterIdentifiers?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .dbInstanceIdentifiers(dbInstanceIdentifiers?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .dbProxyName(dbProxyName?.applyValue({ args0 -> args0 }))
            .targetGroupName(
                targetGroupName?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [DbProxyTargetGroupArgs].
 */
@PulumiTagMarker
public class DbProxyTargetGroupArgsBuilder internal constructor() {
    private var connectionPoolConfigurationInfo:
        Output? = null

    private var dbClusterIdentifiers: Output>? = null

    private var dbInstanceIdentifiers: Output>? = null

    private var dbProxyName: Output? = null

    private var targetGroupName: Output? = null

    /**
     * @param value Displays the settings that control the size and behavior of the connection pool associated with a `DBProxyTarget` .
     */
    @JvmName("dplujtvmivixqpmy")
    public suspend fun connectionPoolConfigurationInfo(`value`: Output) {
        this.connectionPoolConfigurationInfo = value
    }

    /**
     * @param value One or more DB cluster identifiers.
     */
    @JvmName("fpatcvifnolecudn")
    public suspend fun dbClusterIdentifiers(`value`: Output>) {
        this.dbClusterIdentifiers = value
    }

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

    /**
     * @param values One or more DB cluster identifiers.
     */
    @JvmName("saqngnbhatsgsaqe")
    public suspend fun dbClusterIdentifiers(values: List>) {
        this.dbClusterIdentifiers = Output.all(values)
    }

    /**
     * @param value One or more DB instance identifiers.
     */
    @JvmName("thkevxvjxjrcfbek")
    public suspend fun dbInstanceIdentifiers(`value`: Output>) {
        this.dbInstanceIdentifiers = value
    }

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

    /**
     * @param values One or more DB instance identifiers.
     */
    @JvmName("fwqkmaqbmlgsxnhd")
    public suspend fun dbInstanceIdentifiers(values: List>) {
        this.dbInstanceIdentifiers = Output.all(values)
    }

    /**
     * @param value The identifier for the proxy.
     */
    @JvmName("bwimkbtutbknnmct")
    public suspend fun dbProxyName(`value`: Output) {
        this.dbProxyName = value
    }

    /**
     * @param value The identifier for the DBProxyTargetGroup
     */
    @JvmName("lowpcohoklcpwgtx")
    public suspend fun targetGroupName(`value`: Output) {
        this.targetGroupName = value
    }

    /**
     * @param value Displays the settings that control the size and behavior of the connection pool associated with a `DBProxyTarget` .
     */
    @JvmName("jqebawyrbvglaejf")
    public suspend fun connectionPoolConfigurationInfo(`value`: DbProxyTargetGroupConnectionPoolConfigurationInfoFormatArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.connectionPoolConfigurationInfo = mapped
    }

    /**
     * @param argument Displays the settings that control the size and behavior of the connection pool associated with a `DBProxyTarget` .
     */
    @JvmName("lcbgvfdygfkfyuni")
    public suspend fun connectionPoolConfigurationInfo(argument: suspend DbProxyTargetGroupConnectionPoolConfigurationInfoFormatArgsBuilder.() -> Unit) {
        val toBeMapped =
            DbProxyTargetGroupConnectionPoolConfigurationInfoFormatArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.connectionPoolConfigurationInfo = mapped
    }

    /**
     * @param value One or more DB cluster identifiers.
     */
    @JvmName("xovkgqhxtsupdufm")
    public suspend fun dbClusterIdentifiers(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dbClusterIdentifiers = mapped
    }

    /**
     * @param values One or more DB cluster identifiers.
     */
    @JvmName("hbusfmebvwjhmrnj")
    public suspend fun dbClusterIdentifiers(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.dbClusterIdentifiers = mapped
    }

    /**
     * @param value One or more DB instance identifiers.
     */
    @JvmName("mgnwykpqpmbbbmqf")
    public suspend fun dbInstanceIdentifiers(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dbInstanceIdentifiers = mapped
    }

    /**
     * @param values One or more DB instance identifiers.
     */
    @JvmName("lxwxeajhoaxxxgut")
    public suspend fun dbInstanceIdentifiers(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.dbInstanceIdentifiers = mapped
    }

    /**
     * @param value The identifier for the proxy.
     */
    @JvmName("nfmyfpalnkmbotkn")
    public suspend fun dbProxyName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dbProxyName = mapped
    }

    /**
     * @param value The identifier for the DBProxyTargetGroup
     */
    @JvmName("lruauhkkwhonnxrm")
    public suspend fun targetGroupName(`value`: DbProxyTargetGroupTargetGroupName?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.targetGroupName = mapped
    }

    internal fun build(): DbProxyTargetGroupArgs = DbProxyTargetGroupArgs(
        connectionPoolConfigurationInfo = connectionPoolConfigurationInfo,
        dbClusterIdentifiers = dbClusterIdentifiers,
        dbInstanceIdentifiers = dbInstanceIdentifiers,
        dbProxyName = dbProxyName,
        targetGroupName = targetGroupName,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy