![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.videoanalyzer.kotlin.inputs.VideoSinkArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-native-kotlin Show documentation
Show all versions of pulumi-azure-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.azurenative.videoanalyzer.kotlin.inputs
import com.pulumi.azurenative.videoanalyzer.inputs.VideoSinkArgs.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 com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Video sink in a live topology allows for video and audio to be captured, optionally archived, and published via a video resource. If archiving is enabled, this results in a video of type 'archive'. If used in a batch topology, this allows for video and audio to be stored as a file, and published via a video resource of type 'file'
* @property inputs An array of upstream node references within the topology to be used as inputs for this node.
* @property name Node name. Must be unique within the topology.
* @property type The discriminator for derived types.
* Expected value is '#Microsoft.VideoAnalyzer.VideoSink'.
* @property videoCreationProperties Optional video properties to be used in case a new video resource needs to be created on the service.
* @property videoName Name of a new or existing video resource used to capture and publish content. Note: if downstream of RTSP source, and if disableArchive is set to true, then no content is archived.
* @property videoPublishingOptions Options to change how the video sink publishes content via the video resource. This property is only allowed for topologies where "kind" is set to "live".
*/
public data class VideoSinkArgs(
public val inputs: Output>,
public val name: Output,
public val type: Output,
public val videoCreationProperties: Output? = null,
public val videoName: Output,
public val videoPublishingOptions: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.videoanalyzer.inputs.VideoSinkArgs =
com.pulumi.azurenative.videoanalyzer.inputs.VideoSinkArgs.builder()
.inputs(inputs.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.name(name.applyValue({ args0 -> args0 }))
.type(type.applyValue({ args0 -> args0 }))
.videoCreationProperties(
videoCreationProperties?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.videoName(videoName.applyValue({ args0 -> args0 }))
.videoPublishingOptions(
videoPublishingOptions?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [VideoSinkArgs].
*/
@PulumiTagMarker
public class VideoSinkArgsBuilder internal constructor() {
private var inputs: Output>? = null
private var name: Output? = null
private var type: Output? = null
private var videoCreationProperties: Output? = null
private var videoName: Output? = null
private var videoPublishingOptions: Output? = null
/**
* @param value An array of upstream node references within the topology to be used as inputs for this node.
*/
@JvmName("qtxxkhxkhcqholpw")
public suspend fun inputs(`value`: Output>) {
this.inputs = value
}
@JvmName("fsfimcrbsalmqeke")
public suspend fun inputs(vararg values: Output) {
this.inputs = Output.all(values.asList())
}
/**
* @param values An array of upstream node references within the topology to be used as inputs for this node.
*/
@JvmName("cenlnivvnpbnfgli")
public suspend fun inputs(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy