@theia/debug 1.45.0 → 1.46.0-next.72
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/README.md +62 -62
- package/lib/browser/breakpoint/breakpoint-manager.d.ts +70 -70
- package/lib/browser/breakpoint/breakpoint-manager.js +328 -328
- package/lib/browser/breakpoint/breakpoint-marker.d.ts +41 -41
- package/lib/browser/breakpoint/breakpoint-marker.js +87 -87
- package/lib/browser/console/debug-console-contribution.d.ts +40 -40
- package/lib/browser/console/debug-console-contribution.js +231 -231
- package/lib/browser/console/debug-console-items.d.ts +93 -93
- package/lib/browser/console/debug-console-items.js +319 -319
- package/lib/browser/console/debug-console-session.d.ts +31 -31
- package/lib/browser/console/debug-console-session.js +199 -199
- package/lib/browser/debug-call-stack-item-type-key.d.ts +3 -3
- package/lib/browser/debug-call-stack-item-type-key.js +19 -19
- package/lib/browser/debug-configuration-manager.d.ts +102 -102
- package/lib/browser/debug-configuration-manager.js +552 -552
- package/lib/browser/debug-configuration-model.d.ts +29 -29
- package/lib/browser/debug-configuration-model.js +79 -79
- package/lib/browser/debug-contribution.d.ts +22 -22
- package/lib/browser/debug-contribution.js +19 -19
- package/lib/browser/debug-frontend-application-contribution.d.ts +222 -222
- package/lib/browser/debug-frontend-application-contribution.js +1404 -1404
- package/lib/browser/debug-frontend-module.d.ts +4 -4
- package/lib/browser/debug-frontend-module.d.ts.map +1 -1
- package/lib/browser/debug-frontend-module.js +105 -104
- package/lib/browser/debug-frontend-module.js.map +1 -1
- package/lib/browser/debug-package.spec.js +18 -18
- package/lib/browser/debug-preferences.d.ts +17 -17
- package/lib/browser/debug-preferences.js +89 -89
- package/lib/browser/debug-prefix-configuration.d.ts +51 -51
- package/lib/browser/debug-prefix-configuration.js +208 -208
- package/lib/browser/debug-resource.d.ts +14 -14
- package/lib/browser/debug-resource.js +65 -65
- package/lib/browser/debug-schema-updater.d.ts +15 -15
- package/lib/browser/debug-schema-updater.js +168 -168
- package/lib/browser/debug-session-connection.d.ts +110 -110
- package/lib/browser/debug-session-connection.js +258 -258
- package/lib/browser/debug-session-contribution.d.ts +73 -73
- package/lib/browser/debug-session-contribution.js +145 -145
- package/lib/browser/debug-session-manager.d.ts +137 -137
- package/lib/browser/debug-session-manager.js +599 -599
- package/lib/browser/debug-session-manager.js.map +1 -1
- package/lib/browser/debug-session-options.d.ts +48 -48
- package/lib/browser/debug-session-options.js +85 -85
- package/lib/browser/debug-session.d.ts +178 -178
- package/lib/browser/debug-session.js +871 -871
- package/lib/browser/debug-tab-bar-decorator.d.ts +16 -16
- package/lib/browser/debug-tab-bar-decorator.js +70 -70
- package/lib/browser/debug-watch-manager.d.ts +21 -21
- package/lib/browser/debug-watch-manager.js +93 -93
- package/lib/browser/disassembly-view/disassembly-view-accessibility-provider.d.ts +6 -6
- package/lib/browser/disassembly-view/disassembly-view-accessibility-provider.js +38 -38
- package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.d.ts +19 -19
- package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.js +110 -110
- package/lib/browser/disassembly-view/disassembly-view-contribution.d.ts +24 -24
- package/lib/browser/disassembly-view/disassembly-view-contribution.js +131 -131
- package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.d.ts +38 -38
- package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.js +222 -222
- package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.js.map +1 -1
- package/lib/browser/disassembly-view/disassembly-view-table-delegate.d.ts +15 -15
- package/lib/browser/disassembly-view/disassembly-view-table-delegate.js +38 -38
- package/lib/browser/disassembly-view/disassembly-view-utilities.d.ts +37 -37
- package/lib/browser/disassembly-view/disassembly-view-utilities.js +17 -17
- package/lib/browser/disassembly-view/disassembly-view-widget.d.ts +60 -60
- package/lib/browser/disassembly-view/disassembly-view-widget.js +453 -452
- package/lib/browser/disassembly-view/disassembly-view-widget.js.map +1 -1
- package/lib/browser/editor/debug-breakpoint-widget.d.ts +53 -53
- package/lib/browser/editor/debug-breakpoint-widget.js +261 -261
- package/lib/browser/editor/debug-editor-model.d.ts +91 -93
- package/lib/browser/editor/debug-editor-model.d.ts.map +1 -1
- package/lib/browser/editor/debug-editor-model.js +515 -516
- package/lib/browser/editor/debug-editor-model.js.map +1 -1
- package/lib/browser/editor/debug-editor-service.d.ts +35 -35
- package/lib/browser/editor/debug-editor-service.js +202 -202
- package/lib/browser/editor/debug-editor.d.ts +3 -3
- package/lib/browser/editor/debug-editor.js +19 -19
- package/lib/browser/editor/debug-exception-widget.d.ts +29 -29
- package/lib/browser/editor/debug-exception-widget.js +114 -114
- package/lib/browser/editor/debug-expression-provider.d.ts +11 -11
- package/lib/browser/editor/debug-expression-provider.js +81 -81
- package/lib/browser/editor/debug-hover-source.d.ts +18 -18
- package/lib/browser/editor/debug-hover-source.js +117 -117
- package/lib/browser/editor/debug-hover-widget.d.ts +47 -47
- package/lib/browser/editor/debug-hover-widget.js +276 -276
- package/lib/browser/editor/debug-inline-value-decorator.d.ts +19 -21
- package/lib/browser/editor/debug-inline-value-decorator.d.ts.map +1 -1
- package/lib/browser/editor/debug-inline-value-decorator.js +333 -337
- package/lib/browser/editor/debug-inline-value-decorator.js.map +1 -1
- package/lib/browser/model/debug-breakpoint.d.ts +47 -47
- package/lib/browser/model/debug-breakpoint.js +109 -109
- package/lib/browser/model/debug-function-breakpoint.d.ts +18 -18
- package/lib/browser/model/debug-function-breakpoint.js +92 -92
- package/lib/browser/model/debug-instruction-breakpoint.d.ts +14 -14
- package/lib/browser/model/debug-instruction-breakpoint.js +65 -65
- package/lib/browser/model/debug-source-breakpoint.d.ts +37 -37
- package/lib/browser/model/debug-source-breakpoint.js +217 -217
- package/lib/browser/model/debug-source.d.ts +24 -24
- package/lib/browser/model/debug-source.js +80 -80
- package/lib/browser/model/debug-stack-frame.d.ts +41 -41
- package/lib/browser/model/debug-stack-frame.js +150 -150
- package/lib/browser/model/debug-thread.d.ts +62 -62
- package/lib/browser/model/debug-thread.js +237 -237
- package/lib/browser/preferences/launch-preferences.d.ts +4 -4
- package/lib/browser/preferences/launch-preferences.js +38 -38
- package/lib/browser/view/debug-action.d.ts +16 -16
- package/lib/browser/view/debug-action.js +43 -43
- package/lib/browser/view/debug-breakpoints-source.d.ts +9 -9
- package/lib/browser/view/debug-breakpoints-source.js +70 -70
- package/lib/browser/view/debug-breakpoints-widget.d.ts +22 -22
- package/lib/browser/view/debug-breakpoints-widget.js +87 -87
- package/lib/browser/view/debug-configuration-select.d.ts +64 -64
- package/lib/browser/view/debug-configuration-select.js +216 -216
- package/lib/browser/view/debug-configuration-widget.d.ts +30 -30
- package/lib/browser/view/debug-configuration-widget.js +135 -135
- package/lib/browser/view/debug-exception-breakpoint.d.ts +14 -14
- package/lib/browser/view/debug-exception-breakpoint.js +61 -61
- package/lib/browser/view/debug-session-widget.d.ts +28 -28
- package/lib/browser/view/debug-session-widget.js +134 -134
- package/lib/browser/view/debug-stack-frames-source.d.ts +17 -17
- package/lib/browser/view/debug-stack-frames-source.js +89 -89
- package/lib/browser/view/debug-stack-frames-widget.d.ts +24 -24
- package/lib/browser/view/debug-stack-frames-widget.js +154 -154
- package/lib/browser/view/debug-threads-source.d.ts +8 -8
- package/lib/browser/view/debug-threads-source.js +63 -63
- package/lib/browser/view/debug-threads-widget.d.ts +26 -26
- package/lib/browser/view/debug-threads-widget.js +145 -145
- package/lib/browser/view/debug-toolbar-widget.d.ts +34 -34
- package/lib/browser/view/debug-toolbar-widget.js +156 -156
- package/lib/browser/view/debug-variables-source.d.ts +9 -9
- package/lib/browser/view/debug-variables-source.js +60 -60
- package/lib/browser/view/debug-variables-widget.d.ts +16 -16
- package/lib/browser/view/debug-variables-widget.js +78 -78
- package/lib/browser/view/debug-view-model.d.ts +51 -51
- package/lib/browser/view/debug-view-model.js +220 -220
- package/lib/browser/view/debug-watch-expression.d.ts +30 -30
- package/lib/browser/view/debug-watch-expression.js +73 -73
- package/lib/browser/view/debug-watch-source.d.ts +9 -9
- package/lib/browser/view/debug-watch-source.js +58 -58
- package/lib/browser/view/debug-watch-widget.d.ts +16 -16
- package/lib/browser/view/debug-watch-widget.js +78 -78
- package/lib/browser/view/debug-widget.d.ts +23 -23
- package/lib/browser/view/debug-widget.js +108 -108
- package/lib/common/debug-adapter-contribution-registry.d.ts +59 -59
- package/lib/common/debug-adapter-contribution-registry.js +212 -212
- package/lib/common/debug-adapter-session.d.ts +18 -18
- package/lib/common/debug-adapter-session.js +78 -78
- package/lib/common/debug-common.d.ts +1 -1
- package/lib/common/debug-common.js +29 -29
- package/lib/common/debug-compound.d.ts +14 -14
- package/lib/common/debug-compound.js +27 -27
- package/lib/common/debug-configuration.d.ts +70 -70
- package/lib/common/debug-configuration.js +31 -31
- package/lib/common/debug-model.d.ts +152 -152
- package/lib/common/debug-model.js +35 -35
- package/lib/common/debug-service.d.ts +123 -123
- package/lib/common/debug-service.js +66 -66
- package/lib/common/debug-uri-utils.d.ts +23 -23
- package/lib/common/debug-uri-utils.js +26 -26
- package/lib/common/inline-debug-adapter.d.ts +18 -18
- package/lib/common/inline-debug-adapter.js +44 -44
- package/lib/node/debug-adapter-factory.d.ts +19 -19
- package/lib/node/debug-adapter-factory.js +96 -96
- package/lib/node/debug-adapter-session-manager.d.ts +37 -37
- package/lib/node/debug-adapter-session-manager.js +111 -111
- package/lib/node/debug-backend-module.d.ts +3 -3
- package/lib/node/debug-backend-module.js +41 -41
- package/lib/node/debug-service-impl.d.ts +30 -30
- package/lib/node/debug-service-impl.js +124 -124
- package/lib/node/stream-debug-adapter.d.ts +36 -36
- package/lib/node/stream-debug-adapter.js +112 -112
- package/package.json +16 -16
- package/src/browser/breakpoint/breakpoint-manager.ts +369 -369
- package/src/browser/breakpoint/breakpoint-marker.ts +104 -104
- package/src/browser/console/debug-console-contribution.tsx +240 -240
- package/src/browser/console/debug-console-items.tsx +384 -384
- package/src/browser/console/debug-console-session.ts +205 -205
- package/src/browser/debug-call-stack-item-type-key.ts +20 -20
- package/src/browser/debug-configuration-manager.ts +591 -591
- package/src/browser/debug-configuration-model.ts +100 -100
- package/src/browser/debug-contribution.ts +43 -43
- package/src/browser/debug-frontend-application-contribution.ts +1551 -1551
- package/src/browser/debug-frontend-module.ts +133 -132
- package/src/browser/debug-package.spec.ts +20 -20
- package/src/browser/debug-preferences.ts +98 -98
- package/src/browser/debug-prefix-configuration.ts +195 -195
- package/src/browser/debug-resource.ts +59 -59
- package/src/browser/debug-schema-updater.ts +149 -149
- package/src/browser/debug-session-connection.ts +357 -357
- package/src/browser/debug-session-contribution.ts +150 -150
- package/src/browser/debug-session-manager.ts +682 -682
- package/src/browser/debug-session-options.ts +114 -114
- package/src/browser/debug-session.tsx +947 -947
- package/src/browser/debug-tab-bar-decorator.ts +57 -57
- package/src/browser/debug-watch-manager.ts +93 -93
- package/src/browser/disassembly-view/disassembly-view-accessibility-provider.ts +43 -43
- package/src/browser/disassembly-view/disassembly-view-breakpoint-renderer.ts +119 -119
- package/src/browser/disassembly-view/disassembly-view-contribution.ts +109 -109
- package/src/browser/disassembly-view/disassembly-view-instruction-renderer.ts +245 -245
- package/src/browser/disassembly-view/disassembly-view-table-delegate.ts +39 -39
- package/src/browser/disassembly-view/disassembly-view-utilities.ts +55 -55
- package/src/browser/disassembly-view/disassembly-view-widget.ts +463 -463
- package/src/browser/editor/debug-breakpoint-widget.tsx +293 -293
- package/src/browser/editor/debug-editor-model.ts +529 -528
- package/src/browser/editor/debug-editor-service.ts +192 -192
- package/src/browser/editor/debug-editor.ts +20 -20
- package/src/browser/editor/debug-exception-widget.tsx +122 -122
- package/src/browser/editor/debug-expression-provider.ts +78 -78
- package/src/browser/editor/debug-hover-source.tsx +105 -105
- package/src/browser/editor/debug-hover-widget.ts +298 -298
- package/src/browser/editor/debug-inline-value-decorator.ts +373 -377
- package/src/browser/model/debug-breakpoint.tsx +151 -151
- package/src/browser/model/debug-function-breakpoint.tsx +101 -101
- package/src/browser/model/debug-instruction-breakpoint.tsx +68 -68
- package/src/browser/model/debug-source-breakpoint.tsx +237 -237
- package/src/browser/model/debug-source.ts +93 -93
- package/src/browser/model/debug-stack-frame.tsx +170 -170
- package/src/browser/model/debug-thread.tsx +285 -285
- package/src/browser/preferences/launch-preferences.ts +38 -38
- package/src/browser/style/index.css +453 -453
- package/src/browser/view/debug-action.tsx +57 -57
- package/src/browser/view/debug-breakpoints-source.tsx +53 -53
- package/src/browser/view/debug-breakpoints-widget.ts +71 -71
- package/src/browser/view/debug-configuration-select.tsx +269 -269
- package/src/browser/view/debug-configuration-widget.tsx +121 -121
- package/src/browser/view/debug-exception-breakpoint.tsx +68 -68
- package/src/browser/view/debug-session-widget.ts +124 -124
- package/src/browser/view/debug-stack-frames-source.tsx +75 -75
- package/src/browser/view/debug-stack-frames-widget.ts +135 -135
- package/src/browser/view/debug-threads-source.tsx +48 -48
- package/src/browser/view/debug-threads-widget.ts +125 -125
- package/src/browser/view/debug-toolbar-widget.tsx +145 -145
- package/src/browser/view/debug-variables-source.ts +43 -43
- package/src/browser/view/debug-variables-widget.ts +61 -61
- package/src/browser/view/debug-view-model.ts +230 -230
- package/src/browser/view/debug-watch-expression.tsx +88 -88
- package/src/browser/view/debug-watch-source.ts +41 -41
- package/src/browser/view/debug-watch-widget.ts +61 -61
- package/src/browser/view/debug-widget.ts +97 -97
- package/src/common/debug-adapter-contribution-registry.ts +206 -206
- package/src/common/debug-adapter-session.ts +102 -102
- package/src/common/debug-common.ts +19 -19
- package/src/common/debug-compound.ts +33 -33
- package/src/common/debug-configuration.ts +108 -108
- package/src/common/debug-model.ts +200 -200
- package/src/common/debug-service.ts +184 -184
- package/src/common/debug-uri-utils.ts +24 -24
- package/src/common/inline-debug-adapter.ts +47 -47
- package/src/node/debug-adapter-factory.ts +107 -107
- package/src/node/debug-adapter-session-manager.ts +106 -106
- package/src/node/debug-backend-module.ts +57 -57
- package/src/node/debug-service-impl.ts +119 -119
- package/src/node/stream-debug-adapter.ts +126 -126
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2018 Red Hat, Inc. and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.ForwardingDebugChannel = exports.DebugError = exports.DebugAdapterPath = exports.DebugService = exports.DebugPath = void 0;
|
|
19
|
-
const core_1 = require("@theia/core");
|
|
20
|
-
const application_error_1 = require("@theia/core/lib/common/application-error");
|
|
21
|
-
/**
|
|
22
|
-
* The WS endpoint path to the Debug service.
|
|
23
|
-
*/
|
|
24
|
-
exports.DebugPath = '/services/debug';
|
|
25
|
-
/**
|
|
26
|
-
* DebugService symbol for DI.
|
|
27
|
-
*/
|
|
28
|
-
exports.DebugService = Symbol('DebugService');
|
|
29
|
-
/**
|
|
30
|
-
* The endpoint path to the debug adapter session.
|
|
31
|
-
*/
|
|
32
|
-
exports.DebugAdapterPath = '/services/debug-adapter';
|
|
33
|
-
var DebugError;
|
|
34
|
-
(function (DebugError) {
|
|
35
|
-
DebugError.NotFound = application_error_1.ApplicationError.declare(-41000, (type) => ({
|
|
36
|
-
message: `'${type}' debugger type is not supported.`,
|
|
37
|
-
data: { type }
|
|
38
|
-
}));
|
|
39
|
-
})(DebugError = exports.DebugError || (exports.DebugError = {}));
|
|
40
|
-
/**
|
|
41
|
-
* A {@link DebugChannel} wrapper implementation that sends and receives messages to/from an underlying {@link Channel}.
|
|
42
|
-
*/
|
|
43
|
-
class ForwardingDebugChannel {
|
|
44
|
-
constructor(underlyingChannel) {
|
|
45
|
-
this.underlyingChannel = underlyingChannel;
|
|
46
|
-
this.onMessageEmitter = new core_1.Emitter();
|
|
47
|
-
this.underlyingChannel.onMessage(msg => this.onMessageEmitter.fire(msg().readString()));
|
|
48
|
-
}
|
|
49
|
-
send(content) {
|
|
50
|
-
this.underlyingChannel.getWriteBuffer().writeString(content).commit();
|
|
51
|
-
}
|
|
52
|
-
onMessage(cb) {
|
|
53
|
-
this.onMessageEmitter.event(cb);
|
|
54
|
-
}
|
|
55
|
-
onError(cb) {
|
|
56
|
-
this.underlyingChannel.onError(cb);
|
|
57
|
-
}
|
|
58
|
-
onClose(cb) {
|
|
59
|
-
this.underlyingChannel.onClose(event => { var _a; return cb((_a = event.code) !== null && _a !== void 0 ? _a : -1, event.reason); });
|
|
60
|
-
}
|
|
61
|
-
close() {
|
|
62
|
-
this.underlyingChannel.close();
|
|
63
|
-
this.onMessageEmitter.dispose();
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
exports.ForwardingDebugChannel = ForwardingDebugChannel;
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2018 Red Hat, Inc. and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.ForwardingDebugChannel = exports.DebugError = exports.DebugAdapterPath = exports.DebugService = exports.DebugPath = void 0;
|
|
19
|
+
const core_1 = require("@theia/core");
|
|
20
|
+
const application_error_1 = require("@theia/core/lib/common/application-error");
|
|
21
|
+
/**
|
|
22
|
+
* The WS endpoint path to the Debug service.
|
|
23
|
+
*/
|
|
24
|
+
exports.DebugPath = '/services/debug';
|
|
25
|
+
/**
|
|
26
|
+
* DebugService symbol for DI.
|
|
27
|
+
*/
|
|
28
|
+
exports.DebugService = Symbol('DebugService');
|
|
29
|
+
/**
|
|
30
|
+
* The endpoint path to the debug adapter session.
|
|
31
|
+
*/
|
|
32
|
+
exports.DebugAdapterPath = '/services/debug-adapter';
|
|
33
|
+
var DebugError;
|
|
34
|
+
(function (DebugError) {
|
|
35
|
+
DebugError.NotFound = application_error_1.ApplicationError.declare(-41000, (type) => ({
|
|
36
|
+
message: `'${type}' debugger type is not supported.`,
|
|
37
|
+
data: { type }
|
|
38
|
+
}));
|
|
39
|
+
})(DebugError = exports.DebugError || (exports.DebugError = {}));
|
|
40
|
+
/**
|
|
41
|
+
* A {@link DebugChannel} wrapper implementation that sends and receives messages to/from an underlying {@link Channel}.
|
|
42
|
+
*/
|
|
43
|
+
class ForwardingDebugChannel {
|
|
44
|
+
constructor(underlyingChannel) {
|
|
45
|
+
this.underlyingChannel = underlyingChannel;
|
|
46
|
+
this.onMessageEmitter = new core_1.Emitter();
|
|
47
|
+
this.underlyingChannel.onMessage(msg => this.onMessageEmitter.fire(msg().readString()));
|
|
48
|
+
}
|
|
49
|
+
send(content) {
|
|
50
|
+
this.underlyingChannel.getWriteBuffer().writeString(content).commit();
|
|
51
|
+
}
|
|
52
|
+
onMessage(cb) {
|
|
53
|
+
this.onMessageEmitter.event(cb);
|
|
54
|
+
}
|
|
55
|
+
onError(cb) {
|
|
56
|
+
this.underlyingChannel.onError(cb);
|
|
57
|
+
}
|
|
58
|
+
onClose(cb) {
|
|
59
|
+
this.underlyingChannel.onClose(event => { var _a; return cb((_a = event.code) !== null && _a !== void 0 ? _a : -1, event.reason); });
|
|
60
|
+
}
|
|
61
|
+
close() {
|
|
62
|
+
this.underlyingChannel.close();
|
|
63
|
+
this.onMessageEmitter.dispose();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.ForwardingDebugChannel = ForwardingDebugChannel;
|
|
67
67
|
//# sourceMappingURL=debug-service.js.map
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
/********************************************************************************
|
|
2
|
-
* Copyright (C) 2022 STMicroelectronics and others.
|
|
3
|
-
*
|
|
4
|
-
* This program and the accompanying materials are made available under the
|
|
5
|
-
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
-
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
-
*
|
|
8
|
-
* This Source Code may also be made available under the following Secondary
|
|
9
|
-
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
-
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
-
* with the GNU Classpath Exception which is available at
|
|
12
|
-
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
-
*
|
|
14
|
-
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
-
********************************************************************************/
|
|
16
|
-
/**
|
|
17
|
-
* The URI scheme for debug URIs.
|
|
18
|
-
*/
|
|
19
|
-
export declare const DEBUG_SCHEME = "debug";
|
|
20
|
-
/**
|
|
21
|
-
* The pattern for URI schemes.
|
|
22
|
-
*/
|
|
23
|
-
export declare const SCHEME_PATTERN: RegExp;
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (C) 2022 STMicroelectronics and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
/**
|
|
17
|
+
* The URI scheme for debug URIs.
|
|
18
|
+
*/
|
|
19
|
+
export declare const DEBUG_SCHEME = "debug";
|
|
20
|
+
/**
|
|
21
|
+
* The pattern for URI schemes.
|
|
22
|
+
*/
|
|
23
|
+
export declare const SCHEME_PATTERN: RegExp;
|
|
24
24
|
//# sourceMappingURL=debug-uri-utils.d.ts.map
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/********************************************************************************
|
|
3
|
-
* Copyright (C) 2022 STMicroelectronics and others.
|
|
4
|
-
*
|
|
5
|
-
* This program and the accompanying materials are made available under the
|
|
6
|
-
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
*
|
|
9
|
-
* This Source Code may also be made available under the following Secondary
|
|
10
|
-
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
* with the GNU Classpath Exception which is available at
|
|
13
|
-
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
*
|
|
15
|
-
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
********************************************************************************/
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.SCHEME_PATTERN = exports.DEBUG_SCHEME = void 0;
|
|
19
|
-
/**
|
|
20
|
-
* The URI scheme for debug URIs.
|
|
21
|
-
*/
|
|
22
|
-
exports.DEBUG_SCHEME = 'debug';
|
|
23
|
-
/**
|
|
24
|
-
* The pattern for URI schemes.
|
|
25
|
-
*/
|
|
26
|
-
exports.SCHEME_PATTERN = /^[a-zA-Z][a-zA-Z0-9\+\-\.]+:/;
|
|
1
|
+
"use strict";
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Copyright (C) 2022 STMicroelectronics and others.
|
|
4
|
+
*
|
|
5
|
+
* This program and the accompanying materials are made available under the
|
|
6
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
*
|
|
9
|
+
* This Source Code may also be made available under the following Secondary
|
|
10
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
* with the GNU Classpath Exception which is available at
|
|
13
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
*
|
|
15
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
********************************************************************************/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.SCHEME_PATTERN = exports.DEBUG_SCHEME = void 0;
|
|
19
|
+
/**
|
|
20
|
+
* The URI scheme for debug URIs.
|
|
21
|
+
*/
|
|
22
|
+
exports.DEBUG_SCHEME = 'debug';
|
|
23
|
+
/**
|
|
24
|
+
* The pattern for URI schemes.
|
|
25
|
+
*/
|
|
26
|
+
exports.SCHEME_PATTERN = /^[a-zA-Z][a-zA-Z0-9\+\-\.]+:/;
|
|
27
27
|
//# sourceMappingURL=debug-uri-utils.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { Event } from '@theia/core/lib/common/event';
|
|
2
|
-
import { DebugAdapter } from './debug-model';
|
|
3
|
-
import * as theia from '@theia/plugin';
|
|
4
|
-
/**
|
|
5
|
-
* A debug adapter for using the inline implementation from a plugin.
|
|
6
|
-
*/
|
|
7
|
-
export declare class InlineDebugAdapter implements DebugAdapter {
|
|
8
|
-
private debugAdapter;
|
|
9
|
-
private messageReceivedEmitter;
|
|
10
|
-
onMessageReceived: Event<string>;
|
|
11
|
-
onError: Event<Error>;
|
|
12
|
-
private closeEmitter;
|
|
13
|
-
onClose: Event<void>;
|
|
14
|
-
constructor(debugAdapter: theia.DebugAdapter);
|
|
15
|
-
start(): Promise<void>;
|
|
16
|
-
send(message: string): void;
|
|
17
|
-
stop(): Promise<void>;
|
|
18
|
-
}
|
|
1
|
+
import { Event } from '@theia/core/lib/common/event';
|
|
2
|
+
import { DebugAdapter } from './debug-model';
|
|
3
|
+
import * as theia from '@theia/plugin';
|
|
4
|
+
/**
|
|
5
|
+
* A debug adapter for using the inline implementation from a plugin.
|
|
6
|
+
*/
|
|
7
|
+
export declare class InlineDebugAdapter implements DebugAdapter {
|
|
8
|
+
private debugAdapter;
|
|
9
|
+
private messageReceivedEmitter;
|
|
10
|
+
onMessageReceived: Event<string>;
|
|
11
|
+
onError: Event<Error>;
|
|
12
|
+
private closeEmitter;
|
|
13
|
+
onClose: Event<void>;
|
|
14
|
+
constructor(debugAdapter: theia.DebugAdapter);
|
|
15
|
+
start(): Promise<void>;
|
|
16
|
+
send(message: string): void;
|
|
17
|
+
stop(): Promise<void>;
|
|
18
|
+
}
|
|
19
19
|
//# sourceMappingURL=inline-debug-adapter.d.ts.map
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2021 Red Hat, Inc. and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.InlineDebugAdapter = void 0;
|
|
19
|
-
const event_1 = require("@theia/core/lib/common/event");
|
|
20
|
-
/**
|
|
21
|
-
* A debug adapter for using the inline implementation from a plugin.
|
|
22
|
-
*/
|
|
23
|
-
class InlineDebugAdapter {
|
|
24
|
-
constructor(debugAdapter) {
|
|
25
|
-
this.debugAdapter = debugAdapter;
|
|
26
|
-
this.messageReceivedEmitter = new event_1.Emitter();
|
|
27
|
-
this.onMessageReceived = this.messageReceivedEmitter.event;
|
|
28
|
-
this.onError = event_1.Event.None;
|
|
29
|
-
this.closeEmitter = new event_1.Emitter();
|
|
30
|
-
this.onClose = this.closeEmitter.event;
|
|
31
|
-
this.debugAdapter.onDidSendMessage(msg => {
|
|
32
|
-
this.messageReceivedEmitter.fire(JSON.stringify(msg));
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
async start() {
|
|
36
|
-
}
|
|
37
|
-
send(message) {
|
|
38
|
-
this.debugAdapter.handleMessage(JSON.parse(message));
|
|
39
|
-
}
|
|
40
|
-
async stop() {
|
|
41
|
-
this.debugAdapter.dispose();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
exports.InlineDebugAdapter = InlineDebugAdapter;
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2021 Red Hat, Inc. and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.InlineDebugAdapter = void 0;
|
|
19
|
+
const event_1 = require("@theia/core/lib/common/event");
|
|
20
|
+
/**
|
|
21
|
+
* A debug adapter for using the inline implementation from a plugin.
|
|
22
|
+
*/
|
|
23
|
+
class InlineDebugAdapter {
|
|
24
|
+
constructor(debugAdapter) {
|
|
25
|
+
this.debugAdapter = debugAdapter;
|
|
26
|
+
this.messageReceivedEmitter = new event_1.Emitter();
|
|
27
|
+
this.onMessageReceived = this.messageReceivedEmitter.event;
|
|
28
|
+
this.onError = event_1.Event.None;
|
|
29
|
+
this.closeEmitter = new event_1.Emitter();
|
|
30
|
+
this.onClose = this.closeEmitter.event;
|
|
31
|
+
this.debugAdapter.onDidSendMessage(msg => {
|
|
32
|
+
this.messageReceivedEmitter.fire(JSON.stringify(msg));
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
async start() {
|
|
36
|
+
}
|
|
37
|
+
send(message) {
|
|
38
|
+
this.debugAdapter.handleMessage(JSON.parse(message));
|
|
39
|
+
}
|
|
40
|
+
async stop() {
|
|
41
|
+
this.debugAdapter.dispose();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.InlineDebugAdapter = InlineDebugAdapter;
|
|
45
45
|
//# sourceMappingURL=inline-debug-adapter.js.map
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { RawProcessFactory, ProcessManager } from '@theia/process/lib/node';
|
|
2
|
-
import { DebugAdapterExecutable, DebugAdapterSession, DebugAdapterSessionFactory, DebugAdapterFactory, DebugAdapter } from '../common/debug-model';
|
|
3
|
-
/**
|
|
4
|
-
* [DebugAdapterFactory](#DebugAdapterFactory) implementation based on
|
|
5
|
-
* launching the debug adapter as separate process.
|
|
6
|
-
*/
|
|
7
|
-
export declare class LaunchBasedDebugAdapterFactory implements DebugAdapterFactory {
|
|
8
|
-
protected readonly processFactory: RawProcessFactory;
|
|
9
|
-
protected readonly processManager: ProcessManager;
|
|
10
|
-
start(executable: DebugAdapterExecutable): DebugAdapter;
|
|
11
|
-
private childProcess;
|
|
12
|
-
connect(debugServerPort: number): DebugAdapter;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* [DebugAdapterSessionFactory](#DebugAdapterSessionFactory) implementation.
|
|
16
|
-
*/
|
|
17
|
-
export declare class DebugAdapterSessionFactoryImpl implements DebugAdapterSessionFactory {
|
|
18
|
-
get(sessionId: string, debugAdapter: DebugAdapter): DebugAdapterSession;
|
|
19
|
-
}
|
|
1
|
+
import { RawProcessFactory, ProcessManager } from '@theia/process/lib/node';
|
|
2
|
+
import { DebugAdapterExecutable, DebugAdapterSession, DebugAdapterSessionFactory, DebugAdapterFactory, DebugAdapter } from '../common/debug-model';
|
|
3
|
+
/**
|
|
4
|
+
* [DebugAdapterFactory](#DebugAdapterFactory) implementation based on
|
|
5
|
+
* launching the debug adapter as separate process.
|
|
6
|
+
*/
|
|
7
|
+
export declare class LaunchBasedDebugAdapterFactory implements DebugAdapterFactory {
|
|
8
|
+
protected readonly processFactory: RawProcessFactory;
|
|
9
|
+
protected readonly processManager: ProcessManager;
|
|
10
|
+
start(executable: DebugAdapterExecutable): DebugAdapter;
|
|
11
|
+
private childProcess;
|
|
12
|
+
connect(debugServerPort: number): DebugAdapter;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* [DebugAdapterSessionFactory](#DebugAdapterSessionFactory) implementation.
|
|
16
|
+
*/
|
|
17
|
+
export declare class DebugAdapterSessionFactoryImpl implements DebugAdapterSessionFactory {
|
|
18
|
+
get(sessionId: string, debugAdapter: DebugAdapter): DebugAdapterSession;
|
|
19
|
+
}
|
|
20
20
|
//# sourceMappingURL=debug-adapter-factory.d.ts.map
|
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2018 Red Hat, Inc. and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
-
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;
|
|
21
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
-
};
|
|
23
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
24
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
25
|
-
};
|
|
26
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.DebugAdapterSessionFactoryImpl = exports.LaunchBasedDebugAdapterFactory = void 0;
|
|
28
|
-
/*---------------------------------------------------------------------------------------------
|
|
29
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
30
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
31
|
-
*--------------------------------------------------------------------------------------------*/
|
|
32
|
-
// Some entities copied and modified from https://github.com/Microsoft/vscode-debugadapter-node/blob/master/adapter/src/protocol.ts
|
|
33
|
-
const net = require("net");
|
|
34
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
35
|
-
const node_1 = require("@theia/process/lib/node");
|
|
36
|
-
const debug_adapter_session_1 = require("../common/debug-adapter-session");
|
|
37
|
-
const application_package_1 = require("@theia/core/shared/@theia/application-package");
|
|
38
|
-
const stream_debug_adapter_1 = require("./stream-debug-adapter");
|
|
39
|
-
const common_1 = require("@theia/core/lib/common");
|
|
40
|
-
/**
|
|
41
|
-
* [DebugAdapterFactory](#DebugAdapterFactory) implementation based on
|
|
42
|
-
* launching the debug adapter as separate process.
|
|
43
|
-
*/
|
|
44
|
-
let LaunchBasedDebugAdapterFactory = class LaunchBasedDebugAdapterFactory {
|
|
45
|
-
start(executable) {
|
|
46
|
-
const process = this.childProcess(executable);
|
|
47
|
-
if (!process.process) {
|
|
48
|
-
throw new Error(`Could not start debug adapter process: ${JSON.stringify(executable)}`);
|
|
49
|
-
}
|
|
50
|
-
// FIXME: propagate onError + onExit
|
|
51
|
-
const provider = new stream_debug_adapter_1.ProcessDebugAdapter(process.process);
|
|
52
|
-
return provider;
|
|
53
|
-
}
|
|
54
|
-
childProcess(executable) {
|
|
55
|
-
const isForkOptions = (forkOptions) => (0, common_1.isObject)(forkOptions) && 'modulePath' in forkOptions;
|
|
56
|
-
const processOptions = { ...executable };
|
|
57
|
-
const options = { stdio: ['pipe', 'pipe', 2] };
|
|
58
|
-
if (isForkOptions(processOptions)) {
|
|
59
|
-
options.stdio.push('ipc');
|
|
60
|
-
options.env = application_package_1.environment.electron.runAsNodeEnv();
|
|
61
|
-
options.execArgv = executable.execArgv;
|
|
62
|
-
}
|
|
63
|
-
processOptions.options = options;
|
|
64
|
-
return this.processFactory(processOptions);
|
|
65
|
-
}
|
|
66
|
-
connect(debugServerPort) {
|
|
67
|
-
const socket = net.createConnection(debugServerPort);
|
|
68
|
-
// FIXME: propagate socket.on('error', ...) + socket.on('close', ...)
|
|
69
|
-
const provider = new stream_debug_adapter_1.SocketDebugAdapter(socket);
|
|
70
|
-
return provider;
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
__decorate([
|
|
74
|
-
(0, inversify_1.inject)(node_1.RawProcessFactory),
|
|
75
|
-
__metadata("design:type", Function)
|
|
76
|
-
], LaunchBasedDebugAdapterFactory.prototype, "processFactory", void 0);
|
|
77
|
-
__decorate([
|
|
78
|
-
(0, inversify_1.inject)(node_1.ProcessManager),
|
|
79
|
-
__metadata("design:type", node_1.ProcessManager)
|
|
80
|
-
], LaunchBasedDebugAdapterFactory.prototype, "processManager", void 0);
|
|
81
|
-
LaunchBasedDebugAdapterFactory = __decorate([
|
|
82
|
-
(0, inversify_1.injectable)()
|
|
83
|
-
], LaunchBasedDebugAdapterFactory);
|
|
84
|
-
exports.LaunchBasedDebugAdapterFactory = LaunchBasedDebugAdapterFactory;
|
|
85
|
-
/**
|
|
86
|
-
* [DebugAdapterSessionFactory](#DebugAdapterSessionFactory) implementation.
|
|
87
|
-
*/
|
|
88
|
-
let DebugAdapterSessionFactoryImpl = class DebugAdapterSessionFactoryImpl {
|
|
89
|
-
get(sessionId, debugAdapter) {
|
|
90
|
-
return new debug_adapter_session_1.DebugAdapterSessionImpl(sessionId, debugAdapter);
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
DebugAdapterSessionFactoryImpl = __decorate([
|
|
94
|
-
(0, inversify_1.injectable)()
|
|
95
|
-
], DebugAdapterSessionFactoryImpl);
|
|
96
|
-
exports.DebugAdapterSessionFactoryImpl = DebugAdapterSessionFactoryImpl;
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2018 Red Hat, Inc. and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
+
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;
|
|
21
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
+
};
|
|
23
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
24
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.DebugAdapterSessionFactoryImpl = exports.LaunchBasedDebugAdapterFactory = void 0;
|
|
28
|
+
/*---------------------------------------------------------------------------------------------
|
|
29
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
30
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
31
|
+
*--------------------------------------------------------------------------------------------*/
|
|
32
|
+
// Some entities copied and modified from https://github.com/Microsoft/vscode-debugadapter-node/blob/master/adapter/src/protocol.ts
|
|
33
|
+
const net = require("net");
|
|
34
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
35
|
+
const node_1 = require("@theia/process/lib/node");
|
|
36
|
+
const debug_adapter_session_1 = require("../common/debug-adapter-session");
|
|
37
|
+
const application_package_1 = require("@theia/core/shared/@theia/application-package");
|
|
38
|
+
const stream_debug_adapter_1 = require("./stream-debug-adapter");
|
|
39
|
+
const common_1 = require("@theia/core/lib/common");
|
|
40
|
+
/**
|
|
41
|
+
* [DebugAdapterFactory](#DebugAdapterFactory) implementation based on
|
|
42
|
+
* launching the debug adapter as separate process.
|
|
43
|
+
*/
|
|
44
|
+
let LaunchBasedDebugAdapterFactory = class LaunchBasedDebugAdapterFactory {
|
|
45
|
+
start(executable) {
|
|
46
|
+
const process = this.childProcess(executable);
|
|
47
|
+
if (!process.process) {
|
|
48
|
+
throw new Error(`Could not start debug adapter process: ${JSON.stringify(executable)}`);
|
|
49
|
+
}
|
|
50
|
+
// FIXME: propagate onError + onExit
|
|
51
|
+
const provider = new stream_debug_adapter_1.ProcessDebugAdapter(process.process);
|
|
52
|
+
return provider;
|
|
53
|
+
}
|
|
54
|
+
childProcess(executable) {
|
|
55
|
+
const isForkOptions = (forkOptions) => (0, common_1.isObject)(forkOptions) && 'modulePath' in forkOptions;
|
|
56
|
+
const processOptions = { ...executable };
|
|
57
|
+
const options = { stdio: ['pipe', 'pipe', 2] };
|
|
58
|
+
if (isForkOptions(processOptions)) {
|
|
59
|
+
options.stdio.push('ipc');
|
|
60
|
+
options.env = application_package_1.environment.electron.runAsNodeEnv();
|
|
61
|
+
options.execArgv = executable.execArgv;
|
|
62
|
+
}
|
|
63
|
+
processOptions.options = options;
|
|
64
|
+
return this.processFactory(processOptions);
|
|
65
|
+
}
|
|
66
|
+
connect(debugServerPort) {
|
|
67
|
+
const socket = net.createConnection(debugServerPort);
|
|
68
|
+
// FIXME: propagate socket.on('error', ...) + socket.on('close', ...)
|
|
69
|
+
const provider = new stream_debug_adapter_1.SocketDebugAdapter(socket);
|
|
70
|
+
return provider;
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
__decorate([
|
|
74
|
+
(0, inversify_1.inject)(node_1.RawProcessFactory),
|
|
75
|
+
__metadata("design:type", Function)
|
|
76
|
+
], LaunchBasedDebugAdapterFactory.prototype, "processFactory", void 0);
|
|
77
|
+
__decorate([
|
|
78
|
+
(0, inversify_1.inject)(node_1.ProcessManager),
|
|
79
|
+
__metadata("design:type", node_1.ProcessManager)
|
|
80
|
+
], LaunchBasedDebugAdapterFactory.prototype, "processManager", void 0);
|
|
81
|
+
LaunchBasedDebugAdapterFactory = __decorate([
|
|
82
|
+
(0, inversify_1.injectable)()
|
|
83
|
+
], LaunchBasedDebugAdapterFactory);
|
|
84
|
+
exports.LaunchBasedDebugAdapterFactory = LaunchBasedDebugAdapterFactory;
|
|
85
|
+
/**
|
|
86
|
+
* [DebugAdapterSessionFactory](#DebugAdapterSessionFactory) implementation.
|
|
87
|
+
*/
|
|
88
|
+
let DebugAdapterSessionFactoryImpl = class DebugAdapterSessionFactoryImpl {
|
|
89
|
+
get(sessionId, debugAdapter) {
|
|
90
|
+
return new debug_adapter_session_1.DebugAdapterSessionImpl(sessionId, debugAdapter);
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
DebugAdapterSessionFactoryImpl = __decorate([
|
|
94
|
+
(0, inversify_1.injectable)()
|
|
95
|
+
], DebugAdapterSessionFactoryImpl);
|
|
96
|
+
exports.DebugAdapterSessionFactoryImpl = DebugAdapterSessionFactoryImpl;
|
|
97
97
|
//# sourceMappingURL=debug-adapter-factory.js.map
|