Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ethereum Classic Support #1476

Closed
wants to merge 10 commits into from
Prev Previous commit
Next Next commit
…into feature/classic
sorpaas committed May 24, 2017
commit e2d8ec3eba7ca18ccee5d7f595c48ea1aa8e7a3d
12 changes: 11 additions & 1 deletion app/scripts/controllers/network.js
Original file line number Diff line number Diff line change
@@ -5,11 +5,13 @@ const ComposedStore = require('obs-store/lib/composed')
const extend = require('xtend')
const EthQuery = require('eth-query')
const RPC_ADDRESS_LIST = require('../config.js').network
const OVERWRITE_LIST = require('../config.js').networkIdOverwrites
const DEFAULT_RPC = RPC_ADDRESS_LIST['rinkeby']

module.exports = class NetworkController extends EventEmitter {
constructor (config) {
super()
this.overwriteNetworkId = this.getNetworkIdOverwrite(config.provider.type)
this.networkStore = new ObservableStore('loading')
config.provider.rpcTarget = this.getRpcAddressForType(config.provider.type, config.provider)
this.providerStore = new ObservableStore(config.provider)
@@ -83,7 +85,11 @@ module.exports = class NetworkController extends EventEmitter {
this.ethQuery.sendAsync({ method: 'net_version' }, (err, network) => {
if (err) return this.setNetworkState('loading')
log.info('web3.getNetwork returned ' + network)
this.setNetworkState(network)
if (this.overwriteNetworkId) {
this.setNetworkState(this.overwriteNetworkId)
} else {
this.setNetworkState(network)
}
})
}

@@ -115,6 +121,10 @@ module.exports = class NetworkController extends EventEmitter {
return provider && provider.rpcTarget ? provider.rpcTarget : DEFAULT_RPC
}

getNetworkIdOverwrite (type) {
return OVERWRITE_LIST[type]
}

_logBlock (block) {
log.info(`BLOCK CHANGED: #${block.number.toString('hex')} 0x${block.hash.toString('hex')}`)
this.verifyNetwork()
50 changes: 2 additions & 48 deletions app/scripts/metamask-controller.js
Original file line number Diff line number Diff line change
@@ -627,55 +627,9 @@ module.exports = class MetamaskController extends EventEmitter {
this.networkController.setRpcTarget(rpcTarget)

return this.preferencesController.updateFrequentRpcList(rpcTarget)
.then(() => {
this.platform.reload()
this.lookupNetwork()
return Promise.resolve(rpcTarget)
})
}

setProviderType (type) {
this.configManager.setProviderType(type)
this.platform.reload()
this.lookupNetwork()
}

useEtherscanProvider () {
this.configManager.useEtherscanProvider()
this.platform.reload()
}

getNetworkState () {
return this.networkStore.getState().network
}

setNetworkState (network) {
return this.networkStore.updateState({ network })
}

isNetworkLoading () {
return this.getNetworkState() === 'loading'
}

lookupNetwork (err) {
if (err) {
this.setNetworkState('loading')
}

this.ethQuery.sendAsync({ method: 'net_version' }, (err, network) => {
if (err) {
this.setNetworkState('loading')
return
}
log.info('web3.getNetwork returned ' + network)
const overwrite = this.configManager.getNetworkIdOverwrite()
if (overwrite) {
this.setNetworkState(overwrite)
} else {
this.setNetworkState(network)
}
.then(() => {
return Promise.resolve(rpcTarget)
})
}


}
You are viewing a condensed version of this merge commit. You can view the full changes here.