1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00

blacklist + currency - report error via log instead of throw

This commit is contained in:
kumavis 2018-10-19 07:18:16 -04:00
parent a57d267dcb
commit 31175dcb24
2 changed files with 12 additions and 5 deletions

View File

@ -1,6 +1,7 @@
const ObservableStore = require('obs-store')
const extend = require('xtend')
const PhishingDetector = require('eth-phishing-detect/src/detector')
const log = require('loglevel')
// compute phishing lists
const PHISHING_DETECTION_CONFIG = require('eth-phishing-detect/src/config.json')
@ -87,7 +88,8 @@ class BlacklistController {
try {
response = await fetch('https://api.infura.io/v2/blacklist')
} catch (err) {
throw new Error(`BlacklistController - failed to fetch blacklist:\n${err.stack}`)
log.error(new Error(`BlacklistController - failed to fetch blacklist:\n${err.stack}`))
return
}
// parse response
let rawResponse
@ -96,7 +98,8 @@ class BlacklistController {
const rawResponse = await response.text()
phishing = JSON.parse(rawResponse)
} catch (err) {
throw new Error(`BlacklistController - failed to parse blacklist:\n${rawResponse}`)
log.error(new Error(`BlacklistController - failed to parse blacklist:\n${rawResponse}`))
return
}
// update current blacklist
this.store.updateState({ phishing })

View File

@ -1,5 +1,6 @@
const ObservableStore = require('obs-store')
const extend = require('xtend')
const log = require('loglevel')
// every ten minutes
const POLLING_INTERVAL = 600000
@ -110,7 +111,8 @@ class CurrencyController {
try {
response = await fetch(`https://api.infura.io/v1/ticker/eth${currentCurrency.toLowerCase()}`)
} catch (err) {
throw new Error(`CurrencyController - Failed to request currency from Infura:\n${err.stack}`)
log.error(new Error(`CurrencyController - Failed to request currency from Infura:\n${err.stack}`))
return
}
let rawResponse
let parsedResponse
@ -118,7 +120,8 @@ class CurrencyController {
rawResponse = await response.text()
parsedResponse = JSON.parse(rawResponse)
} catch (err) {
throw new Error(`CurrencyController - Failed to parse response "${rawResponse}"`)
log.error(new Error(`CurrencyController - Failed to parse response "${rawResponse}"`))
return
}
this.setConversionRate(Number(parsedResponse.bid))
this.setConversionDate(Number(parsedResponse.timestamp))
@ -127,7 +130,8 @@ class CurrencyController {
this.setConversionRate(0)
this.setConversionDate('N/A')
// throw error
throw new Error(`CurrencyController - Failed to query rate for currency "${currentCurrency}":\n${err.stack}`)
log.error(new Error(`CurrencyController - Failed to query rate for currency "${currentCurrency}":\n${err.stack}`))
return
}
}