hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
iroha::ametsuchi::Indexer Class Referenceabstract

#include "indexer.hpp"

Inheritance diagram for iroha::ametsuchi::Indexer:
Inheritance graph
Collaboration diagram for iroha::ametsuchi::Indexer:
Collaboration graph

Classes

struct  TxPosition
 Position of a transaction in the ledger. More...
 

Public Member Functions

virtual ~Indexer ()=default
 
virtual void txHashPosition (const shared_model::interface::types::HashType &hash, TxPosition position)=0
 Index tx position by its hash. More...
 
virtual void committedTxHash (const shared_model::interface::types::HashType &committed_tx_hash)=0
 Store a committed tx hash. More...
 
virtual void rejectedTxHash (const shared_model::interface::types::HashType &rejected_tx_hash)=0
 Store a rejected tx hash. More...
 
virtual void txPositionByCreator (const shared_model::interface::types::AccountIdType creator, TxPosition position)=0
 Index tx position by creator account. More...
 
virtual void accountAssetTxPosition (const shared_model::interface::types::AccountIdType &account_id, const shared_model::interface::types::AssetIdType &asset_id, TxPosition position)=0
 Index account asset tx position by involved account and asset. More...
 
virtual iroha::expected::Result< void, std::string > flush ()=0
 

Detailed Description

Stores transaction data in WSV.

Attention
The effect of any change only gets into WSV storage after
See also
Indexer::flush() is called!

Constructor & Destructor Documentation

virtual iroha::ametsuchi::Indexer::~Indexer ( )
virtualdefault

Member Function Documentation

virtual void iroha::ametsuchi::Indexer::accountAssetTxPosition ( const shared_model::interface::types::AccountIdType account_id,
const shared_model::interface::types::AssetIdType asset_id,
TxPosition  position 
)
pure virtual

Index account asset tx position by involved account and asset.

Implemented in iroha::ametsuchi::PostgresIndexer.

virtual void iroha::ametsuchi::Indexer::committedTxHash ( const shared_model::interface::types::HashType committed_tx_hash)
pure virtual

Store a committed tx hash.

Implemented in iroha::ametsuchi::PostgresIndexer.

virtual iroha::expected::Result<void, std::string> iroha::ametsuchi::Indexer::flush ( )
pure virtual

Flush the indices to storage. Makes the effects of new indices (that were created before this call) visible to other components.

Returns
Void Value on success, string Error on failure.

Implemented in iroha::ametsuchi::PostgresIndexer.

virtual void iroha::ametsuchi::Indexer::rejectedTxHash ( const shared_model::interface::types::HashType rejected_tx_hash)
pure virtual

Store a rejected tx hash.

Implemented in iroha::ametsuchi::PostgresIndexer.

virtual void iroha::ametsuchi::Indexer::txHashPosition ( const shared_model::interface::types::HashType hash,
TxPosition  position 
)
pure virtual

Index tx position by its hash.

Implemented in iroha::ametsuchi::PostgresIndexer.

virtual void iroha::ametsuchi::Indexer::txPositionByCreator ( const shared_model::interface::types::AccountIdType  creator,
TxPosition  position 
)
pure virtual

Index tx position by creator account.

Implemented in iroha::ametsuchi::PostgresIndexer.


The documentation for this class was generated from the following file: