Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrorEmptyHash = errors.New("transaction hash cannot be empty")
ErrorEmptyHash indicates empty hash
Functions ¶
This section is empty.
Types ¶
type Batch ¶
Batch groups together multiple Index operations to be performed at the same time. NOTE: Batch is NOT thread-safe and must not be modified after starting its execution.
type IndexerService ¶
type IndexerService struct { service.BaseService // contains filtered or unexported fields }
IndexerService connects event bus and transaction indexer together in order to index transactions coming from event bus.
func NewIndexerService ¶
func NewIndexerService(idr TxIndexer, eventBus *types.EventBus) *IndexerService
NewIndexerService returns a new service instance.
func (*IndexerService) OnStart ¶
func (is *IndexerService) OnStart() error
OnStart implements service.Service by subscribing for all transactions and indexing them by events.
func (*IndexerService) OnStop ¶
func (is *IndexerService) OnStop()
OnStop implements service.Service by unsubscribing from all transactions.
func (*IndexerService) Wait ¶ added in v1.5.4
func (is *IndexerService) Wait()
type TxIndexer ¶
type TxIndexer interface { // AddBatch analyzes, indexes and stores a batch of transactions. AddBatch(b *Batch) error // Index analyzes, indexes and stores a single transaction. Index(result *types.TxResult) error // Get returns the transaction specified by hash or nil if the transaction is not indexed // or stored. Get(hash []byte) (*types.TxResult, error) // Search allows you to query for transactions. Search(ctx context.Context, q *query.Query) ([]*types.TxResult, error) }
TxIndexer interface defines methods to index and search transactions.
Click to show internal directories.
Click to hide internal directories.