You've already forked matrix-js-sdk
mirror of
https://github.com/matrix-org/matrix-js-sdk.git
synced 2025-11-28 05:03:59 +03:00
Make some of DeviceList asynchronous
* DeviceList._updateStoredDeviceKeysForUser * DeviceList._processQueryResponseForUser * DeviceList._storeDeviceKeys
This commit is contained in:
@@ -462,7 +462,7 @@ class DeviceListUpdateSerialiser {
|
|||||||
let prom = Promise.resolve();
|
let prom = Promise.resolve();
|
||||||
for (const userId of downloadUsers) {
|
for (const userId of downloadUsers) {
|
||||||
prom = prom.delay(5).then(() => {
|
prom = prom.delay(5).then(() => {
|
||||||
this._processQueryResponseForUser(userId, dk[userId]);
|
return this._processQueryResponseForUser(userId, dk[userId]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -486,7 +486,7 @@ class DeviceListUpdateSerialiser {
|
|||||||
return deferred.promise;
|
return deferred.promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
_processQueryResponseForUser(userId, response) {
|
async _processQueryResponseForUser(userId, response) {
|
||||||
console.log('got keys for ' + userId + ':', response);
|
console.log('got keys for ' + userId + ':', response);
|
||||||
|
|
||||||
// map from deviceid -> deviceinfo for this user
|
// map from deviceid -> deviceinfo for this user
|
||||||
@@ -499,7 +499,7 @@ class DeviceListUpdateSerialiser {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
_updateStoredDeviceKeysForUser(
|
await _updateStoredDeviceKeysForUser(
|
||||||
this._olmDevice, userId, userStore, response || {},
|
this._olmDevice, userId, userStore, response || {},
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -516,7 +516,7 @@ class DeviceListUpdateSerialiser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function _updateStoredDeviceKeysForUser(_olmDevice, userId, userStore,
|
async function _updateStoredDeviceKeysForUser(_olmDevice, userId, userStore,
|
||||||
userResult) {
|
userResult) {
|
||||||
let updated = false;
|
let updated = false;
|
||||||
|
|
||||||
@@ -554,7 +554,7 @@ function _updateStoredDeviceKeysForUser(_olmDevice, userId, userStore,
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_storeDeviceKeys(_olmDevice, userStore, deviceResult)) {
|
if (await _storeDeviceKeys(_olmDevice, userStore, deviceResult)) {
|
||||||
updated = true;
|
updated = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -565,9 +565,9 @@ function _updateStoredDeviceKeysForUser(_olmDevice, userId, userStore,
|
|||||||
/*
|
/*
|
||||||
* Process a device in a /query response, and add it to the userStore
|
* Process a device in a /query response, and add it to the userStore
|
||||||
*
|
*
|
||||||
* returns true if a change was made, else false
|
* returns (a promise for) true if a change was made, else false
|
||||||
*/
|
*/
|
||||||
function _storeDeviceKeys(_olmDevice, userStore, deviceResult) {
|
async function _storeDeviceKeys(_olmDevice, userStore, deviceResult) {
|
||||||
if (!deviceResult.keys) {
|
if (!deviceResult.keys) {
|
||||||
// no keys?
|
// no keys?
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Reference in New Issue
Block a user