js: Make backoff delay limits settings

This commit is contained in:
Stein Magnus Jodal 2012-11-30 02:18:08 +01:00
parent 12f60f3a52
commit fc9ab6053a
2 changed files with 11 additions and 11 deletions

View File

@ -3,12 +3,6 @@
function Mopidy(settings) {
var mopidy = this;
mopidy._webSocket = null;
mopidy._pendingRequests = {};
mopidy._backoffDelayMin = 1000;
mopidy._backoffDelayMax = 64000;
mopidy._backoffDelay = mopidy._backoffDelayMin;
mopidy._settings = settings || {};
mopidy._settings.webSocketUrl =
mopidy._settings.webSocketUrl ||
@ -16,6 +10,12 @@ function Mopidy(settings) {
if (mopidy._settings.autoConnect !== false) {
mopidy._settings.autoConnect = true;
}
mopidy._settings.backoffDelayMin = mopidy._settings.backoffDelayMin || 1000;
mopidy._settings.backoffDelayMax = mopidy._settings.backoffDelayMax || 64000;
mopidy._backoffDelay = mopidy._settings.backoffDelayMin;
mopidy._pendingRequests = {};
mopidy._webSocket = null;
bane.createEventEmitter(mopidy);
mopidy._delegateEvents();
@ -103,15 +103,15 @@ Mopidy.prototype._reconnect = function () {
}, mopidy._backoffDelay);
mopidy._backoffDelay = mopidy._backoffDelay * 2;
if (mopidy._backoffDelay > mopidy._backoffDelayMax) {
mopidy._backoffDelay = mopidy._backoffDelayMax;
if (mopidy._backoffDelay > mopidy._settings.backoffDelayMax) {
mopidy._backoffDelay = mopidy._settings.backoffDelayMax;
}
};
Mopidy.prototype._resetBackoffDelay = function () {
var mopidy = this;
mopidy._backoffDelay = mopidy._backoffDelayMin;
mopidy._backoffDelay = mopidy._settings.backoffDelayMin;
};
Mopidy.prototype._handleWebSocketError = function (error) {

View File

@ -212,7 +212,7 @@ buster.testCase("Mopidy", {
var connectStub = this.stub(this.mopidy, "_connect");
var pendingSpy = this.spy();
this.mopidy.on("reconnectionPending", pendingSpy);
this.mopidy._backoffDelay = this.mopidy._backoffDelayMax;
this.mopidy._backoffDelay = this.mopidy._settings.backoffDelayMax;
refute.called(connectStub);
@ -250,7 +250,7 @@ buster.testCase("Mopidy", {
this.mopidy._resetBackoffDelay();
assert.equals(this.mopidy._backoffDelay,
this.mopidy._backoffDelayMin);
this.mopidy._settings.backoffDelayMin);
}
},