com.pulumi.awsnative.wafv2.kotlin.outputs.WebAclManagedRuleGroupStatement.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.wafv2.kotlin.outputs
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property excludedRules Rules in the referenced rule group whose actions are set to `Count` .
* > Instead of this option, use `RuleActionOverrides` . It accepts any valid action setting, including `Count` .
* @property managedRuleGroupConfigs Collection of ManagedRuleGroupConfig.
* @property name The name of the managed rule group. You use this, along with the vendor name, to identify the rule group.
* @property ruleActionOverrides Action overrides for rules in the rule group.
* @property scopeDownStatement An optional nested statement that narrows the scope of the web requests that are evaluated by the managed rule group. Requests are only evaluated by the rule group if they match the scope-down statement. You can use any nestable `Statement` in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
* @property vendorName The name of the managed rule group vendor. You use this, along with the rule group name, to identify a rule group.
* @property version The version of the managed rule group to use. If you specify this, the version setting is fixed until you change it. If you don't specify this, AWS WAF uses the vendor's default version, and then keeps the version at the vendor's default when the vendor updates the managed rule group settings.
*/
public data class WebAclManagedRuleGroupStatement(
public val excludedRules: List? = null,
public val managedRuleGroupConfigs: List? = null,
public val name: String,
public val ruleActionOverrides: List? = null,
public val scopeDownStatement: WebAclStatement? = null,
public val vendorName: String,
public val version: String? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.awsnative.wafv2.outputs.WebAclManagedRuleGroupStatement): WebAclManagedRuleGroupStatement = WebAclManagedRuleGroupStatement(
excludedRules = javaType.excludedRules().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.wafv2.kotlin.outputs.WebAclExcludedRule.Companion.toKotlin(args0)
})
}),
managedRuleGroupConfigs = javaType.managedRuleGroupConfigs().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.wafv2.kotlin.outputs.WebAclManagedRuleGroupConfig.Companion.toKotlin(args0)
})
}),
name = javaType.name(),
ruleActionOverrides = javaType.ruleActionOverrides().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.wafv2.kotlin.outputs.WebAclRuleActionOverride.Companion.toKotlin(args0)
})
}),
scopeDownStatement = javaType.scopeDownStatement().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.wafv2.kotlin.outputs.WebAclStatement.Companion.toKotlin(args0)
})
}).orElse(null),
vendorName = javaType.vendorName(),
version = javaType.version().map({ args0 -> args0 }).orElse(null),
)
}
}