@gitpod/gitpod-protocol 0.1.5-wth-argo.0 → 0.1.5-yh-vmoptions-fork.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/gitpod-schema.json +206 -28
- package/lib/accounting-protocol.d.ts +162 -0
- package/lib/accounting-protocol.d.ts.map +1 -0
- package/lib/accounting-protocol.js +107 -0
- package/lib/accounting-protocol.js.map +1 -0
- package/lib/admin-protocol.d.ts +32 -4
- package/lib/admin-protocol.d.ts.map +1 -1
- package/lib/admin-protocol.js +15 -0
- package/lib/admin-protocol.js.map +1 -1
- package/lib/analytics.d.ts +44 -0
- package/lib/analytics.d.ts.map +1 -0
- package/lib/analytics.js +10 -0
- package/lib/analytics.js.map +1 -0
- package/lib/auth.d.ts.map +1 -1
- package/lib/context-url.d.ts +31 -0
- package/lib/context-url.d.ts.map +1 -0
- package/lib/context-url.js +102 -0
- package/lib/context-url.js.map +1 -0
- package/lib/context-url.spec.d.ts +14 -0
- package/lib/context-url.spec.d.ts.map +1 -0
- package/lib/context-url.spec.js +109 -0
- package/lib/context-url.spec.js.map +1 -0
- package/lib/email-protocol.d.ts +1 -2
- package/lib/email-protocol.d.ts.map +1 -1
- package/lib/email-protocol.js +4 -4
- package/lib/email-protocol.js.map +1 -1
- package/lib/encryption/container-module.d.ts.map +1 -1
- package/lib/encryption/container-module.js +5 -4
- package/lib/encryption/container-module.js.map +1 -1
- package/lib/encryption/encryption-engine.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.js +25 -26
- package/lib/encryption/encryption-engine.js.map +1 -1
- package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.spec.js +29 -37
- package/lib/encryption/encryption-engine.spec.js.map +1 -1
- package/lib/encryption/encryption-service.d.ts.map +1 -1
- package/lib/encryption/encryption-service.js +30 -44
- package/lib/encryption/encryption-service.js.map +1 -1
- package/lib/encryption/key-provider.d.ts.map +1 -1
- package/lib/encryption/key-provider.js +31 -38
- package/lib/encryption/key-provider.js.map +1 -1
- package/lib/env.d.ts +0 -6
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +7 -27
- package/lib/env.js.map +1 -1
- package/lib/gitpod-file-parser.d.ts.map +1 -1
- package/lib/gitpod-file-parser.js +26 -42
- package/lib/gitpod-file-parser.js.map +1 -1
- package/lib/gitpod-file-parser.spec.js +145 -142
- package/lib/gitpod-file-parser.spec.js.map +1 -1
- package/lib/gitpod-service.d.ts +180 -33
- package/lib/gitpod-service.d.ts.map +1 -1
- package/lib/gitpod-service.js +194 -273
- package/lib/gitpod-service.js.map +1 -1
- package/lib/headless-workspace-log.d.ts +9 -11
- package/lib/headless-workspace-log.d.ts.map +1 -1
- package/lib/headless-workspace-log.js +6 -8
- package/lib/headless-workspace-log.js.map +1 -1
- package/lib/ide-frontend-service.d.ts +5 -1
- package/lib/ide-frontend-service.d.ts.map +1 -1
- package/lib/ide-protocol.d.ts +105 -0
- package/lib/ide-protocol.d.ts.map +1 -0
- package/lib/{util/without.js → ide-protocol.js} +2 -2
- package/lib/ide-protocol.js.map +1 -0
- package/lib/index.d.ts +16 -10
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +7 -1
- package/lib/index.js.map +1 -1
- package/lib/installation-admin-protocol.d.ts +27 -0
- package/lib/installation-admin-protocol.d.ts.map +1 -0
- package/lib/installation-admin-protocol.js +30 -0
- package/lib/installation-admin-protocol.js.map +1 -0
- package/lib/license-protocol.d.ts +7 -0
- package/lib/license-protocol.d.ts.map +1 -1
- package/lib/license-protocol.js.map +1 -1
- package/lib/messaging/browser/connection.d.ts +5 -3
- package/lib/messaging/browser/connection.d.ts.map +1 -1
- package/lib/messaging/browser/connection.js +184 -34
- package/lib/messaging/browser/connection.js.map +1 -1
- package/lib/messaging/browser/window-connection.d.ts +4 -4
- package/lib/messaging/browser/window-connection.d.ts.map +1 -1
- package/lib/messaging/browser/window-connection.js +42 -59
- package/lib/messaging/browser/window-connection.js.map +1 -1
- package/lib/messaging/client-call-metrics.d.ts +35 -0
- package/lib/messaging/client-call-metrics.d.ts.map +1 -0
- package/lib/messaging/client-call-metrics.js +83 -0
- package/lib/messaging/client-call-metrics.js.map +1 -0
- package/lib/messaging/error.d.ts +6 -1
- package/lib/messaging/error.d.ts.map +1 -1
- package/lib/messaging/error.js +12 -2
- package/lib/messaging/error.js.map +1 -1
- package/lib/messaging/handler.d.ts +10 -0
- package/lib/messaging/handler.d.ts.map +1 -1
- package/lib/messaging/handler.js +1 -1
- package/lib/messaging/node/connection.d.ts +1 -17
- package/lib/messaging/node/connection.d.ts.map +1 -1
- package/lib/messaging/node/connection.js +24 -60
- package/lib/messaging/node/connection.js.map +1 -1
- package/lib/messaging/proxy-factory.d.ts +3 -1
- package/lib/messaging/proxy-factory.d.ts.map +1 -1
- package/lib/messaging/proxy-factory.js +75 -162
- package/lib/messaging/proxy-factory.js.map +1 -1
- package/lib/oss-allowlist.d.ts +14 -0
- package/lib/oss-allowlist.d.ts.map +1 -0
- package/lib/oss-allowlist.js +8 -0
- package/lib/oss-allowlist.js.map +1 -0
- package/lib/payment-protocol.d.ts +18 -0
- package/lib/payment-protocol.d.ts.map +1 -0
- package/lib/payment-protocol.js +13 -0
- package/lib/payment-protocol.js.map +1 -0
- package/lib/permission.d.ts +10 -3
- package/lib/permission.d.ts.map +1 -1
- package/lib/permission.js +41 -31
- package/lib/permission.js.map +1 -1
- package/lib/plans.d.ts +210 -0
- package/lib/plans.d.ts.map +1 -0
- package/lib/plans.js +605 -0
- package/lib/plans.js.map +1 -0
- package/lib/protocol.d.ts +196 -83
- package/lib/protocol.d.ts.map +1 -1
- package/lib/protocol.js +264 -200
- package/lib/protocol.js.map +1 -1
- package/lib/snapshot-url.d.ts +14 -0
- package/lib/snapshot-url.d.ts.map +1 -0
- package/lib/snapshot-url.js +26 -0
- package/lib/snapshot-url.js.map +1 -0
- package/{src/util/without.ts → lib/snapshot-url.spec.d.ts} +2 -3
- package/lib/snapshot-url.spec.d.ts.map +1 -0
- package/lib/snapshot-url.spec.js +41 -0
- package/lib/snapshot-url.spec.js.map +1 -0
- package/lib/team-subscription-protocol.d.ts +91 -0
- package/lib/team-subscription-protocol.d.ts.map +1 -0
- package/lib/team-subscription-protocol.js +74 -0
- package/lib/team-subscription-protocol.js.map +1 -0
- package/lib/teams-projects-protocol.d.ts +118 -0
- package/lib/teams-projects-protocol.d.ts.map +1 -0
- package/lib/teams-projects-protocol.js +30 -0
- package/lib/teams-projects-protocol.js.map +1 -0
- package/lib/typings/globals.d.ts +2 -2
- package/lib/typings/globals.d.ts.map +1 -1
- package/lib/util/analytics.d.ts +8 -0
- package/lib/util/analytics.d.ts.map +1 -0
- package/lib/util/analytics.js +88 -0
- package/lib/util/analytics.js.map +1 -0
- package/lib/util/async-iterator.d.ts.map +1 -1
- package/lib/util/async-iterator.js +57 -135
- package/lib/util/async-iterator.js.map +1 -1
- package/lib/util/cancelable.js +17 -59
- package/lib/util/cancelable.js.map +1 -1
- package/lib/util/date-time.js +11 -11
- package/lib/util/date-time.js.map +1 -1
- package/lib/util/deferred.js +10 -12
- package/lib/util/deferred.js.map +1 -1
- package/lib/util/disposable.d.ts.map +1 -1
- package/lib/util/disposable.js +27 -40
- package/lib/util/disposable.js.map +1 -1
- package/lib/util/event.d.ts.map +1 -1
- package/lib/util/event.js +63 -77
- package/lib/util/event.js.map +1 -1
- package/lib/util/garbage-collected-cache.d.ts +1 -0
- package/lib/util/garbage-collected-cache.d.ts.map +1 -1
- package/lib/util/garbage-collected-cache.js +27 -47
- package/lib/util/garbage-collected-cache.js.map +1 -1
- package/lib/util/generate-workspace-id.d.ts +6 -1
- package/lib/util/generate-workspace-id.d.ts.map +1 -1
- package/lib/util/generate-workspace-id.js +469 -502
- package/lib/util/generate-workspace-id.js.map +1 -1
- package/lib/util/generate-workspace-id.spec.js +68 -78
- package/lib/util/generate-workspace-id.spec.js.map +1 -1
- package/lib/util/gitpod-cookie.d.ts +20 -0
- package/lib/util/gitpod-cookie.d.ts.map +1 -0
- package/lib/util/gitpod-cookie.js +41 -0
- package/lib/util/gitpod-cookie.js.map +1 -0
- package/lib/util/gitpod-host-url.d.ts +1 -2
- package/lib/util/gitpod-host-url.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.js +108 -109
- package/lib/util/gitpod-host-url.js.map +1 -1
- package/lib/util/gitpod-host-url.spec.d.ts +7 -1
- package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.spec.js +113 -31
- package/lib/util/gitpod-host-url.spec.js.map +1 -1
- package/lib/util/grpc.d.ts +15 -0
- package/lib/util/grpc.d.ts.map +1 -0
- package/lib/util/grpc.js +18 -0
- package/lib/util/grpc.js.map +1 -0
- package/lib/util/jaeger-client-types.d.ts +68 -0
- package/lib/util/jaeger-client-types.d.ts.map +1 -0
- package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
- package/lib/util/jaeger-client-types.js.map +1 -0
- package/lib/util/logging.d.ts +49 -33
- package/lib/util/logging.d.ts.map +1 -1
- package/lib/util/logging.js +125 -129
- package/lib/util/logging.js.map +1 -1
- package/lib/util/make-link.js +5 -5
- package/lib/util/make-link.js.map +1 -1
- package/lib/util/parse-workspace-id.d.ts +10 -0
- package/lib/util/parse-workspace-id.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.js +31 -7
- package/lib/util/parse-workspace-id.js.map +1 -1
- package/lib/util/parse-workspace-id.spec.d.ts +4 -0
- package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.spec.js +123 -84
- package/lib/util/parse-workspace-id.spec.js.map +1 -1
- package/lib/util/queue.js +16 -55
- package/lib/util/queue.js.map +1 -1
- package/lib/util/queue.spec.js +147 -288
- package/lib/util/queue.spec.js.map +1 -1
- package/lib/util/repeat.d.ts +15 -0
- package/lib/util/repeat.d.ts.map +1 -0
- package/lib/util/repeat.js +55 -0
- package/lib/util/repeat.js.map +1 -0
- package/lib/util/semaphore.d.ts.map +1 -1
- package/lib/util/semaphore.js +15 -46
- package/lib/util/semaphore.js.map +1 -1
- package/lib/util/skip-if.d.ts.map +1 -1
- package/lib/util/skip-if.js +6 -6
- package/lib/util/skip-if.js.map +1 -1
- package/lib/util/timeutil.d.ts +1 -0
- package/lib/util/timeutil.d.ts.map +1 -1
- package/lib/util/timeutil.js +35 -17
- package/lib/util/timeutil.js.map +1 -1
- package/lib/util/timeutil.spec.d.ts.map +1 -1
- package/lib/util/timeutil.spec.js +21 -24
- package/lib/util/timeutil.spec.js.map +1 -1
- package/lib/util/tracing.d.ts +52 -6
- package/lib/util/tracing.d.ts.map +1 -1
- package/lib/util/tracing.js +197 -64
- package/lib/util/tracing.js.map +1 -1
- package/lib/util/tracing.spec.d.ts +7 -0
- package/lib/util/tracing.spec.d.ts.map +1 -0
- package/lib/util/tracing.spec.js +121 -0
- package/lib/util/tracing.spec.js.map +1 -0
- package/lib/util/workspace-port-authentication.d.ts +7 -7
- package/lib/util/workspace-port-authentication.d.ts.map +1 -1
- package/lib/util/workspace-port-authentication.js +10 -12
- package/lib/util/workspace-port-authentication.js.map +1 -1
- package/lib/workspace-cluster.d.ts +76 -0
- package/lib/workspace-cluster.d.ts.map +1 -0
- package/lib/workspace-cluster.js +31 -0
- package/lib/workspace-cluster.js.map +1 -0
- package/lib/workspace-instance.d.ts +45 -5
- package/lib/workspace-instance.d.ts.map +1 -1
- package/lib/wsready.d.ts +1 -1
- package/lib/wsready.d.ts.map +1 -1
- package/lib/wsready.js +2 -2
- package/package.json +32 -18
- package/pkg-yarn.lock +18 -10
- package/provenance-bundle.jsonl +2 -0
- package/src/accounting-protocol.ts +241 -0
- package/src/admin-protocol.ts +70 -19
- package/src/analytics.ts +52 -0
- package/src/auth.ts +2 -2
- package/src/context-url.spec.ts +67 -0
- package/src/context-url.ts +109 -0
- package/src/email-protocol.ts +5 -7
- package/src/encryption/container-module.ts +2 -3
- package/src/encryption/encryption-engine.spec.ts +9 -8
- package/src/encryption/encryption-engine.ts +14 -14
- package/src/encryption/encryption-service.ts +4 -5
- package/src/encryption/key-provider.ts +16 -19
- package/src/env.ts +0 -22
- package/src/gitpod-file-parser.spec.ts +55 -61
- package/src/gitpod-file-parser.ts +16 -17
- package/src/gitpod-service.ts +348 -110
- package/src/headless-workspace-log.ts +12 -14
- package/src/ide-frontend-service.ts +6 -2
- package/src/ide-protocol.ts +119 -0
- package/src/index.ts +16 -10
- package/src/installation-admin-protocol.ts +42 -0
- package/src/license-protocol.ts +12 -6
- package/src/messaging/browser/connection.ts +197 -18
- package/src/messaging/browser/window-connection.ts +39 -29
- package/src/messaging/client-call-metrics.ts +96 -0
- package/src/messaging/error.ts +18 -5
- package/src/messaging/handler.ts +13 -1
- package/src/messaging/node/connection.ts +23 -70
- package/src/messaging/proxy-factory.ts +35 -34
- package/src/oss-allowlist.ts +15 -0
- package/src/payment-protocol.ts +20 -0
- package/src/permission.ts +42 -33
- package/src/plans.ts +679 -0
- package/src/protocol.ts +493 -275
- package/src/snapshot-url.spec.ts +27 -0
- package/src/snapshot-url.ts +27 -0
- package/src/team-subscription-protocol.ts +147 -0
- package/src/teams-projects-protocol.ts +153 -0
- package/src/typings/globals.ts +4 -4
- package/src/util/analytics.ts +109 -0
- package/src/util/async-iterator.ts +4 -5
- package/src/util/cancelable.ts +3 -3
- package/src/util/date-time.ts +8 -8
- package/src/util/deferred.ts +6 -6
- package/src/util/disposable.ts +3 -6
- package/src/util/event.ts +9 -11
- package/src/util/garbage-collected-cache.ts +11 -8
- package/src/util/generate-workspace-id.spec.ts +37 -10
- package/src/util/generate-workspace-id.ts +464 -438
- package/src/util/gitpod-cookie.ts +38 -0
- package/src/util/gitpod-host-url.spec.ts +59 -8
- package/src/util/gitpod-host-url.ts +52 -40
- package/src/util/grpc.ts +15 -0
- package/src/util/jaeger-client-types.ts +102 -0
- package/src/util/logging.ts +145 -72
- package/src/util/make-link.ts +6 -7
- package/src/util/parse-workspace-id.spec.ts +37 -8
- package/src/util/parse-workspace-id.ts +32 -7
- package/src/util/queue.spec.ts +28 -26
- package/src/util/repeat.ts +45 -0
- package/src/util/semaphore.ts +6 -8
- package/src/util/skip-if.ts +10 -7
- package/src/util/timeutil.spec.ts +14 -15
- package/src/util/timeutil.ts +25 -15
- package/src/util/tracing.spec.ts +88 -0
- package/src/util/tracing.ts +200 -31
- package/src/util/workspace-port-authentication.ts +10 -13
- package/src/workspace-cluster.ts +107 -0
- package/src/workspace-instance.ts +98 -31
- package/src/wsready.ts +3 -3
- package/data/builtin-theia-plugins.json +0 -372
- package/lib/messaging/connection-error-handler.d.ts +0 -27
- package/lib/messaging/connection-error-handler.d.ts.map +0 -1
- package/lib/messaging/connection-error-handler.js +0 -46
- package/lib/messaging/connection-error-handler.js.map +0 -1
- package/lib/theia-plugins.d.ts +0 -11
- package/lib/theia-plugins.d.ts.map +0 -1
- package/lib/theia-plugins.js.map +0 -1
- package/lib/util/context-url.d.ts +0 -13
- package/lib/util/context-url.d.ts.map +0 -1
- package/lib/util/context-url.js +0 -26
- package/lib/util/context-url.js.map +0 -1
- package/lib/util/context-url.spec.d.ts +0 -10
- package/lib/util/context-url.spec.d.ts.map +0 -1
- package/lib/util/context-url.spec.js +0 -52
- package/lib/util/context-url.spec.js.map +0 -1
- package/lib/util/repeater.d.ts +0 -22
- package/lib/util/repeater.d.ts.map +0 -1
- package/lib/util/repeater.js +0 -118
- package/lib/util/repeater.js.map +0 -1
- package/lib/util/safe-promise.d.ts +0 -11
- package/lib/util/safe-promise.d.ts.map +0 -1
- package/lib/util/safe-promise.js +0 -34
- package/lib/util/safe-promise.js.map +0 -1
- package/lib/util/without.d.ts +0 -7
- package/lib/util/without.d.ts.map +0 -1
- package/lib/util/without.js.map +0 -1
- package/src/messaging/connection-error-handler.ts +0 -62
- package/src/theia-plugins.ts +0 -11
- package/src/util/context-url.spec.ts +0 -25
- package/src/util/context-url.ts +0 -23
- package/src/util/jaeger-client.d.ts +0 -105
- package/src/util/repeater.ts +0 -49
- package/src/util/safe-promise.ts +0 -26
|
@@ -7,12 +7,13 @@
|
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.WebSocketConnectionProvider = void 0;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
const vscode_ws_jsonrpc_1 = require("vscode-ws-jsonrpc");
|
|
11
|
+
const vscode_jsonrpc_1 = require("vscode-jsonrpc");
|
|
12
|
+
const messageWriter_1 = require("vscode-jsonrpc/lib/messageWriter");
|
|
13
|
+
const messageReader_1 = require("vscode-jsonrpc/lib/messageReader");
|
|
14
|
+
const proxy_factory_1 = require("../proxy-factory");
|
|
15
|
+
const reconnecting_websocket_1 = require("reconnecting-websocket");
|
|
16
|
+
class WebSocketConnectionProvider {
|
|
16
17
|
/**
|
|
17
18
|
* Create a proxy object to remote interface of T type
|
|
18
19
|
* over a web socket connection for the given path.
|
|
@@ -20,55 +21,204 @@ var WebSocketConnectionProvider = /** @class */ (function () {
|
|
|
20
21
|
* An optional target can be provided to handle
|
|
21
22
|
* notifications and requests from a remote side.
|
|
22
23
|
*/
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
createProxy(path, target, options) {
|
|
25
|
+
const factory = new proxy_factory_1.JsonRpcProxyFactory(target);
|
|
26
|
+
const startListening = (path) => {
|
|
27
|
+
const socket = this.listen({
|
|
28
|
+
path,
|
|
29
|
+
onConnection: (c) => factory.listen(c),
|
|
30
|
+
}, {
|
|
31
|
+
onTransportDidClose: () => factory.fireConnectionClosed(),
|
|
32
|
+
onTransportDidOpen: () => factory.fireConnectionOpened(),
|
|
33
|
+
}, options);
|
|
34
|
+
if (options === null || options === void 0 ? void 0 : options.onListening) {
|
|
35
|
+
options.onListening(socket);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
if (typeof path === "string") {
|
|
39
|
+
startListening(path);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
path.then((path) => startListening(path));
|
|
43
|
+
}
|
|
29
44
|
return factory.createProxy();
|
|
30
|
-
}
|
|
45
|
+
}
|
|
31
46
|
/**
|
|
32
47
|
* Install a connection handler for the given path.
|
|
33
48
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
49
|
+
listen(handler, eventHandler, options) {
|
|
50
|
+
const url = handler.path;
|
|
51
|
+
const webSocket = this.createWebSocket(url);
|
|
52
|
+
const logger = this.createLogger();
|
|
38
53
|
if (options && options.onerror) {
|
|
39
|
-
|
|
40
|
-
webSocket.addEventListener(
|
|
41
|
-
|
|
54
|
+
const onerror = options.onerror;
|
|
55
|
+
webSocket.addEventListener("error", (event) => {
|
|
56
|
+
onerror(event);
|
|
42
57
|
});
|
|
43
58
|
}
|
|
44
59
|
else {
|
|
45
|
-
webSocket.addEventListener(
|
|
60
|
+
webSocket.addEventListener("error", (error) => {
|
|
46
61
|
logger.error(JSON.stringify(error));
|
|
47
62
|
});
|
|
48
63
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
});
|
|
54
|
-
};
|
|
55
|
-
WebSocketConnectionProvider.prototype.createLogger = function () {
|
|
64
|
+
doListen(webSocket, handler, eventHandler, logger);
|
|
65
|
+
return webSocket;
|
|
66
|
+
}
|
|
67
|
+
createLogger() {
|
|
56
68
|
return new vscode_ws_jsonrpc_1.ConsoleLogger();
|
|
57
|
-
}
|
|
69
|
+
}
|
|
58
70
|
/**
|
|
59
71
|
* Creates a web socket for the given url
|
|
60
72
|
*/
|
|
61
|
-
|
|
73
|
+
createWebSocket(url) {
|
|
62
74
|
return new reconnecting_websocket_1.default(url, undefined, {
|
|
63
75
|
maxReconnectionDelay: 10000,
|
|
64
76
|
minReconnectionDelay: 1000,
|
|
65
77
|
reconnectionDelayGrowFactor: 1.3,
|
|
66
78
|
maxRetries: Infinity,
|
|
67
79
|
debug: false,
|
|
68
|
-
WebSocket: WebSocket
|
|
80
|
+
WebSocket: WebSocket,
|
|
69
81
|
});
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
}());
|
|
82
|
+
}
|
|
83
|
+
}
|
|
73
84
|
exports.WebSocketConnectionProvider = WebSocketConnectionProvider;
|
|
85
|
+
// The following was extracted from vscode-ws-jsonrpc to make these changes:
|
|
86
|
+
// - switch from WebSocket to ReconnectingWebSocket
|
|
87
|
+
// - webSocket.onopen: making sure it's only ever called once so we're re-using MessageConnection
|
|
88
|
+
// - WebSocketMessageWriter: buffer and re-try messages instead of throwing an error immidiately
|
|
89
|
+
// - WebSocketMessageReader: don't close MessageConnection on 'socket.onclose'
|
|
90
|
+
function doListen(resocket, handler, eventHandler, logger) {
|
|
91
|
+
resocket.addEventListener("close", () => eventHandler.onTransportDidClose());
|
|
92
|
+
let alreadyOpened = false;
|
|
93
|
+
resocket.onopen = () => {
|
|
94
|
+
// trigerr "open" every time we re-open the underlying websocket
|
|
95
|
+
eventHandler.onTransportDidOpen();
|
|
96
|
+
// make sure we're only ever creating one MessageConnection, irregardless of how many times we have to re-open the underlying (reconnecting) websocket
|
|
97
|
+
if (alreadyOpened) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
alreadyOpened = true;
|
|
101
|
+
const connection = createWebSocketConnection(resocket, logger);
|
|
102
|
+
handler.onConnection(connection);
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
function createWebSocketConnection(resocket, logger) {
|
|
106
|
+
const socket = (0, vscode_ws_jsonrpc_1.toSocket)(resocket);
|
|
107
|
+
const messageReader = new NonClosingWebSocketMessageReader(socket);
|
|
108
|
+
const messageWriter = new BufferingWebSocketMessageWriter(resocket, logger);
|
|
109
|
+
const connection = (0, vscode_jsonrpc_1.createMessageConnection)(messageReader, messageWriter, logger);
|
|
110
|
+
connection.onClose(() => connection.dispose());
|
|
111
|
+
return connection;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* This takes vscode-ws-jsonrpc/lib/socket/writer/WebSocketMessageWriter and adds a buffer
|
|
115
|
+
*/
|
|
116
|
+
class BufferingWebSocketMessageWriter extends messageWriter_1.AbstractMessageWriter {
|
|
117
|
+
constructor(socket, logger) {
|
|
118
|
+
super();
|
|
119
|
+
this.errorCount = 0;
|
|
120
|
+
this.buffer = [];
|
|
121
|
+
this.socket = socket;
|
|
122
|
+
this.logger = logger;
|
|
123
|
+
socket.addEventListener("open", (event) => this.flushBuffer());
|
|
124
|
+
}
|
|
125
|
+
write(msg) {
|
|
126
|
+
if (this.socket.readyState !== reconnecting_websocket_1.default.OPEN) {
|
|
127
|
+
this.bufferMsg(msg);
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
try {
|
|
131
|
+
const content = JSON.stringify(msg);
|
|
132
|
+
this.socket.send(content);
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
this.errorCount++;
|
|
136
|
+
this.fireError(e, msg, this.errorCount);
|
|
137
|
+
this.bufferMsg(msg);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
flushBuffer() {
|
|
141
|
+
if (this.buffer.length === 0) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
const buffer = [...this.buffer];
|
|
145
|
+
this.buffer = [];
|
|
146
|
+
for (const msg of buffer) {
|
|
147
|
+
this.write(msg);
|
|
148
|
+
}
|
|
149
|
+
//this.logger.info(`flushed buffer (${this.buffer.length})`)
|
|
150
|
+
}
|
|
151
|
+
bufferMsg(msg) {
|
|
152
|
+
this.buffer.push(msg);
|
|
153
|
+
//this.logger.info(`buffered message (${this.buffer.length})`);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* This takes vscode-ws-jsonrpc/lib/socket/reader/WebSocketMessageReader and removes the "onClose -> fireClose" connection
|
|
158
|
+
*/
|
|
159
|
+
class NonClosingWebSocketMessageReader extends messageReader_1.AbstractMessageReader {
|
|
160
|
+
constructor(socket) {
|
|
161
|
+
super();
|
|
162
|
+
this.events = [];
|
|
163
|
+
this.state = "initial";
|
|
164
|
+
this.callback = () => { };
|
|
165
|
+
this.socket = socket;
|
|
166
|
+
this.socket.onMessage((message) => this.readMessage(message));
|
|
167
|
+
this.socket.onError((error) => this.fireError(error));
|
|
168
|
+
this.socket.onClose((code, reason) => {
|
|
169
|
+
if (code !== 1000) {
|
|
170
|
+
const error = {
|
|
171
|
+
name: "" + code,
|
|
172
|
+
message: `Error during socket reconnect: code = ${code}, reason = ${reason}`,
|
|
173
|
+
};
|
|
174
|
+
this.fireError(error);
|
|
175
|
+
}
|
|
176
|
+
// this.fireClose(); // <-- reason for this class to be copied over
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
listen(callback) {
|
|
180
|
+
if (this.state === "initial") {
|
|
181
|
+
this.state = "listening";
|
|
182
|
+
this.callback = callback;
|
|
183
|
+
while (this.events.length !== 0) {
|
|
184
|
+
const event = this.events.pop();
|
|
185
|
+
if (event.message) {
|
|
186
|
+
this.readMessage(event.message);
|
|
187
|
+
}
|
|
188
|
+
else if (event.error) {
|
|
189
|
+
this.fireError(event.error);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
this.fireClose();
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
readMessage(message) {
|
|
198
|
+
if (this.state === "initial") {
|
|
199
|
+
this.events.splice(0, 0, { message });
|
|
200
|
+
}
|
|
201
|
+
else if (this.state === "listening") {
|
|
202
|
+
const data = JSON.parse(message);
|
|
203
|
+
this.callback(data);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
fireError(error) {
|
|
207
|
+
if (this.state === "initial") {
|
|
208
|
+
this.events.splice(0, 0, { error });
|
|
209
|
+
}
|
|
210
|
+
else if (this.state === "listening") {
|
|
211
|
+
super.fireError(error);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
fireClose() {
|
|
215
|
+
if (this.state === "initial") {
|
|
216
|
+
this.events.splice(0, 0, {});
|
|
217
|
+
}
|
|
218
|
+
else if (this.state === "listening") {
|
|
219
|
+
super.fireClose();
|
|
220
|
+
}
|
|
221
|
+
this.state = "closed";
|
|
222
|
+
}
|
|
223
|
+
}
|
|
74
224
|
//# sourceMappingURL=connection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/messaging/browser/connection.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/messaging/browser/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Licensed under the GNU Affero General Public License (AGPL).
|
|
4
4
|
* See License-AGPL.txt in the project root for license information.
|
|
5
5
|
*/
|
|
6
|
-
import { Message } from
|
|
7
|
-
import { AbstractMessageWriter, MessageWriter } from
|
|
8
|
-
import { AbstractMessageReader, MessageReader, DataCallback } from
|
|
9
|
-
import { MessageConnection } from
|
|
6
|
+
import { Message } from "vscode-jsonrpc/lib/messages";
|
|
7
|
+
import { AbstractMessageWriter, MessageWriter } from "vscode-jsonrpc/lib/messageWriter";
|
|
8
|
+
import { AbstractMessageReader, MessageReader, DataCallback } from "vscode-jsonrpc/lib/messageReader";
|
|
9
|
+
import { MessageConnection } from "vscode-jsonrpc/lib/main";
|
|
10
10
|
export declare class WindowMessageWriter extends AbstractMessageWriter implements MessageWriter {
|
|
11
11
|
readonly serviceId: string;
|
|
12
12
|
readonly window: Window;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"window-connection.d.ts","sourceRoot":"","sources":["../../../src/messaging/browser/window-connection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACtG,OAAO,EAAE,iBAAiB,EAA2B,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"window-connection.d.ts","sourceRoot":"","sources":["../../../src/messaging/browser/window-connection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACtG,OAAO,EAAE,iBAAiB,EAA2B,MAAM,yBAAyB,CAAC;AAiBrF,qBAAa,mBAAoB,SAAQ,qBAAsB,YAAW,aAAa;IACvE,QAAQ,CAAC,SAAS,EAAE,MAAM;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM;IAAE,QAAQ,CAAC,YAAY,EAAE,MAAM;gBAAzE,SAAS,EAAE,MAAM,EAAW,MAAM,EAAE,MAAM,EAAW,YAAY,EAAE,MAAM;IAI9F,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;CAI5B;AAED,qBAAa,mBAAoB,SAAQ,qBAAsB,YAAW,aAAa;IAIvE,QAAQ,CAAC,SAAS,EAAE,MAAM;IAAE,QAAQ,CAAC,YAAY,EAAE,MAAM;IAHrE,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,CAAM;gBAErB,SAAS,EAAE,MAAM,EAAW,YAAY,EAAE,MAAM;IAqBrE,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;CAQvC;AAED,wBAAgB,6BAA6B,CACzC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,YAAY,SAAe,GAC5B,iBAAiB,CAInB"}
|
|
@@ -4,85 +4,68 @@
|
|
|
4
4
|
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
5
|
* See License-AGPL.txt in the project root for license information.
|
|
6
6
|
*/
|
|
7
|
-
var __extends = (this && this.__extends) || (function () {
|
|
8
|
-
var extendStatics = function (d, b) {
|
|
9
|
-
extendStatics = Object.setPrototypeOf ||
|
|
10
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
11
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
12
|
-
return extendStatics(d, b);
|
|
13
|
-
};
|
|
14
|
-
return function (d, b) {
|
|
15
|
-
extendStatics(d, b);
|
|
16
|
-
function __() { this.constructor = d; }
|
|
17
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
18
|
-
};
|
|
19
|
-
})();
|
|
20
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
8
|
exports.createWindowMessageConnection = exports.WindowMessageReader = exports.WindowMessageWriter = void 0;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
9
|
+
const messageWriter_1 = require("vscode-jsonrpc/lib/messageWriter");
|
|
10
|
+
const messageReader_1 = require("vscode-jsonrpc/lib/messageReader");
|
|
11
|
+
const main_1 = require("vscode-jsonrpc/lib/main");
|
|
12
|
+
const vscode_ws_jsonrpc_1 = require("vscode-ws-jsonrpc");
|
|
26
13
|
function isWindowMessage(value) {
|
|
27
|
-
return !!value &&
|
|
28
|
-
|
|
29
|
-
|
|
14
|
+
return (!!value &&
|
|
15
|
+
typeof value === "object" &&
|
|
16
|
+
"jsonrpc" in value &&
|
|
17
|
+
typeof value["jsonrpc"] === "string" &&
|
|
18
|
+
"serviceId" in value &&
|
|
19
|
+
typeof value["serviceId"] === "string");
|
|
30
20
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
_this.targetOrigin = targetOrigin;
|
|
38
|
-
return _this;
|
|
21
|
+
class WindowMessageWriter extends messageWriter_1.AbstractMessageWriter {
|
|
22
|
+
constructor(serviceId, window, targetOrigin) {
|
|
23
|
+
super();
|
|
24
|
+
this.serviceId = serviceId;
|
|
25
|
+
this.window = window;
|
|
26
|
+
this.targetOrigin = targetOrigin;
|
|
39
27
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
this.window.postMessage(Object.assign(msg, { serviceId
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
}(messageWriter_1.AbstractMessageWriter));
|
|
28
|
+
write(msg) {
|
|
29
|
+
const { serviceId } = this;
|
|
30
|
+
this.window.postMessage(Object.assign(msg, { serviceId }), this.targetOrigin);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
46
33
|
exports.WindowMessageWriter = WindowMessageWriter;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
if (_this.sourceOrigin !== '*' && event.origin !== _this.sourceOrigin) {
|
|
34
|
+
class WindowMessageReader extends messageReader_1.AbstractMessageReader {
|
|
35
|
+
constructor(serviceId, sourceOrigin) {
|
|
36
|
+
super();
|
|
37
|
+
this.serviceId = serviceId;
|
|
38
|
+
this.sourceOrigin = sourceOrigin;
|
|
39
|
+
this.buffer = [];
|
|
40
|
+
window.addEventListener("message", (event) => {
|
|
41
|
+
if (this.sourceOrigin !== "*" && event.origin !== this.sourceOrigin) {
|
|
56
42
|
return;
|
|
57
43
|
}
|
|
58
|
-
if (!isWindowMessage(event.data) || event.data.serviceId !==
|
|
44
|
+
if (!isWindowMessage(event.data) || event.data.serviceId !== this.serviceId) {
|
|
59
45
|
return;
|
|
60
46
|
}
|
|
61
|
-
if (
|
|
62
|
-
|
|
47
|
+
if (this.callback) {
|
|
48
|
+
this.callback(event.data);
|
|
63
49
|
}
|
|
64
50
|
else {
|
|
65
|
-
|
|
51
|
+
this.buffer.push(event.data);
|
|
66
52
|
}
|
|
67
53
|
}, false);
|
|
68
|
-
return _this;
|
|
69
54
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
while (message = this.buffer.pop()) {
|
|
55
|
+
listen(callback) {
|
|
56
|
+
let message;
|
|
57
|
+
while ((message = this.buffer.pop())) {
|
|
73
58
|
callback(message);
|
|
74
59
|
}
|
|
75
60
|
Object.freeze(this.buffer);
|
|
76
61
|
this.callback = callback;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
}(messageReader_1.AbstractMessageReader));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
80
64
|
exports.WindowMessageReader = WindowMessageReader;
|
|
81
|
-
function createWindowMessageConnection(serviceId, window, sourceOrigin, targetOrigin) {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return main_1.createMessageConnection(reader, writer, new vscode_ws_jsonrpc_1.ConsoleLogger());
|
|
65
|
+
function createWindowMessageConnection(serviceId, window, sourceOrigin, targetOrigin = sourceOrigin) {
|
|
66
|
+
const reader = new WindowMessageReader(serviceId, sourceOrigin);
|
|
67
|
+
const writer = new WindowMessageWriter(serviceId, window, targetOrigin);
|
|
68
|
+
return (0, main_1.createMessageConnection)(reader, writer, new vscode_ws_jsonrpc_1.ConsoleLogger());
|
|
86
69
|
}
|
|
87
70
|
exports.createWindowMessageConnection = createWindowMessageConnection;
|
|
88
71
|
//# sourceMappingURL=window-connection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"window-connection.js","sourceRoot":"","sources":["../../../src/messaging/browser/window-connection.ts"],"names":[],"mappings":";AAAA;;;;GAIG
|
|
1
|
+
{"version":3,"file":"window-connection.js","sourceRoot":"","sources":["../../../src/messaging/browser/window-connection.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,oEAAwF;AACxF,oEAAsG;AACtG,kDAAqF;AACrF,yDAAkD;AAKlD,SAAS,eAAe,CAAC,KAAU;IAC/B,OAAO,CACH,CAAC,CAAC,KAAK;QACP,OAAO,KAAK,KAAK,QAAQ;QACzB,SAAS,IAAI,KAAK;QAClB,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ;QACpC,WAAW,IAAI,KAAK;QACpB,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,QAAQ,CACzC,CAAC;AACN,CAAC;AAED,MAAa,mBAAoB,SAAQ,qCAAqB;IAC1D,YAAqB,SAAiB,EAAW,MAAc,EAAW,YAAoB;QAC1F,KAAK,EAAE,CAAC;QADS,cAAS,GAAT,SAAS,CAAQ;QAAW,WAAM,GAAN,MAAM,CAAQ;QAAW,iBAAY,GAAZ,YAAY,CAAQ;IAE9F,CAAC;IAED,KAAK,CAAC,GAAY;QACd,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAClF,CAAC;CACJ;AATD,kDASC;AAED,MAAa,mBAAoB,SAAQ,qCAAqB;IAI1D,YAAqB,SAAiB,EAAW,YAAoB;QACjE,KAAK,EAAE,CAAC;QADS,cAAS,GAAT,SAAS,CAAQ;QAAW,iBAAY,GAAZ,YAAY,CAAQ;QAFlD,WAAM,GAAc,EAAE,CAAC;QAItC,MAAM,CAAC,gBAAgB,CACnB,SAAS,EACT,CAAC,KAAK,EAAE,EAAE;YACN,IAAI,IAAI,CAAC,YAAY,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE;gBACjE,OAAO;aACV;YACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE;gBACzE,OAAO;aACV;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC7B;iBAAM;gBACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAChC;QACL,CAAC,EACD,KAAK,CACR,CAAC;IACN,CAAC;IAED,MAAM,CAAC,QAAsB;QACzB,IAAI,OAAO,CAAC;QACZ,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE;YAClC,QAAQ,CAAC,OAAO,CAAC,CAAC;SACrB;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAjCD,kDAiCC;AAED,SAAgB,6BAA6B,CACzC,SAAiB,EACjB,MAAc,EACd,YAAoB,EACpB,YAAY,GAAG,YAAY;IAE3B,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACxE,OAAO,IAAA,8BAAuB,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,iCAAa,EAAE,CAAC,CAAC;AACxE,CAAC;AATD,sEASC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2021 Gitpod GmbH. All rights reserved.
|
|
3
|
+
* Licensed under the GNU Affero General Public License (AGPL).
|
|
4
|
+
* See License-AGPL.txt in the project root for license information.
|
|
5
|
+
*/
|
|
6
|
+
import * as prometheusClient from "prom-client";
|
|
7
|
+
declare type GrpcMethodType = "unary" | "client_stream" | "server_stream" | "bidi_stream";
|
|
8
|
+
export interface IGrpcCallMetricsLabels {
|
|
9
|
+
service: string;
|
|
10
|
+
method: string;
|
|
11
|
+
type: GrpcMethodType;
|
|
12
|
+
}
|
|
13
|
+
export interface IGrpcCallMetricsLabelsWithCode extends IGrpcCallMetricsLabels {
|
|
14
|
+
code: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const IClientCallMetrics: unique symbol;
|
|
17
|
+
export interface IClientCallMetrics {
|
|
18
|
+
started(labels: IGrpcCallMetricsLabels): void;
|
|
19
|
+
sent(labels: IGrpcCallMetricsLabels): void;
|
|
20
|
+
received(labels: IGrpcCallMetricsLabels): void;
|
|
21
|
+
handled(labels: IGrpcCallMetricsLabelsWithCode): void;
|
|
22
|
+
}
|
|
23
|
+
export declare class PrometheusClientCallMetrics implements IClientCallMetrics {
|
|
24
|
+
readonly startedCounter: prometheusClient.Counter<string>;
|
|
25
|
+
readonly sentCounter: prometheusClient.Counter<string>;
|
|
26
|
+
readonly receivedCounter: prometheusClient.Counter<string>;
|
|
27
|
+
readonly handledCounter: prometheusClient.Counter<string>;
|
|
28
|
+
constructor();
|
|
29
|
+
started(labels: IGrpcCallMetricsLabels): void;
|
|
30
|
+
sent(labels: IGrpcCallMetricsLabels): void;
|
|
31
|
+
received(labels: IGrpcCallMetricsLabels): void;
|
|
32
|
+
handled(labels: IGrpcCallMetricsLabelsWithCode): void;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=client-call-metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-call-metrics.d.ts","sourceRoot":"","sources":["../../src/messaging/client-call-metrics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,gBAAgB,MAAM,aAAa,CAAC;AAEhD,aAAK,cAAc,GAAG,OAAO,GAAG,eAAe,GAAG,eAAe,GAAG,aAAa,CAAC;AAClF,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,8BAA+B,SAAQ,sBAAsB;IAC1E,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAE/D,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,OAAO,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI,CAAC;CACzD;AAED,qBACa,2BAA4B,YAAW,kBAAkB;IAClE,QAAQ,CAAC,cAAc,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,QAAQ,CAAC,cAAc,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;;IA6B1D,OAAO,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAQ7C,IAAI,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAQ1C,QAAQ,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAQ9C,OAAO,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI;CAQxD"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) 2021 Gitpod GmbH. All rights reserved.
|
|
4
|
+
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
|
+
* See License-AGPL.txt in the project root for license information.
|
|
6
|
+
*/
|
|
7
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
8
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
10
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
11
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
12
|
+
};
|
|
13
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
14
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.PrometheusClientCallMetrics = exports.IClientCallMetrics = void 0;
|
|
18
|
+
const inversify_1 = require("inversify");
|
|
19
|
+
const prometheusClient = require("prom-client");
|
|
20
|
+
exports.IClientCallMetrics = Symbol("IClientCallMetrics");
|
|
21
|
+
let PrometheusClientCallMetrics = class PrometheusClientCallMetrics {
|
|
22
|
+
constructor() {
|
|
23
|
+
this.startedCounter = new prometheusClient.Counter({
|
|
24
|
+
name: "grpc_client_started_total",
|
|
25
|
+
help: "Total number of RPCs started on the client.",
|
|
26
|
+
labelNames: ["grpc_service", "grpc_method", "grpc_type"],
|
|
27
|
+
registers: [prometheusClient.register],
|
|
28
|
+
});
|
|
29
|
+
this.sentCounter = new prometheusClient.Counter({
|
|
30
|
+
name: "grpc_client_msg_sent_total",
|
|
31
|
+
help: " Total number of gRPC stream messages sent by the client.",
|
|
32
|
+
labelNames: ["grpc_service", "grpc_method", "grpc_type"],
|
|
33
|
+
registers: [prometheusClient.register],
|
|
34
|
+
});
|
|
35
|
+
this.receivedCounter = new prometheusClient.Counter({
|
|
36
|
+
name: "grpc_client_msg_received_total",
|
|
37
|
+
help: "Total number of RPC stream messages received by the client.",
|
|
38
|
+
labelNames: ["grpc_service", "grpc_method", "grpc_type"],
|
|
39
|
+
registers: [prometheusClient.register],
|
|
40
|
+
});
|
|
41
|
+
this.handledCounter = new prometheusClient.Counter({
|
|
42
|
+
name: "grpc_client_handled_total",
|
|
43
|
+
help: "Total number of RPCs completed by the client, regardless of success or failure.",
|
|
44
|
+
labelNames: ["grpc_service", "grpc_method", "grpc_type", "grpc_code"],
|
|
45
|
+
registers: [prometheusClient.register],
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
started(labels) {
|
|
49
|
+
this.startedCounter.inc({
|
|
50
|
+
grpc_service: labels.service,
|
|
51
|
+
grpc_method: labels.method,
|
|
52
|
+
grpc_type: labels.type,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
sent(labels) {
|
|
56
|
+
this.sentCounter.inc({
|
|
57
|
+
grpc_service: labels.service,
|
|
58
|
+
grpc_method: labels.method,
|
|
59
|
+
grpc_type: labels.type,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
received(labels) {
|
|
63
|
+
this.receivedCounter.inc({
|
|
64
|
+
grpc_service: labels.service,
|
|
65
|
+
grpc_method: labels.method,
|
|
66
|
+
grpc_type: labels.type,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
handled(labels) {
|
|
70
|
+
this.handledCounter.inc({
|
|
71
|
+
grpc_service: labels.service,
|
|
72
|
+
grpc_method: labels.method,
|
|
73
|
+
grpc_type: labels.type,
|
|
74
|
+
grpc_code: labels.code,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
PrometheusClientCallMetrics = __decorate([
|
|
79
|
+
(0, inversify_1.injectable)(),
|
|
80
|
+
__metadata("design:paramtypes", [])
|
|
81
|
+
], PrometheusClientCallMetrics);
|
|
82
|
+
exports.PrometheusClientCallMetrics = PrometheusClientCallMetrics;
|
|
83
|
+
//# sourceMappingURL=client-call-metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-call-metrics.js","sourceRoot":"","sources":["../../src/messaging/client-call-metrics.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,yCAAuC;AACvC,gDAAgD;AAanC,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAU/D,IAAa,2BAA2B,GAAxC,MAAa,2BAA2B;IAMpC;QACI,IAAI,CAAC,cAAc,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC;YAC/C,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,6CAA6C;YACnD,UAAU,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC;YACxD,SAAS,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC;YAC5C,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE,2DAA2D;YACjE,UAAU,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC;YACxD,SAAS,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC;YAChD,IAAI,EAAE,gCAAgC;YACtC,IAAI,EAAE,6DAA6D;YACnE,UAAU,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC;YACxD,SAAS,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC;YAC/C,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,iFAAiF;YACvF,UAAU,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC;YACrE,SAAS,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC;SACzC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,CAAC,MAA8B;QAClC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;YACpB,YAAY,EAAE,MAAM,CAAC,OAAO;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,SAAS,EAAE,MAAM,CAAC,IAAI;SACzB,CAAC,CAAC;IACP,CAAC;IAED,IAAI,CAAC,MAA8B;QAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;YACjB,YAAY,EAAE,MAAM,CAAC,OAAO;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,SAAS,EAAE,MAAM,CAAC,IAAI;SACzB,CAAC,CAAC;IACP,CAAC;IAED,QAAQ,CAAC,MAA8B;QACnC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;YACrB,YAAY,EAAE,MAAM,CAAC,OAAO;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,SAAS,EAAE,MAAM,CAAC,IAAI;SACzB,CAAC,CAAC;IACP,CAAC;IAED,OAAO,CAAC,MAAsC;QAC1C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;YACpB,YAAY,EAAE,MAAM,CAAC,OAAO;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,SAAS,EAAE,MAAM,CAAC,IAAI;YACtB,SAAS,EAAE,MAAM,CAAC,IAAI;SACzB,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAjEY,2BAA2B;IADvC,IAAA,sBAAU,GAAE;;GACA,2BAA2B,CAiEvC;AAjEY,kEAA2B"}
|
package/lib/messaging/error.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* See License-AGPL.txt in the project root for license information.
|
|
5
5
|
*/
|
|
6
6
|
export declare namespace ErrorCodes {
|
|
7
|
+
const BAD_REQUEST = 400;
|
|
7
8
|
const NOT_AUTHENTICATED = 401;
|
|
8
9
|
const NOT_ENOUGH_CREDIT = 402;
|
|
9
10
|
const PERMISSION_DENIED = 403;
|
|
@@ -13,6 +14,7 @@ export declare namespace ErrorCodes {
|
|
|
13
14
|
const TOO_MANY_REQUESTS = 429;
|
|
14
15
|
const REPOSITORY_NOT_WHITELISTED = 430;
|
|
15
16
|
const CONTEXT_PARSE_ERROR = 460;
|
|
17
|
+
const INVALID_GITPOD_YML = 461;
|
|
16
18
|
const PAYMENT_ERROR = 450;
|
|
17
19
|
const USER_BLOCKED = 470;
|
|
18
20
|
const USER_DELETED = 471;
|
|
@@ -21,10 +23,13 @@ export declare namespace ErrorCodes {
|
|
|
21
23
|
const PLAN_PROFESSIONAL_REQUIRED = 481;
|
|
22
24
|
const PLAN_ONLY_ALLOWED_FOR_STUDENTS = 485;
|
|
23
25
|
const TOO_MANY_RUNNING_WORKSPACES = 490;
|
|
26
|
+
const INTERNAL_SERVER_ERROR = 500;
|
|
24
27
|
const EE_FEATURE = 501;
|
|
25
28
|
const EE_LICENSE_REQUIRED = 555;
|
|
29
|
+
const SAAS_FEATURE = 601;
|
|
26
30
|
const TEAM_SUBSCRIPTION_INVALID_QUANTITY = 610;
|
|
27
31
|
const TEAM_SUBSCRIPTION_ASSIGNMENT_FAILED = 620;
|
|
28
|
-
const
|
|
32
|
+
const SNAPSHOT_ERROR = 630;
|
|
33
|
+
const HEADLESS_LOG_NOT_YET_AVAILABLE = 640;
|
|
29
34
|
}
|
|
30
35
|
//# sourceMappingURL=error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/messaging/error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/messaging/error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,yBAAiB,UAAU,CAAC;IAEjB,MAAM,WAAW,MAAM,CAAC;IAGxB,MAAM,iBAAiB,MAAM,CAAC;IAG9B,MAAM,iBAAiB,MAAM,CAAC;IAG9B,MAAM,iBAAiB,MAAM,CAAC;IAG9B,MAAM,SAAS,MAAM,CAAC;IAGtB,MAAM,QAAQ,MAAM,CAAC;IAGrB,MAAM,cAAc,MAAM,CAAC;IAG3B,MAAM,iBAAiB,MAAM,CAAC;IAG9B,MAAM,0BAA0B,MAAM,CAAC;IAGvC,MAAM,mBAAmB,MAAM,CAAC;IAGhC,MAAM,kBAAkB,MAAM,CAAC;IAG/B,MAAM,aAAa,MAAM,CAAC;IAG1B,MAAM,YAAY,MAAM,CAAC;IAGzB,MAAM,YAAY,MAAM,CAAC;IAGzB,MAAM,8BAA8B,MAAM,CAAC;IAG3C,MAAM,iCAAiC,MAAM,CAAC;IAG9C,MAAM,0BAA0B,MAAM,CAAC;IAGvC,MAAM,8BAA8B,MAAM,CAAC;IAG3C,MAAM,2BAA2B,MAAM,CAAC;IAGxC,MAAM,qBAAqB,MAAM,CAAC;IAGlC,MAAM,UAAU,MAAM,CAAC;IAGvB,MAAM,mBAAmB,MAAM,CAAC;IAGhC,MAAM,YAAY,MAAM,CAAC;IAGzB,MAAM,kCAAkC,MAAM,CAAC;IAG/C,MAAM,mCAAmC,MAAM,CAAC;IAGhD,MAAM,cAAc,MAAM,CAAC;IAG3B,MAAM,8BAA8B,MAAM,CAAC;CACrD"}
|