
com.pulumi.azurenative.securityinsights.kotlin.inputs.GroupingConfigurationArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.securityinsights.kotlin.inputs
import com.pulumi.azurenative.securityinsights.inputs.GroupingConfigurationArgs.builder
import com.pulumi.azurenative.securityinsights.kotlin.enums.AlertDetail
import com.pulumi.azurenative.securityinsights.kotlin.enums.EntityMappingType
import com.pulumi.azurenative.securityinsights.kotlin.enums.MatchingMethod
import com.pulumi.core.Either
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.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Grouping configuration property bag.
* @property enabled Grouping enabled
* @property groupByAlertDetails A list of alert details to group by (when matchingMethod is Selected)
* @property groupByCustomDetails A list of custom details keys to group by (when matchingMethod is Selected). Only keys defined in the current alert rule may be used.
* @property groupByEntities A list of entity types to group by (when matchingMethod is Selected). Only entities defined in the current alert rule may be used.
* @property lookbackDuration Limit the group to alerts created within the lookback duration (in ISO 8601 duration format)
* @property matchingMethod Grouping matching method. When method is Selected at least one of groupByEntities, groupByAlertDetails, groupByCustomDetails must be provided and not empty.
* @property reopenClosedIncident Re-open closed matching incidents
*/
public data class GroupingConfigurationArgs(
public val enabled: Output,
public val groupByAlertDetails: Output>>? = null,
public val groupByCustomDetails: Output>? = null,
public val groupByEntities: Output>>? = null,
public val lookbackDuration: Output,
public val matchingMethod: Output>,
public val reopenClosedIncident: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.securityinsights.inputs.GroupingConfigurationArgs =
com.pulumi.azurenative.securityinsights.inputs.GroupingConfigurationArgs.builder()
.enabled(enabled.applyValue({ args0 -> args0 }))
.groupByAlertDetails(
groupByAlertDetails?.applyValue({ args0 ->
args0.map({ args0 ->
args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
})
}),
)
.groupByCustomDetails(groupByCustomDetails?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.groupByEntities(
groupByEntities?.applyValue({ args0 ->
args0.map({ args0 ->
args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
})
}),
)
.lookbackDuration(lookbackDuration.applyValue({ args0 -> args0 }))
.matchingMethod(
matchingMethod.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.reopenClosedIncident(reopenClosedIncident.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [GroupingConfigurationArgs].
*/
@PulumiTagMarker
public class GroupingConfigurationArgsBuilder internal constructor() {
private var enabled: Output? = null
private var groupByAlertDetails: Output>>? = null
private var groupByCustomDetails: Output>? = null
private var groupByEntities: Output>>? = null
private var lookbackDuration: Output? = null
private var matchingMethod: Output>? = null
private var reopenClosedIncident: Output? = null
/**
* @param value Grouping enabled
*/
@JvmName("ajabkajtjlqckoyq")
public suspend fun enabled(`value`: Output) {
this.enabled = value
}
/**
* @param value A list of alert details to group by (when matchingMethod is Selected)
*/
@JvmName("atmwnjoumvlepxfl")
public suspend fun groupByAlertDetails(`value`: Output>>) {
this.groupByAlertDetails = value
}
@JvmName("ynxpwnjkbcsgrabm")
public suspend fun groupByAlertDetails(vararg values: Output>) {
this.groupByAlertDetails = Output.all(values.asList())
}
/**
* @param values A list of alert details to group by (when matchingMethod is Selected)
*/
@JvmName("dfupnrvepnolgnto")
public suspend fun groupByAlertDetails(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy