Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.mediaconnect.kotlin.inputs
import com.pulumi.awsnative.mediaconnect.inputs.FlowSourceArgs.builder
import com.pulumi.awsnative.mediaconnect.kotlin.enums.FlowSourceProtocol
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* The settings for the source of the flow.
* @property decryption The type of decryption that is used on the content ingested from this source.
* @property description A description for the source. This value is not used or seen outside of the current AWS Elemental MediaConnect account.
* @property entitlementArn The ARN of the entitlement that allows you to subscribe to content that comes from another AWS account. The entitlement is set by the content originator and the ARN is generated as part of the originator's flow.
* @property gatewayBridgeSource The source configuration for cloud flows receiving a stream from a bridge.
* @property ingestIp The IP address that the flow will be listening on for incoming content.
* @property ingestPort The port that the flow will be listening on for incoming content.
* @property maxBitrate The smoothing max bitrate for RIST, RTP, and RTP-FEC streams.
* @property maxLatency The maximum latency in milliseconds. This parameter applies only to RIST-based and Zixi-based streams.
* @property maxSyncBuffer The size of the buffer (in milliseconds) to use to sync incoming source data.
* @property mediaStreamSourceConfigurations The media stream that is associated with the source, and the parameters for that association.
* @property minLatency The minimum latency in milliseconds.
* @property name The name of the source.
* @property protocol The protocol that is used by the source.
* @property senderControlPort The port that the flow uses to send outbound requests to initiate connection with the sender for fujitsu-qos protocol.
* @property senderIpAddress The IP address that the flow communicates with to initiate connection with the sender for fujitsu-qos protocol.
* @property sourceArn The ARN of the source.
* @property sourceIngestPort The port that the flow will be listening on for incoming content.(ReadOnly)
* @property sourceListenerAddress Source IP or domain name for SRT-caller protocol.
* @property sourceListenerPort Source port for SRT-caller protocol.
* @property streamId The stream ID that you want to use for this transport. This parameter applies only to Zixi-based streams.
* @property vpcInterfaceName The name of the VPC Interface this Source is configured with.
* @property whitelistCidr The range of IP addresses that should be allowed to contribute content to your source. These IP addresses should be in the form of a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.
*/
public data class FlowSourceArgs(
public val decryption: Output? = null,
public val description: Output? = null,
public val entitlementArn: Output? = null,
public val gatewayBridgeSource: Output? = null,
public val ingestIp: Output? = null,
public val ingestPort: Output? = null,
public val maxBitrate: Output? = null,
public val maxLatency: Output? = null,
public val maxSyncBuffer: Output? = null,
public val mediaStreamSourceConfigurations: Output>? =
null,
public val minLatency: Output? = null,
public val name: Output? = null,
public val protocol: Output? = null,
public val senderControlPort: Output? = null,
public val senderIpAddress: Output? = null,
public val sourceArn: Output? = null,
public val sourceIngestPort: Output? = null,
public val sourceListenerAddress: Output? = null,
public val sourceListenerPort: Output? = null,
public val streamId: Output? = null,
public val vpcInterfaceName: Output? = null,
public val whitelistCidr: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.mediaconnect.inputs.FlowSourceArgs =
com.pulumi.awsnative.mediaconnect.inputs.FlowSourceArgs.builder()
.decryption(decryption?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.description(description?.applyValue({ args0 -> args0 }))
.entitlementArn(entitlementArn?.applyValue({ args0 -> args0 }))
.gatewayBridgeSource(
gatewayBridgeSource?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.ingestIp(ingestIp?.applyValue({ args0 -> args0 }))
.ingestPort(ingestPort?.applyValue({ args0 -> args0 }))
.maxBitrate(maxBitrate?.applyValue({ args0 -> args0 }))
.maxLatency(maxLatency?.applyValue({ args0 -> args0 }))
.maxSyncBuffer(maxSyncBuffer?.applyValue({ args0 -> args0 }))
.mediaStreamSourceConfigurations(
mediaStreamSourceConfigurations?.applyValue({ args0 ->
args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.minLatency(minLatency?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.protocol(protocol?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.senderControlPort(senderControlPort?.applyValue({ args0 -> args0 }))
.senderIpAddress(senderIpAddress?.applyValue({ args0 -> args0 }))
.sourceArn(sourceArn?.applyValue({ args0 -> args0 }))
.sourceIngestPort(sourceIngestPort?.applyValue({ args0 -> args0 }))
.sourceListenerAddress(sourceListenerAddress?.applyValue({ args0 -> args0 }))
.sourceListenerPort(sourceListenerPort?.applyValue({ args0 -> args0 }))
.streamId(streamId?.applyValue({ args0 -> args0 }))
.vpcInterfaceName(vpcInterfaceName?.applyValue({ args0 -> args0 }))
.whitelistCidr(whitelistCidr?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [FlowSourceArgs].
*/
@PulumiTagMarker
public class FlowSourceArgsBuilder internal constructor() {
private var decryption: Output? = null
private var description: Output? = null
private var entitlementArn: Output? = null
private var gatewayBridgeSource: Output? = null
private var ingestIp: Output? = null
private var ingestPort: Output? = null
private var maxBitrate: Output? = null
private var maxLatency: Output? = null
private var maxSyncBuffer: Output? = null
private var mediaStreamSourceConfigurations: Output>? =
null
private var minLatency: Output? = null
private var name: Output? = null
private var protocol: Output? = null
private var senderControlPort: Output? = null
private var senderIpAddress: Output? = null
private var sourceArn: Output? = null
private var sourceIngestPort: Output? = null
private var sourceListenerAddress: Output? = null
private var sourceListenerPort: Output? = null
private var streamId: Output? = null
private var vpcInterfaceName: Output? = null
private var whitelistCidr: Output? = null
/**
* @param value The type of decryption that is used on the content ingested from this source.
*/
@JvmName("oqxpwsakhdtqmpwm")
public suspend fun decryption(`value`: Output) {
this.decryption = value
}
/**
* @param value A description for the source. This value is not used or seen outside of the current AWS Elemental MediaConnect account.
*/
@JvmName("rodtximvfsdkqcvi")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The ARN of the entitlement that allows you to subscribe to content that comes from another AWS account. The entitlement is set by the content originator and the ARN is generated as part of the originator's flow.
*/
@JvmName("cwqeecqvilpiqafr")
public suspend fun entitlementArn(`value`: Output) {
this.entitlementArn = value
}
/**
* @param value The source configuration for cloud flows receiving a stream from a bridge.
*/
@JvmName("mwafrjbvmbylsqfa")
public suspend fun gatewayBridgeSource(`value`: Output) {
this.gatewayBridgeSource = value
}
/**
* @param value The IP address that the flow will be listening on for incoming content.
*/
@JvmName("wtlmvspxjbovvpyj")
public suspend fun ingestIp(`value`: Output) {
this.ingestIp = value
}
/**
* @param value The port that the flow will be listening on for incoming content.
*/
@JvmName("sfaujveaurbkctxq")
public suspend fun ingestPort(`value`: Output) {
this.ingestPort = value
}
/**
* @param value The smoothing max bitrate for RIST, RTP, and RTP-FEC streams.
*/
@JvmName("utjsceudbwdjcawa")
public suspend fun maxBitrate(`value`: Output) {
this.maxBitrate = value
}
/**
* @param value The maximum latency in milliseconds. This parameter applies only to RIST-based and Zixi-based streams.
*/
@JvmName("avjsigqlwhnoipup")
public suspend fun maxLatency(`value`: Output) {
this.maxLatency = value
}
/**
* @param value The size of the buffer (in milliseconds) to use to sync incoming source data.
*/
@JvmName("kejvgotvastxnkuo")
public suspend fun maxSyncBuffer(`value`: Output) {
this.maxSyncBuffer = value
}
/**
* @param value The media stream that is associated with the source, and the parameters for that association.
*/
@JvmName("ksjqhmunmfytjoia")
public suspend fun mediaStreamSourceConfigurations(`value`: Output>) {
this.mediaStreamSourceConfigurations = value
}
@JvmName("xjpbhdsyhgalnqug")
public suspend fun mediaStreamSourceConfigurations(vararg values: Output) {
this.mediaStreamSourceConfigurations = Output.all(values.asList())
}
/**
* @param values The media stream that is associated with the source, and the parameters for that association.
*/
@JvmName("harfhpbrpcqbcyky")
public suspend fun mediaStreamSourceConfigurations(values: List