diff options
author | Alex Shatov <alexs@att.com> | 2017-09-15 13:52:31 -0400 |
---|---|---|
committer | Alex Shatov <alexs@att.com> | 2017-09-15 13:52:31 -0400 |
commit | b511ff360603599c43e066722d3902a55fac3f6d (patch) | |
tree | 7caa5c8ceb51568b444f0bd4ed9158fe92e8355e /lib/repeat.js | |
parent | 3486bd1a77a8a3f198de171fda34c102406a26ea (diff) |
4.2.0 - added the policy-update handling
* API version 4.1.0 - added /policy, /swagger-ui
* new: policy update with queuing of execute-operations
* more data on info - branch+commit-datetime
* expecting consul ip to be in /etc/hosts
* added swagger-ui and added policy to *API.yaml
* common logging - more audits and metrics records
- directly in promise_request
Change-Id: I7d32f34100a16b5b7293ed5afe67f5c8c3098495
Issue-Id: DCAEGEN2-62
Signed-off-by: Alex Shatov <alexs@att.com>
Diffstat (limited to 'lib/repeat.js')
-rw-r--r-- | lib/repeat.js | 60 |
1 files changed, 30 insertions, 30 deletions
diff --git a/lib/repeat.js b/lib/repeat.js index 2ea0e14..f4d9532 100644 --- a/lib/repeat.js +++ b/lib/repeat.js @@ -1,16 +1,16 @@ /* -Copyright(c) 2017 AT&T Intellectual Property. All rights reserved. +Copyright(c) 2017 AT&T Intellectual Property. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); +Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 -Unless required by applicable law or agreed to in writing, +Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR -CONDITIONS OF ANY KIND, either express or implied. +CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ @@ -25,30 +25,30 @@ See the License for the specific language governing permissions and limitations */ exports.repeatWhile = function(action, predicate, maxTries, interval) { - return new Promise(function(resolve, reject) { - - var count = 0; - - function makeAttempt() { - action() - .then (function(res) { - if (!predicate(res)) { - // We're done - resolve(res); - } - else { - if (++count < maxTries) { - // set up next attempt - setTimeout(makeAttempt, interval); - } - else { - // we've run out of retries or it's not retryable, so reject the promise - reject({message: "maximum repetions reached: " + count }); - } - } - }); - } - - makeAttempt(); - }); + return new Promise(function(resolve, reject) { + + var count = 0; + + function makeAttempt() { + action() + .then (function(res) { + if (!predicate(res)) { + // We're done + resolve(res); + } + else { + if (++count < maxTries) { + // set up next attempt + setTimeout(makeAttempt, interval); + } + else { + // we've run out of retries or it's not retryable, so reject the promise + reject({message: "maximum repetitions reached: " + count }); + } + } + }); + } + + makeAttempt(); + }); }; |