keiro-dsl-0.6.0.0: test/conformance-dispatch-full/Generated/HospitalCapacity/Reservation_work/QueueCodec.hs
-- @generated by keiro-dsl; do not edit. Regenerated from the .keiro spec.
{- | 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.HospitalCapacity.Reservation_work.QueueCodec (reservationWorkPayloadCodec, reservationWorkJobCodec) where
import Data.List.NonEmpty (NonEmpty (..))
import Generated.HospitalCapacity.Reservation_work.Queue (ReservationWorkItem, encodeReservationWorkItem, parseReservationWorkItem)
import Keiro.Codec (Codec (..), EventType (..))
import Keiro.PGMQ.Codec (JobCodec, keiroJobCodec)
reservationWorkPayloadCodec :: Codec ReservationWorkItem
reservationWorkPayloadCodec =
Codec
{ eventTypes = EventType "ReservationWorkItem" :| []
, eventType = \_ -> EventType "ReservationWorkItem"
, schemaVersion = 1
, encode = encodeReservationWorkItem
, decode = \_ -> parseReservationWorkItem
, upcasters = []
}
reservationWorkJobCodec :: JobCodec ReservationWorkItem
reservationWorkJobCodec = keiroJobCodec reservationWorkPayloadCodec