
commonMain.aws.sdk.kotlin.services.mediaconvert.serde.M3u8SettingsDocumentDeserializer.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.mediaconvert.serde
import aws.sdk.kotlin.services.mediaconvert.model.M3u8AudioDuration
import aws.sdk.kotlin.services.mediaconvert.model.M3u8DataPtsControl
import aws.sdk.kotlin.services.mediaconvert.model.M3u8NielsenId3
import aws.sdk.kotlin.services.mediaconvert.model.M3u8PcrControl
import aws.sdk.kotlin.services.mediaconvert.model.M3u8Scte35Source
import aws.sdk.kotlin.services.mediaconvert.model.M3u8Settings
import aws.sdk.kotlin.services.mediaconvert.model.TimedMetadata
import aws.sdk.kotlin.services.mediaconvert.model.TsPtsOffset
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
import kotlin.collections.mutableListOf
internal fun deserializeM3u8SettingsDocument(deserializer: Deserializer): M3u8Settings {
val builder = M3u8Settings.Builder()
val AUDIODURATION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("audioDuration"))
val AUDIOFRAMESPERPES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("audioFramesPerPes"))
val AUDIOPIDS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("audioPids"))
val DATAPTSCONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("dataPTSControl"))
val MAXPCRINTERVAL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("maxPcrInterval"))
val NIELSENID3_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("nielsenId3"))
val PATINTERVAL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("patInterval"))
val PCRCONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("pcrControl"))
val PCRPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("pcrPid"))
val PMTINTERVAL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("pmtInterval"))
val PMTPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("pmtPid"))
val PRIVATEMETADATAPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("privateMetadataPid"))
val PROGRAMNUMBER_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("programNumber"))
val PTSOFFSET_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("ptsOffset"))
val PTSOFFSETMODE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ptsOffsetMode"))
val SCTE35PID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("scte35Pid"))
val SCTE35SOURCE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("scte35Source"))
val TIMEDMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("timedMetadata"))
val TIMEDMETADATAPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("timedMetadataPid"))
val TRANSPORTSTREAMID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("transportStreamId"))
val VIDEOPID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("videoPid"))
val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
field(AUDIODURATION_DESCRIPTOR)
field(AUDIOFRAMESPERPES_DESCRIPTOR)
field(AUDIOPIDS_DESCRIPTOR)
field(DATAPTSCONTROL_DESCRIPTOR)
field(MAXPCRINTERVAL_DESCRIPTOR)
field(NIELSENID3_DESCRIPTOR)
field(PATINTERVAL_DESCRIPTOR)
field(PCRCONTROL_DESCRIPTOR)
field(PCRPID_DESCRIPTOR)
field(PMTINTERVAL_DESCRIPTOR)
field(PMTPID_DESCRIPTOR)
field(PRIVATEMETADATAPID_DESCRIPTOR)
field(PROGRAMNUMBER_DESCRIPTOR)
field(PTSOFFSET_DESCRIPTOR)
field(PTSOFFSETMODE_DESCRIPTOR)
field(SCTE35PID_DESCRIPTOR)
field(SCTE35SOURCE_DESCRIPTOR)
field(TIMEDMETADATA_DESCRIPTOR)
field(TIMEDMETADATAPID_DESCRIPTOR)
field(TRANSPORTSTREAMID_DESCRIPTOR)
field(VIDEOPID_DESCRIPTOR)
}
deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
loop@while (true) {
when (findNextFieldIndex()) {
AUDIODURATION_DESCRIPTOR.index -> builder.audioDuration = deserializeString().let { M3u8AudioDuration.fromValue(it) }
AUDIOFRAMESPERPES_DESCRIPTOR.index -> builder.audioFramesPerPes = deserializeInt()
AUDIOPIDS_DESCRIPTOR.index -> builder.audioPids =
deserializer.deserializeList(AUDIOPIDS_DESCRIPTOR) {
val col0 = mutableListOf()
while (hasNextElement()) {
val el0 = if (nextHasValue()) { deserializeInt() } else { deserializeNull(); continue }
col0.add(el0)
}
col0
}
DATAPTSCONTROL_DESCRIPTOR.index -> builder.dataPtsControl = deserializeString().let { M3u8DataPtsControl.fromValue(it) }
MAXPCRINTERVAL_DESCRIPTOR.index -> builder.maxPcrInterval = deserializeInt()
NIELSENID3_DESCRIPTOR.index -> builder.nielsenId3 = deserializeString().let { M3u8NielsenId3.fromValue(it) }
PATINTERVAL_DESCRIPTOR.index -> builder.patInterval = deserializeInt()
PCRCONTROL_DESCRIPTOR.index -> builder.pcrControl = deserializeString().let { M3u8PcrControl.fromValue(it) }
PCRPID_DESCRIPTOR.index -> builder.pcrPid = deserializeInt()
PMTINTERVAL_DESCRIPTOR.index -> builder.pmtInterval = deserializeInt()
PMTPID_DESCRIPTOR.index -> builder.pmtPid = deserializeInt()
PRIVATEMETADATAPID_DESCRIPTOR.index -> builder.privateMetadataPid = deserializeInt()
PROGRAMNUMBER_DESCRIPTOR.index -> builder.programNumber = deserializeInt()
PTSOFFSET_DESCRIPTOR.index -> builder.ptsOffset = deserializeInt()
PTSOFFSETMODE_DESCRIPTOR.index -> builder.ptsOffsetMode = deserializeString().let { TsPtsOffset.fromValue(it) }
SCTE35PID_DESCRIPTOR.index -> builder.scte35Pid = deserializeInt()
SCTE35SOURCE_DESCRIPTOR.index -> builder.scte35Source = deserializeString().let { M3u8Scte35Source.fromValue(it) }
TIMEDMETADATA_DESCRIPTOR.index -> builder.timedMetadata = deserializeString().let { TimedMetadata.fromValue(it) }
TIMEDMETADATAPID_DESCRIPTOR.index -> builder.timedMetadataPid = deserializeInt()
TRANSPORTSTREAMID_DESCRIPTOR.index -> builder.transportStreamId = deserializeInt()
VIDEOPID_DESCRIPTOR.index -> builder.videoPid = deserializeInt()
null -> break@loop
else -> skipValue()
}
}
}
builder.correctErrors()
return builder.build()
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy