Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.cloudflare.kotlin.inputs
import com.pulumi.cloudflare.inputs.PageRuleActionsArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property alwaysUseHttps Boolean of whether this action is enabled. Default: false.
* @property automaticHttpsRewrites Whether this action is `"on"` or `"off"`.
* @property browserCacheTtl The Time To Live for the browser cache. `0` means 'Respect Existing Headers'
* @property browserCheck Whether this action is `"on"` or `"off"`.
* @property bypassCacheOnCookie String value of cookie name to conditionally bypass cache the page.
* @property cacheByDeviceType Whether this action is `"on"` or `"off"`.
* @property cacheDeceptionArmor Whether this action is `"on"` or `"off"`.
* @property cacheKeyFields Controls how Cloudflare creates Cache Keys used to identify files in cache. See below for full description.
* @property cacheLevel Whether to set the cache level to `"bypass"`, `"basic"`, `"simplified"`, `"aggressive"`, or `"cache_everything"`.
* @property cacheOnCookie String value of cookie name to conditionally cache the page.
* @property cacheTtlByStatuses Set cache TTL based on the response status from the origin web server. Can be specified multiple times. See below for full description.
* @property disableApps Boolean of whether this action is enabled. Default: false.
* @property disablePerformance Boolean of whether this action is enabled. Default: false.
* @property disableRailgun Boolean of whether this action is enabled. Default: false.
* @property disableSecurity Boolean of whether this action is enabled. Default: false.
* @property disableZaraz Boolean of whether this action is enabled. Default: false.
* @property edgeCacheTtl The Time To Live for the edge cache.
* @property emailObfuscation Whether this action is `"on"` or `"off"`.
* @property explicitCacheControl Whether origin Cache-Control action is `"on"` or `"off"`.
* @property forwardingUrl The URL to forward to, and with what status. See below.
* @property hostHeaderOverride Value of the Host header to send.
* @property ipGeolocation Whether this action is `"on"` or `"off"`.
* @property minifies The configuration for HTML, CSS and JS minification. See below for full list of options.
* @property mirage Whether this action is `"on"` or `"off"`.
* @property opportunisticEncryption Whether this action is `"on"` or `"off"`.
* @property originErrorPagePassThru Whether this action is `"on"` or `"off"`.
* @property polish Whether this action is `"off"`, `"lossless"` or `"lossy"`.
* @property resolveOverride Overridden origin server name.
* @property respectStrongEtag Whether this action is `"on"` or `"off"`.
* @property responseBuffering Whether this action is `"on"` or `"off"`.
* @property rocketLoader Whether to set the rocket loader to `"on"`, `"off"`.
* @property securityLevel Whether to set the security level to `"off"`, `"essentially_off"`, `"low"`, `"medium"`, `"high"`, or `"under_attack"`.
* @property serverSideExclude Whether this action is `"on"` or `"off"`.
* @property sortQueryStringForCache Whether this action is `"on"` or `"off"`.
* @property ssl Whether to set the SSL mode to `"off"`, `"flexible"`, `"full"`, `"strict"`, or `"origin_pull"`.
* @property trueClientIpHeader Whether this action is `"on"` or `"off"`.
* @property waf Whether this action is `"on"` or `"off"`.
*/
public data class PageRuleActionsArgs(
public val alwaysUseHttps: Output? = null,
public val automaticHttpsRewrites: Output? = null,
public val browserCacheTtl: Output? = null,
public val browserCheck: Output? = null,
public val bypassCacheOnCookie: Output? = null,
public val cacheByDeviceType: Output? = null,
public val cacheDeceptionArmor: Output? = null,
public val cacheKeyFields: Output? = null,
public val cacheLevel: Output? = null,
public val cacheOnCookie: Output? = null,
public val cacheTtlByStatuses: Output>? = null,
public val disableApps: Output? = null,
public val disablePerformance: Output? = null,
public val disableRailgun: Output? = null,
public val disableSecurity: Output? = null,
public val disableZaraz: Output? = null,
public val edgeCacheTtl: Output? = null,
public val emailObfuscation: Output? = null,
public val explicitCacheControl: Output? = null,
public val forwardingUrl: Output? = null,
public val hostHeaderOverride: Output? = null,
public val ipGeolocation: Output? = null,
public val minifies: Output>? = null,
public val mirage: Output? = null,
public val opportunisticEncryption: Output? = null,
public val originErrorPagePassThru: Output? = null,
public val polish: Output? = null,
public val resolveOverride: Output? = null,
public val respectStrongEtag: Output? = null,
public val responseBuffering: Output? = null,
public val rocketLoader: Output? = null,
public val securityLevel: Output? = null,
public val serverSideExclude: Output? = null,
public val sortQueryStringForCache: Output? = null,
public val ssl: Output? = null,
public val trueClientIpHeader: Output? = null,
public val waf: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.cloudflare.inputs.PageRuleActionsArgs =
com.pulumi.cloudflare.inputs.PageRuleActionsArgs.builder()
.alwaysUseHttps(alwaysUseHttps?.applyValue({ args0 -> args0 }))
.automaticHttpsRewrites(automaticHttpsRewrites?.applyValue({ args0 -> args0 }))
.browserCacheTtl(browserCacheTtl?.applyValue({ args0 -> args0 }))
.browserCheck(browserCheck?.applyValue({ args0 -> args0 }))
.bypassCacheOnCookie(bypassCacheOnCookie?.applyValue({ args0 -> args0 }))
.cacheByDeviceType(cacheByDeviceType?.applyValue({ args0 -> args0 }))
.cacheDeceptionArmor(cacheDeceptionArmor?.applyValue({ args0 -> args0 }))
.cacheKeyFields(cacheKeyFields?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.cacheLevel(cacheLevel?.applyValue({ args0 -> args0 }))
.cacheOnCookie(cacheOnCookie?.applyValue({ args0 -> args0 }))
.cacheTtlByStatuses(
cacheTtlByStatuses?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.disableApps(disableApps?.applyValue({ args0 -> args0 }))
.disablePerformance(disablePerformance?.applyValue({ args0 -> args0 }))
.disableRailgun(disableRailgun?.applyValue({ args0 -> args0 }))
.disableSecurity(disableSecurity?.applyValue({ args0 -> args0 }))
.disableZaraz(disableZaraz?.applyValue({ args0 -> args0 }))
.edgeCacheTtl(edgeCacheTtl?.applyValue({ args0 -> args0 }))
.emailObfuscation(emailObfuscation?.applyValue({ args0 -> args0 }))
.explicitCacheControl(explicitCacheControl?.applyValue({ args0 -> args0 }))
.forwardingUrl(forwardingUrl?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.hostHeaderOverride(hostHeaderOverride?.applyValue({ args0 -> args0 }))
.ipGeolocation(ipGeolocation?.applyValue({ args0 -> args0 }))
.minifies(
minifies?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.mirage(mirage?.applyValue({ args0 -> args0 }))
.opportunisticEncryption(opportunisticEncryption?.applyValue({ args0 -> args0 }))
.originErrorPagePassThru(originErrorPagePassThru?.applyValue({ args0 -> args0 }))
.polish(polish?.applyValue({ args0 -> args0 }))
.resolveOverride(resolveOverride?.applyValue({ args0 -> args0 }))
.respectStrongEtag(respectStrongEtag?.applyValue({ args0 -> args0 }))
.responseBuffering(responseBuffering?.applyValue({ args0 -> args0 }))
.rocketLoader(rocketLoader?.applyValue({ args0 -> args0 }))
.securityLevel(securityLevel?.applyValue({ args0 -> args0 }))
.serverSideExclude(serverSideExclude?.applyValue({ args0 -> args0 }))
.sortQueryStringForCache(sortQueryStringForCache?.applyValue({ args0 -> args0 }))
.ssl(ssl?.applyValue({ args0 -> args0 }))
.trueClientIpHeader(trueClientIpHeader?.applyValue({ args0 -> args0 }))
.waf(waf?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [PageRuleActionsArgs].
*/
@PulumiTagMarker
public class PageRuleActionsArgsBuilder internal constructor() {
private var alwaysUseHttps: Output? = null
private var automaticHttpsRewrites: Output? = null
private var browserCacheTtl: Output? = null
private var browserCheck: Output? = null
private var bypassCacheOnCookie: Output? = null
private var cacheByDeviceType: Output? = null
private var cacheDeceptionArmor: Output? = null
private var cacheKeyFields: Output? = null
private var cacheLevel: Output? = null
private var cacheOnCookie: Output? = null
private var cacheTtlByStatuses: Output>? = null
private var disableApps: Output? = null
private var disablePerformance: Output? = null
private var disableRailgun: Output? = null
private var disableSecurity: Output? = null
private var disableZaraz: Output? = null
private var edgeCacheTtl: Output? = null
private var emailObfuscation: Output? = null
private var explicitCacheControl: Output? = null
private var forwardingUrl: Output? = null
private var hostHeaderOverride: Output? = null
private var ipGeolocation: Output? = null
private var minifies: Output>? = null
private var mirage: Output? = null
private var opportunisticEncryption: Output? = null
private var originErrorPagePassThru: Output? = null
private var polish: Output? = null
private var resolveOverride: Output? = null
private var respectStrongEtag: Output? = null
private var responseBuffering: Output? = null
private var rocketLoader: Output? = null
private var securityLevel: Output? = null
private var serverSideExclude: Output? = null
private var sortQueryStringForCache: Output? = null
private var ssl: Output? = null
private var trueClientIpHeader: Output? = null
private var waf: Output? = null
/**
* @param value Boolean of whether this action is enabled. Default: false.
*/
@JvmName("akpqnhvtcisyowpo")
public suspend fun alwaysUseHttps(`value`: Output) {
this.alwaysUseHttps = value
}
/**
* @param value Whether this action is `"on"` or `"off"`.
*/
@JvmName("venjbocdnwauwocc")
public suspend fun automaticHttpsRewrites(`value`: Output) {
this.automaticHttpsRewrites = value
}
/**
* @param value The Time To Live for the browser cache. `0` means 'Respect Existing Headers'
*/
@JvmName("uwcjimhvqqdrnfmc")
public suspend fun browserCacheTtl(`value`: Output) {
this.browserCacheTtl = value
}
/**
* @param value Whether this action is `"on"` or `"off"`.
*/
@JvmName("ffduavffwkwbxbmv")
public suspend fun browserCheck(`value`: Output) {
this.browserCheck = value
}
/**
* @param value String value of cookie name to conditionally bypass cache the page.
*/
@JvmName("abcuplkgawysgrym")
public suspend fun bypassCacheOnCookie(`value`: Output) {
this.bypassCacheOnCookie = value
}
/**
* @param value Whether this action is `"on"` or `"off"`.
*/
@JvmName("cqiapvetnjnrlsco")
public suspend fun cacheByDeviceType(`value`: Output) {
this.cacheByDeviceType = value
}
/**
* @param value Whether this action is `"on"` or `"off"`.
*/
@JvmName("njbtuadyyigmxvkv")
public suspend fun cacheDeceptionArmor(`value`: Output) {
this.cacheDeceptionArmor = value
}
/**
* @param value Controls how Cloudflare creates Cache Keys used to identify files in cache. See below for full description.
*/
@JvmName("crkltpvovjimhace")
public suspend fun cacheKeyFields(`value`: Output) {
this.cacheKeyFields = value
}
/**
* @param value Whether to set the cache level to `"bypass"`, `"basic"`, `"simplified"`, `"aggressive"`, or `"cache_everything"`.
*/
@JvmName("yyfblsvvwanqmojv")
public suspend fun cacheLevel(`value`: Output) {
this.cacheLevel = value
}
/**
* @param value String value of cookie name to conditionally cache the page.
*/
@JvmName("fnosqtmjxbwjhcre")
public suspend fun cacheOnCookie(`value`: Output) {
this.cacheOnCookie = value
}
/**
* @param value Set cache TTL based on the response status from the origin web server. Can be specified multiple times. See below for full description.
*/
@JvmName("qnpiweqojmuxrief")
public suspend fun cacheTtlByStatuses(`value`: Output>) {
this.cacheTtlByStatuses = value
}
@JvmName("lwyoiislrohnmwpo")
public suspend fun cacheTtlByStatuses(vararg values: Output) {
this.cacheTtlByStatuses = Output.all(values.asList())
}
/**
* @param values Set cache TTL based on the response status from the origin web server. Can be specified multiple times. See below for full description.
*/
@JvmName("bopxsywdwkliqvrp")
public suspend fun cacheTtlByStatuses(values: List