Name: js-handler/node_modules/restify/node_modules/backoff/examples/readme.js
| 1: | #!/usr/bin/env node |
| 2: | |
| 3: | var backoff = require('../index.js'); |
| 4: | |
| 5: | var fibonacciBackoff = backoff.fibonacci({ |
| 6: | randomisationFactor: 0, |
| 7: | initialDelay: 10, |
| 8: | maxDelay: 300 |
| 9: | }); |
| 10: | |
| 11: | fibonacciBackoff.failAfter(10); |
| 12: | |
| 13: | fibonacciBackoff.on('backoff', function(number, delay) { |
| 14: | // Do something when backoff starts, e.g. show to the |
| 15: | // user the delay before next reconnection attempt. |
| 16: | console.log(number + ' ' + delay + 'ms'); |
| 17: | }); |
| 18: | |
| 19: | fibonacciBackoff.on('ready', function(number, delay) { |
| 20: | // Do something when backoff ends, e.g. retry a failed |
| 21: | // operation (DNS lookup, API call, etc.). |
| 22: | fibonacciBackoff.backoff(); |
| 23: | }); |
| 24: | |
| 25: | fibonacciBackoff.on('fail', function() { |
| 26: | // Do something when the maximum number of backoffs is |
| 27: | // reached, e.g. ask the user to check its connection. |
| 28: | console.log('fail'); |
| 29: | }); |
| 30: | |
| 31: | fibonacciBackoff.backoff(); |
