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

com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParameters.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.

The newest version!
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.cloudflare.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map

/**
 *
 * @property additionalCacheablePorts Allows for the ability to support caching on non-standard ports.
 * @property automaticHttpsRewrites Turn on or off Cloudflare Automatic HTTPS rewrites.
 * @property autominifies Indicate which file extensions to minify automatically.
 * @property bic Inspect the visitor's browser for headers commonly associated with spammers and certain bots.
 * @property browserTtl List of browser TTL parameters to apply to the request.
 * @property cache Whether to cache if expression matches.
 * @property cacheKey List of cache key parameters to apply to the request.
 * @property cacheReserve List of cache reserve parameters to apply to the request.
 * @property content Content of the custom error response
 * @property contentType Content-Type of the custom error response
 * @property cookieFields List of cookie values to include as part of custom fields logging.
 * @property disableApps Turn off all active Cloudflare Apps.
 * @property disableRailgun Turn off railgun feature of the Cloudflare Speed app.
 * @property disableZaraz Turn off zaraz feature.
 * @property edgeTtl List of edge TTL parameters to apply to the request.
 * @property emailObfuscation Turn on or off the Cloudflare Email Obfuscation feature of the Cloudflare Scrape Shield app.
 * @property fromList Use a list to lookup information for the action.
 * @property fromValue Use a value to lookup information for the action.
 * @property headers List of HTTP header modifications to perform in the ruleset rule.
 * @property hostHeader Host Header that request origin receives.
 * @property hotlinkProtection Turn on or off the hotlink protection feature.
 * @property id Identifier of the action parameter to modify.
 * @property increment
 * @property matchedData List of properties to configure WAF payload logging.
 * @property mirage Turn on or off Cloudflare Mirage of the Cloudflare Speed app.
 * @property opportunisticEncryption Turn on or off the Cloudflare Opportunistic Encryption feature of the Edge Certificates tab in the Cloudflare SSL/TLS app.
 * @property origin List of properties to change request origin.
 * @property originCacheControl Sets a more compliant mode for parsing Cache Control headers
 * @property originErrorPagePassthru Pass-through error page for origin.
 * @property overrides List of override configurations to apply to the ruleset.
 * @property phases Point in the request/response lifecycle where the ruleset will be created. Available values: `ddos_l4`, `ddos_l7`, `http_config_settings`, `http_custom_errors`, `http_log_custom_fields`, `http_ratelimit`, `http_request_cache_settings`, `http_request_dynamic_redirect`, `http_request_firewall_custom`, `http_request_firewall_managed`, `http_request_late_transform`, `http_request_origin`, `http_request_redirect`, `http_request_sanitize`, `http_request_sbfm`, `http_request_transform`, `http_response_compression`, `http_response_firewall_managed`, `http_response_headers_transform`, `magic_transit`
 * @property polish Apply options from the Polish feature of the Cloudflare Speed app.
 * @property products Products to target with the actions. Available values: `bic`, `hot`, `ratelimit`, `securityLevel`, `uablock`, `waf`, `zonelockdown`
 * @property readTimeout Sets the timeout value for reading content from an origin server.
 * @property requestFields List of request headers to include as part of custom fields logging, in lowercase.
 * @property respectStrongEtags Respect strong ETags.
 * @property responseFields List of response headers to include as part of custom fields logging, in lowercase.
 * @property responses List of parameters that configure the response given to end users
 * @property rocketLoader Turn on or off Cloudflare Rocket Loader in the Cloudflare Speed app.
 * @property rules Map of managed WAF rule ID to comma-delimited string of ruleset rule IDs. Example: `rules = { "efb7b8c949ac4650a09736fc376e9aee" = "5de7edfa648c4d6891dc3e7f84534ffa,e3a567afc347477d9702d9047e97d760" }`
 * @property ruleset Which ruleset ID to target.
 * @property rulesets List of managed WAF rule IDs to target. Only valid when the `"action"` is set to skip
 * @property securityLevel Control options for the Security Level feature from the Security app.
 * @property serveStale List of serve stale parameters to apply to the request.
 * @property serverSideExcludes Turn on or off the Server Side Excludes feature of the Cloudflare Scrape Shield app.
 * @property sni List of properties to manange Server Name Indication.
 * @property ssl Control options for the SSL feature of the Edge Certificates tab in the Cloudflare SSL/TLS app.
 * @property statusCode HTTP status code of the custom error response
 * @property sxg Turn on or off the SXG feature.
 * @property uri List of URI properties to configure for the ruleset rule when performing URL rewrite transformations.
 * @property version Version of the ruleset to deploy.
 */
public data class GetRulesetsRulesetRuleActionParameters(
    public val additionalCacheablePorts: List? = null,
    public val automaticHttpsRewrites: Boolean? = null,
    public val autominifies: List? = null,
    public val bic: Boolean? = null,
    public val browserTtl: GetRulesetsRulesetRuleActionParametersBrowserTtl? = null,
    public val cache: Boolean? = null,
    public val cacheKey: GetRulesetsRulesetRuleActionParametersCacheKey? = null,
    public val cacheReserve: GetRulesetsRulesetRuleActionParametersCacheReserve? = null,
    public val content: String? = null,
    public val contentType: String? = null,
    public val cookieFields: List? = null,
    public val disableApps: Boolean? = null,
    public val disableRailgun: Boolean? = null,
    public val disableZaraz: Boolean? = null,
    public val edgeTtl: GetRulesetsRulesetRuleActionParametersEdgeTtl? = null,
    public val emailObfuscation: Boolean? = null,
    public val fromList: GetRulesetsRulesetRuleActionParametersFromList? = null,
    public val fromValue: GetRulesetsRulesetRuleActionParametersFromValue? = null,
    public val headers: List? = null,
    public val hostHeader: String? = null,
    public val hotlinkProtection: Boolean? = null,
    public val id: String? = null,
    public val increment: Int? = null,
    public val matchedData: GetRulesetsRulesetRuleActionParametersMatchedData? = null,
    public val mirage: Boolean? = null,
    public val opportunisticEncryption: Boolean? = null,
    public val origin: GetRulesetsRulesetRuleActionParametersOrigin? = null,
    public val originCacheControl: Boolean? = null,
    public val originErrorPagePassthru: Boolean? = null,
    public val overrides: GetRulesetsRulesetRuleActionParametersOverrides? = null,
    public val phases: List? = null,
    public val polish: String? = null,
    public val products: List? = null,
    public val readTimeout: Int? = null,
    public val requestFields: List? = null,
    public val respectStrongEtags: Boolean? = null,
    public val responseFields: List? = null,
    public val responses: List? = null,
    public val rocketLoader: Boolean? = null,
    public val rules: Map? = null,
    public val ruleset: String? = null,
    public val rulesets: List? = null,
    public val securityLevel: String? = null,
    public val serveStale: GetRulesetsRulesetRuleActionParametersServeStale? = null,
    public val serverSideExcludes: Boolean? = null,
    public val sni: GetRulesetsRulesetRuleActionParametersSni? = null,
    public val ssl: String? = null,
    public val statusCode: Int? = null,
    public val sxg: Boolean? = null,
    public val uri: GetRulesetsRulesetRuleActionParametersUri? = null,
    public val version: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.cloudflare.outputs.GetRulesetsRulesetRuleActionParameters): GetRulesetsRulesetRuleActionParameters = GetRulesetsRulesetRuleActionParameters(
            additionalCacheablePorts = javaType.additionalCacheablePorts().map({ args0 -> args0 }),
            automaticHttpsRewrites = javaType.automaticHttpsRewrites().map({ args0 -> args0 }).orElse(null),
            autominifies = javaType.autominifies().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersAutominify.Companion.toKotlin(args0)
                })
            }),
            bic = javaType.bic().map({ args0 -> args0 }).orElse(null),
            browserTtl = javaType.browserTtl().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersBrowserTtl.Companion.toKotlin(args0)
                })
            }).orElse(null),
            cache = javaType.cache().map({ args0 -> args0 }).orElse(null),
            cacheKey = javaType.cacheKey().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersCacheKey.Companion.toKotlin(args0)
                })
            }).orElse(null),
            cacheReserve = javaType.cacheReserve().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersCacheReserve.Companion.toKotlin(args0)
                })
            }).orElse(null),
            content = javaType.content().map({ args0 -> args0 }).orElse(null),
            contentType = javaType.contentType().map({ args0 -> args0 }).orElse(null),
            cookieFields = javaType.cookieFields().map({ args0 -> args0 }),
            disableApps = javaType.disableApps().map({ args0 -> args0 }).orElse(null),
            disableRailgun = javaType.disableRailgun().map({ args0 -> args0 }).orElse(null),
            disableZaraz = javaType.disableZaraz().map({ args0 -> args0 }).orElse(null),
            edgeTtl = javaType.edgeTtl().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersEdgeTtl.Companion.toKotlin(args0)
                })
            }).orElse(null),
            emailObfuscation = javaType.emailObfuscation().map({ args0 -> args0 }).orElse(null),
            fromList = javaType.fromList().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersFromList.Companion.toKotlin(args0)
                })
            }).orElse(null),
            fromValue = javaType.fromValue().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersFromValue.Companion.toKotlin(args0)
                })
            }).orElse(null),
            headers = javaType.headers().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersHeader.Companion.toKotlin(args0)
                })
            }),
            hostHeader = javaType.hostHeader().map({ args0 -> args0 }).orElse(null),
            hotlinkProtection = javaType.hotlinkProtection().map({ args0 -> args0 }).orElse(null),
            id = javaType.id().map({ args0 -> args0 }).orElse(null),
            increment = javaType.increment().map({ args0 -> args0 }).orElse(null),
            matchedData = javaType.matchedData().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersMatchedData.Companion.toKotlin(args0)
                })
            }).orElse(null),
            mirage = javaType.mirage().map({ args0 -> args0 }).orElse(null),
            opportunisticEncryption = javaType.opportunisticEncryption().map({ args0 -> args0 }).orElse(null),
            origin = javaType.origin().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersOrigin.Companion.toKotlin(args0)
                })
            }).orElse(null),
            originCacheControl = javaType.originCacheControl().map({ args0 -> args0 }).orElse(null),
            originErrorPagePassthru = javaType.originErrorPagePassthru().map({ args0 -> args0 }).orElse(null),
            overrides = javaType.overrides().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersOverrides.Companion.toKotlin(args0)
                })
            }).orElse(null),
            phases = javaType.phases().map({ args0 -> args0 }),
            polish = javaType.polish().map({ args0 -> args0 }).orElse(null),
            products = javaType.products().map({ args0 -> args0 }),
            readTimeout = javaType.readTimeout().map({ args0 -> args0 }).orElse(null),
            requestFields = javaType.requestFields().map({ args0 -> args0 }),
            respectStrongEtags = javaType.respectStrongEtags().map({ args0 -> args0 }).orElse(null),
            responseFields = javaType.responseFields().map({ args0 -> args0 }),
            responses = javaType.responses().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersResponse.Companion.toKotlin(args0)
                })
            }),
            rocketLoader = javaType.rocketLoader().map({ args0 -> args0 }).orElse(null),
            rules = javaType.rules().map({ args0 -> args0.key.to(args0.value) }).toMap(),
            ruleset = javaType.ruleset().map({ args0 -> args0 }).orElse(null),
            rulesets = javaType.rulesets().map({ args0 -> args0 }),
            securityLevel = javaType.securityLevel().map({ args0 -> args0 }).orElse(null),
            serveStale = javaType.serveStale().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersServeStale.Companion.toKotlin(args0)
                })
            }).orElse(null),
            serverSideExcludes = javaType.serverSideExcludes().map({ args0 -> args0 }).orElse(null),
            sni = javaType.sni().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersSni.Companion.toKotlin(args0)
                })
            }).orElse(null),
            ssl = javaType.ssl().map({ args0 -> args0 }).orElse(null),
            statusCode = javaType.statusCode().map({ args0 -> args0 }).orElse(null),
            sxg = javaType.sxg().map({ args0 -> args0 }).orElse(null),
            uri = javaType.uri().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.cloudflare.kotlin.outputs.GetRulesetsRulesetRuleActionParametersUri.Companion.toKotlin(args0)
                })
            }).orElse(null),
            version = javaType.version(),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy