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()