![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherPathRule.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-gcp-kotlin Show documentation
Show all versions of pulumi-gcp-kotlin Show documentation
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.gcp.compute.kotlin.outputs
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property customErrorResponsePolicy customErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error.
* If a policy for an error code is not configured for the PathRule, a policy for the error code configured in pathMatcher.defaultCustomErrorResponsePolicy is applied. If one is not specified in pathMatcher.defaultCustomErrorResponsePolicy, the policy configured in UrlMap.defaultCustomErrorResponsePolicy takes effect.
* For example, consider a UrlMap with the following configuration:
* UrlMap.defaultCustomErrorResponsePolicy are configured with policies for 5xx and 4xx errors
* A PathRule for /coming_soon/ is configured for the error code 404.
* If the request is for www.myotherdomain.com and a 404 is encountered, the policy under UrlMap.defaultCustomErrorResponsePolicy takes effect. If a 404 response is encountered for the request www.example.com/current_events/, the pathMatcher's policy takes effect. If however, the request for www.example.com/coming_soon/ encounters a 404, the policy in PathRule.customErrorResponsePolicy takes effect. If any of the requests in this example encounter a 500 error code, the policy at UrlMap.defaultCustomErrorResponsePolicy takes effect.
* customErrorResponsePolicy is supported only for global external Application Load Balancers.
* Structure is documented below.
* @property paths The list of path patterns to match. Each must start with / and the only place a
* \* is allowed is at the end following a /. The string fed to the path matcher
* does not include any text after the first ? or #, and those chars are not
* allowed here.
* @property routeAction In response to a matching path, the load balancer performs advanced routing
* actions like URL rewrites, header transformations, etc. prior to forwarding the
* request to the selected backend. If routeAction specifies any
* weightedBackendServices, service must not be set. Conversely if service is set,
* routeAction cannot contain any weightedBackendServices. Only one of routeAction
* or urlRedirect must be set.
* Structure is documented below.
* @property service The backend service or backend bucket to use if any of the given paths match.
* @property urlRedirect When a path pattern is matched, the request is redirected to a URL specified
* by urlRedirect. If urlRedirect is specified, service or routeAction must not
* be set.
* Structure is documented below.
*/
public data class URLMapPathMatcherPathRule(
public val customErrorResponsePolicy: URLMapPathMatcherPathRuleCustomErrorResponsePolicy? = null,
public val paths: List,
public val routeAction: URLMapPathMatcherPathRuleRouteAction? = null,
public val service: String? = null,
public val urlRedirect: URLMapPathMatcherPathRuleUrlRedirect? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.compute.outputs.URLMapPathMatcherPathRule): URLMapPathMatcherPathRule = URLMapPathMatcherPathRule(
customErrorResponsePolicy = javaType.customErrorResponsePolicy().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherPathRuleCustomErrorResponsePolicy.Companion.toKotlin(args0)
})
}).orElse(null),
paths = javaType.paths().map({ args0 -> args0 }),
routeAction = javaType.routeAction().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherPathRuleRouteAction.Companion.toKotlin(args0)
})
}).orElse(null),
service = javaType.service().map({ args0 -> args0 }).orElse(null),
urlRedirect = javaType.urlRedirect().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherPathRuleUrlRedirect.Companion.toKotlin(args0)
})
}).orElse(null),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy