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

com.pulumi.awsnative.wafv2.kotlin.inputs.WebAclHeaderMatchPatternArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.wafv2.kotlin.inputs

import com.pulumi.awsnative.wafv2.inputs.WebAclHeaderMatchPatternArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Any
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * The pattern to look for in the request headers.
 * @property all Inspect all parts of the web request headers.
 * @property excludedHeaders Inspect only the headers whose keys don't match any of the strings specified here.
 * @property includedHeaders Inspect only the headers that have a key that matches one of the strings specified here.
 */
public data class WebAclHeaderMatchPatternArgs(
    public val all: Output? = null,
    public val excludedHeaders: Output>? = null,
    public val includedHeaders: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.wafv2.inputs.WebAclHeaderMatchPatternArgs =
        com.pulumi.awsnative.wafv2.inputs.WebAclHeaderMatchPatternArgs.builder()
            .all(all?.applyValue({ args0 -> args0 }))
            .excludedHeaders(excludedHeaders?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .includedHeaders(includedHeaders?.applyValue({ args0 -> args0.map({ args0 -> args0 }) })).build()
}

/**
 * Builder for [WebAclHeaderMatchPatternArgs].
 */
@PulumiTagMarker
public class WebAclHeaderMatchPatternArgsBuilder internal constructor() {
    private var all: Output? = null

    private var excludedHeaders: Output>? = null

    private var includedHeaders: Output>? = null

    /**
     * @param value Inspect all parts of the web request headers.
     */
    @JvmName("mbngdxohvvgwxups")
    public suspend fun all(`value`: Output) {
        this.all = value
    }

    /**
     * @param value Inspect only the headers whose keys don't match any of the strings specified here.
     */
    @JvmName("uhxycbhovtyrpxou")
    public suspend fun excludedHeaders(`value`: Output>) {
        this.excludedHeaders = value
    }

    @JvmName("agjucfxrgkmecwnv")
    public suspend fun excludedHeaders(vararg values: Output) {
        this.excludedHeaders = Output.all(values.asList())
    }

    /**
     * @param values Inspect only the headers whose keys don't match any of the strings specified here.
     */
    @JvmName("vxwobhopexjxtrok")
    public suspend fun excludedHeaders(values: List>) {
        this.excludedHeaders = Output.all(values)
    }

    /**
     * @param value Inspect only the headers that have a key that matches one of the strings specified here.
     */
    @JvmName("ejpcujwhgejagypu")
    public suspend fun includedHeaders(`value`: Output>) {
        this.includedHeaders = value
    }

    @JvmName("sbdggmjjlfhjgxuf")
    public suspend fun includedHeaders(vararg values: Output) {
        this.includedHeaders = Output.all(values.asList())
    }

    /**
     * @param values Inspect only the headers that have a key that matches one of the strings specified here.
     */
    @JvmName("ltqfmxayktusajev")
    public suspend fun includedHeaders(values: List>) {
        this.includedHeaders = Output.all(values)
    }

    /**
     * @param value Inspect all parts of the web request headers.
     */
    @JvmName("nyrtowsdswtgceyl")
    public suspend fun all(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.all = mapped
    }

    /**
     * @param value Inspect only the headers whose keys don't match any of the strings specified here.
     */
    @JvmName("euasdbrghbemxbkc")
    public suspend fun excludedHeaders(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.excludedHeaders = mapped
    }

    /**
     * @param values Inspect only the headers whose keys don't match any of the strings specified here.
     */
    @JvmName("kmrqpeqhfohdglvh")
    public suspend fun excludedHeaders(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.excludedHeaders = mapped
    }

    /**
     * @param value Inspect only the headers that have a key that matches one of the strings specified here.
     */
    @JvmName("qbshddpqmloqfsve")
    public suspend fun includedHeaders(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.includedHeaders = mapped
    }

    /**
     * @param values Inspect only the headers that have a key that matches one of the strings specified here.
     */
    @JvmName("fgdtlnjuaqwocqmo")
    public suspend fun includedHeaders(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.includedHeaders = mapped
    }

    internal fun build(): WebAclHeaderMatchPatternArgs = WebAclHeaderMatchPatternArgs(
        all = all,
        excludedHeaders = excludedHeaders,
        includedHeaders = includedHeaders,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy