
com.pulumi.azurenative.media.kotlin.inputs.ContentKeyPolicyPlayReadyPlayRightArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.media.kotlin.inputs
import com.pulumi.azurenative.media.inputs.ContentKeyPolicyPlayReadyPlayRightArgs.builder
import com.pulumi.azurenative.media.kotlin.enums.ContentKeyPolicyPlayReadyUnknownOutputPassingOption
import com.pulumi.core.Either
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.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Configures the Play Right in the PlayReady license.
* @property agcAndColorStripeRestriction Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive.
* @property allowPassingVideoContentToUnknownOutput Configures Unknown output handling settings of the license.
* @property analogVideoOpl Specifies the output protection level for compressed digital audio.
* @property compressedDigitalAudioOpl Specifies the output protection level for compressed digital audio.
* @property compressedDigitalVideoOpl Specifies the output protection level for compressed digital video.
* @property digitalVideoOnlyContentRestriction Enables the Image Constraint For Analog Component Video Restriction in the license.
* @property explicitAnalogTelevisionOutputRestriction Configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.
* @property firstPlayExpiration The amount of time that the license is valid after the license is first used to play content.
* @property imageConstraintForAnalogComponentVideoRestriction Enables the Image Constraint For Analog Component Video Restriction in the license.
* @property imageConstraintForAnalogComputerMonitorRestriction Enables the Image Constraint For Analog Component Video Restriction in the license.
* @property scmsRestriction Configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive.
* @property uncompressedDigitalAudioOpl Specifies the output protection level for uncompressed digital audio.
* @property uncompressedDigitalVideoOpl Specifies the output protection level for uncompressed digital video.
*/
public data class ContentKeyPolicyPlayReadyPlayRightArgs(
public val agcAndColorStripeRestriction: Output? = null,
public val allowPassingVideoContentToUnknownOutput: Output>,
public val analogVideoOpl: Output? = null,
public val compressedDigitalAudioOpl: Output? = null,
public val compressedDigitalVideoOpl: Output? = null,
public val digitalVideoOnlyContentRestriction: Output,
public val explicitAnalogTelevisionOutputRestriction: Output? = null,
public val firstPlayExpiration: Output? = null,
public val imageConstraintForAnalogComponentVideoRestriction: Output,
public val imageConstraintForAnalogComputerMonitorRestriction: Output,
public val scmsRestriction: Output? = null,
public val uncompressedDigitalAudioOpl: Output? = null,
public val uncompressedDigitalVideoOpl: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.media.inputs.ContentKeyPolicyPlayReadyPlayRightArgs = com.pulumi.azurenative.media.inputs.ContentKeyPolicyPlayReadyPlayRightArgs.builder()
.agcAndColorStripeRestriction(agcAndColorStripeRestriction?.applyValue({ args0 -> args0 }))
.allowPassingVideoContentToUnknownOutput(
allowPassingVideoContentToUnknownOutput.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.analogVideoOpl(analogVideoOpl?.applyValue({ args0 -> args0 }))
.compressedDigitalAudioOpl(compressedDigitalAudioOpl?.applyValue({ args0 -> args0 }))
.compressedDigitalVideoOpl(compressedDigitalVideoOpl?.applyValue({ args0 -> args0 }))
.digitalVideoOnlyContentRestriction(
digitalVideoOnlyContentRestriction.applyValue({ args0 ->
args0
}),
)
.explicitAnalogTelevisionOutputRestriction(
explicitAnalogTelevisionOutputRestriction?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.firstPlayExpiration(firstPlayExpiration?.applyValue({ args0 -> args0 }))
.imageConstraintForAnalogComponentVideoRestriction(
imageConstraintForAnalogComponentVideoRestriction.applyValue({ args0 ->
args0
}),
)
.imageConstraintForAnalogComputerMonitorRestriction(
imageConstraintForAnalogComputerMonitorRestriction.applyValue({ args0 ->
args0
}),
)
.scmsRestriction(scmsRestriction?.applyValue({ args0 -> args0 }))
.uncompressedDigitalAudioOpl(uncompressedDigitalAudioOpl?.applyValue({ args0 -> args0 }))
.uncompressedDigitalVideoOpl(uncompressedDigitalVideoOpl?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ContentKeyPolicyPlayReadyPlayRightArgs].
*/
@PulumiTagMarker
public class ContentKeyPolicyPlayReadyPlayRightArgsBuilder internal constructor() {
private var agcAndColorStripeRestriction: Output? = null
private var allowPassingVideoContentToUnknownOutput:
Output>? = null
private var analogVideoOpl: Output? = null
private var compressedDigitalAudioOpl: Output? = null
private var compressedDigitalVideoOpl: Output? = null
private var digitalVideoOnlyContentRestriction: Output? = null
private var explicitAnalogTelevisionOutputRestriction:
Output? = null
private var firstPlayExpiration: Output? = null
private var imageConstraintForAnalogComponentVideoRestriction: Output? = null
private var imageConstraintForAnalogComputerMonitorRestriction: Output? = null
private var scmsRestriction: Output? = null
private var uncompressedDigitalAudioOpl: Output? = null
private var uncompressedDigitalVideoOpl: Output? = null
/**
* @param value Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive.
*/
@JvmName("vyqqrkwnncrohvwb")
public suspend fun agcAndColorStripeRestriction(`value`: Output) {
this.agcAndColorStripeRestriction = value
}
/**
* @param value Configures Unknown output handling settings of the license.
*/
@JvmName("tfurcpthmflmubxr")
public suspend fun allowPassingVideoContentToUnknownOutput(`value`: Output>) {
this.allowPassingVideoContentToUnknownOutput = value
}
/**
* @param value Specifies the output protection level for compressed digital audio.
*/
@JvmName("dbjixlegvtiymmqv")
public suspend fun analogVideoOpl(`value`: Output) {
this.analogVideoOpl = value
}
/**
* @param value Specifies the output protection level for compressed digital audio.
*/
@JvmName("gxqonywobbjynihx")
public suspend fun compressedDigitalAudioOpl(`value`: Output) {
this.compressedDigitalAudioOpl = value
}
/**
* @param value Specifies the output protection level for compressed digital video.
*/
@JvmName("kavguomysqxuraox")
public suspend fun compressedDigitalVideoOpl(`value`: Output) {
this.compressedDigitalVideoOpl = value
}
/**
* @param value Enables the Image Constraint For Analog Component Video Restriction in the license.
*/
@JvmName("wuntsvxdmyvulwqy")
public suspend fun digitalVideoOnlyContentRestriction(`value`: Output) {
this.digitalVideoOnlyContentRestriction = value
}
/**
* @param value Configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.
*/
@JvmName("njiesdbaisvkgvbj")
public suspend fun explicitAnalogTelevisionOutputRestriction(`value`: Output) {
this.explicitAnalogTelevisionOutputRestriction = value
}
/**
* @param value The amount of time that the license is valid after the license is first used to play content.
*/
@JvmName("tosndqobxhqnexfx")
public suspend fun firstPlayExpiration(`value`: Output) {
this.firstPlayExpiration = value
}
/**
* @param value Enables the Image Constraint For Analog Component Video Restriction in the license.
*/
@JvmName("snchjfhyhbtsmgct")
public suspend fun imageConstraintForAnalogComponentVideoRestriction(`value`: Output) {
this.imageConstraintForAnalogComponentVideoRestriction = value
}
/**
* @param value Enables the Image Constraint For Analog Component Video Restriction in the license.
*/
@JvmName("dtlryjkiqipnttkj")
public suspend fun imageConstraintForAnalogComputerMonitorRestriction(`value`: Output) {
this.imageConstraintForAnalogComputerMonitorRestriction = value
}
/**
* @param value Configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive.
*/
@JvmName("perebrsusshwtcfb")
public suspend fun scmsRestriction(`value`: Output) {
this.scmsRestriction = value
}
/**
* @param value Specifies the output protection level for uncompressed digital audio.
*/
@JvmName("fwmjsyxkwnmdyiid")
public suspend fun uncompressedDigitalAudioOpl(`value`: Output) {
this.uncompressedDigitalAudioOpl = value
}
/**
* @param value Specifies the output protection level for uncompressed digital video.
*/
@JvmName("qrgjhgarwiotfvdc")
public suspend fun uncompressedDigitalVideoOpl(`value`: Output) {
this.uncompressedDigitalVideoOpl = value
}
/**
* @param value Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive.
*/
@JvmName("rhyjghewheamcsub")
public suspend fun agcAndColorStripeRestriction(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.agcAndColorStripeRestriction = mapped
}
/**
* @param value Configures Unknown output handling settings of the license.
*/
@JvmName("uiueqgaffievicxl")
public suspend fun allowPassingVideoContentToUnknownOutput(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.allowPassingVideoContentToUnknownOutput = mapped
}
/**
* @param value Configures Unknown output handling settings of the license.
*/
@JvmName("ghbggrggbphwgyfe")
public fun allowPassingVideoContentToUnknownOutput(`value`: String) {
val toBeMapped = Either.ofLeft<
String,
ContentKeyPolicyPlayReadyUnknownOutputPassingOption,
>(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.allowPassingVideoContentToUnknownOutput = mapped
}
/**
* @param value Configures Unknown output handling settings of the license.
*/
@JvmName("ychsvucchmgcnute")
public fun allowPassingVideoContentToUnknownOutput(`value`: ContentKeyPolicyPlayReadyUnknownOutputPassingOption) {
val toBeMapped = Either.ofRight<
String,
ContentKeyPolicyPlayReadyUnknownOutputPassingOption,
>(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.allowPassingVideoContentToUnknownOutput = mapped
}
/**
* @param value Specifies the output protection level for compressed digital audio.
*/
@JvmName("txtlaiatxamyprnx")
public suspend fun analogVideoOpl(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.analogVideoOpl = mapped
}
/**
* @param value Specifies the output protection level for compressed digital audio.
*/
@JvmName("ckwyvmgnlhfgrefk")
public suspend fun compressedDigitalAudioOpl(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.compressedDigitalAudioOpl = mapped
}
/**
* @param value Specifies the output protection level for compressed digital video.
*/
@JvmName("wdujqbijauwesdwt")
public suspend fun compressedDigitalVideoOpl(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.compressedDigitalVideoOpl = mapped
}
/**
* @param value Enables the Image Constraint For Analog Component Video Restriction in the license.
*/
@JvmName("neelhqjjnqlrrspf")
public suspend fun digitalVideoOnlyContentRestriction(`value`: Boolean) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.digitalVideoOnlyContentRestriction = mapped
}
/**
* @param value Configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.
*/
@JvmName("ptbuodvawmmqdmkg")
public suspend fun explicitAnalogTelevisionOutputRestriction(`value`: ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestrictionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.explicitAnalogTelevisionOutputRestriction = mapped
}
/**
* @param argument Configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.
*/
@JvmName("rlcuxgelsqmfnshr")
public suspend fun explicitAnalogTelevisionOutputRestriction(argument: suspend ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestrictionArgsBuilder.() -> Unit) {
val toBeMapped =
ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestrictionArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.explicitAnalogTelevisionOutputRestriction = mapped
}
/**
* @param value The amount of time that the license is valid after the license is first used to play content.
*/
@JvmName("mxpiowmmppednwcr")
public suspend fun firstPlayExpiration(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.firstPlayExpiration = mapped
}
/**
* @param value Enables the Image Constraint For Analog Component Video Restriction in the license.
*/
@JvmName("jxqujitvcnasaugu")
public suspend fun imageConstraintForAnalogComponentVideoRestriction(`value`: Boolean) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.imageConstraintForAnalogComponentVideoRestriction = mapped
}
/**
* @param value Enables the Image Constraint For Analog Component Video Restriction in the license.
*/
@JvmName("vuvaoyiimbongtpd")
public suspend fun imageConstraintForAnalogComputerMonitorRestriction(`value`: Boolean) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.imageConstraintForAnalogComputerMonitorRestriction = mapped
}
/**
* @param value Configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive.
*/
@JvmName("xtsbsccogjarywes")
public suspend fun scmsRestriction(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.scmsRestriction = mapped
}
/**
* @param value Specifies the output protection level for uncompressed digital audio.
*/
@JvmName("mcjftyvjaapxraft")
public suspend fun uncompressedDigitalAudioOpl(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.uncompressedDigitalAudioOpl = mapped
}
/**
* @param value Specifies the output protection level for uncompressed digital video.
*/
@JvmName("iawyncovaxhfndrg")
public suspend fun uncompressedDigitalVideoOpl(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.uncompressedDigitalVideoOpl = mapped
}
internal fun build(): ContentKeyPolicyPlayReadyPlayRightArgs =
ContentKeyPolicyPlayReadyPlayRightArgs(
agcAndColorStripeRestriction = agcAndColorStripeRestriction,
allowPassingVideoContentToUnknownOutput = allowPassingVideoContentToUnknownOutput ?: throw
PulumiNullFieldException("allowPassingVideoContentToUnknownOutput"),
analogVideoOpl = analogVideoOpl,
compressedDigitalAudioOpl = compressedDigitalAudioOpl,
compressedDigitalVideoOpl = compressedDigitalVideoOpl,
digitalVideoOnlyContentRestriction = digitalVideoOnlyContentRestriction ?: throw
PulumiNullFieldException("digitalVideoOnlyContentRestriction"),
explicitAnalogTelevisionOutputRestriction = explicitAnalogTelevisionOutputRestriction,
firstPlayExpiration = firstPlayExpiration,
imageConstraintForAnalogComponentVideoRestriction = imageConstraintForAnalogComponentVideoRestriction
?: throw PulumiNullFieldException("imageConstraintForAnalogComponentVideoRestriction"),
imageConstraintForAnalogComputerMonitorRestriction = imageConstraintForAnalogComputerMonitorRestriction
?: throw PulumiNullFieldException("imageConstraintForAnalogComputerMonitorRestriction"),
scmsRestriction = scmsRestriction,
uncompressedDigitalAudioOpl = uncompressedDigitalAudioOpl,
uncompressedDigitalVideoOpl = uncompressedDigitalVideoOpl,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy