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

com.pulumi.awsnative.apprunner.kotlin.inputs.ServiceNetworkConfigurationArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.apprunner.kotlin.inputs

import com.pulumi.awsnative.apprunner.inputs.ServiceNetworkConfigurationArgs.builder
import com.pulumi.awsnative.apprunner.kotlin.enums.ServiceNetworkConfigurationIpAddressType
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.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Network configuration
 * @property egressConfiguration Network configuration settings for outbound message traffic.
 * @property ingressConfiguration Network configuration settings for inbound message traffic.
 * @property ipAddressType App Runner service endpoint IP address type
 */
public data class ServiceNetworkConfigurationArgs(
    public val egressConfiguration: Output? = null,
    public val ingressConfiguration: Output? = null,
    public val ipAddressType: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.apprunner.inputs.ServiceNetworkConfigurationArgs =
        com.pulumi.awsnative.apprunner.inputs.ServiceNetworkConfigurationArgs.builder()
            .egressConfiguration(
                egressConfiguration?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .ingressConfiguration(
                ingressConfiguration?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .ipAddressType(ipAddressType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [ServiceNetworkConfigurationArgs].
 */
@PulumiTagMarker
public class ServiceNetworkConfigurationArgsBuilder internal constructor() {
    private var egressConfiguration: Output? = null

    private var ingressConfiguration: Output? = null

    private var ipAddressType: Output? = null

    /**
     * @param value Network configuration settings for outbound message traffic.
     */
    @JvmName("fljvrpggdfuinqma")
    public suspend fun egressConfiguration(`value`: Output) {
        this.egressConfiguration = value
    }

    /**
     * @param value Network configuration settings for inbound message traffic.
     */
    @JvmName("seqqerxqoqgmivpm")
    public suspend fun ingressConfiguration(`value`: Output) {
        this.ingressConfiguration = value
    }

    /**
     * @param value App Runner service endpoint IP address type
     */
    @JvmName("faqkfvooerravsmw")
    public suspend fun ipAddressType(`value`: Output) {
        this.ipAddressType = value
    }

    /**
     * @param value Network configuration settings for outbound message traffic.
     */
    @JvmName("rqldohjkpjuxcnky")
    public suspend fun egressConfiguration(`value`: ServiceEgressConfigurationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.egressConfiguration = mapped
    }

    /**
     * @param argument Network configuration settings for outbound message traffic.
     */
    @JvmName("ndvfktmuxbtlrjvi")
    public suspend fun egressConfiguration(argument: suspend ServiceEgressConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = ServiceEgressConfigurationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.egressConfiguration = mapped
    }

    /**
     * @param value Network configuration settings for inbound message traffic.
     */
    @JvmName("thnsonypvbdrudha")
    public suspend fun ingressConfiguration(`value`: ServiceIngressConfigurationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ingressConfiguration = mapped
    }

    /**
     * @param argument Network configuration settings for inbound message traffic.
     */
    @JvmName("rcacesbvbdjsxbig")
    public suspend fun ingressConfiguration(argument: suspend ServiceIngressConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = ServiceIngressConfigurationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.ingressConfiguration = mapped
    }

    /**
     * @param value App Runner service endpoint IP address type
     */
    @JvmName("kioshynktcxgxfcc")
    public suspend fun ipAddressType(`value`: ServiceNetworkConfigurationIpAddressType?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ipAddressType = mapped
    }

    internal fun build(): ServiceNetworkConfigurationArgs = ServiceNetworkConfigurationArgs(
        egressConfiguration = egressConfiguration,
        ingressConfiguration = ingressConfiguration,
        ipAddressType = ipAddressType,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy