packages feed

keiro-dsl-0.12.0.0: test/conformance-projection-catalog/Generated/CatalogDemo/QualificationJobs/QueueCodec.hs

-- @generated by keiro-dsl 0.12.0.0 (language keiro-dsl 5) from workqueue qualification_jobs; do not edit.
-- | Versioned job payload envelope: @{\"v\",\"t\",\"data\"}@.
--
-- Deploy workers before producers when raising its schema version. Do not
-- adopt this codec on a non-empty bare-payload queue without draining it
-- (or supplying a transitional codec), or in-flight messages will
-- dead-letter. This is telemetry-neutral:
-- docs/adr/0001-keiro-pgmq-job-processing-telemetry-contract.md owns
-- spans and acknowledgement vocabulary.
module Generated.CatalogDemo.QualificationJobs.QueueCodec (qualificationJobsPayloadCodec, qualificationJobsJobCodec) where

import Data.List.NonEmpty (NonEmpty (..))
import Keiro.Codec (Codec (..), EventType (..))
import Keiro.PGMQ.Codec (JobCodec, keiroJobCodec)
import Generated.CatalogDemo.QualificationJobs.Queue (QualificationJob, encodeQualificationJob, parseQualificationJob)

qualificationJobsPayloadCodec :: Codec QualificationJob
qualificationJobsPayloadCodec =
  Codec
    { eventTypes = EventType "QualificationJob" :| []
    , eventType = \_ -> EventType "QualificationJob"
    , schemaVersion = 1
    , encode = encodeQualificationJob
    , decode = \_ -> parseQualificationJob
    , upcasters = []
    }

qualificationJobsJobCodec :: JobCodec QualificationJob
qualificationJobsJobCodec = keiroJobCodec qualificationJobsPayloadCodec