
commonMain.aws.sdk.kotlin.services.medialive.transform.M3U8SettingsDocumentDeserializer.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.medialive.transform
import aws.sdk.kotlin.services.medialive.model.M3U8NielsenId3Behavior
import aws.sdk.kotlin.services.medialive.model.M3U8PcrControl
import aws.sdk.kotlin.services.medialive.model.M3U8Scte35Behavior
import aws.sdk.kotlin.services.medialive.model.M3U8Settings
import aws.sdk.kotlin.services.medialive.model.M3U8TimedMetadataBehavior
import aws.smithy.kotlin.runtime.serde.Deserializer
import aws.smithy.kotlin.runtime.serde.SdkFieldDescriptor
import aws.smithy.kotlin.runtime.serde.SdkObjectDescriptor
import aws.smithy.kotlin.runtime.serde.SerialKind
import aws.smithy.kotlin.runtime.serde.asSdkSerializable
import aws.smithy.kotlin.runtime.serde.deserializeList
import aws.smithy.kotlin.runtime.serde.deserializeMap
import aws.smithy.kotlin.runtime.serde.deserializeStruct
import aws.smithy.kotlin.runtime.serde.field
import aws.smithy.kotlin.runtime.serde.json.JsonDeserializer
import aws.smithy.kotlin.runtime.serde.json.JsonSerialName
import aws.smithy.kotlin.runtime.serde.serializeList
import aws.smithy.kotlin.runtime.serde.serializeMap
import aws.smithy.kotlin.runtime.serde.serializeStruct
internal fun deserializeM3U8SettingsDocument(deserializer: Deserializer): M3U8Settings {
val builder = M3U8Settings.Builder()
val AUDIOFRAMESPERPES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("audioFramesPerPes"))
val AUDIOPIDS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("audioPids"))
val ECMPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("ecmPid"))
val NIELSENID3BEHAVIOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("nielsenId3Behavior"))
val PATINTERVAL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("patInterval"))
val PCRCONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("pcrControl"))
val PCRPERIOD_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("pcrPeriod"))
val PCRPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("pcrPid"))
val PMTINTERVAL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("pmtInterval"))
val PMTPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("pmtPid"))
val PROGRAMNUM_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("programNum"))
val SCTE35BEHAVIOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("scte35Behavior"))
val SCTE35PID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("scte35Pid"))
val TIMEDMETADATABEHAVIOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("timedMetadataBehavior"))
val TIMEDMETADATAPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("timedMetadataPid"))
val TRANSPORTSTREAMID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("transportStreamId"))
val VIDEOPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("videoPid"))
val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
field(AUDIOFRAMESPERPES_DESCRIPTOR)
field(AUDIOPIDS_DESCRIPTOR)
field(ECMPID_DESCRIPTOR)
field(NIELSENID3BEHAVIOR_DESCRIPTOR)
field(PATINTERVAL_DESCRIPTOR)
field(PCRCONTROL_DESCRIPTOR)
field(PCRPERIOD_DESCRIPTOR)
field(PCRPID_DESCRIPTOR)
field(PMTINTERVAL_DESCRIPTOR)
field(PMTPID_DESCRIPTOR)
field(PROGRAMNUM_DESCRIPTOR)
field(SCTE35BEHAVIOR_DESCRIPTOR)
field(SCTE35PID_DESCRIPTOR)
field(TIMEDMETADATABEHAVIOR_DESCRIPTOR)
field(TIMEDMETADATAPID_DESCRIPTOR)
field(TRANSPORTSTREAMID_DESCRIPTOR)
field(VIDEOPID_DESCRIPTOR)
}
deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
loop@while (true) {
when (findNextFieldIndex()) {
AUDIOFRAMESPERPES_DESCRIPTOR.index -> builder.audioFramesPerPes = deserializeInt()
AUDIOPIDS_DESCRIPTOR.index -> builder.audioPids = deserializeString()
ECMPID_DESCRIPTOR.index -> builder.ecmPid = deserializeString()
NIELSENID3BEHAVIOR_DESCRIPTOR.index -> builder.nielsenId3Behavior = deserializeString().let { M3U8NielsenId3Behavior.fromValue(it) }
PATINTERVAL_DESCRIPTOR.index -> builder.patInterval = deserializeInt()
PCRCONTROL_DESCRIPTOR.index -> builder.pcrControl = deserializeString().let { M3U8PcrControl.fromValue(it) }
PCRPERIOD_DESCRIPTOR.index -> builder.pcrPeriod = deserializeInt()
PCRPID_DESCRIPTOR.index -> builder.pcrPid = deserializeString()
PMTINTERVAL_DESCRIPTOR.index -> builder.pmtInterval = deserializeInt()
PMTPID_DESCRIPTOR.index -> builder.pmtPid = deserializeString()
PROGRAMNUM_DESCRIPTOR.index -> builder.programNum = deserializeInt()
SCTE35BEHAVIOR_DESCRIPTOR.index -> builder.scte35Behavior = deserializeString().let { M3U8Scte35Behavior.fromValue(it) }
SCTE35PID_DESCRIPTOR.index -> builder.scte35Pid = deserializeString()
TIMEDMETADATABEHAVIOR_DESCRIPTOR.index -> builder.timedMetadataBehavior = deserializeString().let { M3U8TimedMetadataBehavior.fromValue(it) }
TIMEDMETADATAPID_DESCRIPTOR.index -> builder.timedMetadataPid = deserializeString()
TRANSPORTSTREAMID_DESCRIPTOR.index -> builder.transportStreamId = deserializeInt()
VIDEOPID_DESCRIPTOR.index -> builder.videoPid = deserializeString()
null -> break@loop
else -> skipValue()
}
}
}
return builder.build()
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy