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

com.pulumi.aws.securityhub.kotlin.inputs.AutomationRuleActionFindingFieldsUpdateArgs.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: 6.57.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.aws.securityhub.kotlin.inputs

import com.pulumi.aws.securityhub.inputs.AutomationRuleActionFindingFieldsUpdateArgs.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.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 *
 * @property confidence The rule action updates the `Confidence` field of a finding.
 * @property criticality The rule action updates the `Criticality` field of a finding.
 * @property note A resource block that updates the note. Documented below.
 * @property relatedFindings A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
 * @property severity A resource block that updates to the severity information for a finding. Documented below.
 * @property types The rule action updates the `Types` field of a finding.
 * @property userDefinedFields The rule action updates the `UserDefinedFields` field of a finding.
 * @property verificationState The rule action updates the `VerificationState` field of a finding. The allowed values are the following `UNKNOWN`, `TRUE_POSITIVE`, `FALSE_POSITIVE` and `BENIGN_POSITIVE`.
 * @property workflow A resource block that is used to update information about the investigation into the finding. Documented below.
 */
public data class AutomationRuleActionFindingFieldsUpdateArgs(
    public val confidence: Output? = null,
    public val criticality: Output? = null,
    public val note: Output? = null,
    public val relatedFindings: Output>? = null,
    public val severity: Output? = null,
    public val types: Output>? = null,
    public val userDefinedFields: Output>? = null,
    public val verificationState: Output? = null,
    public val workflow: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.securityhub.inputs.AutomationRuleActionFindingFieldsUpdateArgs =
        com.pulumi.aws.securityhub.inputs.AutomationRuleActionFindingFieldsUpdateArgs.builder()
            .confidence(confidence?.applyValue({ args0 -> args0 }))
            .criticality(criticality?.applyValue({ args0 -> args0 }))
            .note(note?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .relatedFindings(
                relatedFindings?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .severity(severity?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .types(types?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .userDefinedFields(
                userDefinedFields?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value)
                    }).toMap()
                }),
            )
            .verificationState(verificationState?.applyValue({ args0 -> args0 }))
            .workflow(workflow?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [AutomationRuleActionFindingFieldsUpdateArgs].
 */
@PulumiTagMarker
public class AutomationRuleActionFindingFieldsUpdateArgsBuilder internal constructor() {
    private var confidence: Output? = null

    private var criticality: Output? = null

    private var note: Output? = null

    private var relatedFindings:
        Output>? = null

    private var severity: Output? = null

    private var types: Output>? = null

    private var userDefinedFields: Output>? = null

    private var verificationState: Output? = null

    private var workflow: Output? = null

    /**
     * @param value The rule action updates the `Confidence` field of a finding.
     */
    @JvmName("evlcuaggefbrthpk")
    public suspend fun confidence(`value`: Output) {
        this.confidence = value
    }

    /**
     * @param value The rule action updates the `Criticality` field of a finding.
     */
    @JvmName("vmmqcbrsixholhfh")
    public suspend fun criticality(`value`: Output) {
        this.criticality = value
    }

    /**
     * @param value A resource block that updates the note. Documented below.
     */
    @JvmName("ndoeflscrhnbrqiv")
    public suspend fun note(`value`: Output) {
        this.note = value
    }

    /**
     * @param value A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("pbutbbxwgdgltayk")
    public suspend fun relatedFindings(`value`: Output>) {
        this.relatedFindings = value
    }

    @JvmName("wfyyxgcwebbyppog")
    public suspend fun relatedFindings(vararg values: Output) {
        this.relatedFindings = Output.all(values.asList())
    }

    /**
     * @param values A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("rvdjiaiymruhsngo")
    public suspend fun relatedFindings(values: List>) {
        this.relatedFindings = Output.all(values)
    }

    /**
     * @param value A resource block that updates to the severity information for a finding. Documented below.
     */
    @JvmName("seqfnlmocmijeuti")
    public suspend fun severity(`value`: Output) {
        this.severity = value
    }

    /**
     * @param value The rule action updates the `Types` field of a finding.
     */
    @JvmName("qihykmfibrcbwvvj")
    public suspend fun types(`value`: Output>) {
        this.types = value
    }

    @JvmName("gfibudacainnacvl")
    public suspend fun types(vararg values: Output) {
        this.types = Output.all(values.asList())
    }

    /**
     * @param values The rule action updates the `Types` field of a finding.
     */
    @JvmName("sfesfwdmeqmhnsmq")
    public suspend fun types(values: List>) {
        this.types = Output.all(values)
    }

    /**
     * @param value The rule action updates the `UserDefinedFields` field of a finding.
     */
    @JvmName("bhxtfibciqyxivtu")
    public suspend fun userDefinedFields(`value`: Output>) {
        this.userDefinedFields = value
    }

    /**
     * @param value The rule action updates the `VerificationState` field of a finding. The allowed values are the following `UNKNOWN`, `TRUE_POSITIVE`, `FALSE_POSITIVE` and `BENIGN_POSITIVE`.
     */
    @JvmName("vcgwtvbtetebfymc")
    public suspend fun verificationState(`value`: Output) {
        this.verificationState = value
    }

    /**
     * @param value A resource block that is used to update information about the investigation into the finding. Documented below.
     */
    @JvmName("ooxveekbyemwmjsf")
    public suspend fun workflow(`value`: Output) {
        this.workflow = value
    }

    /**
     * @param value The rule action updates the `Confidence` field of a finding.
     */
    @JvmName("jkoghemdrqjyldad")
    public suspend fun confidence(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.confidence = mapped
    }

    /**
     * @param value The rule action updates the `Criticality` field of a finding.
     */
    @JvmName("mrfxfspxyeygqwcg")
    public suspend fun criticality(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.criticality = mapped
    }

    /**
     * @param value A resource block that updates the note. Documented below.
     */
    @JvmName("oyymsjeuemqyvovu")
    public suspend fun note(`value`: AutomationRuleActionFindingFieldsUpdateNoteArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.note = mapped
    }

    /**
     * @param argument A resource block that updates the note. Documented below.
     */
    @JvmName("nldnejdcckollwtc")
    public suspend fun note(argument: suspend AutomationRuleActionFindingFieldsUpdateNoteArgsBuilder.() -> Unit) {
        val toBeMapped = AutomationRuleActionFindingFieldsUpdateNoteArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.note = mapped
    }

    /**
     * @param value A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("wclxnovtdiiuvkvh")
    public suspend fun relatedFindings(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.relatedFindings = mapped
    }

    /**
     * @param argument A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("sisjvatbcubfwylt")
    public suspend fun relatedFindings(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutomationRuleActionFindingFieldsUpdateRelatedFindingArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.relatedFindings = mapped
    }

    /**
     * @param argument A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("fovxfxnvxcoyvwpm")
    public suspend fun relatedFindings(vararg argument: suspend AutomationRuleActionFindingFieldsUpdateRelatedFindingArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutomationRuleActionFindingFieldsUpdateRelatedFindingArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.relatedFindings = mapped
    }

    /**
     * @param argument A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("kjhycfhdacsbpuoi")
    public suspend fun relatedFindings(argument: suspend AutomationRuleActionFindingFieldsUpdateRelatedFindingArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                AutomationRuleActionFindingFieldsUpdateRelatedFindingArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.relatedFindings = mapped
    }

    /**
     * @param values A resource block that the rule action updates the `RelatedFindings` field of a finding. Documented below.
     */
    @JvmName("rcmfjsinbsoouwuh")
    public suspend fun relatedFindings(vararg values: AutomationRuleActionFindingFieldsUpdateRelatedFindingArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.relatedFindings = mapped
    }

    /**
     * @param value A resource block that updates to the severity information for a finding. Documented below.
     */
    @JvmName("pwhjakbmikgupomd")
    public suspend fun severity(`value`: AutomationRuleActionFindingFieldsUpdateSeverityArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.severity = mapped
    }

    /**
     * @param argument A resource block that updates to the severity information for a finding. Documented below.
     */
    @JvmName("rosoikackggfqvja")
    public suspend fun severity(argument: suspend AutomationRuleActionFindingFieldsUpdateSeverityArgsBuilder.() -> Unit) {
        val toBeMapped = AutomationRuleActionFindingFieldsUpdateSeverityArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.severity = mapped
    }

    /**
     * @param value The rule action updates the `Types` field of a finding.
     */
    @JvmName("chgincqqsqtxiuar")
    public suspend fun types(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.types = mapped
    }

    /**
     * @param values The rule action updates the `Types` field of a finding.
     */
    @JvmName("ttfwlfrbhvpsvksq")
    public suspend fun types(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.types = mapped
    }

    /**
     * @param value The rule action updates the `UserDefinedFields` field of a finding.
     */
    @JvmName("heyavxlcujcrrnjq")
    public suspend fun userDefinedFields(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userDefinedFields = mapped
    }

    /**
     * @param values The rule action updates the `UserDefinedFields` field of a finding.
     */
    @JvmName("abnlhlnbpewdeiph")
    public fun userDefinedFields(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.userDefinedFields = mapped
    }

    /**
     * @param value The rule action updates the `VerificationState` field of a finding. The allowed values are the following `UNKNOWN`, `TRUE_POSITIVE`, `FALSE_POSITIVE` and `BENIGN_POSITIVE`.
     */
    @JvmName("plomgkdigsgntwis")
    public suspend fun verificationState(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.verificationState = mapped
    }

    /**
     * @param value A resource block that is used to update information about the investigation into the finding. Documented below.
     */
    @JvmName("udkykepqcxwnduhl")
    public suspend fun workflow(`value`: AutomationRuleActionFindingFieldsUpdateWorkflowArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.workflow = mapped
    }

    /**
     * @param argument A resource block that is used to update information about the investigation into the finding. Documented below.
     */
    @JvmName("yktjtyyhrgwadmdc")
    public suspend fun workflow(argument: suspend AutomationRuleActionFindingFieldsUpdateWorkflowArgsBuilder.() -> Unit) {
        val toBeMapped = AutomationRuleActionFindingFieldsUpdateWorkflowArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.workflow = mapped
    }

    internal fun build(): AutomationRuleActionFindingFieldsUpdateArgs =
        AutomationRuleActionFindingFieldsUpdateArgs(
            confidence = confidence,
            criticality = criticality,
            note = note,
            relatedFindings = relatedFindings,
            severity = severity,
            types = types,
            userDefinedFields = userDefinedFields,
            verificationState = verificationState,
            workflow = workflow,
        )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy