aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/lib/account-tracker.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/scripts/lib/account-tracker.js')
-rw-r--r--app/scripts/lib/account-tracker.js25
1 files changed, 23 insertions, 2 deletions
diff --git a/app/scripts/lib/account-tracker.js b/app/scripts/lib/account-tracker.js
index cdc21282d..8c3dd8c71 100644
--- a/app/scripts/lib/account-tracker.js
+++ b/app/scripts/lib/account-tracker.js
@@ -38,6 +38,29 @@ class AccountTracker extends EventEmitter {
// public
//
+ syncWithAddresses (addresses) {
+ const accounts = this.store.getState().accounts
+ const locals = Object.keys(accounts)
+
+ const toAdd = []
+ addresses.forEach((upstream) => {
+ if (!locals.includes(upstream)) {
+ toAdd.push(upstream)
+ }
+ })
+
+ const toRemove = []
+ locals.forEach((local) => {
+ if (!addresses.includes(local)) {
+ toRemove.push(local)
+ }
+ })
+
+ toAdd.forEach(upstream => this.addAccount(upstream))
+ toRemove.forEach(local => this.removeAccount(local))
+ this._updateAccounts()
+ }
+
addAccount (address) {
const accounts = this.store.getState().accounts
accounts[address] = {}
@@ -94,8 +117,6 @@ class AccountTracker extends EventEmitter {
const query = this._query
async.parallel({
balance: query.getBalance.bind(query, address),
- nonce: query.getTransactionCount.bind(query, address),
- code: query.getCode.bind(query, address),
}, cb)
}