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

com.pulumi.gcp.compute.kotlin.inputs.URLMapPathMatcherHeaderActionArgs.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.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.compute.inputs.URLMapPathMatcherHeaderActionArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property requestHeadersToAdds Headers to add to a matching request prior to forwarding the request to the backendService.
 * Structure is documented below.
 * @property requestHeadersToRemoves A list of header names for headers that need to be removed from the request prior to
 * forwarding the request to the backendService.
 * @property responseHeadersToAdds Headers to add the response prior to sending the response back to the client.
 * Structure is documented below.
 * @property responseHeadersToRemoves A list of header names for headers that need to be removed from the response prior to sending the
 * response back to the client.
 */
public data class URLMapPathMatcherHeaderActionArgs(
    public val requestHeadersToAdds: Output>? = null,
    public val requestHeadersToRemoves: Output>? = null,
    public val responseHeadersToAdds: Output>? = null,
    public val responseHeadersToRemoves: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.compute.inputs.URLMapPathMatcherHeaderActionArgs =
        com.pulumi.gcp.compute.inputs.URLMapPathMatcherHeaderActionArgs.builder()
            .requestHeadersToAdds(
                requestHeadersToAdds?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .requestHeadersToRemoves(
                requestHeadersToRemoves?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .responseHeadersToAdds(
                responseHeadersToAdds?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .responseHeadersToRemoves(
                responseHeadersToRemoves?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            ).build()
}

/**
 * Builder for [URLMapPathMatcherHeaderActionArgs].
 */
@PulumiTagMarker
public class URLMapPathMatcherHeaderActionArgsBuilder internal constructor() {
    private var requestHeadersToAdds:
        Output>? = null

    private var requestHeadersToRemoves: Output>? = null

    private var responseHeadersToAdds:
        Output>? = null

    private var responseHeadersToRemoves: Output>? = null

    /**
     * @param value Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("swdnaywftiipyvft")
    public suspend fun requestHeadersToAdds(`value`: Output>) {
        this.requestHeadersToAdds = value
    }

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

    /**
     * @param values Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("nvobiafhbmsfrjrj")
    public suspend fun requestHeadersToAdds(values: List>) {
        this.requestHeadersToAdds = Output.all(values)
    }

    /**
     * @param value A list of header names for headers that need to be removed from the request prior to
     * forwarding the request to the backendService.
     */
    @JvmName("jbyphvwxhxkflmyp")
    public suspend fun requestHeadersToRemoves(`value`: Output>) {
        this.requestHeadersToRemoves = value
    }

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

    /**
     * @param values A list of header names for headers that need to be removed from the request prior to
     * forwarding the request to the backendService.
     */
    @JvmName("jobapjamwrnxfrve")
    public suspend fun requestHeadersToRemoves(values: List>) {
        this.requestHeadersToRemoves = Output.all(values)
    }

    /**
     * @param value Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("estybysbxcouqawv")
    public suspend fun responseHeadersToAdds(`value`: Output>) {
        this.responseHeadersToAdds = value
    }

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

    /**
     * @param values Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("cgeglrxvqawcvhpi")
    public suspend fun responseHeadersToAdds(values: List>) {
        this.responseHeadersToAdds = Output.all(values)
    }

    /**
     * @param value A list of header names for headers that need to be removed from the response prior to sending the
     * response back to the client.
     */
    @JvmName("ynebswfswkkjkgwv")
    public suspend fun responseHeadersToRemoves(`value`: Output>) {
        this.responseHeadersToRemoves = value
    }

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

    /**
     * @param values A list of header names for headers that need to be removed from the response prior to sending the
     * response back to the client.
     */
    @JvmName("ididtfnjrowdbrio")
    public suspend fun responseHeadersToRemoves(values: List>) {
        this.responseHeadersToRemoves = Output.all(values)
    }

    /**
     * @param value Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("buiyclrwhfaoqvfj")
    public suspend fun requestHeadersToAdds(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requestHeadersToAdds = mapped
    }

    /**
     * @param argument Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("hsrhisxolbpejyir")
    public suspend fun requestHeadersToAdds(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            URLMapPathMatcherHeaderActionRequestHeadersToAddArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.requestHeadersToAdds = mapped
    }

    /**
     * @param argument Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("doovrgwsbgprfabj")
    public suspend fun requestHeadersToAdds(vararg argument: suspend URLMapPathMatcherHeaderActionRequestHeadersToAddArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            URLMapPathMatcherHeaderActionRequestHeadersToAddArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.requestHeadersToAdds = mapped
    }

    /**
     * @param argument Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("kfexnpcctlrxvidu")
    public suspend fun requestHeadersToAdds(argument: suspend URLMapPathMatcherHeaderActionRequestHeadersToAddArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                URLMapPathMatcherHeaderActionRequestHeadersToAddArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.requestHeadersToAdds = mapped
    }

    /**
     * @param values Headers to add to a matching request prior to forwarding the request to the backendService.
     * Structure is documented below.
     */
    @JvmName("swqanyhkhtixcwwl")
    public suspend fun requestHeadersToAdds(vararg values: URLMapPathMatcherHeaderActionRequestHeadersToAddArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.requestHeadersToAdds = mapped
    }

    /**
     * @param value A list of header names for headers that need to be removed from the request prior to
     * forwarding the request to the backendService.
     */
    @JvmName("swpahsbnwgblyfut")
    public suspend fun requestHeadersToRemoves(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requestHeadersToRemoves = mapped
    }

    /**
     * @param values A list of header names for headers that need to be removed from the request prior to
     * forwarding the request to the backendService.
     */
    @JvmName("acrjiskeldnicxwx")
    public suspend fun requestHeadersToRemoves(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.requestHeadersToRemoves = mapped
    }

    /**
     * @param value Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("snatleqmerbbdrak")
    public suspend fun responseHeadersToAdds(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.responseHeadersToAdds = mapped
    }

    /**
     * @param argument Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("uhbvspfdeeouvynt")
    public suspend fun responseHeadersToAdds(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            URLMapPathMatcherHeaderActionResponseHeadersToAddArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.responseHeadersToAdds = mapped
    }

    /**
     * @param argument Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("fsuppaewckxabnqj")
    public suspend fun responseHeadersToAdds(vararg argument: suspend URLMapPathMatcherHeaderActionResponseHeadersToAddArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            URLMapPathMatcherHeaderActionResponseHeadersToAddArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.responseHeadersToAdds = mapped
    }

    /**
     * @param argument Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("lejokpxnnvduuwdi")
    public suspend fun responseHeadersToAdds(argument: suspend URLMapPathMatcherHeaderActionResponseHeadersToAddArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                URLMapPathMatcherHeaderActionResponseHeadersToAddArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.responseHeadersToAdds = mapped
    }

    /**
     * @param values Headers to add the response prior to sending the response back to the client.
     * Structure is documented below.
     */
    @JvmName("jwsyddrcyrqofggb")
    public suspend fun responseHeadersToAdds(vararg values: URLMapPathMatcherHeaderActionResponseHeadersToAddArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.responseHeadersToAdds = mapped
    }

    /**
     * @param value A list of header names for headers that need to be removed from the response prior to sending the
     * response back to the client.
     */
    @JvmName("nbxtaybtxdhcvckr")
    public suspend fun responseHeadersToRemoves(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.responseHeadersToRemoves = mapped
    }

    /**
     * @param values A list of header names for headers that need to be removed from the response prior to sending the
     * response back to the client.
     */
    @JvmName("fsqmajwahfklasxp")
    public suspend fun responseHeadersToRemoves(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.responseHeadersToRemoves = mapped
    }

    internal fun build(): URLMapPathMatcherHeaderActionArgs = URLMapPathMatcherHeaderActionArgs(
        requestHeadersToAdds = requestHeadersToAdds,
        requestHeadersToRemoves = requestHeadersToRemoves,
        responseHeadersToAdds = responseHeadersToAdds,
        responseHeadersToRemoves = responseHeadersToRemoves,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy