summaryrefslogtreecommitdiff
path: root/js/codeq/core.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/codeq/core.js')
-rw-r--r--js/codeq/core.js17
1 files changed, 16 insertions, 1 deletions
diff --git a/js/codeq/core.js b/js/codeq/core.js
index 84bbfa8..b1d4a5c 100644
--- a/js/codeq/core.js
+++ b/js/codeq/core.js
@@ -329,8 +329,23 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */
});
},
- // codeq event handling
+ // resolve a promise not sooner than after [timeout] seconds
+ // from https://github.com/kriskowal/q/commit/681f6d201842d4b99bab5451ebc57ef0c3c0d49a
+ 'throttle': function (promise, timeout) {
+ if (timeout === undefined) {
+ timeout = promise;
+ promise = undefined;
+ }
+ var deferred = Q.defer();
+ Q.when(promise, undefined, undefined, deferred.notify);
+ setTimeout(function () {
+ deferred.resolve(promise);
+ }, timeout);
+ return deferred.promise;
+ },
+
+ // codeq event handling
'fire': function (eventName, args) {
queuedEvents.push({'name': eventName, 'args': args});
fireEvents();