From a3cf5c731c15ece0400e58718e7ab2ff3a53a82e Mon Sep 17 00:00:00 2001 From: Alex Rudyy Date: Thu, 26 Sep 2013 09:17:20 +0000 Subject: QPID-5138: Respect user preference setting for update period git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1526424 13f79535-47bb-0310-9956-ffa450edef68 --- .../main/java/resources/js/qpid/common/updater.js | 34 +++++++++++++++++----- 1 file changed, 27 insertions(+), 7 deletions(-) (limited to 'java') diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/updater.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/updater.js index 86bbaa46ba..f31fd1aa1f 100644 --- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/updater.js +++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/updater.js @@ -18,15 +18,35 @@ * under the License. * */ -define(function () { +define(["qpid/management/UserPreferences"], function (UserPreferences) { var updateList = new Array(); - setInterval(function() { - for(var i = 0; i < updateList.length; i++) { - var obj = updateList[i]; - obj.update(); - } - }, 5000); // TODO: Should make this configurable + function invokeUpdates() + { + for(var i = 0; i < updateList.length; i++) + { + var obj = updateList[i]; + obj.update(); + } + } + + var updatePeriod = UserPreferences.updatePeriod ? UserPreferences.updatePeriod: 5; + + var timer = setInterval(invokeUpdates, updatePeriod * 1000); + + var updateIntervalListener = { + onPreferencesChange: function(preferences) + { + if (preferences.updatePeriod && preferences.updatePeriod != updatePeriod) + { + updatePeriod = preferences.updatePeriod; + clearInterval(timer); + timer = setInterval(invokeUpdates, updatePeriod * 1000); + } + } + }; + + UserPreferences.addListener(updateIntervalListener); return { add: function(obj) { -- cgit v1.2.1