package bor import ( "fmt" "time" libcommon "github.com/ledgerwatch/erigon-lib/common" "github.com/ledgerwatch/erigon/common/hexutil" ) // EventRecord represents state record type EventRecord struct { ID uint64 `json:"id" yaml:"id"` Contract libcommon.Address `json:"contract" yaml:"contract"` Data hexutil.Bytes `json:"data" yaml:"data"` TxHash libcommon.Hash `json:"tx_hash" yaml:"tx_hash"` LogIndex uint64 `json:"log_index" yaml:"log_index"` ChainID string `json:"bor_chain_id" yaml:"bor_chain_id"` } type EventRecordWithTime struct { EventRecord Time time.Time `json:"record_time" yaml:"record_time"` } // String returns the string representatin of span func (e *EventRecordWithTime) String() string { return fmt.Sprintf( "id %v, contract %v, data: %v, txHash: %v, logIndex: %v, chainId: %v, time %s", e.ID, e.Contract.String(), e.Data.String(), e.TxHash.Hex(), e.LogIndex, e.ChainID, e.Time.Format(time.RFC3339), ) } func (e *EventRecordWithTime) BuildEventRecord() *EventRecord { return &EventRecord{ ID: e.ID, Contract: e.Contract, Data: e.Data, TxHash: e.TxHash, LogIndex: e.LogIndex, ChainID: e.ChainID, } }