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

commonMain.aws.sdk.kotlin.services.codecommit.serde.PullRequestEventDocumentDeserializer.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.codecommit.serde

import aws.sdk.kotlin.services.codecommit.model.PullRequestEvent
import aws.sdk.kotlin.services.codecommit.model.PullRequestEventType
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
import aws.smithy.kotlin.runtime.time.Instant

internal fun deserializePullRequestEventDocument(deserializer: Deserializer): PullRequestEvent {
    val builder = PullRequestEvent.Builder()
    val ACTORARN_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("actorArn"))
    val APPROVALRULEEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("approvalRuleEventMetadata"))
    val APPROVALRULEOVERRIDDENEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("approvalRuleOverriddenEventMetadata"))
    val APPROVALSTATECHANGEDEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("approvalStateChangedEventMetadata"))
    val EVENTDATE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Timestamp, JsonSerialName("eventDate"))
    val PULLREQUESTCREATEDEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("pullRequestCreatedEventMetadata"))
    val PULLREQUESTEVENTTYPE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("pullRequestEventType"))
    val PULLREQUESTID_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("pullRequestId"))
    val PULLREQUESTMERGEDSTATECHANGEDEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("pullRequestMergedStateChangedEventMetadata"))
    val PULLREQUESTSOURCEREFERENCEUPDATEDEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("pullRequestSourceReferenceUpdatedEventMetadata"))
    val PULLREQUESTSTATUSCHANGEDEVENTMETADATA_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("pullRequestStatusChangedEventMetadata"))
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
        field(ACTORARN_DESCRIPTOR)
        field(APPROVALRULEEVENTMETADATA_DESCRIPTOR)
        field(APPROVALRULEOVERRIDDENEVENTMETADATA_DESCRIPTOR)
        field(APPROVALSTATECHANGEDEVENTMETADATA_DESCRIPTOR)
        field(EVENTDATE_DESCRIPTOR)
        field(PULLREQUESTCREATEDEVENTMETADATA_DESCRIPTOR)
        field(PULLREQUESTEVENTTYPE_DESCRIPTOR)
        field(PULLREQUESTID_DESCRIPTOR)
        field(PULLREQUESTMERGEDSTATECHANGEDEVENTMETADATA_DESCRIPTOR)
        field(PULLREQUESTSOURCEREFERENCEUPDATEDEVENTMETADATA_DESCRIPTOR)
        field(PULLREQUESTSTATUSCHANGEDEVENTMETADATA_DESCRIPTOR)
    }

    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
        loop@while (true) {
            when (findNextFieldIndex()) {
                ACTORARN_DESCRIPTOR.index -> builder.actorArn = deserializeString()
                APPROVALRULEEVENTMETADATA_DESCRIPTOR.index -> builder.approvalRuleEventMetadata = deserializeApprovalRuleEventMetadataDocument(deserializer)
                APPROVALRULEOVERRIDDENEVENTMETADATA_DESCRIPTOR.index -> builder.approvalRuleOverriddenEventMetadata = deserializeApprovalRuleOverriddenEventMetadataDocument(deserializer)
                APPROVALSTATECHANGEDEVENTMETADATA_DESCRIPTOR.index -> builder.approvalStateChangedEventMetadata = deserializeApprovalStateChangedEventMetadataDocument(deserializer)
                EVENTDATE_DESCRIPTOR.index -> builder.eventDate = deserializeString().let { Instant.fromEpochSeconds(it) }
                PULLREQUESTCREATEDEVENTMETADATA_DESCRIPTOR.index -> builder.pullRequestCreatedEventMetadata = deserializePullRequestCreatedEventMetadataDocument(deserializer)
                PULLREQUESTEVENTTYPE_DESCRIPTOR.index -> builder.pullRequestEventType = deserializeString().let { PullRequestEventType.fromValue(it) }
                PULLREQUESTID_DESCRIPTOR.index -> builder.pullRequestId = deserializeString()
                PULLREQUESTMERGEDSTATECHANGEDEVENTMETADATA_DESCRIPTOR.index -> builder.pullRequestMergedStateChangedEventMetadata = deserializePullRequestMergedStateChangedEventMetadataDocument(deserializer)
                PULLREQUESTSOURCEREFERENCEUPDATEDEVENTMETADATA_DESCRIPTOR.index -> builder.pullRequestSourceReferenceUpdatedEventMetadata = deserializePullRequestSourceReferenceUpdatedEventMetadataDocument(deserializer)
                PULLREQUESTSTATUSCHANGEDEVENTMETADATA_DESCRIPTOR.index -> builder.pullRequestStatusChangedEventMetadata = deserializePullRequestStatusChangedEventMetadataDocument(deserializer)
                null -> break@loop
                else -> skipValue()
            }
        }
    }
    builder.correctErrors()
    return builder.build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy