com.pulumi.gcp.compute.kotlin.inputs.URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs.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.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.compute.inputs.URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property exactMatch The queryParameterMatch matches if the value of the parameter exactly matches
* the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch
* must be set.
* @property name The name of the query parameter to match. The query parameter must exist in the
* request, in the absence of which the request match fails.
* @property presentMatch Specifies that the queryParameterMatch matches if the request contains the query
* parameter, irrespective of whether the parameter has a value or not. Only one of
* presentMatch, exactMatch and regexMatch must be set.
* @property regexMatch The queryParameterMatch matches if the value of the parameter matches the
* regular expression specified by regexMatch. For the regular expression grammar,
* please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch,
* exactMatch and regexMatch must be set.
*/
public data class URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs(
public val exactMatch: Output? = null,
public val name: Output,
public val presentMatch: Output? = null,
public val regexMatch: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.compute.inputs.URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs =
com.pulumi.gcp.compute.inputs.URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs.builder()
.exactMatch(exactMatch?.applyValue({ args0 -> args0 }))
.name(name.applyValue({ args0 -> args0 }))
.presentMatch(presentMatch?.applyValue({ args0 -> args0 }))
.regexMatch(regexMatch?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs].
*/
@PulumiTagMarker
public class URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgsBuilder internal constructor() {
private var exactMatch: Output? = null
private var name: Output? = null
private var presentMatch: Output? = null
private var regexMatch: Output? = null
/**
* @param value The queryParameterMatch matches if the value of the parameter exactly matches
* the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch
* must be set.
*/
@JvmName("ybmqwfudarnvwuvq")
public suspend fun exactMatch(`value`: Output) {
this.exactMatch = value
}
/**
* @param value The name of the query parameter to match. The query parameter must exist in the
* request, in the absence of which the request match fails.
*/
@JvmName("inokyusbntecxkxm")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value Specifies that the queryParameterMatch matches if the request contains the query
* parameter, irrespective of whether the parameter has a value or not. Only one of
* presentMatch, exactMatch and regexMatch must be set.
*/
@JvmName("acgbupppanwevhao")
public suspend fun presentMatch(`value`: Output) {
this.presentMatch = value
}
/**
* @param value The queryParameterMatch matches if the value of the parameter matches the
* regular expression specified by regexMatch. For the regular expression grammar,
* please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch,
* exactMatch and regexMatch must be set.
*/
@JvmName("dnfxtjhsxedsynnu")
public suspend fun regexMatch(`value`: Output) {
this.regexMatch = value
}
/**
* @param value The queryParameterMatch matches if the value of the parameter exactly matches
* the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch
* must be set.
*/
@JvmName("cjubalmrdmufmtvb")
public suspend fun exactMatch(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.exactMatch = mapped
}
/**
* @param value The name of the query parameter to match. The query parameter must exist in the
* request, in the absence of which the request match fails.
*/
@JvmName("mltnbknkisoybuyr")
public suspend fun name(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.name = mapped
}
/**
* @param value Specifies that the queryParameterMatch matches if the request contains the query
* parameter, irrespective of whether the parameter has a value or not. Only one of
* presentMatch, exactMatch and regexMatch must be set.
*/
@JvmName("wmjdvtgmghqemiov")
public suspend fun presentMatch(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.presentMatch = mapped
}
/**
* @param value The queryParameterMatch matches if the value of the parameter matches the
* regular expression specified by regexMatch. For the regular expression grammar,
* please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch,
* exactMatch and regexMatch must be set.
*/
@JvmName("qvylkjqvrsxhmcce")
public suspend fun regexMatch(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.regexMatch = mapped
}
internal fun build(): URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs =
URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatchArgs(
exactMatch = exactMatch,
name = name ?: throw PulumiNullFieldException("name"),
presentMatch = presentMatch,
regexMatch = regexMatch,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy