
commonMain.aws.sdk.kotlin.services.opensearch.serde.OutboundConnectionDocumentDeserializer.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.ConnectionMode
import aws.sdk.kotlin.services.opensearch.model.OutboundConnection
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 deserializeOutboundConnectionDocument(deserializer: Deserializer): OutboundConnection {
val builder = OutboundConnection.Builder()
val CONNECTIONALIAS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("ConnectionAlias"))
val CONNECTIONID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("ConnectionId"))
val CONNECTIONMODE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ConnectionMode"))
val CONNECTIONPROPERTIES_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("ConnectionProperties"))
val CONNECTIONSTATUS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("ConnectionStatus"))
val LOCALDOMAININFO_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("LocalDomainInfo"))
val REMOTEDOMAININFO_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("RemoteDomainInfo"))
val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
field(CONNECTIONALIAS_DESCRIPTOR)
field(CONNECTIONID_DESCRIPTOR)
field(CONNECTIONMODE_DESCRIPTOR)
field(CONNECTIONPROPERTIES_DESCRIPTOR)
field(CONNECTIONSTATUS_DESCRIPTOR)
field(LOCALDOMAININFO_DESCRIPTOR)
field(REMOTEDOMAININFO_DESCRIPTOR)
}
deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
loop@while (true) {
when (findNextFieldIndex()) {
CONNECTIONALIAS_DESCRIPTOR.index -> builder.connectionAlias = deserializeString()
CONNECTIONID_DESCRIPTOR.index -> builder.connectionId = deserializeString()
CONNECTIONMODE_DESCRIPTOR.index -> builder.connectionMode = deserializeString().let { ConnectionMode.fromValue(it) }
CONNECTIONPROPERTIES_DESCRIPTOR.index -> builder.connectionProperties = deserializeConnectionPropertiesDocument(deserializer)
CONNECTIONSTATUS_DESCRIPTOR.index -> builder.connectionStatus = deserializeOutboundConnectionStatusDocument(deserializer)
LOCALDOMAININFO_DESCRIPTOR.index -> builder.localDomainInfo = deserializeDomainInformationContainerDocument(deserializer)
REMOTEDOMAININFO_DESCRIPTOR.index -> builder.remoteDomainInfo = deserializeDomainInformationContainerDocument(deserializer)
null -> break@loop
else -> skipValue()
}
}
}
builder.correctErrors()
return builder.build()
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy