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

com.pulumi.gcp.networkservices.kotlin.outputs.EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRule.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.

There is a newer version: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.networkservices.kotlin.outputs

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

/**
 *
 * @property fullPathMatch For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL.
 * @property headerMatches Specifies a list of header match criteria, all of which must match corresponding headers in the request.
 * Structure is documented below.
 * @property ignoreCase Specifies that prefixMatch and fullPathMatch matches are case sensitive.
 * @property pathTemplateMatch For satisfying the matchRule condition, the path of the request
 * must match the wildcard pattern specified in pathTemplateMatch
 * after removing any query parameters and anchor that may be part
 * of the original URL.
 * pathTemplateMatch must be between 1 and 255 characters
 * (inclusive).  The pattern specified by pathTemplateMatch may
 * have at most 5 wildcard operators and at most 5 variable
 * captures in total.
 * @property prefixMatch For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /.
 * @property queryParameterMatches Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request.
 * Structure is documented below.
 */
public data class EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRule(
    public val fullPathMatch: String? = null,
    public val headerMatches: List? =
        null,
    public val ignoreCase: Boolean? = null,
    public val pathTemplateMatch: String? = null,
    public val prefixMatch: String? = null,
    public val queryParameterMatches: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.networkservices.outputs.EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRule): EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRule =
            EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRule(
                fullPathMatch = javaType.fullPathMatch().map({ args0 -> args0 }).orElse(null),
                headerMatches = javaType.headerMatches().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.networkservices.kotlin.outputs.EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRuleHeaderMatch.Companion.toKotlin(args0)
                    })
                }),
                ignoreCase = javaType.ignoreCase().map({ args0 -> args0 }).orElse(null),
                pathTemplateMatch = javaType.pathTemplateMatch().map({ args0 -> args0 }).orElse(null),
                prefixMatch = javaType.prefixMatch().map({ args0 -> args0 }).orElse(null),
                queryParameterMatches = javaType.queryParameterMatches().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.networkservices.kotlin.outputs.EdgeCacheServiceRoutingPathMatcherRouteRuleMatchRuleQueryParameterMatch.Companion.toKotlin(args0)
                    })
                }),
            )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy