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

com.pulumi.awsnative.mediaconnect.kotlin.inputs.BridgeFailoverConfigArgs.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: 1.24.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.mediaconnect.kotlin.inputs

import com.pulumi.awsnative.mediaconnect.inputs.BridgeFailoverConfigArgs.builder
import com.pulumi.awsnative.mediaconnect.kotlin.enums.BridgeFailoverConfigStateEnum
import com.pulumi.awsnative.mediaconnect.kotlin.enums.BridgeFailoverModeEnum
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 com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * The settings for source failover.
 * @property failoverMode The type of failover you choose for this flow. FAILOVER allows switching between different streams.
 * @property sourcePriority The priority you want to assign to a source. You can have a primary stream and a backup stream or two equally prioritized streams.
 * @property state The state of source failover on the flow. If the state is inactive, the flow can have only one source. If the state is active, the flow can have one or two sources.
 */
public data class BridgeFailoverConfigArgs(
    public val failoverMode: Output,
    public val sourcePriority: Output? = null,
    public val state: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.mediaconnect.inputs.BridgeFailoverConfigArgs =
        com.pulumi.awsnative.mediaconnect.inputs.BridgeFailoverConfigArgs.builder()
            .failoverMode(failoverMode.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .sourcePriority(sourcePriority?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .state(state?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [BridgeFailoverConfigArgs].
 */
@PulumiTagMarker
public class BridgeFailoverConfigArgsBuilder internal constructor() {
    private var failoverMode: Output? = null

    private var sourcePriority: Output? = null

    private var state: Output? = null

    /**
     * @param value The type of failover you choose for this flow. FAILOVER allows switching between different streams.
     */
    @JvmName("phkkdeptnidxmgss")
    public suspend fun failoverMode(`value`: Output) {
        this.failoverMode = value
    }

    /**
     * @param value The priority you want to assign to a source. You can have a primary stream and a backup stream or two equally prioritized streams.
     */
    @JvmName("qopurxmalteowbda")
    public suspend fun sourcePriority(`value`: Output) {
        this.sourcePriority = value
    }

    /**
     * @param value The state of source failover on the flow. If the state is inactive, the flow can have only one source. If the state is active, the flow can have one or two sources.
     */
    @JvmName("vcbesbvbqmrhqfjo")
    public suspend fun state(`value`: Output) {
        this.state = value
    }

    /**
     * @param value The type of failover you choose for this flow. FAILOVER allows switching between different streams.
     */
    @JvmName("garejkmytunglfto")
    public suspend fun failoverMode(`value`: BridgeFailoverModeEnum) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.failoverMode = mapped
    }

    /**
     * @param value The priority you want to assign to a source. You can have a primary stream and a backup stream or two equally prioritized streams.
     */
    @JvmName("mkyhhyabxwclrgwh")
    public suspend fun sourcePriority(`value`: BridgeSourcePriorityArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourcePriority = mapped
    }

    /**
     * @param argument The priority you want to assign to a source. You can have a primary stream and a backup stream or two equally prioritized streams.
     */
    @JvmName("dvvavcexjgwddwyu")
    public suspend fun sourcePriority(argument: suspend BridgeSourcePriorityArgsBuilder.() -> Unit) {
        val toBeMapped = BridgeSourcePriorityArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.sourcePriority = mapped
    }

    /**
     * @param value The state of source failover on the flow. If the state is inactive, the flow can have only one source. If the state is active, the flow can have one or two sources.
     */
    @JvmName("luwaoranjtgdxdgp")
    public suspend fun state(`value`: BridgeFailoverConfigStateEnum?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.state = mapped
    }

    internal fun build(): BridgeFailoverConfigArgs = BridgeFailoverConfigArgs(
        failoverMode = failoverMode ?: throw PulumiNullFieldException("failoverMode"),
        sourcePriority = sourcePriority,
        state = state,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy