keiro-dsl-0.17.0.0: test/conformance-structural-nominals/Generated/StructuralNominalLeaves/TemplateWork/QueueCodec.hs
-- @generated by keiro-dsl 0.17.0.0 (language keiro-dsl 6) from workqueue template_work; 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.StructuralNominalLeaves.TemplateWork.QueueCodec (templateWorkPayloadCodec, templateWorkJobCodec) where
import Data.List.NonEmpty (NonEmpty (..))
import Keiro.Codec (Codec (..), EventType (..))
import Keiro.PGMQ.Codec (JobCodec, keiroJobCodec)
import Generated.StructuralNominalLeaves.TemplateWork.Queue (TemplateWork, encodeTemplateWork, parseTemplateWork)
templateWorkPayloadCodec :: Codec TemplateWork
templateWorkPayloadCodec =
Codec
{ eventTypes = EventType "TemplateWork" :| []
, eventType = \_ -> EventType "TemplateWork"
, schemaVersion = 1
, encode = encodeTemplateWork
, decode = \_ -> parseTemplateWork
, upcasters = []
}
templateWorkJobCodec :: JobCodec TemplateWork
templateWorkJobCodec = keiroJobCodec templateWorkPayloadCodec