com.pulumi.awsnative.iotevents.kotlin.inputs.InputAttributeArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-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.awsnative.iotevents.kotlin.inputs
import com.pulumi.awsnative.iotevents.inputs.InputAttributeArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* The attributes from the JSON payload that are made available by the input. Inputs are derived from messages sent to the AWS IoT Events system using `BatchPutMessage`. Each such message contains a JSON payload, and those attributes (and their paired values) specified here are available for use in the `condition` expressions used by detectors that monitor this input.
* @property jsonPath An expression that specifies an attribute-value pair in a JSON structure. Use this to specify an attribute from the JSON payload that is made available by the input. Inputs are derived from messages sent to AWS IoT Events (`BatchPutMessage`). Each such message contains a JSON payload. The attribute (and its paired value) specified here are available for use in the `condition` expressions used by detectors.
* _Syntax_: `....`
*/
public data class InputAttributeArgs(
public val jsonPath: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.iotevents.inputs.InputAttributeArgs =
com.pulumi.awsnative.iotevents.inputs.InputAttributeArgs.builder()
.jsonPath(jsonPath.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [InputAttributeArgs].
*/
@PulumiTagMarker
public class InputAttributeArgsBuilder internal constructor() {
private var jsonPath: Output? = null
/**
* @param value An expression that specifies an attribute-value pair in a JSON structure. Use this to specify an attribute from the JSON payload that is made available by the input. Inputs are derived from messages sent to AWS IoT Events (`BatchPutMessage`). Each such message contains a JSON payload. The attribute (and its paired value) specified here are available for use in the `condition` expressions used by detectors.
* _Syntax_: `....`
*/
@JvmName("ujvvvrvlpxkkxrok")
public suspend fun jsonPath(`value`: Output) {
this.jsonPath = value
}
/**
* @param value An expression that specifies an attribute-value pair in a JSON structure. Use this to specify an attribute from the JSON payload that is made available by the input. Inputs are derived from messages sent to AWS IoT Events (`BatchPutMessage`). Each such message contains a JSON payload. The attribute (and its paired value) specified here are available for use in the `condition` expressions used by detectors.
* _Syntax_: `....`
*/
@JvmName("terkemhjffjuxfrp")
public suspend fun jsonPath(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.jsonPath = mapped
}
internal fun build(): InputAttributeArgs = InputAttributeArgs(
jsonPath = jsonPath ?: throw PulumiNullFieldException("jsonPath"),
)
}