com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcher.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 defaultRouteAction defaultRouteAction takes effect when none of the pathRules or routeRules match. The load balancer performs
* advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request
* to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set.
* Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices.
* Only one of defaultRouteAction or defaultUrlRedirect must be set.
* Structure is documented below.
* @property defaultService The backend service or backend bucket to use when none of the given paths match.
* @property defaultUrlRedirect When none of the specified hostRules match, the request is redirected to a URL specified
* by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
* defaultRouteAction must not be set.
* Structure is documented below.
* @property description An optional description of this resource. Provide this property when you create
* the resource.
* @property headerAction Specifies changes to request and response headers that need to take effect for
* the selected backendService. HeaderAction specified here are applied after the
* matching HttpRouteRule HeaderAction and before the HeaderAction in the UrlMap
* Structure is documented below.
* @property name The name to which this PathMatcher is referred by the HostRule.
* @property pathRules The list of path rules. Use this list instead of routeRules when routing based
* on simple path matching is all that's required. The order by which path rules
* are specified does not matter. Matches are always done on the longest-path-first
* basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/*
* irrespective of the order in which those paths appear in this list. Within a
* given pathMatcher, only one of pathRules or routeRules must be set.
* Structure is documented below.
* @property routeRules The list of ordered HTTP route rules. Use this list instead of pathRules when
* advanced route matching and routing actions are desired. The order of specifying
* routeRules matters: the first rule that matches will cause its specified routing
* action to take effect. Within a given pathMatcher, only one of pathRules or
* routeRules must be set. routeRules are not supported in UrlMaps intended for
* External load balancers.
* Structure is documented below.
* */*/
*/
public data class URLMapPathMatcher(
public val defaultRouteAction: URLMapPathMatcherDefaultRouteAction? = null,
public val defaultService: String? = null,
public val defaultUrlRedirect: URLMapPathMatcherDefaultUrlRedirect? = null,
public val description: String? = null,
public val headerAction: URLMapPathMatcherHeaderAction? = null,
public val name: String,
public val pathRules: List? = null,
public val routeRules: List? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.compute.outputs.URLMapPathMatcher): URLMapPathMatcher = URLMapPathMatcher(
defaultRouteAction = javaType.defaultRouteAction().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherDefaultRouteAction.Companion.toKotlin(args0)
})
}).orElse(null),
defaultService = javaType.defaultService().map({ args0 -> args0 }).orElse(null),
defaultUrlRedirect = javaType.defaultUrlRedirect().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherDefaultUrlRedirect.Companion.toKotlin(args0)
})
}).orElse(null),
description = javaType.description().map({ args0 -> args0 }).orElse(null),
headerAction = javaType.headerAction().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherHeaderAction.Companion.toKotlin(args0)
})
}).orElse(null),
name = javaType.name(),
pathRules = javaType.pathRules().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherPathRule.Companion.toKotlin(args0)
})
}),
routeRules = javaType.routeRules().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.URLMapPathMatcherRouteRule.Companion.toKotlin(args0)
})
}),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy