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

com.pulumi.awsnative.s3.kotlin.inputs.BucketRoutingRuleConditionArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.s3.kotlin.inputs

import com.pulumi.awsnative.s3.inputs.BucketRoutingRuleConditionArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * A container for describing a condition that must be met for the specified redirect to apply. For example, 1. If request is for pages in the ``/docs`` folder, redirect to the ``/documents`` folder. 2. If request results in HTTP error 4xx, redirect request to another host where you might process the error.
 * @property httpErrorCodeReturnedEquals The HTTP error code when the redirect is applied. In the event of an error, if the error code equals this value, then the specified redirect is applied.
 *  Required when parent element ``Condition`` is specified and sibling ``KeyPrefixEquals`` is not specified. If both are specified, then both must be true for the redirect to be applied.
 * @property keyPrefixEquals The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``/docs``, which identifies all objects in the docs/ folder.
 *  Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.
 */
public data class BucketRoutingRuleConditionArgs(
    public val httpErrorCodeReturnedEquals: Output? = null,
    public val keyPrefixEquals: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.s3.inputs.BucketRoutingRuleConditionArgs =
        com.pulumi.awsnative.s3.inputs.BucketRoutingRuleConditionArgs.builder()
            .httpErrorCodeReturnedEquals(httpErrorCodeReturnedEquals?.applyValue({ args0 -> args0 }))
            .keyPrefixEquals(keyPrefixEquals?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [BucketRoutingRuleConditionArgs].
 */
@PulumiTagMarker
public class BucketRoutingRuleConditionArgsBuilder internal constructor() {
    private var httpErrorCodeReturnedEquals: Output? = null

    private var keyPrefixEquals: Output? = null

    /**
     * @param value The HTTP error code when the redirect is applied. In the event of an error, if the error code equals this value, then the specified redirect is applied.
     *  Required when parent element ``Condition`` is specified and sibling ``KeyPrefixEquals`` is not specified. If both are specified, then both must be true for the redirect to be applied.
     */
    @JvmName("jvcwrcvgargxgqdy")
    public suspend fun httpErrorCodeReturnedEquals(`value`: Output) {
        this.httpErrorCodeReturnedEquals = value
    }

    /**
     * @param value The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``/docs``, which identifies all objects in the docs/ folder.
     *  Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.
     */
    @JvmName("ikniwtajvqflweuh")
    public suspend fun keyPrefixEquals(`value`: Output) {
        this.keyPrefixEquals = value
    }

    /**
     * @param value The HTTP error code when the redirect is applied. In the event of an error, if the error code equals this value, then the specified redirect is applied.
     *  Required when parent element ``Condition`` is specified and sibling ``KeyPrefixEquals`` is not specified. If both are specified, then both must be true for the redirect to be applied.
     */
    @JvmName("pftosnnoelvqrcyw")
    public suspend fun httpErrorCodeReturnedEquals(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.httpErrorCodeReturnedEquals = mapped
    }

    /**
     * @param value The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``/docs``, which identifies all objects in the docs/ folder.
     *  Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.
     */
    @JvmName("wtdmmqoaowlsiwxr")
    public suspend fun keyPrefixEquals(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keyPrefixEquals = mapped
    }

    internal fun build(): BucketRoutingRuleConditionArgs = BucketRoutingRuleConditionArgs(
        httpErrorCodeReturnedEquals = httpErrorCodeReturnedEquals,
        keyPrefixEquals = keyPrefixEquals,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy