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

com.pulumi.awsnative.iotanalytics.kotlin.inputs.PipelineActivityArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.iotanalytics.kotlin.inputs

import com.pulumi.awsnative.iotanalytics.inputs.PipelineActivityArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property addAttributes Adds other attributes based on existing attributes in the message.
 * @property channel Determines the source of the messages to be processed.
 * @property datastore Specifies where to store the processed message data.
 * @property deviceRegistryEnrich Adds data from the AWS IoT device registry to your message.
 * @property deviceShadowEnrich Adds information from the AWS IoT Device Shadows service to a message.
 * @property filter Filters a message based on its attributes.
 * @property lambda Runs a Lambda function to modify the message.
 * @property math Computes an arithmetic expression using the message's attributes and adds it to the message.
 * @property removeAttributes Removes attributes from a message.
 * @property selectAttributes Creates a new message using only the specified attributes from the original message.
 */
public data class PipelineActivityArgs(
    public val addAttributes: Output? = null,
    public val channel: Output? = null,
    public val datastore: Output? = null,
    public val deviceRegistryEnrich: Output? = null,
    public val deviceShadowEnrich: Output? = null,
    public val filter: Output? = null,
    public val lambda: Output? = null,
    public val math: Output? = null,
    public val removeAttributes: Output? = null,
    public val selectAttributes: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.iotanalytics.inputs.PipelineActivityArgs =
        com.pulumi.awsnative.iotanalytics.inputs.PipelineActivityArgs.builder()
            .addAttributes(addAttributes?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .channel(channel?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .datastore(datastore?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .deviceRegistryEnrich(
                deviceRegistryEnrich?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .deviceShadowEnrich(
                deviceShadowEnrich?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .filter(filter?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .lambda(lambda?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .math(math?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .removeAttributes(removeAttributes?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .selectAttributes(
                selectAttributes?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [PipelineActivityArgs].
 */
@PulumiTagMarker
public class PipelineActivityArgsBuilder internal constructor() {
    private var addAttributes: Output? = null

    private var channel: Output? = null

    private var datastore: Output? = null

    private var deviceRegistryEnrich: Output? = null

    private var deviceShadowEnrich: Output? = null

    private var filter: Output? = null

    private var lambda: Output? = null

    private var math: Output? = null

    private var removeAttributes: Output? = null

    private var selectAttributes: Output? = null

    /**
     * @param value Adds other attributes based on existing attributes in the message.
     */
    @JvmName("qsvmxqjsrteikifa")
    public suspend fun addAttributes(`value`: Output) {
        this.addAttributes = value
    }

    /**
     * @param value Determines the source of the messages to be processed.
     */
    @JvmName("omshaylgljmrvenx")
    public suspend fun channel(`value`: Output) {
        this.channel = value
    }

    /**
     * @param value Specifies where to store the processed message data.
     */
    @JvmName("eydticaodmdotpsa")
    public suspend fun datastore(`value`: Output) {
        this.datastore = value
    }

    /**
     * @param value Adds data from the AWS IoT device registry to your message.
     */
    @JvmName("xklyupxfhnrfuiau")
    public suspend fun deviceRegistryEnrich(`value`: Output) {
        this.deviceRegistryEnrich = value
    }

    /**
     * @param value Adds information from the AWS IoT Device Shadows service to a message.
     */
    @JvmName("gjxsievoitgemlox")
    public suspend fun deviceShadowEnrich(`value`: Output) {
        this.deviceShadowEnrich = value
    }

    /**
     * @param value Filters a message based on its attributes.
     */
    @JvmName("bvyjhqxvhvebryku")
    public suspend fun filter(`value`: Output) {
        this.filter = value
    }

    /**
     * @param value Runs a Lambda function to modify the message.
     */
    @JvmName("ckmaehkqovfdpync")
    public suspend fun lambda(`value`: Output) {
        this.lambda = value
    }

    /**
     * @param value Computes an arithmetic expression using the message's attributes and adds it to the message.
     */
    @JvmName("xkxvfxuthwjamhgu")
    public suspend fun math(`value`: Output) {
        this.math = value
    }

    /**
     * @param value Removes attributes from a message.
     */
    @JvmName("vvqrwnqienuofnfy")
    public suspend fun removeAttributes(`value`: Output) {
        this.removeAttributes = value
    }

    /**
     * @param value Creates a new message using only the specified attributes from the original message.
     */
    @JvmName("bwcestpqetoljwic")
    public suspend fun selectAttributes(`value`: Output) {
        this.selectAttributes = value
    }

    /**
     * @param value Adds other attributes based on existing attributes in the message.
     */
    @JvmName("yayvfjgwbwffpugu")
    public suspend fun addAttributes(`value`: PipelineAddAttributesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.addAttributes = mapped
    }

    /**
     * @param argument Adds other attributes based on existing attributes in the message.
     */
    @JvmName("vlsievrbjemuwepm")
    public suspend fun addAttributes(argument: suspend PipelineAddAttributesArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineAddAttributesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.addAttributes = mapped
    }

    /**
     * @param value Determines the source of the messages to be processed.
     */
    @JvmName("fjyomtamvrtevdbc")
    public suspend fun channel(`value`: PipelineChannelArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.channel = mapped
    }

    /**
     * @param argument Determines the source of the messages to be processed.
     */
    @JvmName("qpdnntgmtdhrfwwi")
    public suspend fun channel(argument: suspend PipelineChannelArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineChannelArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.channel = mapped
    }

    /**
     * @param value Specifies where to store the processed message data.
     */
    @JvmName("tywmcgledwgiwame")
    public suspend fun datastore(`value`: PipelineDatastoreArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.datastore = mapped
    }

    /**
     * @param argument Specifies where to store the processed message data.
     */
    @JvmName("nscnnnkrncvnlill")
    public suspend fun datastore(argument: suspend PipelineDatastoreArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineDatastoreArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.datastore = mapped
    }

    /**
     * @param value Adds data from the AWS IoT device registry to your message.
     */
    @JvmName("gjkrilcwwgxnotig")
    public suspend fun deviceRegistryEnrich(`value`: PipelineDeviceRegistryEnrichArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deviceRegistryEnrich = mapped
    }

    /**
     * @param argument Adds data from the AWS IoT device registry to your message.
     */
    @JvmName("efygkwtxxqhbbxhe")
    public suspend fun deviceRegistryEnrich(argument: suspend PipelineDeviceRegistryEnrichArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineDeviceRegistryEnrichArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.deviceRegistryEnrich = mapped
    }

    /**
     * @param value Adds information from the AWS IoT Device Shadows service to a message.
     */
    @JvmName("kpixcxaudwvkeoqx")
    public suspend fun deviceShadowEnrich(`value`: PipelineDeviceShadowEnrichArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deviceShadowEnrich = mapped
    }

    /**
     * @param argument Adds information from the AWS IoT Device Shadows service to a message.
     */
    @JvmName("vehxrfpxtrimkhfd")
    public suspend fun deviceShadowEnrich(argument: suspend PipelineDeviceShadowEnrichArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineDeviceShadowEnrichArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.deviceShadowEnrich = mapped
    }

    /**
     * @param value Filters a message based on its attributes.
     */
    @JvmName("cspirsprwnoldyyu")
    public suspend fun filter(`value`: PipelineFilterArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.filter = mapped
    }

    /**
     * @param argument Filters a message based on its attributes.
     */
    @JvmName("eectokboxnplhsle")
    public suspend fun filter(argument: suspend PipelineFilterArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineFilterArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.filter = mapped
    }

    /**
     * @param value Runs a Lambda function to modify the message.
     */
    @JvmName("qdoedelfevggfeca")
    public suspend fun lambda(`value`: PipelineLambdaArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.lambda = mapped
    }

    /**
     * @param argument Runs a Lambda function to modify the message.
     */
    @JvmName("bnavbnvvxgoxorbm")
    public suspend fun lambda(argument: suspend PipelineLambdaArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineLambdaArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.lambda = mapped
    }

    /**
     * @param value Computes an arithmetic expression using the message's attributes and adds it to the message.
     */
    @JvmName("ogikkijymvfedsbo")
    public suspend fun math(`value`: PipelineMathArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.math = mapped
    }

    /**
     * @param argument Computes an arithmetic expression using the message's attributes and adds it to the message.
     */
    @JvmName("qxcnblemeewtjhrt")
    public suspend fun math(argument: suspend PipelineMathArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineMathArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.math = mapped
    }

    /**
     * @param value Removes attributes from a message.
     */
    @JvmName("taywdcjrinxhbjum")
    public suspend fun removeAttributes(`value`: PipelineRemoveAttributesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.removeAttributes = mapped
    }

    /**
     * @param argument Removes attributes from a message.
     */
    @JvmName("wkvldcftdkvbvele")
    public suspend fun removeAttributes(argument: suspend PipelineRemoveAttributesArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineRemoveAttributesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.removeAttributes = mapped
    }

    /**
     * @param value Creates a new message using only the specified attributes from the original message.
     */
    @JvmName("ygejftcfniowkniv")
    public suspend fun selectAttributes(`value`: PipelineSelectAttributesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.selectAttributes = mapped
    }

    /**
     * @param argument Creates a new message using only the specified attributes from the original message.
     */
    @JvmName("cynucbnasyvbfvnc")
    public suspend fun selectAttributes(argument: suspend PipelineSelectAttributesArgsBuilder.() -> Unit) {
        val toBeMapped = PipelineSelectAttributesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.selectAttributes = mapped
    }

    internal fun build(): PipelineActivityArgs = PipelineActivityArgs(
        addAttributes = addAttributes,
        channel = channel,
        datastore = datastore,
        deviceRegistryEnrich = deviceRegistryEnrich,
        deviceShadowEnrich = deviceShadowEnrich,
        filter = filter,
        lambda = lambda,
        math = math,
        removeAttributes = removeAttributes,
        selectAttributes = selectAttributes,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy