com.pulumi.awsnative.cloudwatch.kotlin.inputs.AlarmMetricArgs.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.cloudwatch.kotlin.inputs
import com.pulumi.awsnative.cloudwatch.inputs.AlarmMetricArgs.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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* The ``Metric`` property type represents a specific metric. ``Metric`` is a property of the [MetricStat](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html) property type.
* @property dimensions The metric dimensions that you want to be used for the metric that the alarm will watch.
* @property metricName The name of the metric that you want the alarm to watch. This is a required field.
* @property namespace The namespace of the metric that the alarm will watch.
*/
public data class AlarmMetricArgs(
public val dimensions: Output>? = null,
public val metricName: Output? = null,
public val namespace: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.cloudwatch.inputs.AlarmMetricArgs =
com.pulumi.awsnative.cloudwatch.inputs.AlarmMetricArgs.builder()
.dimensions(
dimensions?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.metricName(metricName?.applyValue({ args0 -> args0 }))
.namespace(namespace?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [AlarmMetricArgs].
*/
@PulumiTagMarker
public class AlarmMetricArgsBuilder internal constructor() {
private var dimensions: Output>? = null
private var metricName: Output? = null
private var namespace: Output? = null
/**
* @param value The metric dimensions that you want to be used for the metric that the alarm will watch.
*/
@JvmName("gffjqpojvqdnyapb")
public suspend fun dimensions(`value`: Output>) {
this.dimensions = value
}
@JvmName("pnrtdkhhxnuoskjc")
public suspend fun dimensions(vararg values: Output) {
this.dimensions = Output.all(values.asList())
}
/**
* @param values The metric dimensions that you want to be used for the metric that the alarm will watch.
*/
@JvmName("qsdqplyumtfekxpw")
public suspend fun dimensions(values: List