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

commonMain.aws.sdk.kotlin.services.opensearch.serde.DomainConfigDocumentDeserializer.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.opensearch.serde

import aws.sdk.kotlin.services.opensearch.model.DomainConfig
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 deserializeDomainConfigDocument(deserializer: Deserializer): DomainConfig {
    val builder = DomainConfig.Builder()
    val ACCESSPOLICIES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("AccessPolicies"))
    val ADVANCEDOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("AdvancedOptions"))
    val ADVANCEDSECURITYOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("AdvancedSecurityOptions"))
    val AUTOTUNEOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("AutoTuneOptions"))
    val CHANGEPROGRESSDETAILS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("ChangeProgressDetails"))
    val CLUSTERCONFIG_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("ClusterConfig"))
    val COGNITOOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("CognitoOptions"))
    val DOMAINENDPOINTOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("DomainEndpointOptions"))
    val EBSOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("EBSOptions"))
    val ENCRYPTIONATRESTOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("EncryptionAtRestOptions"))
    val ENGINEVERSION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("EngineVersion"))
    val IPADDRESSTYPE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("IPAddressType"))
    val LOGPUBLISHINGOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("LogPublishingOptions"))
    val NODETONODEENCRYPTIONOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("NodeToNodeEncryptionOptions"))
    val OFFPEAKWINDOWOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("OffPeakWindowOptions"))
    val SNAPSHOTOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("SnapshotOptions"))
    val SOFTWAREUPDATEOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("SoftwareUpdateOptions"))
    val VPCOPTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("VPCOptions"))
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
        field(ACCESSPOLICIES_DESCRIPTOR)
        field(ADVANCEDOPTIONS_DESCRIPTOR)
        field(ADVANCEDSECURITYOPTIONS_DESCRIPTOR)
        field(AUTOTUNEOPTIONS_DESCRIPTOR)
        field(CHANGEPROGRESSDETAILS_DESCRIPTOR)
        field(CLUSTERCONFIG_DESCRIPTOR)
        field(COGNITOOPTIONS_DESCRIPTOR)
        field(DOMAINENDPOINTOPTIONS_DESCRIPTOR)
        field(EBSOPTIONS_DESCRIPTOR)
        field(ENCRYPTIONATRESTOPTIONS_DESCRIPTOR)
        field(ENGINEVERSION_DESCRIPTOR)
        field(IPADDRESSTYPE_DESCRIPTOR)
        field(LOGPUBLISHINGOPTIONS_DESCRIPTOR)
        field(NODETONODEENCRYPTIONOPTIONS_DESCRIPTOR)
        field(OFFPEAKWINDOWOPTIONS_DESCRIPTOR)
        field(SNAPSHOTOPTIONS_DESCRIPTOR)
        field(SOFTWAREUPDATEOPTIONS_DESCRIPTOR)
        field(VPCOPTIONS_DESCRIPTOR)
    }

    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
        loop@while (true) {
            when (findNextFieldIndex()) {
                ACCESSPOLICIES_DESCRIPTOR.index -> builder.accessPolicies = deserializeAccessPoliciesStatusDocument(deserializer)
                ADVANCEDOPTIONS_DESCRIPTOR.index -> builder.advancedOptions = deserializeAdvancedOptionsStatusDocument(deserializer)
                ADVANCEDSECURITYOPTIONS_DESCRIPTOR.index -> builder.advancedSecurityOptions = deserializeAdvancedSecurityOptionsStatusDocument(deserializer)
                AUTOTUNEOPTIONS_DESCRIPTOR.index -> builder.autoTuneOptions = deserializeAutoTuneOptionsStatusDocument(deserializer)
                CHANGEPROGRESSDETAILS_DESCRIPTOR.index -> builder.changeProgressDetails = deserializeChangeProgressDetailsDocument(deserializer)
                CLUSTERCONFIG_DESCRIPTOR.index -> builder.clusterConfig = deserializeClusterConfigStatusDocument(deserializer)
                COGNITOOPTIONS_DESCRIPTOR.index -> builder.cognitoOptions = deserializeCognitoOptionsStatusDocument(deserializer)
                DOMAINENDPOINTOPTIONS_DESCRIPTOR.index -> builder.domainEndpointOptions = deserializeDomainEndpointOptionsStatusDocument(deserializer)
                EBSOPTIONS_DESCRIPTOR.index -> builder.ebsOptions = deserializeEbsOptionsStatusDocument(deserializer)
                ENCRYPTIONATRESTOPTIONS_DESCRIPTOR.index -> builder.encryptionAtRestOptions = deserializeEncryptionAtRestOptionsStatusDocument(deserializer)
                ENGINEVERSION_DESCRIPTOR.index -> builder.engineVersion = deserializeVersionStatusDocument(deserializer)
                IPADDRESSTYPE_DESCRIPTOR.index -> builder.ipAddressType = deserializeIpAddressTypeStatusDocument(deserializer)
                LOGPUBLISHINGOPTIONS_DESCRIPTOR.index -> builder.logPublishingOptions = deserializeLogPublishingOptionsStatusDocument(deserializer)
                NODETONODEENCRYPTIONOPTIONS_DESCRIPTOR.index -> builder.nodeToNodeEncryptionOptions = deserializeNodeToNodeEncryptionOptionsStatusDocument(deserializer)
                OFFPEAKWINDOWOPTIONS_DESCRIPTOR.index -> builder.offPeakWindowOptions = deserializeOffPeakWindowOptionsStatusDocument(deserializer)
                SNAPSHOTOPTIONS_DESCRIPTOR.index -> builder.snapshotOptions = deserializeSnapshotOptionsStatusDocument(deserializer)
                SOFTWAREUPDATEOPTIONS_DESCRIPTOR.index -> builder.softwareUpdateOptions = deserializeSoftwareUpdateOptionsStatusDocument(deserializer)
                VPCOPTIONS_DESCRIPTOR.index -> builder.vpcOptions = deserializeVpcDerivedInfoStatusDocument(deserializer)
                null -> break@loop
                else -> skipValue()
            }
        }
    }
    builder.correctErrors()
    return builder.build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy