[MM-50002] catch and log exceptions from missed message listeners

Этот коммит содержится в:
Pantelis Vratsalis
2023-03-23 13:46:56 +02:00
родитель 2287dff298
Коммит 6c9ec24fb9

Просмотреть файл

@@ -189,9 +189,16 @@ export default class WebSocketClient {
console.log('long timeout, or server restart, or sequence number is not found.'); //eslint-disable-line no-console
this.missedEventCallback?.();
this.missedMessageListeners.forEach((listener) => listener());
this.serverSequence = 0;
for (const listener of this.missedMessageListeners) {
try {
listener();
} catch (e) {
console.log(`missed message listener "${listener.name}" failed: ${e}`); // eslint-disable-line no-console
}
}
this.serverSequence = 0;
}
// If it's a fresh connection, we have to set the connectionId regardless.