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

commonMain.aws.sdk.kotlin.services.iotfleetwise.serde.NodeCountsDocumentDeserializer.kt Maven / Gradle / Ivy

The newest version!
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.iotfleetwise.serde

import aws.sdk.kotlin.services.iotfleetwise.model.NodeCounts
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 deserializeNodeCountsDocument(deserializer: Deserializer): NodeCounts {
    val builder = NodeCounts.Builder()
    val TOTALACTUATORS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalActuators"))
    val TOTALATTRIBUTES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalAttributes"))
    val TOTALBRANCHES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalBranches"))
    val TOTALNODES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalNodes"))
    val TOTALPROPERTIES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalProperties"))
    val TOTALSENSORS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalSensors"))
    val TOTALSTRUCTS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("totalStructs"))
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
        field(TOTALACTUATORS_DESCRIPTOR)
        field(TOTALATTRIBUTES_DESCRIPTOR)
        field(TOTALBRANCHES_DESCRIPTOR)
        field(TOTALNODES_DESCRIPTOR)
        field(TOTALPROPERTIES_DESCRIPTOR)
        field(TOTALSENSORS_DESCRIPTOR)
        field(TOTALSTRUCTS_DESCRIPTOR)
    }

    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
        loop@while (true) {
            when (findNextFieldIndex()) {
                TOTALACTUATORS_DESCRIPTOR.index -> builder.totalActuators = deserializeInt()
                TOTALATTRIBUTES_DESCRIPTOR.index -> builder.totalAttributes = deserializeInt()
                TOTALBRANCHES_DESCRIPTOR.index -> builder.totalBranches = deserializeInt()
                TOTALNODES_DESCRIPTOR.index -> builder.totalNodes = deserializeInt()
                TOTALPROPERTIES_DESCRIPTOR.index -> builder.totalProperties = deserializeInt()
                TOTALSENSORS_DESCRIPTOR.index -> builder.totalSensors = deserializeInt()
                TOTALSTRUCTS_DESCRIPTOR.index -> builder.totalStructs = deserializeInt()
                null -> break@loop
                else -> skipValue()
            }
        }
    }
    builder.correctErrors()
    return builder.build()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy