
aws.sdk.kotlin.services.pinpoint.transform.PushNotificationTemplateRequestDocumentSerializer.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.pinpoint.transform
import aws.sdk.kotlin.services.pinpoint.model.PushNotificationTemplateRequest
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.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 serializePushNotificationTemplateRequestDocument(serializer: Serializer, input: PushNotificationTemplateRequest) {
val ADM_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("ADM"))
val APNS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("APNS"))
val BAIDU_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("Baidu"))
val DEFAULT_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("Default"))
val DEFAULTSUBSTITUTIONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("DefaultSubstitutions"))
val GCM_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("GCM"))
val RECOMMENDERID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("RecommenderId"))
val TEMPLATEDESCRIPTION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("TemplateDescription"))
val TAGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Map, JsonSerialName("tags"))
val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
field(ADM_DESCRIPTOR)
field(APNS_DESCRIPTOR)
field(BAIDU_DESCRIPTOR)
field(DEFAULT_DESCRIPTOR)
field(DEFAULTSUBSTITUTIONS_DESCRIPTOR)
field(GCM_DESCRIPTOR)
field(RECOMMENDERID_DESCRIPTOR)
field(TEMPLATEDESCRIPTION_DESCRIPTOR)
field(TAGS_DESCRIPTOR)
}
serializer.serializeStruct(OBJ_DESCRIPTOR) {
input.adm?.let { field(ADM_DESCRIPTOR, it, ::serializeAndroidPushNotificationTemplateDocument) }
input.apns?.let { field(APNS_DESCRIPTOR, it, ::serializeApnsPushNotificationTemplateDocument) }
input.baidu?.let { field(BAIDU_DESCRIPTOR, it, ::serializeAndroidPushNotificationTemplateDocument) }
input.default?.let { field(DEFAULT_DESCRIPTOR, it, ::serializeDefaultPushNotificationTemplateDocument) }
input.defaultSubstitutions?.let { field(DEFAULTSUBSTITUTIONS_DESCRIPTOR, it) }
input.gcm?.let { field(GCM_DESCRIPTOR, it, ::serializeAndroidPushNotificationTemplateDocument) }
input.recommenderId?.let { field(RECOMMENDERID_DESCRIPTOR, it) }
if (input.tags != null) {
mapField(TAGS_DESCRIPTOR) {
input.tags.forEach { (key, value) -> entry(key, value) }
}
}
input.templateDescription?.let { field(TEMPLATEDESCRIPTION_DESCRIPTOR, it) }
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy