Progressively increment polling interval on queue page

This commit is contained in:
Gaël Métais
2014-12-22 19:35:02 +01:00
parent 3cd60e9a8d
commit 0e5c7e1215
+7 -2
View File
@@ -2,13 +2,18 @@ var queueCtrl = angular.module('queueCtrl', ['runsFactory']);
queueCtrl.controller('QueueCtrl', ['$scope', '$routeParams', '$location', 'Runs', function($scope, $routeParams, $location, Runs) {
$scope.runId = $routeParams.runId;
var numberOfTries = 0;
function getRunStatus () {
Runs.get({runId: $scope.runId}, function(data) {
$scope.status = data.status;
if (data.status.statusCode === 'running' || data.status.statusCode === 'awaiting') {
// Retrying in 2 seconds
setTimeout(getRunStatus, 2000);
numberOfTries ++;
// Retrying in 2 seconds (and increasing the delay a bit more each time)
setTimeout(getRunStatus, 2000 + (numberOfTries * 100));
} else if (data.status.statusCode === 'complete') {
$location.path('/result/' + $scope.runId);
} else {