Documentation
¶
Overview ¶
TODO: refactor this whole module to v0 and v1
Index ¶
- Constants
- Variables
- func GetExplorerPort(nodePort string) string
- func LegGetAddressKey(address oneAddress) []byte
- type Address
- type Bitmap
- type Data
- type HTTPError
- type HeightResponse
- type InaccessibleAddressInfo
- type LegTxRecord
- type LegTxRecords
- type Service
- func (s *Service) DumpCatchupBlock(b *types.Block)
- func (s *Service) DumpNewBlock(b *types.Block)
- func (s *Service) DumpTraceResult(data *tracers.TraceBlockStorage)
- func (s *Service) GetAddresses(w http.ResponseWriter, r *http.Request)
- func (s *Service) GetCheckpointBitmap() *roaring64.Bitmap
- func (s *Service) GetCirculatingSupply(w http.ResponseWriter, r *http.Request)
- func (s *Service) GetHeight(w http.ResponseWriter, r *http.Request)
- func (s *Service) GetInaccessibleAddressInfo(w http.ResponseWriter, r *http.Request)
- func (s *Service) GetNodeSync(w http.ResponseWriter, r *http.Request)
- func (s *Service) GetNormalTxHashesByAccount(address string) ([]ethCommon.Hash, []TxType, error)
- func (s *Service) GetStakingTxHashesByAccount(address string) ([]ethCommon.Hash, []TxType, error)
- func (s *Service) GetTotalSupply(w http.ResponseWriter, r *http.Request)
- func (s *Service) GetTraceResultByHash(hash ethCommon.Hash) (json.RawMessage, error)
- func (s *Service) Init()
- func (s *Service) IsAvailable() bool
- func (s *Service) NotifyService(params map[string]interface{})
- func (s *Service) Run() *http.Server
- func (s *Service) SetMessageChan(messageChan chan *msg_pb.Message)
- func (s *Service) Start() error
- func (s *Service) Stop() error
- type StakingTransaction
- type ThreadSafeBitmap
- type Transaction
- type TxRecord
- type TxType
Constants ¶
const ( LegAddressPrefix = "ad_" CheckpointBitmap = "checkpoint_bitmap" TracePrefix = "tr_" )
const ( LegReceived = "RECEIVED" LegSent = "SENT" )
Tx types ...
Variables ¶
var ErrExplorerNotReady = errors.New("explorer db not ready")
ErrExplorerNotReady is the error when querying explorer db data when explorer db is doing migration and unavailable
Functions ¶
func GetExplorerPort ¶
GetExplorerPort returns the port serving explorer dashboard. This port is explorerPortDifference less than the node port.
Types ¶
type Address ¶
type Address struct {
ID string `json:"id"`
Balance *big.Int `json:"balance"` // Deprecated
TXs LegTxRecords `json:"txs"`
StakingTXs LegTxRecords `json:"staking_txs"`
}
Address ...
type Bitmap ¶
type Bitmap interface {
Clone() *roaring64.Bitmap
MarshalBinary() ([]byte, error)
CheckedAdd(x uint64) bool
Contains(x uint64) bool
}
func NewThreadSafeBitmap ¶
type HeightResponse ¶
type InaccessibleAddressInfo ¶
type InaccessibleAddressInfo struct {
EthAddress ethCommon.Address `json:"eth-address"`
Address string `json:"address"`
Balance numeric.Dec `json:"balance"`
Nonce uint64 `json:"nonce"`
}
InaccessibleAddressInfo ..
type LegTxRecord ¶
LegTxRecord ...
type Service ¶
Service is the struct for explorer service.
func New ¶
func New(intelchainConfig *intelchainconfig.IntelchainConfig, selfPeer *p2p.Peer, bc core.BlockChain, backend itc.NodeAPI) *Service
New returns explorer service.
func (*Service) DumpCatchupBlock ¶
DumpCatchupBlock instruct the explorer storage to dump a catch up block in explorer DB
func (*Service) DumpNewBlock ¶
DumpNewBlock instruct the explorer storage to dump block data in explorer DB
func (*Service) DumpTraceResult ¶
func (s *Service) DumpTraceResult(data *tracers.TraceBlockStorage)
DumpTraceResult instruct the explorer storage to trace data in explorer DB
func (*Service) GetAddresses ¶
func (s *Service) GetAddresses(w http.ResponseWriter, r *http.Request)
GetAddresses serves end-point /addresses, returns size of addresses from address with prefix.
func (*Service) GetCheckpointBitmap ¶
GetCheckpointBitmap get explorer checkpoint bitmap
func (*Service) GetCirculatingSupply ¶
func (s *Service) GetCirculatingSupply(w http.ResponseWriter, r *http.Request)
GetCirculatingSupply serves /circulating-supply end-point. Note that known InaccessibleAddresses have their funds removed from the supply for this endpoint.
func (*Service) GetHeight ¶
func (s *Service) GetHeight(w http.ResponseWriter, r *http.Request)
GetHeight returns heights of current and beacon chains if needed.
func (*Service) GetInaccessibleAddressInfo ¶
func (s *Service) GetInaccessibleAddressInfo(w http.ResponseWriter, r *http.Request)
GetInaccessibleAddressInfo serves /burn-addresses end-point.
func (*Service) GetNodeSync ¶
func (s *Service) GetNodeSync(w http.ResponseWriter, r *http.Request)
GetNodeSync returns status code Teapot 418 if node is not in sync
func (*Service) GetNormalTxHashesByAccount ¶
GetNormalTxHashesByAccount get the normal transaction hashes by account
func (*Service) GetStakingTxHashesByAccount ¶
GetStakingTxHashesByAccount get the staking transaction hashes by account
func (*Service) GetTotalSupply ¶
func (s *Service) GetTotalSupply(w http.ResponseWriter, r *http.Request)
GetTotalSupply serves /total-supply end-point. Note that known InaccessibleAddresses have their funds removed from the supply for this endpoint.
func (*Service) GetTraceResultByHash ¶
func (*Service) IsAvailable ¶
IsAvailable return whether the explorer db is available for now.
func (*Service) NotifyService ¶
NotifyService notify service.
func (*Service) SetMessageChan ¶
SetMessageChan sets up message channel to service.
type StakingTransaction ¶
type StakingTransaction struct {
Transaction
}
StakingTransaction ...
func GetStakingTransaction ¶
func GetStakingTransaction(tx *staking.StakingTransaction, addressBlock *types.Block) (*StakingTransaction, error)
GetStakingTransaction ...
type ThreadSafeBitmap ¶
type ThreadSafeBitmap struct {
// contains filtered or unexported fields
}
func (*ThreadSafeBitmap) CheckedAdd ¶
func (a *ThreadSafeBitmap) CheckedAdd(x uint64) bool
func (*ThreadSafeBitmap) Clone ¶
func (a *ThreadSafeBitmap) Clone() *roaring64.Bitmap
func (*ThreadSafeBitmap) Contains ¶
func (a *ThreadSafeBitmap) Contains(x uint64) bool
func (*ThreadSafeBitmap) MarshalBinary ¶
func (a *ThreadSafeBitmap) MarshalBinary() ([]byte, error)
type Transaction ¶
type Transaction struct {
ID string `json:"id"`
Timestamp string `json:"timestamp"`
From string `json:"from"`
To string `json:"to"`
Value *big.Int `json:"value"`
Bytes string `json:"bytes"`
Data string `json:"data"`
GasFee *big.Int `json:"gasFee"`
FromShard uint32 `json:"fromShard"`
ToShard uint32 `json:"toShard"`
Type string `json:"type"`
}
Transaction ...
func GetTransaction ¶
func GetTransaction(tx *types.Transaction, addressBlock *types.Block) (*Transaction, error)
GetTransaction ...