Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Marconi.Core.Indexer.LastEventIndexer
Description
An indexer that tracks the last event received from the source.
On rollback we can either decide to remove the last event or to keep the last one we received.
Synopsis
- data LastEventIndexer event = LastEventIndexer (LastEventConfig event) (LastEventState event)
- mkLastEventIndexer :: (HasGenesis (Point event), MonadIO m, MonadError IndexerError m) => LastEventConfig event -> m (LastEventIndexer event)
- data LastEventConfig event = LastEventConfig FilePath Bool (Point event -> ByteString) (ByteString -> Either Text (Point event)) (event -> ByteString) (ByteString -> Either Text event) Word
- data GetLastQuery a = GetLastQuery
Documentation
data LastEventIndexer event #
An indexer that only track the latest value of an event On rollback, we either delete the value or keep the one provided before the rollback, depending on the provided configuration.
Constructors
LastEventIndexer (LastEventConfig event) (LastEventState event) |
Instances
mkLastEventIndexer :: (HasGenesis (Point event), MonadIO m, MonadError IndexerError m) => LastEventConfig event -> m (LastEventIndexer event) #
data LastEventConfig event #
data GetLastQuery a #
Datatype used to query the stored value of a LastEventIndexer
Constructors
GetLastQuery |
Instances
(MonadIO m, MonadError (QueryError (GetLastQuery event)) m) => Queryable m event (GetLastQuery event) LastEventIndexer # | |
Defined in Marconi.Core.Indexer.LastEventIndexer Methods query :: Point event -> GetLastQuery event -> LastEventIndexer event -> m (Result (GetLastQuery event)) # queryLatest :: GetLastQuery event -> LastEventIndexer event -> m (Result (GetLastQuery event)) # | |
type Result (GetLastQuery a) # | |
Defined in Marconi.Core.Indexer.LastEventIndexer |