cqrs-types-0.9.0: src/Data/CQRS/PersistedEvent.hs
module Data.CQRS.PersistedEvent
( PersistedEvent(..)
) where
import Control.DeepSeq (NFData(..))
import Data.CQRS.GUID (GUID)
import Data.DeriveTH (derive, makeNFData)
-- | Persisted Event.
data PersistedEvent e =
PersistedEvent { peAggregateGUID :: !GUID -- ^ GUID of the aggregate.
, peEvent :: !e -- ^ Event.
, peSequenceNumber :: !Int -- ^ Sequence number within the aggregate.
}
deriving (Show, Eq, Ord, Functor)
$(derive makeNFData ''PersistedEvent)