Documentation
¶
Index ¶
- Constants
- type AccountBalance
- type StatusInfo
- type Summary
- type TxSummary
- type Wallet
- func (w *Wallet) AttachBlock(block *types.Block) error
- func (w *Wallet) BuildAnnotatedInput(tx *types.Tx, i uint32) *query.AnnotatedInput
- func (w *Wallet) BuildAnnotatedOutput(tx *types.Tx, idx int) *query.AnnotatedOutput
- func (w *Wallet) DetachBlock(block *types.Block) error
- func (w *Wallet) GetAccountBalances(id string) ([]AccountBalance, error)
- func (w *Wallet) GetAccountUTXOs(id string) []account.UTXO
- func (w *Wallet) GetTransactionByTxID(txID string) (*query.AnnotatedTx, error)
- func (w *Wallet) GetTransactionsByAccountID(accountID string) ([]*query.AnnotatedTx, error)
- func (w *Wallet) GetTransactionsByTxID(txID string) ([]*query.AnnotatedTx, error)
- func (w *Wallet) GetTransactionsSummary(transactions []*query.AnnotatedTx) []TxSummary
- func (w *Wallet) RescanBlocks()
Constants ¶
const ( //TxPrefix is wallet database transactions prefix TxPrefix = "TXS:" //TxIndexPrefix is wallet database tx index prefix TxIndexPrefix = "TID:" )
const SINGLE = 1
SINGLE single sign
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountBalance ¶ added in v0.4.3
type AccountBalance struct {
AccountID string `json:"account_id"`
Alias string `json:"account_alias"`
AssetAlias string `json:"asset_alias"`
AssetID string `json:"asset_id"`
Amount uint64 `json:"amount"`
AssetDefinition map[string]interface{} `json:"asset_definition"`
}
AccountBalance account balance
type StatusInfo ¶
StatusInfo is base valid block info to handle orphan block rollback
type Summary ¶
type Summary struct {
Type string `json:"type"`
AssetID bc.AssetID `json:"asset_id,omitempty"`
AssetAlias string `json:"asset_alias,omitempty"`
Amount uint64 `json:"amount,omitempty"`
AccountID string `json:"account_id,omitempty"`
AccountAlias string `json:"account_alias,omitempty"`
Arbitrary chainjson.HexBytes `json:"arbitrary,omitempty"`
}
Summary is the struct of transaction's input and output summary
type TxSummary ¶
type TxSummary struct {
ID bc.Hash `json:"tx_id"`
Timestamp uint64 `json:"block_time"`
Inputs []Summary `json:"inputs"`
Outputs []Summary `json:"outputs"`
}
TxSummary is the struct of transaction summary
type Wallet ¶
type Wallet struct {
DB db.DB
AccountMgr *account.Manager
AssetReg *asset.Registry
Hsm *pseudohsm.HSM
// contains filtered or unexported fields
}
Wallet is related to storing account unspent outputs
func NewWallet ¶
func NewWallet(walletDB db.DB, account *account.Manager, asset *asset.Registry, hsm *pseudohsm.HSM, chain *protocol.Chain) (*Wallet, error)
NewWallet return a new wallet instance
func (*Wallet) AttachBlock ¶ added in v0.4.6
AttachBlock attach a new block
func (*Wallet) BuildAnnotatedInput ¶ added in v0.4.6
BuildAnnotatedInput build the annotated input.
func (*Wallet) BuildAnnotatedOutput ¶ added in v0.4.6
BuildAnnotatedOutput build the annotated output.
func (*Wallet) DetachBlock ¶ added in v0.4.6
DetachBlock detach a block and rollback state
func (*Wallet) GetAccountBalances ¶
func (w *Wallet) GetAccountBalances(id string) ([]AccountBalance, error)
GetAccountBalances return all account balances
func (*Wallet) GetAccountUTXOs ¶
GetAccountUTXOs return all account unspent outputs
func (*Wallet) GetTransactionByTxID ¶
func (w *Wallet) GetTransactionByTxID(txID string) (*query.AnnotatedTx, error)
GetTransactionByTxID get transaction by txID
func (*Wallet) GetTransactionsByAccountID ¶
func (w *Wallet) GetTransactionsByAccountID(accountID string) ([]*query.AnnotatedTx, error)
GetTransactionsByAccountID get account txs by account ID
func (*Wallet) GetTransactionsByTxID ¶
func (w *Wallet) GetTransactionsByTxID(txID string) ([]*query.AnnotatedTx, error)
GetTransactionsByTxID get account txs by account tx ID
func (*Wallet) GetTransactionsSummary ¶
func (w *Wallet) GetTransactionsSummary(transactions []*query.AnnotatedTx) []TxSummary
GetTransactionsSummary get transactions summary
func (*Wallet) RescanBlocks ¶ added in v0.5.0
func (w *Wallet) RescanBlocks()