try {
return List.of(api.getHomeCoach(handler.getId()));
} catch (NetatmoException e) {
- logger.warn("Error retrieving home-coach data '{}' : {}", handler.getId(), e.getMessage());
+ logger.warn("Error retrieving home-coach data '{}': {}", handler.getId(), e.getMessage());
}
return List.of();
}
}
@Override
- protected List<NAObject> updateReadings(WeatherApi api) {
+ protected synchronized List<NAObject> updateReadings(WeatherApi api) {
Instant now = Instant.now();
if (requestTS.plus(validity).isBefore(now)) {
- logger.debug("Requesting fresh data");
- lastResult = getFreshData(api);
- requestTS = now;
+ logger.debug("{} requesting fresh data for {}", getClass().getSimpleName(), thingUID);
+ List<NAObject> result = getFreshData(api);
+ if (!result.isEmpty()) {
+ lastResult = result;
+ requestTS = now;
+ }
}
return lastResult;
try {
return List.of(owned ? api.getOwnedStationData(handler.getId()) : api.getStationData(handler.getId()));
} catch (NetatmoException e) {
- logger.warn("Error retrieving weather data '{}' : {}", handler.getId(), e.getMessage());
+ logger.warn("Error retrieving weather data '{}': {}", handler.getId(), e.getMessage());
}
return List.of();
}