Documentation ¶
Overview ¶
* Copyright 2018 The openwallet Authors * This file is part of the openwallet library. * * The openwallet library is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * The openwallet library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details.
Index ¶
- Constants
- type BlockScanner
- func (bs *BlockScanner) BatchExtractTransaction(height uint64, txs []*quorum.BlockTransaction) error
- func (bs *BlockScanner) DeleteUnscanRecord(height uint64) error
- func (bs *BlockScanner) DeleteUnscanRecordByID(id string) error
- func (bs *BlockScanner) ExtractTransaction(tx *quorum.BlockTransaction) ExtractResult
- func (bs *BlockScanner) ExtractTransactionAndReceiptData(txid string, scanTargetFunc openwallet.BlockScanTargetFuncV2) (map[string][]*openwallet.TxExtractData, ...)
- func (bs *BlockScanner) ExtractTransactionData(txid string, scanTargetFunc openwallet.BlockScanTargetFunc) (map[string][]*openwallet.TxExtractData, error)
- func (bs *BlockScanner) GetBalanceByAddress(address ...string) ([]*openwallet.Balance, error)
- func (bs *BlockScanner) GetCurrentBlockHeader() (*openwallet.BlockHeader, error)
- func (bs *BlockScanner) GetGlobalMaxBlockHeight() uint64
- func (bs *BlockScanner) GetLocalBlock(height uint64) (*quorum.EthBlock, error)
- func (bs *BlockScanner) GetLocalBlockHead() (uint64, string, error)
- func (bs *BlockScanner) GetScannedBlockHeader() (*openwallet.BlockHeader, error)
- func (bs *BlockScanner) GetUnscanRecords() ([]*openwallet.UnscanRecord, error)
- func (bs *BlockScanner) RescanFailedRecord()
- func (bs *BlockScanner) SaveLocalBlock(blockHeader *quorum.EthBlock) error
- func (bs *BlockScanner) SaveLocalBlockHead(blockHeight uint64, blockHash string) error
- func (bs *BlockScanner) SaveUnscanRecord(record *openwallet.UnscanRecord) error
- func (bs *BlockScanner) SaveUnscannedTransaction(blockHeight uint64, reason string) error
- func (bs *BlockScanner) ScanBlock(height uint64) error
- func (bs *BlockScanner) ScanBlockTask()
- func (bs *BlockScanner) SetRescanBlockHeight(height uint64) error
- func (bs *BlockScanner) SupportBlockchainDAI() bool
- func (bs *BlockScanner) UpdateTxByReceipt(tx *quorum.BlockTransaction) error
- type ExtractResult
- type SaveResult
- type WalletManager
- func (wm *WalletManager) CustomAddressDecode(address string) string
- func (wm *WalletManager) CustomAddressEncode(address string) string
- func (wm *WalletManager) FullName() string
- func (wm *WalletManager) GetBlockByNum(blockNum uint64, showTransactionSpec bool) (*quorum.EthBlock, error)
- func (wm *WalletManager) GetTransactionReceipt(transactionId string) (*quorum.TransactionReceipt, error)
- func (wm *WalletManager) LoadAssetsConfig(c config.Configer) error
Constants ¶
const ( //BLOCK_CHAIN_BUCKET = "blockchain" //区块链数据集合 //periodOfTask = 5 * time.Second //定时任务执行隔间 MAX_EXTRACTING_SIZE = 15 //并发的扫描线程数 )
const (
Symbol = "NVLX"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockScanner ¶ added in v1.2.0
type BlockScanner struct { *openwallet.BlockScannerBase CurrentBlockHeight uint64 //当前区块高度 IsScanMemPool bool //是否扫描交易池 RescanLastBlockCount uint64 //重扫上N个区块数量 // contains filtered or unexported fields }
func NewBlockScanner ¶ added in v1.2.0
func NewBlockScanner(wm *WalletManager) *BlockScanner
NewBTCBlockScanner 创建区块链扫描器
func (*BlockScanner) BatchExtractTransaction ¶ added in v1.2.0
func (bs *BlockScanner) BatchExtractTransaction(height uint64, txs []*quorum.BlockTransaction) error
BatchExtractTransaction 批量提取交易单
func (*BlockScanner) DeleteUnscanRecord ¶ added in v1.2.0
func (bs *BlockScanner) DeleteUnscanRecord(height uint64) error
DeleteUnscanRecord 删除指定高度的未扫记录
func (*BlockScanner) DeleteUnscanRecordByID ¶ added in v1.2.0
func (bs *BlockScanner) DeleteUnscanRecordByID(id string) error
DeleteUnscanRecordByID 删除指定的未扫记录
func (*BlockScanner) ExtractTransaction ¶ added in v1.2.0
func (bs *BlockScanner) ExtractTransaction(tx *quorum.BlockTransaction) ExtractResult
ExtractTransaction 提取交易单
func (*BlockScanner) ExtractTransactionAndReceiptData ¶ added in v1.2.0
func (bs *BlockScanner) ExtractTransactionAndReceiptData(txid string, scanTargetFunc openwallet.BlockScanTargetFuncV2) (map[string][]*openwallet.TxExtractData, map[string]*openwallet.SmartContractReceipt, error)
ExtractTransactionAndReceiptData 提取交易单及交易回执数据 @required
func (*BlockScanner) ExtractTransactionData ¶ added in v1.2.0
func (bs *BlockScanner) ExtractTransactionData(txid string, scanTargetFunc openwallet.BlockScanTargetFunc) (map[string][]*openwallet.TxExtractData, error)
ExtractTransactionData 扫描一笔交易
func (*BlockScanner) GetBalanceByAddress ¶ added in v1.2.0
func (bs *BlockScanner) GetBalanceByAddress(address ...string) ([]*openwallet.Balance, error)
GetBalanceByAddress 获取地址余额
func (*BlockScanner) GetCurrentBlockHeader ¶ added in v1.2.0
func (bs *BlockScanner) GetCurrentBlockHeader() (*openwallet.BlockHeader, error)
GetCurrentBlockHeader 获取当前区块高度
func (*BlockScanner) GetGlobalMaxBlockHeight ¶ added in v1.2.0
func (bs *BlockScanner) GetGlobalMaxBlockHeight() uint64
func (*BlockScanner) GetLocalBlock ¶ added in v1.2.0
func (bs *BlockScanner) GetLocalBlock(height uint64) (*quorum.EthBlock, error)
GetLocalBlock 获取本地区块数据
func (*BlockScanner) GetLocalBlockHead ¶ added in v1.2.0
func (bs *BlockScanner) GetLocalBlockHead() (uint64, string, error)
GetLocalBlockHead 获取本地记录的区块高度和hash
func (*BlockScanner) GetScannedBlockHeader ¶ added in v1.2.0
func (bs *BlockScanner) GetScannedBlockHeader() (*openwallet.BlockHeader, error)
GetScannedBlockHeader 获取当前已扫区块高度
func (*BlockScanner) GetUnscanRecords ¶ added in v1.2.0
func (bs *BlockScanner) GetUnscanRecords() ([]*openwallet.UnscanRecord, error)
func (*BlockScanner) RescanFailedRecord ¶ added in v1.2.0
func (bs *BlockScanner) RescanFailedRecord()
rescanFailedRecord 重扫失败记录
func (*BlockScanner) SaveLocalBlock ¶ added in v1.2.0
func (bs *BlockScanner) SaveLocalBlock(blockHeader *quorum.EthBlock) error
SaveLocalBlock 记录本地新区块
func (*BlockScanner) SaveLocalBlockHead ¶ added in v1.2.0
func (bs *BlockScanner) SaveLocalBlockHead(blockHeight uint64, blockHash string) error
SaveLocalBlockHead 记录区块高度和hash到本地
func (*BlockScanner) SaveUnscanRecord ¶ added in v1.2.0
func (bs *BlockScanner) SaveUnscanRecord(record *openwallet.UnscanRecord) error
SaveUnscanRecord 保存交易记录到钱包数据库
func (*BlockScanner) SaveUnscannedTransaction ¶ added in v1.2.0
func (bs *BlockScanner) SaveUnscannedTransaction(blockHeight uint64, reason string) error
func (*BlockScanner) ScanBlock ¶ added in v1.2.0
func (bs *BlockScanner) ScanBlock(height uint64) error
func (*BlockScanner) ScanBlockTask ¶ added in v1.2.0
func (bs *BlockScanner) ScanBlockTask()
func (*BlockScanner) SetRescanBlockHeight ¶ added in v1.2.0
func (bs *BlockScanner) SetRescanBlockHeight(height uint64) error
SetRescanBlockHeight 重置区块链扫描高度
func (*BlockScanner) SupportBlockchainDAI ¶ added in v1.2.0
func (bs *BlockScanner) SupportBlockchainDAI() bool
SupportBlockchainDAI 支持外部设置区块链数据访问接口 @optional
func (*BlockScanner) UpdateTxByReceipt ¶ added in v1.2.0
func (bs *BlockScanner) UpdateTxByReceipt(tx *quorum.BlockTransaction) error
UpdateTxByReceipt
type ExtractResult ¶ added in v1.2.0
type ExtractResult struct { TxID string BlockHeight uint64 Success bool // contains filtered or unexported fields }
ExtractResult 扫描完成的提取结果
type SaveResult ¶ added in v1.2.0
SaveResult 保存结果
type WalletManager ¶
type WalletManager struct { *quorum.WalletManager BackupClient *quorum_rpc.Client // 节点客户端 }
func NewWalletManager ¶
func NewWalletManager() *WalletManager
func (*WalletManager) CustomAddressDecode ¶ added in v1.0.2
func (wm *WalletManager) CustomAddressDecode(address string) string
func (*WalletManager) CustomAddressEncode ¶ added in v1.0.2
func (wm *WalletManager) CustomAddressEncode(address string) string
func (*WalletManager) GetBlockByNum ¶ added in v1.2.0
func (*WalletManager) GetTransactionReceipt ¶ added in v1.2.0
func (wm *WalletManager) GetTransactionReceipt(transactionId string) (*quorum.TransactionReceipt, error)
func (*WalletManager) LoadAssetsConfig ¶ added in v1.2.0
func (wm *WalletManager) LoadAssetsConfig(c config.Configer) error
LoadAssetsConfig 加载外部配置