Skip to content

Commit 3f902a9

Browse files
bsolonenkoSNiukalov
authored andcommitted
fixed policy update retry count
1 parent 6fa1564 commit 3f902a9

File tree

3 files changed

+35
-16
lines changed

3 files changed

+35
-16
lines changed

app/controller/SettingsController.js

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -347,27 +347,41 @@ SDL.SettingsController = Em.Object.create(
347347
policyUpdateRetry: function(abort) {
348348
clearTimeout(SDL.SDLModel.data.policyUpdateRetry.timer);
349349
SDL.SDLModel.data.policyUpdateRetry.timer = null;
350-
if (abort !== 'ABORT' && (
351-
SDL.SDLModel.data.policyUpdateRetry.try <
352-
SDL.SDLModel.data.policyUpdateRetry.retry.length)) {
353-
SDL.SDLModel.data.policyUpdateRetry.oldTimer =
354-
SDL.SDLModel.data.policyUpdateRetry.oldTimer +
355-
SDL.SDLModel.data.policyUpdateRetry.timeout * 1000 +
356-
SDL.SDLModel.data.policyUpdateRetry.retry[SDL.SDLModel.data.policyUpdateRetry.try] *
357-
1000;
350+
351+
var sendOnSystemRequest = function() {
352+
FFW.BasicCommunication.OnSystemRequest(
353+
'PROPRIETARY',
354+
SDL.SettingsController.policyUpdateFile,
355+
SDL.SDLModel.data.policyURLs[0].url,
356+
SDL.SDLModel.data.policyURLs[0].appID
357+
);
358+
}
359+
if(!SDL.SDLModel.data.policyUpdateRetry.isRetry) {
360+
SDL.SDLModel.data.policyUpdateRetry.isRetry = true;
358361
SDL.SDLModel.data.policyUpdateRetry.timer = setTimeout(
359362
function() {
360-
FFW.BasicCommunication.OnSystemRequest(
361-
'PROPRIETARY',
362-
SDL.SettingsController.policyUpdateFile,
363-
SDL.SDLModel.data.policyURLs[0].url,
364-
SDL.SDLModel.data.policyURLs[0].appID
365-
);
366-
SDL.SettingsController.policyUpdateRetry();
363+
sendOnSystemRequest();
364+
}, 1000
365+
);
366+
return;
367+
}
368+
var length = SDL.SDLModel.data.policyUpdateRetry.retry.length;
369+
if(length == SDL.SDLModel.data.policyUpdateRetry.try) {
370+
SDL.SDLModel.data.policyUpdateRetry.isRetry = false;
371+
}
372+
if (abort !== 'ABORT' && SDL.SDLModel.data.policyUpdateRetry.isRetry) {
373+
374+
SDL.SDLModel.data.policyUpdateRetry.oldTimer =
375+
SDL.SDLModel.data.policyUpdateRetry.retry[SDL.SDLModel.data.policyUpdateRetry.try] * 1000;
376+
377+
SDL.SDLModel.data.policyUpdateRetry.timer = setTimeout(
378+
function() {
379+
sendOnSystemRequest();
367380
}, SDL.SDLModel.data.policyUpdateRetry.oldTimer
368381
);
369382
SDL.SDLModel.data.policyUpdateRetry.try++;
370383
} else {
384+
SDL.SDLModel.data.policyUpdateRetry.isRetry = false;
371385
clearTimeout(SDL.SDLModel.data.policyUpdateRetry.timer);
372386
SDL.SDLModel.data.policyUpdateRetry = {
373387
timeout: null,

app/model/sdl/Abstract/data.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,8 @@ SDL.SDLModelData = Em.Object.create(
7373
retry: [],
7474
try: null,
7575
timer: null,
76-
oldTimer: 0
76+
oldTimer: 0,
77+
isRetry: false
7778
},
7879
/**
7980
* Application's container for current processed requests on VR component

ffw/BasicCommunicationRPC.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -325,6 +325,10 @@ FFW.BasicCommunication = FFW.RPCObserver
325325
case 'UPDATE_NEEDED':
326326
{
327327
messageCode = 'StatusNeeded';
328+
if (FLAGS.ExternalPolicies === true &&
329+
SDL.SDLModel.data.policyUpdateRetry.isRetry) {
330+
SDL.SettingsController.policyUpdateRetry();
331+
}
328332
break;
329333
}
330334
}

0 commit comments

Comments
 (0)