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

com.pulumi.azure.network.kotlin.outputs.FirewallNatRuleCollectionRule.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: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.network.kotlin.outputs

import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property description Specifies a description for the rule.
 * @property destinationAddresses A list of destination IP addresses and/or IP ranges.
 * @property destinationPorts A list of destination ports.
 * @property name Specifies the name of the rule.
 * @property protocols A list of protocols. Possible values are `Any`, `ICMP`, `TCP` and `UDP`. If `action` is `Dnat`, protocols can only be `TCP` and `UDP`.
 * @property sourceAddresses A list of source IP addresses and/or IP ranges.
 * @property sourceIpGroups A list of source IP Group IDs for the rule.
 * > **NOTE** At least one of `source_addresses` and `source_ip_groups` must be specified for a rule.
 * @property translatedAddress The address of the service behind the Firewall.
 * @property translatedPort The port of the service behind the Firewall.
 */
public data class FirewallNatRuleCollectionRule(
    public val description: String? = null,
    public val destinationAddresses: List,
    public val destinationPorts: List,
    public val name: String,
    public val protocols: List,
    public val sourceAddresses: List? = null,
    public val sourceIpGroups: List? = null,
    public val translatedAddress: String,
    public val translatedPort: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.network.outputs.FirewallNatRuleCollectionRule): FirewallNatRuleCollectionRule = FirewallNatRuleCollectionRule(
            description = javaType.description().map({ args0 -> args0 }).orElse(null),
            destinationAddresses = javaType.destinationAddresses().map({ args0 -> args0 }),
            destinationPorts = javaType.destinationPorts().map({ args0 -> args0 }),
            name = javaType.name(),
            protocols = javaType.protocols().map({ args0 -> args0 }),
            sourceAddresses = javaType.sourceAddresses().map({ args0 -> args0 }),
            sourceIpGroups = javaType.sourceIpGroups().map({ args0 -> args0 }),
            translatedAddress = javaType.translatedAddress(),
            translatedPort = javaType.translatedPort(),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy