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

com.pulumi.gcp.compute.kotlin.outputs.GetRouterNatResult.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.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.compute.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 * A collection of values returned by getRouterNat.
 * @property autoNetworkTier
 * @property drainNatIps
 * @property enableDynamicPortAllocation
 * @property enableEndpointIndependentMapping
 * @property endpointTypes
 * @property icmpIdleTimeoutSec
 * @property id The provider-assigned unique ID for this managed resource.
 * @property logConfigs
 * @property maxPortsPerVm
 * @property minPortsPerVm
 * @property name
 * @property natIpAllocateOption
 * @property natIps
 * @property project
 * @property region
 * @property router
 * @property rules
 * @property sourceSubnetworkIpRangesToNat
 * @property subnetworks
 * @property tcpEstablishedIdleTimeoutSec
 * @property tcpTimeWaitTimeoutSec
 * @property tcpTransitoryIdleTimeoutSec
 * @property type
 * @property udpIdleTimeoutSec
 */
public data class GetRouterNatResult(
    public val autoNetworkTier: String,
    public val drainNatIps: List,
    public val enableDynamicPortAllocation: Boolean,
    public val enableEndpointIndependentMapping: Boolean,
    public val endpointTypes: List,
    public val icmpIdleTimeoutSec: Int,
    public val id: String,
    public val logConfigs: List,
    public val maxPortsPerVm: Int,
    public val minPortsPerVm: Int,
    public val name: String,
    public val natIpAllocateOption: String,
    public val natIps: List,
    public val project: String? = null,
    public val region: String? = null,
    public val router: String,
    public val rules: List,
    public val sourceSubnetworkIpRangesToNat: String,
    public val subnetworks: List,
    public val tcpEstablishedIdleTimeoutSec: Int,
    public val tcpTimeWaitTimeoutSec: Int,
    public val tcpTransitoryIdleTimeoutSec: Int,
    public val type: String,
    public val udpIdleTimeoutSec: Int,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.compute.outputs.GetRouterNatResult): GetRouterNatResult = GetRouterNatResult(
            autoNetworkTier = javaType.autoNetworkTier(),
            drainNatIps = javaType.drainNatIps().map({ args0 -> args0 }),
            enableDynamicPortAllocation = javaType.enableDynamicPortAllocation(),
            enableEndpointIndependentMapping = javaType.enableEndpointIndependentMapping(),
            endpointTypes = javaType.endpointTypes().map({ args0 -> args0 }),
            icmpIdleTimeoutSec = javaType.icmpIdleTimeoutSec(),
            id = javaType.id(),
            logConfigs = javaType.logConfigs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.compute.kotlin.outputs.GetRouterNatLogConfig.Companion.toKotlin(args0)
                })
            }),
            maxPortsPerVm = javaType.maxPortsPerVm(),
            minPortsPerVm = javaType.minPortsPerVm(),
            name = javaType.name(),
            natIpAllocateOption = javaType.natIpAllocateOption(),
            natIps = javaType.natIps().map({ args0 -> args0 }),
            project = javaType.project().map({ args0 -> args0 }).orElse(null),
            region = javaType.region().map({ args0 -> args0 }).orElse(null),
            router = javaType.router(),
            rules = javaType.rules().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.compute.kotlin.outputs.GetRouterNatRule.Companion.toKotlin(args0)
                })
            }),
            sourceSubnetworkIpRangesToNat = javaType.sourceSubnetworkIpRangesToNat(),
            subnetworks = javaType.subnetworks().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.compute.kotlin.outputs.GetRouterNatSubnetwork.Companion.toKotlin(args0)
                })
            }),
            tcpEstablishedIdleTimeoutSec = javaType.tcpEstablishedIdleTimeoutSec(),
            tcpTimeWaitTimeoutSec = javaType.tcpTimeWaitTimeoutSec(),
            tcpTransitoryIdleTimeoutSec = javaType.tcpTransitoryIdleTimeoutSec(),
            type = javaType.type(),
            udpIdleTimeoutSec = javaType.udpIdleTimeoutSec(),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy