marconi-core-1.2.0.0: Modular indexing for rewindable ledger
Safe HaskellSafe-Inferred
LanguageHaskell2010

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

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

Instances details
MonadIO m => Closeable m LastEventIndexer # 
Instance details

Defined in Marconi.Core.Indexer.LastEventIndexer

Methods

close :: LastEventIndexer event -> m () #

(MonadIO m, MonadError IndexerError m) => IsIndex m a LastEventIndexer # 
Instance details

Defined in Marconi.Core.Indexer.LastEventIndexer

Applicative m => IsSync m event LastEventIndexer # 
Instance details

Defined in Marconi.Core.Indexer.LastEventIndexer

Methods

lastStablePoint :: LastEventIndexer event -> m (Point event) #

lastSyncPoint :: LastEventIndexer event -> m (Point event) #

(MonadIO m, MonadError (QueryError (GetLastQuery event)) m) => Queryable m event (GetLastQuery event) LastEventIndexer # 
Instance details

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)) #

mkLastEventIndexer :: (HasGenesis (Point event), MonadIO m, MonadError IndexerError m) => LastEventConfig event -> m (LastEventIndexer event) #

data LastEventConfig event #

Constructors

LastEventConfig FilePath Bool (Point event -> ByteString) (ByteString -> Either Text (Point event)) (event -> ByteString) (ByteString -> Either Text event) Word 

data GetLastQuery a #

Datatype used to query the stored value of a LastEventIndexer

Constructors

GetLastQuery 

Instances

Instances details
(MonadIO m, MonadError (QueryError (GetLastQuery event)) m) => Queryable m event (GetLastQuery event) LastEventIndexer # 
Instance details

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) # 
Instance details

Defined in Marconi.Core.Indexer.LastEventIndexer