@eclipse-glsp/server 2.8.0-next.7 → 2.8.0
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/lib/common/features/layout/computed-bounds-action-handler.d.ts +16 -1
- package/lib/common/features/layout/computed-bounds-action-handler.d.ts.map +1 -1
- package/lib/common/features/layout/computed-bounds-action-handler.js +41 -3
- package/lib/common/features/layout/computed-bounds-action-handler.js.map +1 -1
- package/lib/common/launch/glsp-server-launcher.d.ts +8 -1
- package/lib/common/launch/glsp-server-launcher.d.ts.map +1 -1
- package/lib/common/launch/glsp-server-launcher.js +11 -1
- package/lib/common/launch/glsp-server-launcher.js.map +1 -1
- package/lib/common/launch/jsonrpc-server-launcher.d.ts +51 -2
- package/lib/common/launch/jsonrpc-server-launcher.d.ts.map +1 -1
- package/lib/common/launch/jsonrpc-server-launcher.js +82 -3
- package/lib/common/launch/jsonrpc-server-launcher.js.map +1 -1
- package/lib/common/utils/layout-util.d.ts +5 -5
- package/lib/common/utils/layout-util.d.ts.map +1 -1
- package/lib/common/utils/layout-util.js +12 -11
- package/lib/common/utils/layout-util.js.map +1 -1
- package/lib/node/launch/socket-server-launcher.d.ts +39 -2
- package/lib/node/launch/socket-server-launcher.d.ts.map +1 -1
- package/lib/node/launch/socket-server-launcher.js +50 -31
- package/lib/node/launch/socket-server-launcher.js.map +1 -1
- package/lib/node/launch/websocket-server-launcher.d.ts +36 -5
- package/lib/node/launch/websocket-server-launcher.d.ts.map +1 -1
- package/lib/node/launch/websocket-server-launcher.js +53 -12
- package/lib/node/launch/websocket-server-launcher.js.map +1 -1
- package/package.json +3 -3
- package/src/common/features/layout/computed-bounds-action-handler.ts +52 -4
- package/src/common/launch/glsp-server-launcher.ts +12 -1
- package/src/common/launch/jsonrpc-server-launcher.ts +89 -2
- package/src/common/utils/layout-util.ts +13 -12
- package/src/node/launch/socket-server-launcher.ts +54 -31
- package/src/node/launch/websocket-server-launcher.ts +72 -14
|
@@ -14,8 +14,9 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { GModelRoot } from '@eclipse-glsp/graph';
|
|
17
|
-
import { Action, ComputedBoundsAction, MaybePromise } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { Action, ComputedBoundsAction, ElementAndAlignment, ElementAndBounds, ElementAndRoutingPoints, MaybePromise } from '@eclipse-glsp/protocol';
|
|
18
18
|
import { ActionHandler } from '../../actions/action-handler';
|
|
19
|
+
import { Logger } from '../../utils/logger';
|
|
19
20
|
import { ModelState } from '../model/model-state';
|
|
20
21
|
import { ModelSubmissionHandler } from '../model/model-submission-handler';
|
|
21
22
|
/**
|
|
@@ -26,9 +27,23 @@ import { ModelSubmissionHandler } from '../model/model-submission-handler';
|
|
|
26
27
|
export declare class ComputedBoundsActionHandler implements ActionHandler {
|
|
27
28
|
protected submissionHandler: ModelSubmissionHandler;
|
|
28
29
|
protected modelState: ModelState;
|
|
30
|
+
protected logger: Logger;
|
|
29
31
|
actionKinds: string[];
|
|
30
32
|
execute(action: ComputedBoundsAction): MaybePromise<Action[]>;
|
|
33
|
+
/**
|
|
34
|
+
* Applies everything the client computed for the given model.
|
|
35
|
+
*
|
|
36
|
+
* An entry that cannot be applied is skipped and logged rather than treated as an error.
|
|
37
|
+
*/
|
|
31
38
|
protected applyBounds(root: GModelRoot, action: ComputedBoundsAction): void;
|
|
39
|
+
protected applyElementBounds(allBounds: ElementAndBounds[]): void;
|
|
40
|
+
protected applyAlignments(alignments: ElementAndAlignment[]): void;
|
|
41
|
+
/**
|
|
42
|
+
* Applies the computed routes.
|
|
43
|
+
*
|
|
44
|
+
* A skipped route is logged at debug level, an edge the client has not finished routing yet is expected.
|
|
45
|
+
*/
|
|
46
|
+
protected applyRoutes(routes: ElementAndRoutingPoints[]): void;
|
|
32
47
|
priority?: number | undefined;
|
|
33
48
|
}
|
|
34
49
|
//# sourceMappingURL=computed-bounds-action-handler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computed-bounds-action-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/features/layout/computed-bounds-action-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"computed-bounds-action-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/features/layout/computed-bounds-action-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACH,MAAM,EACN,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EAEvB,YAAY,EACf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E;;;;GAIG;AACH,qBACa,2BAA4B,YAAW,aAAa;IAE7D,SAAS,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAGpD,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IAGjC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB,WAAW,WAA+B;IAC1C,OAAO,CAAC,MAAM,EAAE,oBAAoB,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;IAa7D;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAM3E,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,EAAE,GAAG,IAAI;IASjE,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,mBAAmB,EAAE,GAAG,IAAI;IASlE;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,uBAAuB,EAAE,GAAG,IAAI;IAS9D,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC"}
|
|
@@ -13,6 +13,7 @@ exports.ComputedBoundsActionHandler = void 0;
|
|
|
13
13
|
const protocol_1 = require("@eclipse-glsp/protocol");
|
|
14
14
|
const inversify_1 = require("inversify");
|
|
15
15
|
const layout_util_1 = require("../../utils/layout-util");
|
|
16
|
+
const logger_1 = require("../../utils/logger");
|
|
16
17
|
const model_state_1 = require("../model/model-state");
|
|
17
18
|
const model_submission_handler_1 = require("../model/model-submission-handler");
|
|
18
19
|
/**
|
|
@@ -32,11 +33,44 @@ let ComputedBoundsActionHandler = class ComputedBoundsActionHandler {
|
|
|
32
33
|
}
|
|
33
34
|
return [];
|
|
34
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Applies everything the client computed for the given model.
|
|
38
|
+
*
|
|
39
|
+
* An entry that cannot be applied is skipped and logged rather than treated as an error.
|
|
40
|
+
*/
|
|
35
41
|
applyBounds(root, action) {
|
|
42
|
+
this.applyElementBounds(action.bounds);
|
|
43
|
+
this.applyAlignments(action.alignments ?? []);
|
|
44
|
+
this.applyRoutes(action.routes ?? []);
|
|
45
|
+
}
|
|
46
|
+
applyElementBounds(allBounds) {
|
|
47
|
+
const index = this.modelState.index;
|
|
48
|
+
allBounds.forEach(bounds => {
|
|
49
|
+
if (!(0, layout_util_1.applyElementAndBounds)(bounds, index)) {
|
|
50
|
+
this.logger.warn(`Skipped computed bounds of element '${bounds.elementId}'`);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
applyAlignments(alignments) {
|
|
36
55
|
const index = this.modelState.index;
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
56
|
+
alignments.forEach(alignment => {
|
|
57
|
+
if (!(0, layout_util_1.applyAlignment)(alignment, index)) {
|
|
58
|
+
this.logger.warn(`Skipped computed alignment of element '${alignment.elementId}'`);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Applies the computed routes.
|
|
64
|
+
*
|
|
65
|
+
* A skipped route is logged at debug level, an edge the client has not finished routing yet is expected.
|
|
66
|
+
*/
|
|
67
|
+
applyRoutes(routes) {
|
|
68
|
+
const index = this.modelState.index;
|
|
69
|
+
routes.forEach(route => {
|
|
70
|
+
if (!(0, layout_util_1.applyRoute)(route, index)) {
|
|
71
|
+
this.logger.debug(`Skipped computed route of element '${route.elementId}'`);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
40
74
|
}
|
|
41
75
|
};
|
|
42
76
|
exports.ComputedBoundsActionHandler = ComputedBoundsActionHandler;
|
|
@@ -48,6 +82,10 @@ __decorate([
|
|
|
48
82
|
(0, inversify_1.inject)(model_state_1.ModelState),
|
|
49
83
|
__metadata("design:type", Object)
|
|
50
84
|
], ComputedBoundsActionHandler.prototype, "modelState", void 0);
|
|
85
|
+
__decorate([
|
|
86
|
+
(0, inversify_1.inject)(logger_1.Logger),
|
|
87
|
+
__metadata("design:type", logger_1.Logger)
|
|
88
|
+
], ComputedBoundsActionHandler.prototype, "logger", void 0);
|
|
51
89
|
exports.ComputedBoundsActionHandler = ComputedBoundsActionHandler = __decorate([
|
|
52
90
|
(0, inversify_1.injectable)()
|
|
53
91
|
], ComputedBoundsActionHandler);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computed-bounds-action-handler.js","sourceRoot":"","sources":["../../../../src/common/features/layout/computed-bounds-action-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAgBA,
|
|
1
|
+
{"version":3,"file":"computed-bounds-action-handler.js","sourceRoot":"","sources":["../../../../src/common/features/layout/computed-bounds-action-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAgBA,qDAQgC;AAChC,yCAA+C;AAE/C,yDAA4F;AAC5F,+CAA4C;AAC5C,sDAAkD;AAClD,gFAA2E;AAE3E;;;;GAIG;AAEI,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAAjC;QAUH,gBAAW,GAAG,CAAC,+BAAoB,CAAC,IAAI,CAAC,CAAC;IA0D9C,CAAC;IAzDG,OAAO,CAAC,MAA4B;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QACnC,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAC7C,SAAS,EACT,0BAAe,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAC/F,CAAC;QACN,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAED;;;;OAIG;IACO,WAAW,CAAC,IAAgB,EAAE,MAA4B;QAChE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAES,kBAAkB,CAAC,SAA6B;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QACpC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,IAAI,CAAC,IAAA,mCAAqB,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;YACjF,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAES,eAAe,CAAC,UAAiC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QACpC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC3B,IAAI,CAAC,IAAA,4BAAc,EAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC;YACvF,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACO,WAAW,CAAC,MAAiC;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACnB,IAAI,CAAC,IAAA,wBAAU,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YAChF,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CAGJ,CAAA;AApEY,kEAA2B;AAE1B;IADT,IAAA,kBAAM,EAAC,iDAAsB,CAAC;8BACF,iDAAsB;sEAAC;AAG1C;IADT,IAAA,kBAAM,EAAC,wBAAU,CAAC;;+DACc;AAGvB;IADT,IAAA,kBAAM,EAAC,eAAM,CAAC;8BACG,eAAM;2DAAC;sCARhB,2BAA2B;IADvC,IAAA,sBAAU,GAAE;GACA,2BAA2B,CAoEvC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2022-
|
|
2
|
+
* Copyright (c) 2022-2026 STMicroelectronics and others.
|
|
3
3
|
*
|
|
4
4
|
* This program and the accompanying materials are made available under the
|
|
5
5
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -26,6 +26,13 @@ export declare abstract class GLSPServerLauncher<T> implements Disposable {
|
|
|
26
26
|
configure(serverModule: ServerModule, ...additionalModules: ContainerModule[]): void;
|
|
27
27
|
createContainer(...additionalModules: ContainerModule[]): Container;
|
|
28
28
|
start(startParams: T): MaybePromise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Registers what {@link shutdown} has to release for the launch that is about to start.
|
|
31
|
+
*
|
|
32
|
+
* Called once per launch, because {@link dispose} empties the collection it registers into. A subclass that holds
|
|
33
|
+
* resources for the duration of a launch overrides this instead of registering them in its constructor.
|
|
34
|
+
*/
|
|
35
|
+
protected registerDisposables(): void;
|
|
29
36
|
protected abstract run(startParams: T): MaybePromise<void>;
|
|
30
37
|
shutdown(): MaybePromise<void>;
|
|
31
38
|
protected stop(): MaybePromise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glsp-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/common/launch/glsp-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,eAAe,EAAgC,MAAM,WAAW,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,8BACsB,kBAAkB,CAAC,CAAC,CAAE,YAAW,UAAU;IAC7C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzC,SAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAM;IAC3C,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,SAAS,uBAA8B;IAET,SAAS,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE9E,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,iBAAiB,EAAE,eAAe,EAAE,GAAG,IAAI;IAIpF,eAAe,CAAC,GAAG,iBAAiB,EAAE,eAAe,EAAE,GAAG,SAAS;IAMnE,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"glsp-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/common/launch/glsp-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,eAAe,EAAgC,MAAM,WAAW,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,8BACsB,kBAAkB,CAAC,CAAC,CAAE,YAAW,UAAU;IAC7C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzC,SAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAM;IAC3C,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,SAAS,uBAA8B;IAET,SAAS,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE9E,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,iBAAiB,EAAE,eAAe,EAAE,GAAG,IAAI;IAIpF,eAAe,CAAC,GAAG,iBAAiB,EAAE,eAAe,EAAE,GAAG,SAAS;IAMnE,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;IASzC;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;IAE1D,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC;IAU9B,SAAS,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC;IAIpC,OAAO,IAAI,IAAI;IAIf,IAAI,OAAO,IAAI,eAAe,EAAE,CAK/B;CACJ"}
|
|
@@ -11,7 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.GLSPServerLauncher = void 0;
|
|
13
13
|
/********************************************************************************
|
|
14
|
-
* Copyright (c) 2022-
|
|
14
|
+
* Copyright (c) 2022-2026 STMicroelectronics and others.
|
|
15
15
|
*
|
|
16
16
|
* This program and the accompanying materials are made available under the
|
|
17
17
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -45,10 +45,20 @@ let GLSPServerLauncher = class GLSPServerLauncher {
|
|
|
45
45
|
start(startParams) {
|
|
46
46
|
if (!this.running) {
|
|
47
47
|
this.running = true;
|
|
48
|
+
this.registerDisposables();
|
|
48
49
|
return this.run(startParams);
|
|
49
50
|
}
|
|
50
51
|
this.logger.warn('Could not start launcher. Launcher is already running!');
|
|
51
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Registers what {@link shutdown} has to release for the launch that is about to start.
|
|
55
|
+
*
|
|
56
|
+
* Called once per launch, because {@link dispose} empties the collection it registers into. A subclass that holds
|
|
57
|
+
* resources for the duration of a launch overrides this instead of registering them in its constructor.
|
|
58
|
+
*/
|
|
59
|
+
registerDisposables() {
|
|
60
|
+
// nothing to release by default
|
|
61
|
+
}
|
|
52
62
|
shutdown() {
|
|
53
63
|
if (this.running) {
|
|
54
64
|
this.logger.info('Shutdown GLSPServerLauncher');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glsp-server-launcher.js","sourceRoot":"","sources":["../../../src/common/launch/glsp-server-launcher.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAwF;AACxF,yCAAqF;AAErF,mEAA+D;AAC/D,4CAAyC;AAGlC,IAAe,kBAAkB,GAAjC,MAAe,kBAAkB;IAAjC;QAGO,aAAQ,GAAsB,EAAE,CAAC;QAEjC,cAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"glsp-server-launcher.js","sourceRoot":"","sources":["../../../src/common/launch/glsp-server-launcher.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAwF;AACxF,yCAAqF;AAErF,mEAA+D;AAC/D,4CAAyC;AAGlC,IAAe,kBAAkB,GAAjC,MAAe,kBAAkB;IAAjC;QAGO,aAAQ,GAAsB,EAAE,CAAC;QAEjC,cAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;IA2DrD,CAAC;IAvDG,SAAS,CAAC,YAA0B,EAAE,GAAG,iBAAoC;QACzE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,iBAAiB,CAAC,CAAC;IAC3D,CAAC;IAED,eAAe,CAAC,GAAG,iBAAoC;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,qBAAS,EAAE,CAAC;QAC9F,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,iBAAiB,CAAC,CAAC;QACvD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,WAAc;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACO,mBAAmB;QACzB,gCAAgC;IACpC,CAAC;IAID,QAAQ;QACJ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAC1E,CAAC;IAES,IAAI;QACV,IAAI,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO;QACP,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ,CAAA;AAhEqB,gDAAkB;AACV;IAAzB,IAAA,kBAAM,EAAC,eAAM,CAAC;8BAAmB,eAAM;kDAAC;AAMS;IAAjD,IAAA,kBAAM,EAAC,wCAAkB,CAAC;IAAE,IAAA,oBAAQ,GAAE;8BAA6B,qBAAS;2DAAC;6BAP5D,kBAAkB;IADvC,IAAA,sBAAU,GAAE;GACS,kBAAkB,CAgEvC"}
|
|
@@ -13,8 +13,9 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { GLSPClientProxy, GLSPServer } from '@eclipse-glsp/protocol';
|
|
16
|
+
import { Deferred, GLSPClientProxy, GLSPServer } from '@eclipse-glsp/protocol';
|
|
17
17
|
import { Container, ContainerModule } from 'inversify';
|
|
18
|
+
import * as net from 'net';
|
|
18
19
|
import * as jsonrpc from 'vscode-jsonrpc';
|
|
19
20
|
import { Logger } from '../utils/logger';
|
|
20
21
|
import { GLSPServerLauncher } from './glsp-server-launcher';
|
|
@@ -28,7 +29,55 @@ export declare abstract class JsonRpcGLSPServerLauncher<T> extends GLSPServerLau
|
|
|
28
29
|
protected logger: Logger;
|
|
29
30
|
protected serverInstances: Map<jsonrpc.MessageConnection, JsonRpcServerInstance>;
|
|
30
31
|
protected startupCompleteMessage: string;
|
|
31
|
-
|
|
32
|
+
protected listeningAddress: Deferred<net.AddressInfo>;
|
|
33
|
+
/**
|
|
34
|
+
* Resolves with the address the server bound to once it is listening, and rejects if it never gets there.
|
|
35
|
+
*
|
|
36
|
+
* Launching with port `0` lets the operating system pick a free port, so the bound address is not necessarily the
|
|
37
|
+
* requested one. Settles once per launch and keeps that value, so use {@link port} for the current state. Reading
|
|
38
|
+
* this before {@link start} is fine, the promise handed out is the one that launch settles.
|
|
39
|
+
*/
|
|
40
|
+
get listening(): Promise<net.AddressInfo>;
|
|
41
|
+
/**
|
|
42
|
+
* The port the server is currently listening on, or `undefined` if it is not.
|
|
43
|
+
*
|
|
44
|
+
* Await {@link listening} rather than polling this while the server is still starting up.
|
|
45
|
+
*/
|
|
46
|
+
get port(): number | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* The socket that {@link port} reports on, or `undefined` before the first launch.
|
|
49
|
+
*
|
|
50
|
+
* A launcher that binds a socket overrides this, the default reports no address at all.
|
|
51
|
+
*/
|
|
52
|
+
protected getServerSocket(): net.Server | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* Arms {@link listening} for a launch.
|
|
55
|
+
*
|
|
56
|
+
* An unresolved promise is kept, so a caller that grabbed {@link listening} before {@link start} gets the one this
|
|
57
|
+
* launch settles. A settled one is replaced, so a restart is not handed the previous result.
|
|
58
|
+
*/
|
|
59
|
+
protected resetListening(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Resolves {@link listening} with the address the given server bound to.
|
|
62
|
+
*
|
|
63
|
+
* @param server The server that reported itself as listening.
|
|
64
|
+
* @returns The bound address, or `undefined` if it cannot be used, in which case the launcher is shut down.
|
|
65
|
+
*/
|
|
66
|
+
protected settleListening(server: net.Server): net.AddressInfo | undefined;
|
|
67
|
+
/**
|
|
68
|
+
* Invoked when the server socket fails, e.g. because the requested port is already in use.
|
|
69
|
+
*
|
|
70
|
+
* @param error The reason the socket failed.
|
|
71
|
+
*/
|
|
72
|
+
protected handleError(error: Error): void;
|
|
73
|
+
/**
|
|
74
|
+
* Reports that the server will not accept requests, rejects {@link listening} and shuts the launcher down.
|
|
75
|
+
*
|
|
76
|
+
* @param message The reason the server is not usable.
|
|
77
|
+
* @param cause The underlying error, if the reason was one.
|
|
78
|
+
*/
|
|
79
|
+
protected failToListen(message: string, cause?: Error): void;
|
|
80
|
+
protected registerDisposables(): void;
|
|
32
81
|
protected disposeServerInstance(instance: JsonRpcServerInstance): void;
|
|
33
82
|
protected createServerInstance(clientConnection: jsonrpc.MessageConnection): void;
|
|
34
83
|
protected createJsonRpcModule(clientConnection: jsonrpc.MessageConnection): ContainerModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonrpc-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/common/launch/jsonrpc-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,
|
|
1
|
+
{"version":3,"file":"jsonrpc-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/common/launch/jsonrpc-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,QAAQ,EAER,eAAe,EACf,UAAU,EAIb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAsB,MAAM,WAAW,CAAC;AAC3E,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,eAAO,MAAM,qBAAqB,iEAAiE,CAAC;AAEpG,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC,iBAAiB,CAAC;IAC5C,SAAS,EAAE,SAAS,CAAC;CACxB;AAED,8BACsB,yBAAyB,CAAC,CAAC,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;IAC5E,UACmB,MAAM,EAAE,MAAM,CAAC;IAElC,SAAS,CAAC,eAAe,wDAA+D;IACxF,SAAS,CAAC,sBAAsB,SAAyB;IAEzD,SAAS,CAAC,gBAAgB,4BAAmC;IAE7D;;;;;;OAMG;IACH,IAAI,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAExC;IAED;;;;OAIG;IACH,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAG7B;IAED;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS;IAInD;;;;;OAKG;IACH,SAAS,CAAC,cAAc,IAAI,IAAI;IAMhC;;;;;OAKG;IACH,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,WAAW,GAAG,SAAS;IAc1E;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAIzC;;;;;OAKG;IACH,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;cAMzC,mBAAmB,IAAI,IAAI;IAS9C,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAOtE,SAAS,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,CAAC,iBAAiB,GAAG,IAAI;IAQjF,SAAS,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,OAAO,CAAC,iBAAiB,GAAG,eAAe;IAU3F,SAAS,CAAC,yBAAyB,CAAC,cAAc,EAAE,qBAAqB,GAAG,IAAI;IAahF,SAAS,CAAC,iBAAiB,CAAC,cAAc,EAAE,qBAAqB,GAAG,eAAe;CAKtF"}
|
|
@@ -32,9 +32,89 @@ const glsp_server_launcher_1 = require("./glsp-server-launcher");
|
|
|
32
32
|
exports.START_UP_COMPLETE_MSG = '[GLSP-Server]:Startup completed. Accepting requests on port:';
|
|
33
33
|
let JsonRpcGLSPServerLauncher = class JsonRpcGLSPServerLauncher extends glsp_server_launcher_1.GLSPServerLauncher {
|
|
34
34
|
constructor() {
|
|
35
|
-
super();
|
|
35
|
+
super(...arguments);
|
|
36
36
|
this.serverInstances = new Map();
|
|
37
37
|
this.startupCompleteMessage = exports.START_UP_COMPLETE_MSG;
|
|
38
|
+
this.listeningAddress = new protocol_1.Deferred();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Resolves with the address the server bound to once it is listening, and rejects if it never gets there.
|
|
42
|
+
*
|
|
43
|
+
* Launching with port `0` lets the operating system pick a free port, so the bound address is not necessarily the
|
|
44
|
+
* requested one. Settles once per launch and keeps that value, so use {@link port} for the current state. Reading
|
|
45
|
+
* this before {@link start} is fine, the promise handed out is the one that launch settles.
|
|
46
|
+
*/
|
|
47
|
+
get listening() {
|
|
48
|
+
return this.listeningAddress.promise;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The port the server is currently listening on, or `undefined` if it is not.
|
|
52
|
+
*
|
|
53
|
+
* Await {@link listening} rather than polling this while the server is still starting up.
|
|
54
|
+
*/
|
|
55
|
+
get port() {
|
|
56
|
+
const address = this.getServerSocket()?.address();
|
|
57
|
+
return address && typeof address !== 'string' ? address.port : undefined;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The socket that {@link port} reports on, or `undefined` before the first launch.
|
|
61
|
+
*
|
|
62
|
+
* A launcher that binds a socket overrides this, the default reports no address at all.
|
|
63
|
+
*/
|
|
64
|
+
getServerSocket() {
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Arms {@link listening} for a launch.
|
|
69
|
+
*
|
|
70
|
+
* An unresolved promise is kept, so a caller that grabbed {@link listening} before {@link start} gets the one this
|
|
71
|
+
* launch settles. A settled one is replaced, so a restart is not handed the previous result.
|
|
72
|
+
*/
|
|
73
|
+
resetListening() {
|
|
74
|
+
if (this.listeningAddress.state !== 'unresolved') {
|
|
75
|
+
this.listeningAddress = new protocol_1.Deferred();
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Resolves {@link listening} with the address the given server bound to.
|
|
80
|
+
*
|
|
81
|
+
* @param server The server that reported itself as listening.
|
|
82
|
+
* @returns The bound address, or `undefined` if it cannot be used, in which case the launcher is shut down.
|
|
83
|
+
*/
|
|
84
|
+
settleListening(server) {
|
|
85
|
+
const addressInfo = server.address();
|
|
86
|
+
if (!addressInfo) {
|
|
87
|
+
this.failToListen('Could not resolve GLSP Server address info.');
|
|
88
|
+
return undefined;
|
|
89
|
+
}
|
|
90
|
+
if (typeof addressInfo === 'string') {
|
|
91
|
+
this.failToListen(`GLSP Server is unexpectedly listening to pipe or domain socket "${addressInfo}".`);
|
|
92
|
+
return undefined;
|
|
93
|
+
}
|
|
94
|
+
this.listeningAddress.resolve(addressInfo);
|
|
95
|
+
return addressInfo;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Invoked when the server socket fails, e.g. because the requested port is already in use.
|
|
99
|
+
*
|
|
100
|
+
* @param error The reason the socket failed.
|
|
101
|
+
*/
|
|
102
|
+
handleError(error) {
|
|
103
|
+
this.failToListen(`GLSP server socket error. ${error.message}`, error);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Reports that the server will not accept requests, rejects {@link listening} and shuts the launcher down.
|
|
107
|
+
*
|
|
108
|
+
* @param message The reason the server is not usable.
|
|
109
|
+
* @param cause The underlying error, if the reason was one.
|
|
110
|
+
*/
|
|
111
|
+
failToListen(message, cause) {
|
|
112
|
+
this.logger.error(`${message} Shutting down.`);
|
|
113
|
+
this.listeningAddress.reject(cause ?? new Error(message));
|
|
114
|
+
this.shutdown();
|
|
115
|
+
}
|
|
116
|
+
registerDisposables() {
|
|
117
|
+
super.registerDisposables();
|
|
38
118
|
this.toDispose.push(protocol_1.Disposable.create(() => {
|
|
39
119
|
this.serverInstances.forEach(instance => this.disposeServerInstance(instance));
|
|
40
120
|
}));
|
|
@@ -81,7 +161,6 @@ __decorate([
|
|
|
81
161
|
__metadata("design:type", logger_1.Logger)
|
|
82
162
|
], JsonRpcGLSPServerLauncher.prototype, "logger", void 0);
|
|
83
163
|
exports.JsonRpcGLSPServerLauncher = JsonRpcGLSPServerLauncher = __decorate([
|
|
84
|
-
(0, inversify_1.injectable)()
|
|
85
|
-
__metadata("design:paramtypes", [])
|
|
164
|
+
(0, inversify_1.injectable)()
|
|
86
165
|
], JsonRpcGLSPServerLauncher);
|
|
87
166
|
//# sourceMappingURL=jsonrpc-server-launcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonrpc-server-launcher.js","sourceRoot":"","sources":["../../../src/common/launch/jsonrpc-server-launcher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,
|
|
1
|
+
{"version":3,"file":"jsonrpc-server-launcher.js","sourceRoot":"","sources":["../../../src/common/launch/jsonrpc-server-launcher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,qDAQgC;AAChC,yCAA2E;AAG3E,4CAAyC;AACzC,iEAA4D;AAE/C,QAAA,qBAAqB,GAAG,8DAA8D,CAAC;AAS7F,IAAe,yBAAyB,GAAxC,MAAe,yBAA6B,SAAQ,yCAAqB;IAAzE;;QAIO,oBAAe,GAAG,IAAI,GAAG,EAAoD,CAAC;QAC9E,2BAAsB,GAAG,6BAAqB,CAAC;QAE/C,qBAAgB,GAAG,IAAI,mBAAQ,EAAmB,CAAC;IAyIjE,CAAC;IAvIG;;;;;;OAMG;IACH,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,CAAC;QAClD,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,CAAC;IAED;;;;OAIG;IACO,eAAe;QACrB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACO,cAAc;QACpB,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;YAC/C,IAAI,CAAC,gBAAgB,GAAG,IAAI,mBAAQ,EAAmB,CAAC;QAC5D,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACO,eAAe,CAAC,MAAkB;QACxC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,CAAC,6CAA6C,CAAC,CAAC;YACjE,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,YAAY,CAAC,mEAAmE,WAAW,IAAI,CAAC,CAAC;YACtG,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3C,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACO,WAAW,CAAC,KAAY;QAC9B,IAAI,CAAC,YAAY,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACO,YAAY,CAAC,OAAe,EAAE,KAAa;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,iBAAiB,CAAC,CAAC;QAC/C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEkB,mBAAmB;QAClC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,qBAAU,CAAC,MAAM,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnF,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAES,qBAAqB,CAAC,QAA+B;QAC3D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACvD,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3B,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC/B,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;IAES,oBAAoB,CAAC,gBAA2C;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACnF,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAa,qBAAU,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;QACzD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAES,mBAAmB,CAAC,gBAA2C;QACrE,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,0BAAe,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;gBACvC,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,CAAC,CAAC;gBACxD,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;gBACnC,OAAO,KAAK,CAAC;YACjB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAES,yBAAyB,CAAC,cAAqC;QACrE,IAAA,oCAAyB,EAAC,cAAc,CAAC,gBAAgB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;QAElF,cAAc,CAAC,gBAAgB,CAAC,cAAc,CAAC,4BAAiB,CAAC,oBAAoB,EAAE,GAAG,EAAE,CACxF,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAC7C,CAAC;QACF,+FAA+F;QAC/F,yCAAyC;QACzC,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC,CAAC;QAE1F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IACxD,CAAC;IAES,iBAAiB,CAAC,cAAqC;QAC7D,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,6BAAkB,CAAC,CAAC;QACnE,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAClD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAhJqB,8DAAyB;AAExB;IADlB,IAAA,kBAAM,EAAC,eAAM,CAAC;8BACY,eAAM;yDAAC;oCAFhB,yBAAyB;IAD9C,IAAA,sBAAU,GAAE;GACS,yBAAyB,CAgJ9C"}
|
|
@@ -21,7 +21,7 @@ import { GModelIndex } from '../features/model/gmodel-index';
|
|
|
21
21
|
*
|
|
22
22
|
* @param bounds The new bounds.
|
|
23
23
|
* @param index The model index.
|
|
24
|
-
* @returns The changed element.
|
|
24
|
+
* @returns The changed element, or `undefined` if the bounds could not be applied to any element.
|
|
25
25
|
*/
|
|
26
26
|
export declare function applyElementAndBounds(bounds: ElementAndBounds, index: GModelIndex): GBoundsAware | undefined;
|
|
27
27
|
/**
|
|
@@ -29,17 +29,17 @@ export declare function applyElementAndBounds(bounds: ElementAndBounds, index: G
|
|
|
29
29
|
*
|
|
30
30
|
* @param alignment The new alignment.
|
|
31
31
|
* @param index The model index.
|
|
32
|
-
* @returns The changed element.
|
|
32
|
+
* @returns The changed element, or `undefined` if the alignment could not be applied to any element.
|
|
33
33
|
*/
|
|
34
34
|
export declare function applyAlignment(alignment: ElementAndAlignment, index: GModelIndex): GAlignable | undefined;
|
|
35
35
|
/**
|
|
36
|
-
* Applies the new route to the model.
|
|
36
|
+
* Applies the new route to the model. A route needs at least a source and a target point to describe an edge.
|
|
37
37
|
*
|
|
38
38
|
* @param route The new route.
|
|
39
39
|
* @param index The model index.
|
|
40
|
-
* @returns The changed
|
|
40
|
+
* @returns The changed edge, or `undefined` if the route could not be applied to any edge.
|
|
41
41
|
*/
|
|
42
|
-
export declare function applyRoute(route: ElementAndRoutingPoints, index: GModelIndex): GEdge;
|
|
42
|
+
export declare function applyRoute(route: ElementAndRoutingPoints, index: GModelIndex): GEdge | undefined;
|
|
43
43
|
/**
|
|
44
44
|
* Returns the complete route of the given edge. The route, as opposed to the routing points, also contain the source
|
|
45
45
|
* and target point.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-util.d.ts","sourceRoot":"","sources":["../../../src/common/utils/layout-util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAU,aAAa,EAA4C,MAAM,qBAAqB,CAAC;AACvI,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAI7D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,CAU5G;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,CAOzG;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"layout-util.d.ts","sourceRoot":"","sources":["../../../src/common/utils/layout-util.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAU,aAAa,EAA4C,MAAM,qBAAqB,CAAC;AACvI,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAI7D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,CAU5G;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,CAOzG;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,KAAK,GAAG,SAAS,CAqBhG;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,uBAAuB,CAc7D;AAED,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,KAAK,CAIpG;AACD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,GAAG,KAAK,GAAG,SAAS,CAUxG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,GAAG,YAAY,GAAG,KAAK,CAoB1G"}
|
|
@@ -30,11 +30,11 @@ const glsp_server_error_1 = require("./glsp-server-error");
|
|
|
30
30
|
*
|
|
31
31
|
* @param bounds The new bounds.
|
|
32
32
|
* @param index The model index.
|
|
33
|
-
* @returns The changed element.
|
|
33
|
+
* @returns The changed element, or `undefined` if the bounds could not be applied to any element.
|
|
34
34
|
*/
|
|
35
35
|
function applyElementAndBounds(bounds, index) {
|
|
36
|
-
const element =
|
|
37
|
-
if ((0, graph_1.isGBoundsAware)(element)) {
|
|
36
|
+
const element = index.find(bounds.elementId);
|
|
37
|
+
if (element && (0, graph_1.isGBoundsAware)(element)) {
|
|
38
38
|
if (bounds.newPosition !== undefined) {
|
|
39
39
|
element.position = bounds.newPosition;
|
|
40
40
|
}
|
|
@@ -48,30 +48,31 @@ function applyElementAndBounds(bounds, index) {
|
|
|
48
48
|
*
|
|
49
49
|
* @param alignment The new alignment.
|
|
50
50
|
* @param index The model index.
|
|
51
|
-
* @returns The changed element.
|
|
51
|
+
* @returns The changed element, or `undefined` if the alignment could not be applied to any element.
|
|
52
52
|
*/
|
|
53
53
|
function applyAlignment(alignment, index) {
|
|
54
|
-
const element =
|
|
55
|
-
if ((0, graph_1.isGAlignable)(element)) {
|
|
54
|
+
const element = index.find(alignment.elementId);
|
|
55
|
+
if (element && (0, graph_1.isGAlignable)(element)) {
|
|
56
56
|
element.alignment = alignment.newAlignment;
|
|
57
57
|
return element;
|
|
58
58
|
}
|
|
59
59
|
return undefined;
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
62
|
-
* Applies the new route to the model.
|
|
62
|
+
* Applies the new route to the model. A route needs at least a source and a target point to describe an edge.
|
|
63
63
|
*
|
|
64
64
|
* @param route The new route.
|
|
65
65
|
* @param index The model index.
|
|
66
|
-
* @returns The changed
|
|
66
|
+
* @returns The changed edge, or `undefined` if the route could not be applied to any edge.
|
|
67
67
|
*/
|
|
68
68
|
function applyRoute(route, index) {
|
|
69
69
|
const routingPoints = route.newRoutingPoints ?? [];
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
const edge = index.findByClass(route.elementId, graph_1.GEdge);
|
|
71
|
+
if (!edge || routingPoints.length < 2) {
|
|
72
|
+
return undefined;
|
|
72
73
|
}
|
|
73
74
|
// first and last point mark the source and target point
|
|
74
|
-
|
|
75
|
+
edge.routingPoints = routingPoints;
|
|
75
76
|
const edgeRoutingPoints = edge.routingPoints;
|
|
76
77
|
const args = edge.args ?? {};
|
|
77
78
|
const source = edgeRoutingPoints.shift();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-util.js","sourceRoot":"","sources":["../../../src/common/utils/layout-util.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;AAelF,sDAUC;AASD,wCAOC;AASD,
|
|
1
|
+
{"version":3,"file":"layout-util.js","sourceRoot":"","sources":["../../../src/common/utils/layout-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,49 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2022-2026 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 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
import { Emitter } from '@eclipse-glsp/protocol';
|
|
1
17
|
import * as net from 'net';
|
|
2
18
|
import * as jsonrpc from 'vscode-jsonrpc/node';
|
|
3
19
|
import { JsonRpcGLSPServerLauncher } from '../../common/launch/jsonrpc-server-launcher';
|
|
4
20
|
import { Logger } from '../../common/utils/logger';
|
|
5
21
|
export declare class SocketServerLauncher extends JsonRpcGLSPServerLauncher<net.TcpSocketConnectOpts> {
|
|
6
22
|
protected logger: Logger;
|
|
7
|
-
protected netServer
|
|
8
|
-
|
|
23
|
+
protected netServer?: net.Server;
|
|
24
|
+
protected onConnectionEmitter: Emitter<net.Socket>;
|
|
25
|
+
/**
|
|
26
|
+
* Fires for every socket the server accepts, before the JSON-RPC connection is built on it.
|
|
27
|
+
*
|
|
28
|
+
* A listener must not consume the socket. Subscribe before {@link start} to observe the first connection; the
|
|
29
|
+
* subscription outlives an individual launch and is disposed by the caller.
|
|
30
|
+
*/
|
|
31
|
+
readonly onConnection: import("@eclipse-glsp/protocol").Event<net.Socket>;
|
|
32
|
+
protected getServerSocket(): net.Server | undefined;
|
|
33
|
+
protected registerDisposables(): void;
|
|
9
34
|
protected run(opts: net.TcpSocketConnectOpts): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Takes up a socket the server accepted. Observers are notified before the socket is read from.
|
|
37
|
+
*
|
|
38
|
+
* @param socket The accepted socket.
|
|
39
|
+
*/
|
|
40
|
+
protected acceptConnection(socket: net.Socket): void;
|
|
41
|
+
/**
|
|
42
|
+
* Reports the server as ready and resolves {@link listening}.
|
|
43
|
+
*
|
|
44
|
+
* @param server The server that reported itself as listening.
|
|
45
|
+
*/
|
|
46
|
+
protected handleListening(server: net.Server): void;
|
|
10
47
|
protected createConnection(socket: net.Socket): jsonrpc.MessageConnection;
|
|
11
48
|
}
|
|
12
49
|
//# sourceMappingURL=socket-server-launcher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/node/launch/socket-server-launcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"socket-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/node/launch/socket-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAc,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AACxF,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAEnD,qBACa,oBAAqB,SAAQ,yBAAyB,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACzF,UAAmC,MAAM,EAAE,MAAM,CAAC;IAElD,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;IAEjC,SAAS,CAAC,mBAAmB,sBAA6B;IAE1D;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,qDAAkC;cAEpC,eAAe,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS;cAIzC,mBAAmB,IAAI,IAAI;IAS9C,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5D;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI;IAKpD;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI;IAWnD,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,iBAAiB;CAG5E"}
|