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

com.pulumi.azure.chaosstudio.kotlin.outputs.ExperimentStepBranchAction.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.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.chaosstudio.kotlin.outputs

import kotlin.String
import kotlin.Suppress
import kotlin.collections.Map

/**
 *
 * @property actionType The type of action that should be added to the experiment. Possible values are `continuous`, `delay` and `discrete`.
 * @property duration An ISO8601 formatted string specifying the duration for a `delay` or `continuous` action.
 * @property parameters A key-value map of additional parameters to configure the action. The values that are accepted by this depend on the `urn` i.e. the capability/fault that is applied. Possible parameter values can be found in this [documentation](https://learn.microsoft.com/azure/chaos-studio/chaos-studio-fault-library)
 * @property selectorName The name of the Selector to which this action should apply to. This must be specified if the `action_type` is `continuous` or `discrete`.
 * @property urn The Unique Resource Name of the action, this value is provided by the `azure.chaosstudio.Capability` resource e.g. `azurerm_chaos_studio_capability.example.urn`. This must be specified if the `action_type` is `continuous` or `discrete`.
 */
public data class ExperimentStepBranchAction(
    public val actionType: String,
    public val duration: String? = null,
    public val parameters: Map? = null,
    public val selectorName: String? = null,
    public val urn: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.chaosstudio.outputs.ExperimentStepBranchAction): ExperimentStepBranchAction = ExperimentStepBranchAction(
            actionType = javaType.actionType(),
            duration = javaType.duration().map({ args0 -> args0 }).orElse(null),
            parameters = javaType.parameters().map({ args0 -> args0.key.to(args0.value) }).toMap(),
            selectorName = javaType.selectorName().map({ args0 -> args0 }).orElse(null),
            urn = javaType.urn().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy