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

com.pulumi.azurenative.network.kotlin.outputs.EffectiveSecurityAdminRuleResponse.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.network.kotlin.outputs

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

/**
 * Network admin rule.
 * @property access Indicates the access allowed for this particular rule
 * @property configurationDescription A description of the security admin configuration.
 * @property configurationDisplayName A display name of the security admin configuration.
 * @property description A description for this rule. Restricted to 140 chars.
 * @property destinationPortRanges The destination port ranges.
 * @property destinations The destination address prefixes. CIDR or destination IP ranges.
 * @property direction Indicates if the traffic matched against the rule in inbound or outbound.
 * @property displayName A friendly name for the rule.
 * @property id Resource ID.
 * @property kind Whether the rule is custom or default.
 * Expected value is 'Custom'.
 * @property priority The priority of the rule. The value can be between 1 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule.
 * @property protocol Network protocol this rule applies to.
 * @property provisioningState The provisioning state of the resource.
 * @property resourceGuid Unique identifier for this resource.
 * @property ruleCollectionAppliesToGroups Groups for rule collection
 * @property ruleCollectionDescription A description of the rule collection.
 * @property ruleCollectionDisplayName A display name of the rule collection.
 * @property ruleGroups Effective configuration groups.
 * @property sourcePortRanges The source port ranges.
 * @property sources The CIDR or source IP ranges.
 */
public data class EffectiveSecurityAdminRuleResponse(
    public val access: String,
    public val configurationDescription: String? = null,
    public val configurationDisplayName: String? = null,
    public val description: String? = null,
    public val destinationPortRanges: List? = null,
    public val destinations: List? = null,
    public val direction: String,
    public val displayName: String? = null,
    public val id: String? = null,
    public val kind: String,
    public val priority: Int,
    public val protocol: String,
    public val provisioningState: String,
    public val resourceGuid: String,
    public val ruleCollectionAppliesToGroups: List? = null,
    public val ruleCollectionDescription: String? = null,
    public val ruleCollectionDisplayName: String? = null,
    public val ruleGroups: List? = null,
    public val sourcePortRanges: List? = null,
    public val sources: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azurenative.network.outputs.EffectiveSecurityAdminRuleResponse): EffectiveSecurityAdminRuleResponse = EffectiveSecurityAdminRuleResponse(
            access = javaType.access(),
            configurationDescription = javaType.configurationDescription().map({ args0 -> args0 }).orElse(null),
            configurationDisplayName = javaType.configurationDisplayName().map({ args0 -> args0 }).orElse(null),
            description = javaType.description().map({ args0 -> args0 }).orElse(null),
            destinationPortRanges = javaType.destinationPortRanges().map({ args0 -> args0 }),
            destinations = javaType.destinations().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.network.kotlin.outputs.AddressPrefixItemResponse.Companion.toKotlin(args0)
                })
            }),
            direction = javaType.direction(),
            displayName = javaType.displayName().map({ args0 -> args0 }).orElse(null),
            id = javaType.id().map({ args0 -> args0 }).orElse(null),
            kind = javaType.kind(),
            priority = javaType.priority(),
            protocol = javaType.protocol(),
            provisioningState = javaType.provisioningState(),
            resourceGuid = javaType.resourceGuid(),
            ruleCollectionAppliesToGroups = javaType.ruleCollectionAppliesToGroups().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.network.kotlin.outputs.NetworkManagerSecurityGroupItemResponse.Companion.toKotlin(args0)
                })
            }),
            ruleCollectionDescription = javaType.ruleCollectionDescription().map({ args0 ->
                args0
            }).orElse(null),
            ruleCollectionDisplayName = javaType.ruleCollectionDisplayName().map({ args0 ->
                args0
            }).orElse(null),
            ruleGroups = javaType.ruleGroups().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.network.kotlin.outputs.ConfigurationGroupResponse.Companion.toKotlin(args0)
                })
            }),
            sourcePortRanges = javaType.sourcePortRanges().map({ args0 -> args0 }),
            sources = javaType.sources().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.network.kotlin.outputs.AddressPrefixItemResponse.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy