"github.com/vapor/blockchain/signers"
"github.com/vapor/crypto/ed25519/chainkd"
"github.com/vapor/crypto/sha3pool"
- dbm "github.com/vapor/database/leveldb"
"github.com/vapor/errors"
"github.com/vapor/protocol/bc"
"github.com/vapor/protocol/bc/types"
type recoveryManager struct {
mu sync.Mutex
- db dbm.DB
+ store Store
accountMgr *account.Manager
locked int32
}
// newRecoveryManager create recovery manger.
-func newRecoveryManager(db dbm.DB, accountMgr *account.Manager) *recoveryManager {
+func newRecoveryManager(store Store, accountMgr *account.Manager) *recoveryManager {
return &recoveryManager{
- db: db,
+ store: store,
accountMgr: accountMgr,
addresses: make(map[bc.Hash]*account.CtrlProgram),
state: newRecoveryState(),
return err
}
- m.db.Set(recoveryKey, rawStatus)
+ m.store.SetRecoveryStatus(recoveryKey, rawStatus)
return nil
}
}
func (m *recoveryManager) finished() {
- m.db.Delete(recoveryKey)
+ m.store.DeleteRecoveryStatusByRecoveryKey(recoveryKey)
m.started = false
m.addresses = make(map[bc.Hash]*account.CtrlProgram)
m.state = newRecoveryState()
m.mu.Lock()
defer m.mu.Unlock()
- rawStatus := m.db.Get(recoveryKey)
+ rawStatus := m.store.GetRecoveryStatusByRecoveryKey(recoveryKey)
if rawStatus == nil {
return nil
}