![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.mediapackagev2.kotlin.inputs.OriginEndpointEncryptionContractConfigurationArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.mediapackagev2.kotlin.inputs
import com.pulumi.awsnative.mediapackagev2.inputs.OriginEndpointEncryptionContractConfigurationArgs.builder
import com.pulumi.awsnative.mediapackagev2.kotlin.enums.OriginEndpointPresetSpeke20Audio
import com.pulumi.awsnative.mediapackagev2.kotlin.enums.OriginEndpointPresetSpeke20Video
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.Suppress
import kotlin.jvm.JvmName
/**
* Configure one or more content encryption keys for your endpoints that use SPEKE Version 2.0. The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream. To configure the encryption contract, specify which audio and video encryption presets to use.
* @property presetSpeke20Audio A collection of audio encryption presets.
* Value description:
* - `PRESET-AUDIO-1` - Use one content key to encrypt all of the audio tracks in your stream.
* - `PRESET-AUDIO-2` - Use one content key to encrypt all of the stereo audio tracks and one content key to encrypt all of the multichannel audio tracks.
* - `PRESET-AUDIO-3` - Use one content key to encrypt all of the stereo audio tracks, one content key to encrypt all of the multichannel audio tracks with 3 to 6 channels, and one content key to encrypt all of the multichannel audio tracks with more than 6 channels.
* - `SHARED` - Use the same content key for all of the audio and video tracks in your stream.
* - `UNENCRYPTED` - Don't encrypt any of the audio tracks in your stream.
* @property presetSpeke20Video The SPEKE Version 2.0 preset video associated with the encryption contract configuration of the origin endpoint.
*/
public data class OriginEndpointEncryptionContractConfigurationArgs(
public val presetSpeke20Audio: Output,
public val presetSpeke20Video: Output,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.mediapackagev2.inputs.OriginEndpointEncryptionContractConfigurationArgs =
com.pulumi.awsnative.mediapackagev2.inputs.OriginEndpointEncryptionContractConfigurationArgs.builder()
.presetSpeke20Audio(
presetSpeke20Audio.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.presetSpeke20Video(
presetSpeke20Video.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [OriginEndpointEncryptionContractConfigurationArgs].
*/
@PulumiTagMarker
public class OriginEndpointEncryptionContractConfigurationArgsBuilder internal constructor() {
private var presetSpeke20Audio: Output? = null
private var presetSpeke20Video: Output? = null
/**
* @param value A collection of audio encryption presets.
* Value description:
* - `PRESET-AUDIO-1` - Use one content key to encrypt all of the audio tracks in your stream.
* - `PRESET-AUDIO-2` - Use one content key to encrypt all of the stereo audio tracks and one content key to encrypt all of the multichannel audio tracks.
* - `PRESET-AUDIO-3` - Use one content key to encrypt all of the stereo audio tracks, one content key to encrypt all of the multichannel audio tracks with 3 to 6 channels, and one content key to encrypt all of the multichannel audio tracks with more than 6 channels.
* - `SHARED` - Use the same content key for all of the audio and video tracks in your stream.
* - `UNENCRYPTED` - Don't encrypt any of the audio tracks in your stream.
*/
@JvmName("npcpajdeuqdslgsq")
public suspend fun presetSpeke20Audio(`value`: Output) {
this.presetSpeke20Audio = value
}
/**
* @param value The SPEKE Version 2.0 preset video associated with the encryption contract configuration of the origin endpoint.
*/
@JvmName("xvjatvvkageftsau")
public suspend fun presetSpeke20Video(`value`: Output) {
this.presetSpeke20Video = value
}
/**
* @param value A collection of audio encryption presets.
* Value description:
* - `PRESET-AUDIO-1` - Use one content key to encrypt all of the audio tracks in your stream.
* - `PRESET-AUDIO-2` - Use one content key to encrypt all of the stereo audio tracks and one content key to encrypt all of the multichannel audio tracks.
* - `PRESET-AUDIO-3` - Use one content key to encrypt all of the stereo audio tracks, one content key to encrypt all of the multichannel audio tracks with 3 to 6 channels, and one content key to encrypt all of the multichannel audio tracks with more than 6 channels.
* - `SHARED` - Use the same content key for all of the audio and video tracks in your stream.
* - `UNENCRYPTED` - Don't encrypt any of the audio tracks in your stream.
*/
@JvmName("pejgawvjpuiijwwn")
public suspend fun presetSpeke20Audio(`value`: OriginEndpointPresetSpeke20Audio) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.presetSpeke20Audio = mapped
}
/**
* @param value The SPEKE Version 2.0 preset video associated with the encryption contract configuration of the origin endpoint.
*/
@JvmName("cddiphrxpggkkcfd")
public suspend fun presetSpeke20Video(`value`: OriginEndpointPresetSpeke20Video) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.presetSpeke20Video = mapped
}
internal fun build(): OriginEndpointEncryptionContractConfigurationArgs =
OriginEndpointEncryptionContractConfigurationArgs(
presetSpeke20Audio = presetSpeke20Audio ?: throw PulumiNullFieldException("presetSpeke20Audio"),
presetSpeke20Video = presetSpeke20Video ?: throw PulumiNullFieldException("presetSpeke20Video"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy