"github.com/vapor/crypto"
"github.com/vapor/crypto/ed25519/chainkd"
"github.com/vapor/crypto/sha3pool"
- "github.com/vapor/database"
- dbm "github.com/vapor/database/leveldb"
"github.com/vapor/errors"
"github.com/vapor/protocol"
"github.com/vapor/protocol/bc"
}
// NewManager creates a new account manager
-func NewManager(accountdb dbm.DB, chain *protocol.Chain) *Manager {
- store := database.NewAccountStore(accountdb)
+func NewManager(store AccountStorer, chain *protocol.Chain) *Manager {
return &Manager{
store: store,
chain: chain,
testDB := dbm.NewDB("testdb", "memdb", dirPath)
dispatcher := event.NewDispatcher()
store := database.NewStore(testDB)
+ accountStore := database.NewAccountStore(testDB)
txPool := protocol.NewTxPool(store, dispatcher)
config.CommonConfig = config.DefaultConfig()
chain, err := protocol.NewChain(store, txPool, dispatcher)
t.Fatal(err)
}
- return NewManager(testDB, chain)
+ return NewManager(accountStore, chain)
}
func (m *Manager) createTestAccount(t testing.TB, alias string, tags map[string]interface{}) *Account {
if !config.Wallet.Disable {
walletDB := dbm.NewDB("wallet", config.DBBackend, config.DBDir())
walletStore := database.NewWalletStore(walletDB)
- accounts = account.NewManager(walletDB, chain)
+ accountStore := database.NewAccountStore(walletDB)
+ accounts = account.NewManager(accountStore, chain)
assets = asset.NewRegistry(walletDB, chain)
wallet, err = w.NewWallet(walletStore, accounts, assets, hsm, chain, dispatcher, config.Wallet.TxIndex)
if err != nil {
}
}
- block, err := proposal.NewBlockTemplate(chain, txPool, nil, uint64(time.Now().UnixNano() / 1e6))
+ block, err := proposal.NewBlockTemplate(chain, txPool, nil, uint64(time.Now().UnixNano()/1e6))
if err != nil {
return err
}
//-------------------------Mock actual transaction----------------------------------
func MockTxsP2PKH(keyDirPath string, testDB dbm.DB, txNumber, otherAssetNum int) ([]*types.Tx, error) {
- accountManager := account.NewManager(testDB, nil)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, nil)
hsm, err := pseudohsm.New(keyDirPath)
if err != nil {
return nil, err
}
func MockTxsP2SH(keyDirPath string, testDB dbm.DB, txNumber, otherAssetNum int) ([]*types.Tx, error) {
- accountManager := account.NewManager(testDB, nil)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, nil)
hsm, err := pseudohsm.New(keyDirPath)
if err != nil {
return nil, err
}
func MockTxsMultiSign(keyDirPath string, testDB dbm.DB, txNumber, otherAssetNum int) ([]*types.Tx, error) {
- accountManager := account.NewManager(testDB, nil)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, nil)
hsm, err := pseudohsm.New(keyDirPath)
if err != nil {
return nil, err
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
"time"
"github.com/vapor/account"
+ "github.com/vapor/database"
dbm "github.com/vapor/database/leveldb"
"github.com/vapor/proposal"
"github.com/vapor/test"
if err != nil {
b.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
b.ResetTimer()
for i := 0; i < b.N; i++ {
- proposal.NewBlockTemplate(chain, txPool, accountManager, uint64(time.Now().UnixNano() / 1e6))
+ proposal.NewBlockTemplate(chain, txPool, accountManager, uint64(time.Now().UnixNano()/1e6))
}
}
}
walletDB := dbm.NewDB("wallet", "leveldb", path.Join(dirPath, "wallet_db"))
walletStore := database.NewWalletStore(walletDB)
- accountManager := account.NewManager(walletDB, chain)
+ accountStore := database.NewAccountStore(walletDB)
+ accountManager := account.NewManager(accountStore, chain)
assets := asset.NewRegistry(walletDB, chain)
dispatcher := event.NewDispatcher()
wallet, err := w.NewWallet(walletStore, accountManager, assets, hsm, chain, dispatcher, false)
t.Fatal(err)
}
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
recoveryMgr := newRecoveryManager(testStore, acctMgr)
recoveryMgr.state = newRecoveryState()
recoveryMgr.state.XPubs = []chainkd.XPub{xpub.XPub}
t.Fatal(err)
}
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
recoveryMgr := newRecoveryManager(testStore, acctMgr)
acc1 := &account.Account{ID: "testA", Alias: "test1", Signer: &signers.Signer{XPubs: []chainkd.XPub{xpub.XPub}, KeyIndex: 1, DeriveRule: signers.BIP0044}}
acc2 := &account.Account{ID: "testB", Alias: "test2"}
t.Fatal(err)
}
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
txs, err := MockTxsP2PKH(acctMgr, xpub.XPub, false)
- recAcctMgr := account.NewManager(recoveryDB, nil)
+ recActStore := database.NewAccountStore(recoveryDB)
+ recAcctMgr := account.NewManager(recActStore, nil)
recoveryMgr := newRecoveryManager(recoveryStore, recAcctMgr)
cases := []struct {
t.Fatal(err)
}
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
txs, err := MockTxsP2PKH(acctMgr, xpub.XPub, true)
if err != nil {
t.Fatal("recovery by rescan account err:", err)
t.Fatal("recovery by rescan account err:", err)
}
- recAcctMgr := account.NewManager(recoveryDB, nil)
+ recActStore := database.NewAccountStore(recoveryDB)
+ recAcctMgr := account.NewManager(recActStore, nil)
for _, acct := range allAccounts {
if err := recAcctMgr.SaveAccount(acct); err != nil {
t.Fatal("recovery by rescan account err:", err)
t.Fatal(err)
}
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
recoveryMgr := newRecoveryManager(testStore, acctMgr)
acc1 := &account.Account{ID: "testA", Alias: "test1", Signer: &signers.Signer{XPubs: []chainkd.XPub{xpub1.XPub}, KeyIndex: 1, DeriveRule: signers.BIP0044}}
acc2 := &account.Account{ID: "testB", Alias: "test2", Signer: &signers.Signer{XPubs: []chainkd.XPub{xpub2.XPub}, KeyIndex: 1, DeriveRule: signers.BIP0032}}
t.Fatal(err)
}
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
recoveryMgr := newRecoveryManager(testStore, acctMgr)
// StatusInit init recovery status manager.
recoveryMgr.state = newRecoveryState()
testStore := database.NewWalletStore(testDB)
defer os.RemoveAll("temp")
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
recoveryMgr := newRecoveryManager(testStore, acctMgr)
if !recoveryMgr.tryStartXPubsRec() {
t.Fatal("recovery manager try lock test err")
}
contractIndexResidue := uint64(5)
- acctMgr := account.NewManager(testDB, nil)
+ acctStore := database.NewAccountStore(testDB)
+ acctMgr := account.NewManager(acctStore, nil)
recoveryMgr := newRecoveryManager(testStore, acctMgr)
acct := &account.Account{ID: "testA", Alias: "test1", Signer: &signers.Signer{XPubs: []chainkd.XPub{xpub1.XPub}, KeyIndex: 1, DeriveRule: signers.BIP0044}}
testStore := database.NewWalletStore(testDB)
defer os.RemoveAll("temp")
- accountManager := account.NewManager(testDB, nil)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, nil)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
testDB.Set([]byte(k), data)
}
- w.AccountMgr = account.NewManager(testDB, nil)
+ acccountStore := database.NewAccountStore(testDB)
+ w.AccountMgr = account.NewManager(acccountStore, nil)
w.AccountMgr.AddUnconfirmedUtxo(c.unconfirmedUtxos)
gotUtxos := w.GetAccountUtxos("", c.id, c.unconfirmed, c.isSmartContract, false)
if !testutil.DeepEqual(gotUtxos, c.wantUtxos) {
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)
t.Fatal(err)
}
- accountManager := account.NewManager(testDB, chain)
+ accountStore := database.NewAccountStore(testDB)
+ accountManager := account.NewManager(accountStore, chain)
hsm, err := pseudohsm.New(dirPath)
if err != nil {
t.Fatal(err)