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

com.pulumi.azure.cdn.kotlin.inputs.FrontdoorRuleActionsRequestHeaderActionArgs.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.cdn.kotlin.inputs

import com.pulumi.azure.cdn.inputs.FrontdoorRuleActionsRequestHeaderActionArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property headerAction The action to be taken on the specified `header_name`. Possible values include `Append`, `Overwrite` or `Delete`.
 * > **NOTE:** `Append` causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. `Overwrite` causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. `Delete` causes the header to be deleted from the request.
 * @property headerName The name of the header to modify.
 * @property value The value to append or overwrite.
 * ->**NOTE:** `value` is required if the `header_action` is set to `Append` or `Overwrite`.
 */
public data class FrontdoorRuleActionsRequestHeaderActionArgs(
    public val headerAction: Output,
    public val headerName: Output,
    public val `value`: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.cdn.inputs.FrontdoorRuleActionsRequestHeaderActionArgs =
        com.pulumi.azure.cdn.inputs.FrontdoorRuleActionsRequestHeaderActionArgs.builder()
            .headerAction(headerAction.applyValue({ args0 -> args0 }))
            .headerName(headerName.applyValue({ args0 -> args0 }))
            .`value`(`value`?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [FrontdoorRuleActionsRequestHeaderActionArgs].
 */
@PulumiTagMarker
public class FrontdoorRuleActionsRequestHeaderActionArgsBuilder internal constructor() {
    private var headerAction: Output? = null

    private var headerName: Output? = null

    private var `value`: Output? = null

    /**
     * @param value The action to be taken on the specified `header_name`. Possible values include `Append`, `Overwrite` or `Delete`.
     * > **NOTE:** `Append` causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. `Overwrite` causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. `Delete` causes the header to be deleted from the request.
     */
    @JvmName("cspbxeurxxhncvym")
    public suspend fun headerAction(`value`: Output) {
        this.headerAction = value
    }

    /**
     * @param value The name of the header to modify.
     */
    @JvmName("mkbcwhqrtqotpmvc")
    public suspend fun headerName(`value`: Output) {
        this.headerName = value
    }

    /**
     * @param value The value to append or overwrite.
     * ->**NOTE:** `value` is required if the `header_action` is set to `Append` or `Overwrite`.
     */
    @JvmName("hridxignulqvuale")
    public suspend fun `value`(`value`: Output) {
        this.`value` = value
    }

    /**
     * @param value The action to be taken on the specified `header_name`. Possible values include `Append`, `Overwrite` or `Delete`.
     * > **NOTE:** `Append` causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. `Overwrite` causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. `Delete` causes the header to be deleted from the request.
     */
    @JvmName("djvjuvbdmknjiqrp")
    public suspend fun headerAction(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.headerAction = mapped
    }

    /**
     * @param value The name of the header to modify.
     */
    @JvmName("htgchfbqpebjcabg")
    public suspend fun headerName(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.headerName = mapped
    }

    /**
     * @param value The value to append or overwrite.
     * ->**NOTE:** `value` is required if the `header_action` is set to `Append` or `Overwrite`.
     */
    @JvmName("bnkwcjhebyjaelhd")
    public suspend fun `value`(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.`value` = mapped
    }

    internal fun build(): FrontdoorRuleActionsRequestHeaderActionArgs =
        FrontdoorRuleActionsRequestHeaderActionArgs(
            headerAction = headerAction ?: throw PulumiNullFieldException("headerAction"),
            headerName = headerName ?: throw PulumiNullFieldException("headerName"),
            `value` = `value`,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy