diff options
Diffstat (limited to 'includes/external/matrix/node_modules/retry/example/dns.js')
-rw-r--r-- | includes/external/matrix/node_modules/retry/example/dns.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/includes/external/matrix/node_modules/retry/example/dns.js b/includes/external/matrix/node_modules/retry/example/dns.js new file mode 100644 index 0000000..446729b --- /dev/null +++ b/includes/external/matrix/node_modules/retry/example/dns.js @@ -0,0 +1,31 @@ +var dns = require('dns'); +var retry = require('../lib/retry'); + +function faultTolerantResolve(address, cb) { + var opts = { + retries: 2, + factor: 2, + minTimeout: 1 * 1000, + maxTimeout: 2 * 1000, + randomize: true + }; + var operation = retry.operation(opts); + + operation.attempt(function(currentAttempt) { + dns.resolve(address, function(err, addresses) { + if (operation.retry(err)) { + return; + } + + cb(operation.mainError(), operation.errors(), addresses); + }); + }); +} + +faultTolerantResolve('nodejs.org', function(err, errors, addresses) { + console.warn('err:'); + console.log(err); + + console.warn('addresses:'); + console.log(addresses); +});
\ No newline at end of file |