1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-11-26 17:03:12 +03:00

replace another couple of deferreds

This commit is contained in:
Michael Telatynski
2019-11-25 11:18:32 +00:00
parent 5e0ba9971c
commit 3901a381cc

View File

@@ -1872,9 +1872,8 @@ MatrixClient.prototype.joinRoom = function(roomIdOrAlias, opts, callback) {
const reqOpts = {qsStringifyOptions: {arrayFormat: 'repeat'}}; const reqOpts = {qsStringifyOptions: {arrayFormat: 'repeat'}};
const defer = Promise.defer();
const self = this; const self = this;
const prom = new Promise((resolve, reject) => {
sign_promise.then(function(signed_invite_object) { sign_promise.then(function(signed_invite_object) {
const data = {}; const data = {};
if (signed_invite_object) { if (signed_invite_object) {
@@ -1894,11 +1893,12 @@ MatrixClient.prototype.joinRoom = function(roomIdOrAlias, opts, callback) {
} }
return Promise.resolve(room); return Promise.resolve(room);
}).done(function(room) { }).done(function(room) {
_resolve(callback, defer, room); _resolve(callback, resolve, room);
}, function(err) { }, function(err) {
_reject(callback, defer, err); _reject(callback, reject, err);
}); });
return defer.promise; });
return prom;
}; };
/** /**
@@ -3214,12 +3214,8 @@ MatrixClient.prototype.scrollback = function(room, limit, callback) {
// reduce the required number of events appropriately // reduce the required number of events appropriately
limit = limit - numAdded; limit = limit - numAdded;
const defer = Promise.defer();
info = {
promise: defer.promise,
errorTs: null,
};
const self = this; const self = this;
const prom = new Promise((resolve, reject) => {
// wait for a time before doing this request // wait for a time before doing this request
// (which may be 0 in order not to special case the code paths) // (which may be 0 in order not to special case the code paths)
sleep(timeToWaitMs).then(function() { sleep(timeToWaitMs).then(function() {
@@ -3241,15 +3237,22 @@ MatrixClient.prototype.scrollback = function(room, limit, callback) {
} }
self.store.storeEvents(room, matrixEvents, res.end, true); self.store.storeEvents(room, matrixEvents, res.end, true);
self._ongoingScrollbacks[room.roomId] = null; self._ongoingScrollbacks[room.roomId] = null;
_resolve(callback, defer, room); _resolve(callback, resolve, room);
}, function(err) { }, function(err) {
self._ongoingScrollbacks[room.roomId] = { self._ongoingScrollbacks[room.roomId] = {
errorTs: Date.now(), errorTs: Date.now(),
}; };
_reject(callback, defer, err); _reject(callback, reject, err);
}); });
});
info = {
promise: prom,
errorTs: null,
};
this._ongoingScrollbacks[room.roomId] = info; this._ongoingScrollbacks[room.roomId] = info;
return defer.promise; return prom;
}; };
/** /**
@@ -4862,18 +4865,18 @@ function checkTurnServers(client) {
}); });
} }
function _reject(callback, defer, err) { function _reject(callback, reject, err) {
if (callback) { if (callback) {
callback(err); callback(err);
} }
defer.reject(err); reject(err);
} }
function _resolve(callback, defer, res) { function _resolve(callback, resolve, res) {
if (callback) { if (callback) {
callback(null, res); callback(null, res);
} }
defer.resolve(res); resolve(res);
} }
function _PojoToMatrixEventMapper(client) { function _PojoToMatrixEventMapper(client) {