All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.aws.sdk.kotlin.services.medialive.transform.DvbSubDestinationSettingsDocumentDeserializer.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.DvbSubDestinationAlignment
import aws.sdk.kotlin.services.medialive.model.DvbSubDestinationBackgroundColor
import aws.sdk.kotlin.services.medialive.model.DvbSubDestinationFontColor
import aws.sdk.kotlin.services.medialive.model.DvbSubDestinationOutlineColor
import aws.sdk.kotlin.services.medialive.model.DvbSubDestinationSettings
import aws.sdk.kotlin.services.medialive.model.DvbSubDestinationShadowColor
import aws.sdk.kotlin.services.medialive.model.DvbSubDestinationTeletextGridControl
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 deserializeDvbSubDestinationSettingsDocument(deserializer: Deserializer): DvbSubDestinationSettings {
    val builder = DvbSubDestinationSettings.Builder()
    val ALIGNMENT_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("alignment"))
    val BACKGROUNDCOLOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("backgroundColor"))
    val BACKGROUNDOPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("backgroundOpacity"))
    val FONT_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("font"))
    val FONTCOLOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("fontColor"))
    val FONTOPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("fontOpacity"))
    val FONTRESOLUTION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("fontResolution"))
    val FONTSIZE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("fontSize"))
    val OUTLINECOLOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("outlineColor"))
    val OUTLINESIZE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("outlineSize"))
    val SHADOWCOLOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("shadowColor"))
    val SHADOWOPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("shadowOpacity"))
    val SHADOWXOFFSET_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("shadowXOffset"))
    val SHADOWYOFFSET_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("shadowYOffset"))
    val TELETEXTGRIDCONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("teletextGridControl"))
    val XPOSITION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("xPosition"))
    val YPOSITION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("yPosition"))
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
        field(ALIGNMENT_DESCRIPTOR)
        field(BACKGROUNDCOLOR_DESCRIPTOR)
        field(BACKGROUNDOPACITY_DESCRIPTOR)
        field(FONT_DESCRIPTOR)
        field(FONTCOLOR_DESCRIPTOR)
        field(FONTOPACITY_DESCRIPTOR)
        field(FONTRESOLUTION_DESCRIPTOR)
        field(FONTSIZE_DESCRIPTOR)
        field(OUTLINECOLOR_DESCRIPTOR)
        field(OUTLINESIZE_DESCRIPTOR)
        field(SHADOWCOLOR_DESCRIPTOR)
        field(SHADOWOPACITY_DESCRIPTOR)
        field(SHADOWXOFFSET_DESCRIPTOR)
        field(SHADOWYOFFSET_DESCRIPTOR)
        field(TELETEXTGRIDCONTROL_DESCRIPTOR)
        field(XPOSITION_DESCRIPTOR)
        field(YPOSITION_DESCRIPTOR)
    }

    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
        loop@while (true) {
            when (findNextFieldIndex()) {
                ALIGNMENT_DESCRIPTOR.index -> builder.alignment = deserializeString().let { DvbSubDestinationAlignment.fromValue(it) }
                BACKGROUNDCOLOR_DESCRIPTOR.index -> builder.backgroundColor = deserializeString().let { DvbSubDestinationBackgroundColor.fromValue(it) }
                BACKGROUNDOPACITY_DESCRIPTOR.index -> builder.backgroundOpacity = deserializeInt()
                FONT_DESCRIPTOR.index -> builder.font = deserializeInputLocationDocument(deserializer)
                FONTCOLOR_DESCRIPTOR.index -> builder.fontColor = deserializeString().let { DvbSubDestinationFontColor.fromValue(it) }
                FONTOPACITY_DESCRIPTOR.index -> builder.fontOpacity = deserializeInt()
                FONTRESOLUTION_DESCRIPTOR.index -> builder.fontResolution = deserializeInt()
                FONTSIZE_DESCRIPTOR.index -> builder.fontSize = deserializeString()
                OUTLINECOLOR_DESCRIPTOR.index -> builder.outlineColor = deserializeString().let { DvbSubDestinationOutlineColor.fromValue(it) }
                OUTLINESIZE_DESCRIPTOR.index -> builder.outlineSize = deserializeInt()
                SHADOWCOLOR_DESCRIPTOR.index -> builder.shadowColor = deserializeString().let { DvbSubDestinationShadowColor.fromValue(it) }
                SHADOWOPACITY_DESCRIPTOR.index -> builder.shadowOpacity = deserializeInt()
                SHADOWXOFFSET_DESCRIPTOR.index -> builder.shadowXOffset = deserializeInt()
                SHADOWYOFFSET_DESCRIPTOR.index -> builder.shadowYOffset = deserializeInt()
                TELETEXTGRIDCONTROL_DESCRIPTOR.index -> builder.teletextGridControl = deserializeString().let { DvbSubDestinationTeletextGridControl.fromValue(it) }
                XPOSITION_DESCRIPTOR.index -> builder.xPosition = deserializeInt()
                YPOSITION_DESCRIPTOR.index -> builder.yPosition = deserializeInt()
                null -> break@loop
                else -> skipValue()
            }
        }
    }
    return builder.build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy