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

com.pulumi.awsnative.ec2.kotlin.SubnetRouteTableAssociationArgs.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: 0.122.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.ec2.kotlin

import com.pulumi.awsnative.ec2.SubnetRouteTableAssociationArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. A route table can be associated with multiple subnets. To create a route table, see [AWS::EC2::RouteTable](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html).
 * @property routeTableId The ID of the route table.
 *  The physical ID changes when the route table ID is changed.
 * @property subnetId The ID of the subnet.
 */
public data class SubnetRouteTableAssociationArgs(
    public val routeTableId: Output? = null,
    public val subnetId: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.ec2.SubnetRouteTableAssociationArgs =
        com.pulumi.awsnative.ec2.SubnetRouteTableAssociationArgs.builder()
            .routeTableId(routeTableId?.applyValue({ args0 -> args0 }))
            .subnetId(subnetId?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [SubnetRouteTableAssociationArgs].
 */
@PulumiTagMarker
public class SubnetRouteTableAssociationArgsBuilder internal constructor() {
    private var routeTableId: Output? = null

    private var subnetId: Output? = null

    /**
     * @param value The ID of the route table.
     *  The physical ID changes when the route table ID is changed.
     */
    @JvmName("fktrhbapdvcuvxkm")
    public suspend fun routeTableId(`value`: Output) {
        this.routeTableId = value
    }

    /**
     * @param value The ID of the subnet.
     */
    @JvmName("ofyfbhiibtykilym")
    public suspend fun subnetId(`value`: Output) {
        this.subnetId = value
    }

    /**
     * @param value The ID of the route table.
     *  The physical ID changes when the route table ID is changed.
     */
    @JvmName("xeujressfemvatmi")
    public suspend fun routeTableId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.routeTableId = mapped
    }

    /**
     * @param value The ID of the subnet.
     */
    @JvmName("gmxtgdcukexvqqln")
    public suspend fun subnetId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.subnetId = mapped
    }

    internal fun build(): SubnetRouteTableAssociationArgs = SubnetRouteTableAssociationArgs(
        routeTableId = routeTableId,
        subnetId = subnetId,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy