diff options
author | frankiebee <frankie.diamond@gmail.com> | 2017-09-13 00:59:59 +0800 |
---|---|---|
committer | frankiebee <frankie.diamond@gmail.com> | 2017-09-13 00:59:59 +0800 |
commit | 3ad67d1b14b5b56002cf34ab6dbb18d602705827 (patch) | |
tree | 14226bfb3d9705b9a79c428dbaa251c9a3cfc313 /app | |
parent | 62f26c5ba873280b536aa7ce31cf92733a3e707c (diff) | |
download | tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.tar tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.tar.gz tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.tar.bz2 tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.tar.lz tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.tar.xz tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.tar.zst tangerine-wallet-browser-3ad67d1b14b5b56002cf34ab6dbb18d602705827.zip |
match other controller patterns
Diffstat (limited to 'app')
-rw-r--r-- | app/scripts/controllers/transactions.js | 22 | ||||
-rw-r--r-- | app/scripts/lib/tx-state-manager.js | 21 | ||||
-rw-r--r-- | app/scripts/metamask-controller.js | 2 |
3 files changed, 22 insertions, 23 deletions
diff --git a/app/scripts/controllers/transactions.js b/app/scripts/controllers/transactions.js index 636424c64..3cb6a609e 100644 --- a/app/scripts/controllers/transactions.js +++ b/app/scripts/controllers/transactions.js @@ -40,9 +40,7 @@ module.exports = class TransactionController extends EventEmitter { this.txGasUtil = new TxGasUtil(this.provider) this.txStateManager = new TransactionStateManger({ - initState: extend({ - transactions: [], - }, opts.initState), + initState: opts.initState, txHistoryLimit: opts.txHistoryLimit, getNetwork: this.getNetwork.bind(this), }) @@ -70,15 +68,12 @@ module.exports = class TransactionController extends EventEmitter { publishTransaction: this.query.sendRawTransaction, getPendingTransactions: this.txStateManager.getPendingTransactions.bind(this.txStateManager), giveUpOnTransaction: (txId) => { - const msg = `Gave up submitting after 3500 blocks un-mined.` - this.setTxStatusFailed(txId, msg) + const err = new Error(`Gave up submitting after 3500 blocks un-mined.`) + this.setTxStatusFailed(txId, err) }, }) - this.txStateManager.subscribe(() => { - this.emit('update') - this.emit('updateBadge') - }) + this.txStateManager.store.subscribe(() => this.emit('updateBadge')) this.pendingTxTracker.on('txWarning', this.txStateManager.updateTx.bind(this.txStateManager)) this.pendingTxTracker.on('txFailed', this.txStateManager.setTxStatusFailed.bind(this.txStateManager)) @@ -94,7 +89,7 @@ module.exports = class TransactionController extends EventEmitter { this.blockTracker.on('sync', this.pendingTxTracker.queryPendingTxs.bind(this.pendingTxTracker)) // memstore is computed from a few different stores this._updateMemstore() - this.txStateManager.subscribe(() => this._updateMemstore()) + this.txStateManager.store.subscribe(() => this._updateMemstore()) this.networkStore.subscribe(() => this._updateMemstore()) this.preferencesStore.subscribe(() => this._updateMemstore()) } @@ -250,10 +245,9 @@ module.exports = class TransactionController extends EventEmitter { this.txStateManager.updateTx(txMeta) } -/* _____________________________________ -| | -| PRIVATE METHODS | -|______________________________________*/ +// +// PRIVATE METHODS +// _updateMemstore () { const unapprovedTxs = this.txStateManager.getUnapprovedTxList() diff --git a/app/scripts/lib/tx-state-manager.js b/app/scripts/lib/tx-state-manager.js index 661523f10..843592504 100644 --- a/app/scripts/lib/tx-state-manager.js +++ b/app/scripts/lib/tx-state-manager.js @@ -1,10 +1,16 @@ const extend = require('xtend') +const EventEmitter = require('events') const ObservableStore = require('obs-store') const txStateHistoryHelper = require('./tx-state-history-helper') -module.exports = class TransactionStateManger extends ObservableStore { +module.exports = class TransactionStateManger extends EventEmitter { constructor ({initState, txHistoryLimit, getNetwork}) { - super(initState) + super() + + this.store = new ObservableStore( + extend({ + transactions: [], + }, initState)) this.txHistoryLimit = txHistoryLimit this.getNetwork = getNetwork } @@ -20,7 +26,7 @@ module.exports = class TransactionStateManger extends ObservableStore { } getFullTxList () { - return this.getState().transactions + return this.store.getState().transactions } // Returns the tx list @@ -196,10 +202,9 @@ module.exports = class TransactionStateManger extends ObservableStore { this._setTxStatus(txId, 'failed') } -/* _____________________________________ -| | -| PRIVATE METHODS | -|______________________________________*/ +// +// PRIVATE METHODS +// // Should find the tx in the tx list and // update it. @@ -225,6 +230,6 @@ module.exports = class TransactionStateManger extends ObservableStore { // Saves the new/updated txList. // Function is intended only for internal use _saveTxList (transactions) { - this.updateState({ transactions }) + this.store.updateState({ transactions }) } }
\ No newline at end of file diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 7137190ac..23049c46d 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -133,7 +133,7 @@ module.exports = class MetamaskController extends EventEmitter { this.publicConfigStore = this.initPublicConfigStore() // manual disk state subscriptions - this.txController.txStateManager.subscribe((state) => { + this.txController.txStateManager.store.subscribe((state) => { this.store.updateState({ TransactionController: state }) }) this.keyringController.store.subscribe((state) => { |