better error handlig of shared data
This commit is contained in:
parent
69d14236f1
commit
d0382e0de1
|
@ -55,7 +55,9 @@ class CurrentWeather extends WeatherDisplay {
|
|||
// test for data received
|
||||
if (!observations) {
|
||||
console.error('All current weather stations exhausted');
|
||||
this.setStatus(STATUS.failed);
|
||||
if (this.enabled) this.setStatus(STATUS.failed);
|
||||
// send failed to subscribers
|
||||
this.getDataCallback(undefined);
|
||||
return;
|
||||
}
|
||||
// preload the icon
|
||||
|
|
|
@ -28,6 +28,10 @@ class HourlyGraph extends WeatherDisplay {
|
|||
if (!super.getData()) return;
|
||||
|
||||
const data = await getHourlyData();
|
||||
if (data === undefined) {
|
||||
this.setStatus(STATUS.failed);
|
||||
return;
|
||||
}
|
||||
|
||||
// get interesting data
|
||||
const temperature = data.map((d) => d.temperature);
|
||||
|
|
|
@ -37,12 +37,13 @@ class Hourly extends WeatherDisplay {
|
|||
} catch (e) {
|
||||
console.error('Get hourly forecast failed');
|
||||
console.error(e.status, e.responseJSON);
|
||||
this.setStatus(STATUS.failed);
|
||||
if (this.enabled) this.setStatus(STATUS.failed);
|
||||
// return undefined to other subscribers
|
||||
this.getDataCallback(undefined);
|
||||
return;
|
||||
}
|
||||
|
||||
this.data = await Hourly.parseForecast(forecast.properties);
|
||||
|
||||
this.getDataCallback();
|
||||
if (!superResponse) return;
|
||||
|
||||
|
|
Loading…
Reference in a new issue