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

commonMain.aws.sdk.kotlin.services.s3.serde.CsvInputDocumentSerializer.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.s3.serde

import aws.sdk.kotlin.services.s3.model.CsvInput
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.Serializer
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.serializeList
import aws.smithy.kotlin.runtime.serde.serializeMap
import aws.smithy.kotlin.runtime.serde.serializeStruct
import aws.smithy.kotlin.runtime.serde.xml.XmlNamespace
import aws.smithy.kotlin.runtime.serde.xml.XmlSerialName

internal fun serializeCsvInputDocument(serializer: Serializer, input: CsvInput) {
    val ALLOWQUOTEDRECORDDELIMITER_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Boolean, XmlSerialName("AllowQuotedRecordDelimiter"))
    val COMMENTS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, XmlSerialName("Comments"))
    val FIELDDELIMITER_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, XmlSerialName("FieldDelimiter"))
    val FILEHEADERINFO_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, XmlSerialName("FileHeaderInfo"))
    val QUOTECHARACTER_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, XmlSerialName("QuoteCharacter"))
    val QUOTEESCAPECHARACTER_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, XmlSerialName("QuoteEscapeCharacter"))
    val RECORDDELIMITER_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, XmlSerialName("RecordDelimiter"))
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
        trait(XmlSerialName("CsvInput"))
        trait(XmlNamespace("http://s3.amazonaws.com/doc/2006-03-01/"))
        field(ALLOWQUOTEDRECORDDELIMITER_DESCRIPTOR)
        field(COMMENTS_DESCRIPTOR)
        field(FIELDDELIMITER_DESCRIPTOR)
        field(FILEHEADERINFO_DESCRIPTOR)
        field(QUOTECHARACTER_DESCRIPTOR)
        field(QUOTEESCAPECHARACTER_DESCRIPTOR)
        field(RECORDDELIMITER_DESCRIPTOR)
    }

    serializer.serializeStruct(OBJ_DESCRIPTOR) {
        input.allowQuotedRecordDelimiter?.let { field(ALLOWQUOTEDRECORDDELIMITER_DESCRIPTOR, it) }
        input.comments?.let { field(COMMENTS_DESCRIPTOR, it) }
        input.fieldDelimiter?.let { field(FIELDDELIMITER_DESCRIPTOR, it) }
        input.fileHeaderInfo?.let { field(FILEHEADERINFO_DESCRIPTOR, it.value) }
        input.quoteCharacter?.let { field(QUOTECHARACTER_DESCRIPTOR, it) }
        input.quoteEscapeCharacter?.let { field(QUOTEESCAPECHARACTER_DESCRIPTOR, it) }
        input.recordDelimiter?.let { field(RECORDDELIMITER_DESCRIPTOR, it) }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy