com.pulumi.aws.autoscalingplans.kotlin.inputs.ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-kotlin Show documentation
Show all versions of pulumi-aws-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.aws.autoscalingplans.kotlin.inputs
import com.pulumi.aws.autoscalingplans.inputs.ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs.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
/**
*
* @property predefinedLoadMetricType Metric type. Valid values: `ALBTargetGroupRequestCount`, `ASGTotalCPUUtilization`, `ASGTotalNetworkIn`, `ASGTotalNetworkOut`.
* @property resourceLabel Identifies the resource associated with the metric type.
*/
public data class ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs(
public val predefinedLoadMetricType: Output,
public val resourceLabel: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.aws.autoscalingplans.inputs.ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs =
com.pulumi.aws.autoscalingplans.inputs.ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs.builder()
.predefinedLoadMetricType(predefinedLoadMetricType.applyValue({ args0 -> args0 }))
.resourceLabel(resourceLabel?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs].
*/
@PulumiTagMarker
public class ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgsBuilder internal constructor() {
private var predefinedLoadMetricType: Output? = null
private var resourceLabel: Output? = null
/**
* @param value Metric type. Valid values: `ALBTargetGroupRequestCount`, `ASGTotalCPUUtilization`, `ASGTotalNetworkIn`, `ASGTotalNetworkOut`.
*/
@JvmName("xmhpnrvtpfxgarva")
public suspend fun predefinedLoadMetricType(`value`: Output) {
this.predefinedLoadMetricType = value
}
/**
* @param value Identifies the resource associated with the metric type.
*/
@JvmName("rewwfqwskjkfrnpn")
public suspend fun resourceLabel(`value`: Output) {
this.resourceLabel = value
}
/**
* @param value Metric type. Valid values: `ALBTargetGroupRequestCount`, `ASGTotalCPUUtilization`, `ASGTotalNetworkIn`, `ASGTotalNetworkOut`.
*/
@JvmName("dxigvjlhpkaiugrk")
public suspend fun predefinedLoadMetricType(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.predefinedLoadMetricType = mapped
}
/**
* @param value Identifies the resource associated with the metric type.
*/
@JvmName("sdrnjifhsedwggmx")
public suspend fun resourceLabel(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resourceLabel = mapped
}
internal fun build(): ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs =
ScalingPlanScalingInstructionPredefinedLoadMetricSpecificationArgs(
predefinedLoadMetricType = predefinedLoadMetricType ?: throw
PulumiNullFieldException("predefinedLoadMetricType"),
resourceLabel = resourceLabel,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy