Wrap cache refresh() method to call it once.

This commit is contained in:
Alexander Zobnin
2016-01-31 15:14:48 +03:00
parent 63cb31003c
commit e9d29c63ba

View File

@@ -24,11 +24,31 @@ function (angular, _, utils) {
// Check is a service initialized or not
this._initialized = undefined;
this.refreshPromise = false;
}
var p = ZabbixCachingProxy.prototype;
/**
* Wrap _refresh() method to call it once.
*/
p.refresh = function() {
var self = this;
var deferred = $q.defer();
if (!self.refreshPromise) {
self.refreshPromise = deferred.promise;
self._refresh().then(function() {
deferred.resolve();
self.refreshPromise = null;
});
} else {
return self.refreshPromise;
}
return deferred.promise;
};
p._refresh = function() {
var self = this;
var promises = [
this.zabbixAPI.getGroups(),