Comparing version 0.0.3 to 0.1.0
@@ -10,20 +10,32 @@ var jsonquest = require('jsonquest'); | ||
module.exports = function (options) { | ||
var opts = options || {}; | ||
var host = opts.host || 'localhost'; | ||
var port = opts.port || 1729; | ||
var opts = options || { | ||
servers: [ { host: '127.0.0.1', port: 1729 } ] | ||
}; | ||
var servers = opts.servers; | ||
function request(method, url, body, callback) { | ||
var cb = callback || noop; | ||
var retries = opts.retries || 5; | ||
jsonquest({ | ||
method: method, | ||
host: host, | ||
port: port, | ||
path: url, | ||
body: body | ||
}, function (err, res, body) { | ||
function tryRequest() { | ||
var server = servers.shift(); | ||
servers.push(server); | ||
jsonquest({ | ||
method: method, | ||
host: server.host, | ||
port: server.port, | ||
path: url, | ||
body: body | ||
}, done); | ||
} | ||
function done(err, res, body) { | ||
var msg; | ||
if (err) { | ||
return cb(err); | ||
return retries-- === 0 | ||
? cb(err) | ||
: tryRequest(); | ||
} | ||
@@ -45,4 +57,6 @@ | ||
return cb(null, body); | ||
}); | ||
cb(null, body); | ||
} | ||
tryRequest(); | ||
} | ||
@@ -49,0 +63,0 @@ |
{ | ||
"name": "bender-api", | ||
"version": "0.0.3", | ||
"version": "0.1.0", | ||
"description": "API for Bender", | ||
@@ -5,0 +5,0 @@ "author": "Vigour.io <dev@vigour.io>", |
6257
127