commonMain.aws.sdk.kotlin.services.mediaconvert.transform.DashIsoGroupSettingsDocumentDeserializer.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of mediaconvert Show documentation
Show all versions of mediaconvert Show documentation
The AWS SDK for Kotlin client for MediaConvert
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.mediaconvert.transform
import aws.sdk.kotlin.services.mediaconvert.model.DashAdditionalManifest
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoGroupAudioChannelConfigSchemeIdUri
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoGroupSettings
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoHbbtvCompliance
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoImageBasedTrickPlay
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoMpdManifestBandwidthType
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoMpdProfile
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoPtsOffsetHandlingForBFrames
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoSegmentControl
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoSegmentLengthControl
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoVideoCompositionOffsets
import aws.sdk.kotlin.services.mediaconvert.model.DashIsoWriteSegmentTimelineInRepresentation
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 deserializeDashIsoGroupSettingsDocument(deserializer: Deserializer): DashIsoGroupSettings {
val builder = DashIsoGroupSettings.Builder()
val ADDITIONALMANIFESTS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("additionalManifests"))
val AUDIOCHANNELCONFIGSCHEMEIDURI_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("audioChannelConfigSchemeIdUri"))
val BASEURL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("baseUrl"))
val DESTINATION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("destination"))
val DESTINATIONSETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("destinationSettings"))
val ENCRYPTION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("encryption"))
val FRAGMENTLENGTH_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("fragmentLength"))
val HBBTVCOMPLIANCE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("hbbtvCompliance"))
val IMAGEBASEDTRICKPLAY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("imageBasedTrickPlay"))
val IMAGEBASEDTRICKPLAYSETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("imageBasedTrickPlaySettings"))
val MINBUFFERTIME_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("minBufferTime"))
val MINFINALSEGMENTLENGTH_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Double, JsonSerialName("minFinalSegmentLength"))
val MPDMANIFESTBANDWIDTHTYPE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("mpdManifestBandwidthType"))
val MPDPROFILE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("mpdProfile"))
val PTSOFFSETHANDLINGFORBFRAMES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ptsOffsetHandlingForBFrames"))
val SEGMENTCONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("segmentControl"))
val SEGMENTLENGTH_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("segmentLength"))
val SEGMENTLENGTHCONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("segmentLengthControl"))
val VIDEOCOMPOSITIONOFFSETS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("videoCompositionOffsets"))
val WRITESEGMENTTIMELINEINREPRESENTATION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("writeSegmentTimelineInRepresentation"))
val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
field(ADDITIONALMANIFESTS_DESCRIPTOR)
field(AUDIOCHANNELCONFIGSCHEMEIDURI_DESCRIPTOR)
field(BASEURL_DESCRIPTOR)
field(DESTINATION_DESCRIPTOR)
field(DESTINATIONSETTINGS_DESCRIPTOR)
field(ENCRYPTION_DESCRIPTOR)
field(FRAGMENTLENGTH_DESCRIPTOR)
field(HBBTVCOMPLIANCE_DESCRIPTOR)
field(IMAGEBASEDTRICKPLAY_DESCRIPTOR)
field(IMAGEBASEDTRICKPLAYSETTINGS_DESCRIPTOR)
field(MINBUFFERTIME_DESCRIPTOR)
field(MINFINALSEGMENTLENGTH_DESCRIPTOR)
field(MPDMANIFESTBANDWIDTHTYPE_DESCRIPTOR)
field(MPDPROFILE_DESCRIPTOR)
field(PTSOFFSETHANDLINGFORBFRAMES_DESCRIPTOR)
field(SEGMENTCONTROL_DESCRIPTOR)
field(SEGMENTLENGTH_DESCRIPTOR)
field(SEGMENTLENGTHCONTROL_DESCRIPTOR)
field(VIDEOCOMPOSITIONOFFSETS_DESCRIPTOR)
field(WRITESEGMENTTIMELINEINREPRESENTATION_DESCRIPTOR)
}
deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
loop@while (true) {
when (findNextFieldIndex()) {
ADDITIONALMANIFESTS_DESCRIPTOR.index -> builder.additionalManifests =
deserializer.deserializeList(ADDITIONALMANIFESTS_DESCRIPTOR) {
val col0 = mutableListOf()
while (hasNextElement()) {
val el0 = if (nextHasValue()) { deserializeDashAdditionalManifestDocument(deserializer) } else { deserializeNull(); continue }
col0.add(el0)
}
col0
}
AUDIOCHANNELCONFIGSCHEMEIDURI_DESCRIPTOR.index -> builder.audioChannelConfigSchemeIdUri = deserializeString().let { DashIsoGroupAudioChannelConfigSchemeIdUri.fromValue(it) }
BASEURL_DESCRIPTOR.index -> builder.baseUrl = deserializeString()
DESTINATION_DESCRIPTOR.index -> builder.destination = deserializeString()
DESTINATIONSETTINGS_DESCRIPTOR.index -> builder.destinationSettings = deserializeDestinationSettingsDocument(deserializer)
ENCRYPTION_DESCRIPTOR.index -> builder.encryption = deserializeDashIsoEncryptionSettingsDocument(deserializer)
FRAGMENTLENGTH_DESCRIPTOR.index -> builder.fragmentLength = deserializeInt()
HBBTVCOMPLIANCE_DESCRIPTOR.index -> builder.hbbtvCompliance = deserializeString().let { DashIsoHbbtvCompliance.fromValue(it) }
IMAGEBASEDTRICKPLAY_DESCRIPTOR.index -> builder.imageBasedTrickPlay = deserializeString().let { DashIsoImageBasedTrickPlay.fromValue(it) }
IMAGEBASEDTRICKPLAYSETTINGS_DESCRIPTOR.index -> builder.imageBasedTrickPlaySettings = deserializeDashIsoImageBasedTrickPlaySettingsDocument(deserializer)
MINBUFFERTIME_DESCRIPTOR.index -> builder.minBufferTime = deserializeInt()
MINFINALSEGMENTLENGTH_DESCRIPTOR.index -> builder.minFinalSegmentLength = deserializeDouble()
MPDMANIFESTBANDWIDTHTYPE_DESCRIPTOR.index -> builder.mpdManifestBandwidthType = deserializeString().let { DashIsoMpdManifestBandwidthType.fromValue(it) }
MPDPROFILE_DESCRIPTOR.index -> builder.mpdProfile = deserializeString().let { DashIsoMpdProfile.fromValue(it) }
PTSOFFSETHANDLINGFORBFRAMES_DESCRIPTOR.index -> builder.ptsOffsetHandlingForBFrames = deserializeString().let { DashIsoPtsOffsetHandlingForBFrames.fromValue(it) }
SEGMENTCONTROL_DESCRIPTOR.index -> builder.segmentControl = deserializeString().let { DashIsoSegmentControl.fromValue(it) }
SEGMENTLENGTH_DESCRIPTOR.index -> builder.segmentLength = deserializeInt()
SEGMENTLENGTHCONTROL_DESCRIPTOR.index -> builder.segmentLengthControl = deserializeString().let { DashIsoSegmentLengthControl.fromValue(it) }
VIDEOCOMPOSITIONOFFSETS_DESCRIPTOR.index -> builder.videoCompositionOffsets = deserializeString().let { DashIsoVideoCompositionOffsets.fromValue(it) }
WRITESEGMENTTIMELINEINREPRESENTATION_DESCRIPTOR.index -> builder.writeSegmentTimelineInRepresentation = deserializeString().let { DashIsoWriteSegmentTimelineInRepresentation.fromValue(it) }
null -> break@loop
else -> skipValue()
}
}
}
return builder.build()
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy