|
1 | | -import { _t } from "@web/core/l10n/translation"; |
2 | | -import { browser } from "../browser/browser"; |
3 | | -import { ConnectionLostError, RPCError, rpc } from "../network/rpc"; |
| 1 | +import { RPCError } from "../network/rpc"; |
4 | 2 | import { registry } from "../registry"; |
5 | 3 | import { session } from "@web/session"; |
6 | 4 | import { user } from "@web/core/user"; |
@@ -81,54 +79,6 @@ export function rpcErrorHandler(env, error, originalError) { |
81 | 79 |
|
82 | 80 | errorHandlerRegistry.add("rpcErrorHandler", rpcErrorHandler, { sequence: 97 }); |
83 | 81 |
|
84 | | -// ----------------------------------------------------------------------------- |
85 | | -// Lost connection errors |
86 | | -// ----------------------------------------------------------------------------- |
87 | | - |
88 | | -let connectionLostNotifRemove = null; |
89 | | -/** |
90 | | - * @param {OdooEnv} env |
91 | | - * @param {UncaughError} error |
92 | | - * @param {Error} originalError |
93 | | - * @returns {boolean} |
94 | | - */ |
95 | | -export function lostConnectionHandler(env, error, originalError) { |
96 | | - if (!(error instanceof UncaughtPromiseError)) { |
97 | | - return false; |
98 | | - } |
99 | | - if (originalError instanceof ConnectionLostError) { |
100 | | - if (connectionLostNotifRemove) { |
101 | | - // notification already displayed (can occur if there were several |
102 | | - // concurrent rpcs when the connection was lost) |
103 | | - return true; |
104 | | - } |
105 | | - connectionLostNotifRemove = env.services.notification.add( |
106 | | - _t("Connection lost. Trying to reconnect..."), |
107 | | - { sticky: true } |
108 | | - ); |
109 | | - let delay = 2000; |
110 | | - browser.setTimeout(function checkConnection() { |
111 | | - rpc("/web/webclient/version_info", {}) |
112 | | - .then(function () { |
113 | | - if (connectionLostNotifRemove) { |
114 | | - connectionLostNotifRemove(); |
115 | | - connectionLostNotifRemove = null; |
116 | | - } |
117 | | - env.services.notification.add(_t("Connection restored. You are back online."), { |
118 | | - type: "info", |
119 | | - }); |
120 | | - }) |
121 | | - .catch(() => { |
122 | | - // exponential backoff, with some jitter |
123 | | - delay = delay * 1.5 + 500 * Math.random(); |
124 | | - browser.setTimeout(checkConnection, delay); |
125 | | - }); |
126 | | - }, delay); |
127 | | - return true; |
128 | | - } |
129 | | -} |
130 | | -errorHandlerRegistry.add("lostConnectionHandler", lostConnectionHandler, { sequence: 98 }); |
131 | | - |
132 | 82 | // ----------------------------------------------------------------------------- |
133 | 83 | // Default handler |
134 | 84 | // ----------------------------------------------------------------------------- |
@@ -182,5 +132,7 @@ if (user.isInternalUser === undefined) { |
182 | 132 | ); |
183 | 133 | } |
184 | 134 | } else { |
185 | | - registry.category("error_handlers").add("swallowAllVisitorErrors", swallowAllVisitorErrors, { sequence: 0 }); |
| 135 | + registry |
| 136 | + .category("error_handlers") |
| 137 | + .add("swallowAllVisitorErrors", swallowAllVisitorErrors, { sequence: 0 }); |
186 | 138 | } |
0 commit comments