blacklist + currency - report error via log instead of throw

feature/default_network_editable
kumavis 6 years ago
parent a57d267dcb
commit 31175dcb24
  1. 7
      app/scripts/controllers/blacklist.js
  2. 10
      app/scripts/controllers/currency.js

@ -1,6 +1,7 @@
const ObservableStore = require('obs-store') const ObservableStore = require('obs-store')
const extend = require('xtend') const extend = require('xtend')
const PhishingDetector = require('eth-phishing-detect/src/detector') const PhishingDetector = require('eth-phishing-detect/src/detector')
const log = require('loglevel')
// compute phishing lists // compute phishing lists
const PHISHING_DETECTION_CONFIG = require('eth-phishing-detect/src/config.json') const PHISHING_DETECTION_CONFIG = require('eth-phishing-detect/src/config.json')
@ -87,7 +88,8 @@ class BlacklistController {
try { try {
response = await fetch('https://api.infura.io/v2/blacklist') response = await fetch('https://api.infura.io/v2/blacklist')
} catch (err) { } 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 // parse response
let rawResponse let rawResponse
@ -96,7 +98,8 @@ class BlacklistController {
const rawResponse = await response.text() const rawResponse = await response.text()
phishing = JSON.parse(rawResponse) phishing = JSON.parse(rawResponse)
} catch (err) { } 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 // update current blacklist
this.store.updateState({ phishing }) this.store.updateState({ phishing })

@ -1,5 +1,6 @@
const ObservableStore = require('obs-store') const ObservableStore = require('obs-store')
const extend = require('xtend') const extend = require('xtend')
const log = require('loglevel')
// every ten minutes // every ten minutes
const POLLING_INTERVAL = 600000 const POLLING_INTERVAL = 600000
@ -110,7 +111,8 @@ class CurrencyController {
try { try {
response = await fetch(`https://api.infura.io/v1/ticker/eth${currentCurrency.toLowerCase()}`) response = await fetch(`https://api.infura.io/v1/ticker/eth${currentCurrency.toLowerCase()}`)
} catch (err) { } 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 rawResponse
let parsedResponse let parsedResponse
@ -118,7 +120,8 @@ class CurrencyController {
rawResponse = await response.text() rawResponse = await response.text()
parsedResponse = JSON.parse(rawResponse) parsedResponse = JSON.parse(rawResponse)
} catch (err) { } 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.setConversionRate(Number(parsedResponse.bid))
this.setConversionDate(Number(parsedResponse.timestamp)) this.setConversionDate(Number(parsedResponse.timestamp))
@ -127,7 +130,8 @@ class CurrencyController {
this.setConversionRate(0) this.setConversionRate(0)
this.setConversionDate('N/A') this.setConversionDate('N/A')
// throw error // 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
} }
} }

Loading…
Cancel
Save