@eclipse-glsp/server 1.1.0-next.9fd0925.53 → 1.1.0-next.b17a86c.64

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.
Files changed (211) hide show
  1. package/lib/browser/launch/worker-server-launcher.js +26 -3
  2. package/lib/browser/launch/worker-server-launcher.js.map +1 -1
  3. package/lib/common/actions/action-dispatcher.d.ts +2 -1
  4. package/lib/common/actions/action-dispatcher.d.ts.map +1 -1
  5. package/lib/common/actions/action-dispatcher.js +9 -7
  6. package/lib/common/actions/action-dispatcher.js.map +1 -1
  7. package/lib/common/actions/action-handler-registry.js +4 -4
  8. package/lib/common/actions/action-handler-registry.js.map +1 -1
  9. package/lib/common/actions/client-action-handler.d.ts +17 -8
  10. package/lib/common/actions/client-action-handler.d.ts.map +1 -1
  11. package/lib/common/actions/client-action-handler.js +32 -22
  12. package/lib/common/actions/client-action-handler.js.map +1 -1
  13. package/lib/common/actions/global-action-provider.d.ts +6 -21
  14. package/lib/common/actions/global-action-provider.d.ts.map +1 -1
  15. package/lib/common/actions/global-action-provider.js +17 -22
  16. package/lib/common/actions/global-action-provider.js.map +1 -1
  17. package/lib/common/command/command-stack.js +2 -2
  18. package/lib/common/command/command-stack.js.map +1 -1
  19. package/lib/common/command/command.js +1 -1
  20. package/lib/common/command/command.js.map +1 -1
  21. package/lib/common/command/recording-command.js +24 -1
  22. package/lib/common/command/recording-command.js.map +1 -1
  23. package/lib/common/command/undo-redo-action-handler.js +2 -2
  24. package/lib/common/command/undo-redo-action-handler.js.map +1 -1
  25. package/lib/common/di/binding-target.d.ts.map +1 -1
  26. package/lib/common/di/binding-target.js +3 -2
  27. package/lib/common/di/binding-target.js.map +1 -1
  28. package/lib/common/di/client-session-module.d.ts +9 -1
  29. package/lib/common/di/client-session-module.d.ts.map +1 -1
  30. package/lib/common/di/client-session-module.js +9 -9
  31. package/lib/common/di/client-session-module.js.map +1 -1
  32. package/lib/common/di/diagram-module.d.ts +20 -1
  33. package/lib/common/di/diagram-module.d.ts.map +1 -1
  34. package/lib/common/di/diagram-module.js +10 -48
  35. package/lib/common/di/diagram-module.js.map +1 -1
  36. package/lib/common/di/glsp-module.js +2 -2
  37. package/lib/common/di/glsp-module.js.map +1 -1
  38. package/lib/common/di/server-module.d.ts +0 -1
  39. package/lib/common/di/server-module.d.ts.map +1 -1
  40. package/lib/common/di/server-module.js +0 -1
  41. package/lib/common/di/server-module.js.map +1 -1
  42. package/lib/common/diagram/diagram-configuration.js +1 -1
  43. package/lib/common/diagram/diagram-configuration.js.map +1 -1
  44. package/lib/common/diagram/request-type-hints-action-handler.js +2 -2
  45. package/lib/common/diagram/request-type-hints-action-handler.js.map +1 -1
  46. package/lib/common/features/clipboard/request-clipboard-data-action-handler.js +2 -2
  47. package/lib/common/features/clipboard/request-clipboard-data-action-handler.js.map +1 -1
  48. package/lib/common/features/contextactions/command-palette-action-provider.js +2 -2
  49. package/lib/common/features/contextactions/command-palette-action-provider.js.map +1 -1
  50. package/lib/common/features/contextactions/context-actions-provider-registry.js +2 -2
  51. package/lib/common/features/contextactions/context-actions-provider-registry.js.map +1 -1
  52. package/lib/common/features/contextactions/context-menu-item-provider.js +2 -2
  53. package/lib/common/features/contextactions/context-menu-item-provider.js.map +1 -1
  54. package/lib/common/features/contextactions/request-context-actions-handler.js +2 -2
  55. package/lib/common/features/contextactions/request-context-actions-handler.js.map +1 -1
  56. package/lib/common/features/contextactions/tool-palette-item-provider.js +4 -4
  57. package/lib/common/features/contextactions/tool-palette-item-provider.js.map +1 -1
  58. package/lib/common/features/directediting/context-edit-validator-registry.js +2 -2
  59. package/lib/common/features/directediting/context-edit-validator-registry.js.map +1 -1
  60. package/lib/common/features/directediting/label-edit-validator.js +2 -2
  61. package/lib/common/features/directediting/label-edit-validator.js.map +1 -1
  62. package/lib/common/features/directediting/request-edit-validation-handler.js +2 -2
  63. package/lib/common/features/directediting/request-edit-validation-handler.js.map +1 -1
  64. package/lib/common/features/layout/computed-bounds-action-handler.js +2 -2
  65. package/lib/common/features/layout/computed-bounds-action-handler.js.map +1 -1
  66. package/lib/common/features/layout/layout-operation-handler.js +2 -2
  67. package/lib/common/features/layout/layout-operation-handler.js.map +1 -1
  68. package/lib/common/features/model/gmodel-factory.js +2 -2
  69. package/lib/common/features/model/gmodel-factory.js.map +1 -1
  70. package/lib/common/features/model/gmodel-index.js +2 -2
  71. package/lib/common/features/model/gmodel-index.js.map +1 -1
  72. package/lib/common/features/model/gmodel-serializer.js +2 -2
  73. package/lib/common/features/model/gmodel-serializer.js.map +1 -1
  74. package/lib/common/features/model/model-state.js +2 -2
  75. package/lib/common/features/model/model-state.js.map +1 -1
  76. package/lib/common/features/model/model-submission-handler.d.ts +31 -3
  77. package/lib/common/features/model/model-submission-handler.d.ts.map +1 -1
  78. package/lib/common/features/model/model-submission-handler.js +56 -7
  79. package/lib/common/features/model/model-submission-handler.js.map +1 -1
  80. package/lib/common/features/model/request-model-action-handler.d.ts +5 -6
  81. package/lib/common/features/model/request-model-action-handler.d.ts.map +1 -1
  82. package/lib/common/features/model/request-model-action-handler.js +37 -15
  83. package/lib/common/features/model/request-model-action-handler.js.map +1 -1
  84. package/lib/common/features/model/save-model-action-handler.js +2 -2
  85. package/lib/common/features/model/save-model-action-handler.js.map +1 -1
  86. package/lib/common/features/navigation/navigation-target-provider-registry.js +2 -2
  87. package/lib/common/features/navigation/navigation-target-provider-registry.js.map +1 -1
  88. package/lib/common/features/navigation/navigation-target-resolver.js +2 -2
  89. package/lib/common/features/navigation/navigation-target-resolver.js.map +1 -1
  90. package/lib/common/features/navigation/request-navigation-targets-action-handler.js +2 -2
  91. package/lib/common/features/navigation/request-navigation-targets-action-handler.js.map +1 -1
  92. package/lib/common/features/navigation/resolve-navigation-targets-action-handler.js +2 -2
  93. package/lib/common/features/navigation/resolve-navigation-targets-action-handler.js.map +1 -1
  94. package/lib/common/features/popup/request-popup-model-action-handler.js +2 -2
  95. package/lib/common/features/popup/request-popup-model-action-handler.js.map +1 -1
  96. package/lib/common/features/progress/progress-service.d.ts +44 -0
  97. package/lib/common/features/progress/progress-service.d.ts.map +1 -0
  98. package/lib/common/features/progress/progress-service.js +74 -0
  99. package/lib/common/features/progress/progress-service.js.map +1 -0
  100. package/lib/common/features/validation/model-validator.d.ts +47 -2
  101. package/lib/common/features/validation/model-validator.d.ts.map +1 -1
  102. package/lib/common/features/validation/model-validator.js +80 -1
  103. package/lib/common/features/validation/model-validator.js.map +1 -1
  104. package/lib/common/features/validation/request-markers-handler.d.ts +15 -0
  105. package/lib/common/features/validation/request-markers-handler.d.ts.map +1 -1
  106. package/lib/common/features/validation/request-markers-handler.js +5 -11
  107. package/lib/common/features/validation/request-markers-handler.js.map +1 -1
  108. package/lib/common/gmodel/apply-label-edit-operation-handler.js +2 -2
  109. package/lib/common/gmodel/apply-label-edit-operation-handler.js.map +1 -1
  110. package/lib/common/gmodel/change-bounds-operation-handler.js +2 -2
  111. package/lib/common/gmodel/change-bounds-operation-handler.js.map +1 -1
  112. package/lib/common/gmodel/change-routing-points-operation-handler.js +2 -2
  113. package/lib/common/gmodel/change-routing-points-operation-handler.js.map +1 -1
  114. package/lib/common/gmodel/cut-operation-handler.js +2 -2
  115. package/lib/common/gmodel/cut-operation-handler.js.map +1 -1
  116. package/lib/common/gmodel/delete-operation-handler.js +2 -2
  117. package/lib/common/gmodel/delete-operation-handler.js.map +1 -1
  118. package/lib/common/gmodel/gmodel-create-edge-operation-handler.js +2 -2
  119. package/lib/common/gmodel/gmodel-create-edge-operation-handler.js.map +1 -1
  120. package/lib/common/gmodel/gmodel-create-node-operation-handler.js +2 -2
  121. package/lib/common/gmodel/gmodel-create-node-operation-handler.js.map +1 -1
  122. package/lib/common/gmodel/gmodel-diagram-module.js +2 -2
  123. package/lib/common/gmodel/gmodel-diagram-module.js.map +1 -1
  124. package/lib/common/gmodel/gmodel-operation-handler.js +1 -1
  125. package/lib/common/gmodel/gmodel-operation-handler.js.map +1 -1
  126. package/lib/common/gmodel/paste-operation-handler.js +26 -3
  127. package/lib/common/gmodel/paste-operation-handler.js.map +1 -1
  128. package/lib/common/gmodel/reconnect-edge-operation-handler.js +2 -2
  129. package/lib/common/gmodel/reconnect-edge-operation-handler.js.map +1 -1
  130. package/lib/common/launch/glsp-server-launcher.js +2 -2
  131. package/lib/common/launch/glsp-server-launcher.js.map +1 -1
  132. package/lib/common/launch/jsonrpc-server-launcher.js +2 -2
  133. package/lib/common/launch/jsonrpc-server-launcher.js.map +1 -1
  134. package/lib/common/operations/compound-operation-handler.js +6 -11
  135. package/lib/common/operations/compound-operation-handler.js.map +1 -1
  136. package/lib/common/operations/create-operation-handler.js +1 -1
  137. package/lib/common/operations/create-operation-handler.js.map +1 -1
  138. package/lib/common/operations/operation-action-handler.d.ts.map +1 -1
  139. package/lib/common/operations/operation-action-handler.js +3 -3
  140. package/lib/common/operations/operation-action-handler.js.map +1 -1
  141. package/lib/common/operations/operation-handler-registry.js +4 -4
  142. package/lib/common/operations/operation-handler-registry.js.map +1 -1
  143. package/lib/common/operations/operation-handler.js +2 -2
  144. package/lib/common/operations/operation-handler.js.map +1 -1
  145. package/lib/common/protocol/client-action.d.ts +31 -0
  146. package/lib/common/protocol/client-action.d.ts.map +1 -0
  147. package/lib/common/protocol/client-action.js +35 -0
  148. package/lib/common/protocol/client-action.js.map +1 -0
  149. package/lib/common/protocol/glsp-server.d.ts +1 -1
  150. package/lib/common/protocol/glsp-server.d.ts.map +1 -1
  151. package/lib/common/protocol/glsp-server.js +9 -11
  152. package/lib/common/protocol/glsp-server.js.map +1 -1
  153. package/lib/common/session/client-session-factory.js +5 -5
  154. package/lib/common/session/client-session-factory.js.map +1 -1
  155. package/lib/common/session/client-session-manager.js +2 -2
  156. package/lib/common/session/client-session-manager.js.map +1 -1
  157. package/lib/common/utils/args-util.js +2 -2
  158. package/lib/common/utils/args-util.js.map +1 -1
  159. package/lib/common/utils/client-options-util.d.ts +3 -0
  160. package/lib/common/utils/client-options-util.d.ts.map +1 -1
  161. package/lib/common/utils/client-options-util.js +5 -15
  162. package/lib/common/utils/client-options-util.js.map +1 -1
  163. package/lib/common/utils/console-logger.js +2 -2
  164. package/lib/common/utils/console-logger.js.map +1 -1
  165. package/lib/common/utils/logger.d.ts.map +1 -1
  166. package/lib/common/utils/logger.js +5 -4
  167. package/lib/common/utils/logger.js.map +1 -1
  168. package/lib/common/utils/registry.js +4 -4
  169. package/lib/common/utils/registry.js.map +1 -1
  170. package/lib/node/abstract-json-model-storage.d.ts.map +1 -1
  171. package/lib/node/abstract-json-model-storage.js +33 -4
  172. package/lib/node/abstract-json-model-storage.js.map +1 -1
  173. package/lib/node/di/app-module.js +24 -1
  174. package/lib/node/di/app-module.js.map +1 -1
  175. package/lib/node/gmodel/gmodel-storage.js +2 -2
  176. package/lib/node/gmodel/gmodel-storage.js.map +1 -1
  177. package/lib/node/launch/cli-parser.js +26 -3
  178. package/lib/node/launch/cli-parser.js.map +1 -1
  179. package/lib/node/launch/socket-cli-parser.js +24 -1
  180. package/lib/node/launch/socket-cli-parser.js.map +1 -1
  181. package/lib/node/launch/socket-server-launcher.js +27 -4
  182. package/lib/node/launch/socket-server-launcher.js.map +1 -1
  183. package/lib/node/launch/websocket-server-launcher.js +27 -4
  184. package/lib/node/launch/websocket-server-launcher.js.map +1 -1
  185. package/package.json +6 -5
  186. package/src/common/actions/action-dispatcher.spec.ts +2 -0
  187. package/src/common/actions/action-dispatcher.ts +8 -5
  188. package/src/common/actions/client-action-handler.ts +28 -18
  189. package/src/common/actions/global-action-provider.spec.ts +4 -15
  190. package/src/common/actions/global-action-provider.ts +21 -25
  191. package/src/common/di/binding-target.ts +1 -0
  192. package/src/common/di/client-session-module.ts +17 -10
  193. package/src/common/di/diagram-module.ts +14 -66
  194. package/src/common/di/server-module.ts +0 -1
  195. package/src/common/features/model/model-submission-handler.ts +62 -5
  196. package/src/common/features/model/request-model-action-handler.ts +37 -17
  197. package/src/common/features/progress/progress-service.ts +74 -0
  198. package/src/common/features/validation/model-validator.ts +75 -3
  199. package/src/common/features/validation/request-markers-handler.ts +4 -10
  200. package/src/common/operations/operation-action-handler.ts +2 -2
  201. package/src/common/protocol/client-action.ts +38 -0
  202. package/src/common/protocol/glsp-server.spec.ts +11 -10
  203. package/src/common/protocol/glsp-server.ts +11 -14
  204. package/src/common/session/client-session-factory.spec.ts +2 -2
  205. package/src/common/session/client-session-factory.ts +3 -3
  206. package/src/common/session/client-session-manager.spec.ts +4 -3
  207. package/src/common/utils/args-util.ts +1 -1
  208. package/src/common/utils/client-options-util.ts +8 -0
  209. package/src/common/utils/logger.ts +2 -1
  210. package/src/node/abstract-json-model-storage.ts +8 -2
  211. package/src/node/launch/cli-parser.ts +1 -1
@@ -1,10 +1,33 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
2
18
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
19
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
20
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
21
  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;
6
22
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
23
  };
24
+ var __importStar = (this && this.__importStar) || function (mod) {
25
+ if (mod && mod.__esModule) return mod;
26
+ var result = {};
27
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
+ __setModuleDefault(result, mod);
29
+ return result;
30
+ };
8
31
  var __metadata = (this && this.__metadata) || function (k, v) {
9
32
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
33
  };
@@ -27,8 +50,8 @@ exports.SocketServerLauncher = exports.START_UP_COMPLETE_MSG = void 0;
27
50
  ********************************************************************************/
28
51
  const protocol_1 = require("@eclipse-glsp/protocol");
29
52
  const inversify_1 = require("inversify");
30
- const net = require("net");
31
- const jsonrpc = require("vscode-jsonrpc/node");
53
+ const net = __importStar(require("net"));
54
+ const jsonrpc = __importStar(require("vscode-jsonrpc/node"));
32
55
  const jsonrpc_server_launcher_1 = require("../../common/launch/jsonrpc-server-launcher");
33
56
  const logger_1 = require("../../common/utils/logger");
34
57
  exports.START_UP_COMPLETE_MSG = '[GLSP-Server]:Startup completed. Accepting requests on port:';
@@ -73,13 +96,13 @@ let SocketServerLauncher = class SocketServerLauncher extends jsonrpc_server_lau
73
96
  return jsonrpc.createMessageConnection(new jsonrpc.SocketMessageReader(socket), new jsonrpc.SocketMessageWriter(socket), console);
74
97
  }
75
98
  };
99
+ exports.SocketServerLauncher = SocketServerLauncher;
76
100
  __decorate([
77
101
  (0, inversify_1.inject)(logger_1.Logger),
78
102
  __metadata("design:type", logger_1.Logger)
79
103
  ], SocketServerLauncher.prototype, "logger", void 0);
80
- SocketServerLauncher = __decorate([
104
+ exports.SocketServerLauncher = SocketServerLauncher = __decorate([
81
105
  (0, inversify_1.injectable)(),
82
106
  __metadata("design:paramtypes", [])
83
107
  ], SocketServerLauncher);
84
- exports.SocketServerLauncher = SocketServerLauncher;
85
108
  //# sourceMappingURL=socket-server-launcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"socket-server-launcher.js","sourceRoot":"","sources":["../../../src/node/launch/socket-server-launcher.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAoD;AACpD,yCAA+C;AAC/C,2BAA2B;AAC3B,+CAA+C;AAC/C,yFAAwF;AACxF,sDAAmD;AAEtC,QAAA,qBAAqB,GAAG,8DAA8D,CAAC;AAG7F,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,mDAAmD;IAKzF;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,qBAAU,CAAC,MAAM,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC3B,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAES,GAAG,CAAC,IAA8B;QACxC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;YACvC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YAChC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBAChF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,OAAO;aACV;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;gBACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mEAAmE,WAAW,mBAAmB,CAAC,CAAC;gBACrH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,OAAO;aACV;YACD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mEAAmE,WAAW,EAAE,CAAC,CAAC;YACnG,mFAAmF;YACnF,2FAA2F;YAC3F,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACP,CAAC;IAES,gBAAgB,CAAC,MAAkB;QACzC,OAAO,OAAO,CAAC,uBAAuB,CAAC,IAAI,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACtI,CAAC;CACJ,CAAA;AA/CG;IAAC,IAAA,kBAAM,EAAC,eAAM,CAAC;8BAA4B,eAAM;oDAAC;AADzC,oBAAoB;IADhC,IAAA,sBAAU,GAAE;;GACA,oBAAoB,CAgDhC;AAhDY,oDAAoB"}
1
+ {"version":3,"file":"socket-server-launcher.js","sourceRoot":"","sources":["../../../src/node/launch/socket-server-launcher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAoD;AACpD,yCAA+C;AAC/C,yCAA2B;AAC3B,6DAA+C;AAC/C,yFAAwF;AACxF,sDAAmD;AAEtC,QAAA,qBAAqB,GAAG,8DAA8D,CAAC;AAG7F,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,mDAAmD;IAKzF;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,qBAAU,CAAC,MAAM,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC3B,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAES,GAAG,CAAC,IAA8B;QACxC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;YACvC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YAChC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBAChF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,OAAO;aACV;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;gBACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mEAAmE,WAAW,mBAAmB,CAAC,CAAC;gBACrH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,OAAO;aACV;YACD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mEAAmE,WAAW,EAAE,CAAC,CAAC;YACnG,mFAAmF;YACnF,2FAA2F;YAC3F,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACP,CAAC;IAES,gBAAgB,CAAC,MAAkB;QACzC,OAAO,OAAO,CAAC,uBAAuB,CAAC,IAAI,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACtI,CAAC;CACJ,CAAA;AAhDY,oDAAoB;AACM;IAAlC,IAAA,kBAAM,EAAC,eAAM,CAAC;8BAA4B,eAAM;oDAAC;+BADzC,oBAAoB;IADhC,IAAA,sBAAU,GAAE;;GACA,oBAAoB,CAgDhC"}
@@ -14,21 +14,44 @@
14
14
  *
15
15
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
16
  ********************************************************************************/
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
17
33
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
34
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
35
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
36
  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
37
  return c > 3 && r && Object.defineProperty(target, key, r), r;
22
38
  };
39
+ var __importStar = (this && this.__importStar) || function (mod) {
40
+ if (mod && mod.__esModule) return mod;
41
+ var result = {};
42
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
43
+ __setModuleDefault(result, mod);
44
+ return result;
45
+ };
23
46
  var __metadata = (this && this.__metadata) || function (k, v) {
24
47
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
48
  };
26
49
  Object.defineProperty(exports, "__esModule", { value: true });
27
50
  exports.wrapWebSocket = exports.WebSocketServerLauncher = void 0;
28
51
  const protocol_1 = require("@eclipse-glsp/protocol");
29
- const http = require("http");
52
+ const http = __importStar(require("http"));
30
53
  const inversify_1 = require("inversify");
31
- const net = require("net");
54
+ const net = __importStar(require("net"));
32
55
  const ws_1 = require("ws");
33
56
  const jsonrpc_server_launcher_1 = require("../../common/launch/jsonrpc-server-launcher");
34
57
  const logger_1 = require("../../common/utils/logger");
@@ -82,15 +105,15 @@ let WebSocketServerLauncher = class WebSocketServerLauncher extends jsonrpc_serv
82
105
  super.start(options);
83
106
  }
84
107
  };
108
+ exports.WebSocketServerLauncher = WebSocketServerLauncher;
85
109
  __decorate([
86
110
  (0, inversify_1.inject)(logger_1.Logger),
87
111
  __metadata("design:type", logger_1.Logger)
88
112
  ], WebSocketServerLauncher.prototype, "logger", void 0);
89
- WebSocketServerLauncher = __decorate([
113
+ exports.WebSocketServerLauncher = WebSocketServerLauncher = __decorate([
90
114
  (0, inversify_1.injectable)(),
91
115
  __metadata("design:paramtypes", [])
92
116
  ], WebSocketServerLauncher);
93
- exports.WebSocketServerLauncher = WebSocketServerLauncher;
94
117
  async function getFreePort() {
95
118
  return new Promise((resolve, reject) => {
96
119
  const srv = net.createServer();
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-server-launcher.js","sourceRoot":"","sources":["../../../src/node/launch/websocket-server-launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket-server-launcher.js","sourceRoot":"","sources":["../../../src/node/launch/websocket-server-launcher.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eclipse-glsp/server",
3
- "version": "1.1.0-next.9fd0925.53+9fd0925",
3
+ "version": "1.1.0-next.b17a86c.64+b17a86c",
4
4
  "description": "A js server framework for Eclipse GLSP",
5
5
  "keywords": [
6
6
  "eclipse",
@@ -59,21 +59,22 @@
59
59
  "watch": "tsc -w"
60
60
  },
61
61
  "dependencies": {
62
- "@eclipse-glsp/graph": "1.1.0-next.9fd0925.53+9fd0925",
62
+ "@eclipse-glsp/graph": "1.1.0-next.b17a86c.64+b17a86c",
63
63
  "@eclipse-glsp/protocol": "next",
64
64
  "@types/uuid": "8.3.1",
65
65
  "commander": "^8.3.0",
66
66
  "fast-json-patch": "^3.1.0",
67
- "inversify": "^5.1.1",
68
67
  "winston": "^3.3.3",
69
68
  "ws": "^8.12.1"
70
69
  },
71
70
  "devDependencies": {
72
- "@types/fs-extra": "^9.0.13",
73
71
  "@types/ws": "^8.5.4"
74
72
  },
73
+ "peerDependencies": {
74
+ "inversify": "^6.0.0"
75
+ },
75
76
  "publishConfig": {
76
77
  "access": "public"
77
78
  },
78
- "gitHead": "9fd09256d93c37d80fee11b8435bcd8afac46ecf"
79
+ "gitHead": "b17a86c30207dd19903644d937d6cf89cf407ed0"
79
80
  }
@@ -24,6 +24,7 @@ import { Logger } from '../utils/logger';
24
24
  import { DefaultActionDispatcher } from './action-dispatcher';
25
25
  import { ActionHandler } from './action-handler';
26
26
  import { ActionHandlerRegistry } from './action-handler-registry';
27
+ import { ClientActionForwarder } from './client-action-handler';
27
28
  import assert = require('assert');
28
29
 
29
30
  function waitSync(timeInMillis: number): void {
@@ -48,6 +49,7 @@ describe('test DefaultActionDispatcher', () => {
48
49
  bind(ClientId).toConstantValue(clientId);
49
50
  bind(ActionHandlerRegistry).toConstantValue(actionHandlerRegistry);
50
51
  bind(ClientActionKinds).toConstantValue(['response', 'response1', 'response2']);
52
+ bind(ClientActionForwarder).toConstantValue(sinon.createStubInstance(ClientActionForwarder));
51
53
  })
52
54
  );
53
55
  const actionDispatcher = container.resolve(DefaultActionDispatcher);
@@ -15,12 +15,13 @@
15
15
  ********************************************************************************/
16
16
  import { Action, Disposable, flatPush, MaybeArray, RequestAction, ResponseAction, UpdateModelAction } from '@eclipse-glsp/protocol';
17
17
  import { inject, injectable } from 'inversify';
18
- import { ClientActionKinds, ClientId } from '../di/service-identifiers';
18
+ import { ClientId } from '../di/service-identifiers';
19
19
  import { GLSPServerError } from '../utils/glsp-server-error';
20
20
  import { Logger } from '../utils/logger';
21
21
  import { PromiseQueue } from '../utils/promise-queue';
22
22
  import { ActionHandler } from './action-handler';
23
23
  import { ActionHandlerRegistry } from './action-handler-registry';
24
+ import { ClientActionForwarder } from './client-action-handler';
24
25
 
25
26
  export const ActionDispatcher = Symbol('ActionDispatcher');
26
27
 
@@ -62,8 +63,8 @@ export class DefaultActionDispatcher implements ActionDispatcher, Disposable {
62
63
  @inject(ActionHandlerRegistry)
63
64
  protected actionHandlerRegistry: ActionHandlerRegistry;
64
65
 
65
- @inject(ClientActionKinds)
66
- protected clientActionKinds: string[];
66
+ @inject(ClientActionForwarder)
67
+ protected clientActionForwarder: ClientActionForwarder;
67
68
 
68
69
  @inject(Logger)
69
70
  private logger: Logger;
@@ -76,7 +77,7 @@ export class DefaultActionDispatcher implements ActionDispatcher, Disposable {
76
77
 
77
78
  dispatch(action: Action): Promise<void> {
78
79
  // Dont queue actions that are just delegated to the client
79
- if (this.clientActionKinds.includes(action.kind)) {
80
+ if (this.clientActionForwarder.shouldForwardToClient(action)) {
80
81
  return this.doDispatch(action);
81
82
  }
82
83
  return this.actionQueue.enqueue(() => this.doDispatch(action));
@@ -84,8 +85,10 @@ export class DefaultActionDispatcher implements ActionDispatcher, Disposable {
84
85
 
85
86
  protected async doDispatch(action: Action): Promise<void> {
86
87
  this.logger.debug('Dispatch action:', action.kind);
88
+ const handledOnClient = this.clientActionForwarder.handle(action);
89
+
87
90
  const actionHandlers = this.actionHandlerRegistry.get(action.kind);
88
- if (actionHandlers.length === 0) {
91
+ if (!handledOnClient && actionHandlers.length === 0) {
89
92
  throw new GLSPServerError(`No handler registered for action kind: ${action.kind}`);
90
93
  }
91
94
 
@@ -13,37 +13,47 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Action, ActionMessage, GLSPClientProxy } from '@eclipse-glsp/protocol';
17
- import { inject, injectable, optional } from 'inversify';
16
+ import { Action, ActionMessage, GLSPClientProxy, ResponseAction } from '@eclipse-glsp/protocol';
17
+ import { inject, injectable } from 'inversify';
18
18
  import { ClientActionKinds, ClientId } from '../di/service-identifiers';
19
+ import { ClientAction } from '../protocol/client-action';
19
20
 
20
21
  /**
21
- * The client action handler is responsible of handling action kinds that are intended for the
22
- * GLSP client, by sending them to the client over json-rpc.
22
+ * Component responsible for forwarding actions that are (also) handled by the
23
+ * client
23
24
  */
24
-
25
25
  @injectable()
26
- export class ClientActionHandler implements ClientActionHandler {
26
+ export class ClientActionForwarder {
27
27
  @inject(GLSPClientProxy)
28
- @optional()
29
- protected glspClient?: GLSPClientProxy;
28
+ protected glspClient: GLSPClientProxy;
30
29
 
31
30
  @inject(ClientId)
32
31
  protected readonly clientId: string;
33
32
 
34
- constructor(@inject(ClientActionKinds) @optional() public actionKinds: string[] = []) {}
33
+ constructor(@inject(ClientActionKinds) public actionKinds: Set<string>) {}
35
34
 
36
- execute(action: Action): [] {
37
- this.send(action);
38
- return [];
35
+ /**
36
+ * Processes the given action and checks wether it is a
37
+ * `clientAction` i.e. an action that should be forwarded to
38
+ * the client to be handled there. If the check is successful
39
+ * the action is wrapped in an {@link ActionMessage} and sent to the client.
40
+ *
41
+ * @param action The action to check and forward
42
+ * @return `true` if the action was forwarded to the client, `false` otherwise
43
+ */
44
+ handle(action: Action): boolean {
45
+ if (this.shouldForwardToClient(action)) {
46
+ const message: ActionMessage = { action, clientId: this.clientId };
47
+ this.glspClient.process(message);
48
+ return true;
49
+ }
50
+ return false;
39
51
  }
40
52
 
41
- protected send(action: Action): void {
42
- const message: ActionMessage = { action, clientId: this.clientId };
43
- if (this.glspClient) {
44
- this.glspClient.process(message);
45
- return;
53
+ shouldForwardToClient(action: Action): boolean {
54
+ if (ClientAction.is(action)) {
55
+ return false;
46
56
  }
47
- throw new Error('Could not send message to client. No GLSPClientProxy is defined');
57
+ return this.actionKinds.has(action.kind) || ResponseAction.is(action);
48
58
  }
49
59
  }
@@ -13,21 +13,20 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
+ import { expect } from 'chai';
16
17
  import { Container, ContainerModule } from 'inversify';
17
- import { ClientActionKinds, DiagramModules, InjectionContainer } from '../di/service-identifiers';
18
+ import * as sinon from 'sinon';
19
+ import { DiagramModules, InjectionContainer } from '../di/service-identifiers';
18
20
  import { ClientSessionInitializer } from '../session/client-session-initializer';
19
21
  import * as mock from '../test/mock-util';
20
22
  import { Logger } from '../utils/logger';
21
23
  import { ActionHandler } from './action-handler';
22
24
  import { ActionHandlerRegistry } from './action-handler-registry';
23
25
  import { DefaultGlobalActionProvider } from './global-action-provider';
24
- import * as sinon from 'sinon';
25
- import { expect } from 'chai';
26
26
 
27
27
  describe('test DefaultGlobalActionProvider', () => {
28
28
  const container = new Container();
29
29
  const serverActions = ['A1', 'A2', 'A3'];
30
- const clientActions = ['C1', 'C2'];
31
30
  const diagramType = 'myDiagramType';
32
31
 
33
32
  const handler1Actions = ['A1', 'A2'];
@@ -44,8 +43,6 @@ describe('test DefaultGlobalActionProvider', () => {
44
43
  bind(ActionHandler).toConstantValue(new mock.StubActionHandler(handler1Actions));
45
44
  bind(ActionHandler).toConstantValue(new mock.StubActionHandler(handler2Actions));
46
45
  bind(ActionHandlerRegistry).toConstantValue(handlerRegistry);
47
- bind(ClientActionKinds).toConstantValue(clientActions[0]);
48
- bind(ClientActionKinds).toConstantValue(clientActions[1]);
49
46
  });
50
47
 
51
48
  const diagramModules = new Map<string, ContainerModule[]>();
@@ -62,18 +59,10 @@ describe('test DefaultGlobalActionProvider', () => {
62
59
  const actionProvider = container.resolve(DefaultGlobalActionProvider);
63
60
 
64
61
  it('serverActionsKinds', () => {
65
- const result = actionProvider.serverActionKinds;
62
+ const result = actionProvider.actionKinds;
66
63
  expect(result.size).to.be.equal(1);
67
64
  const resultServerActions = result.get(diagramType);
68
65
  expect(resultServerActions).to.not.be.undefined;
69
66
  expect(serverActions.every(action => resultServerActions!.includes(action))).true;
70
67
  });
71
-
72
- it('clientActionKinds', () => {
73
- const result = actionProvider.clientActionKinds;
74
- expect(result.size).to.be.equal(1);
75
- const resultClientActions = result.get(diagramType);
76
- expect(resultClientActions).to.not.be.undefined;
77
- expect(clientActions.every(action => resultClientActions!.includes(action))).true;
78
- });
79
68
  });
@@ -13,60 +13,56 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
+ import { distinctAdd } from '@eclipse-glsp/protocol';
16
17
  import { Container, ContainerModule, inject, injectable } from 'inversify';
17
- import { ClientActionKinds, DiagramModules, InjectionContainer } from '../di/service-identifiers';
18
+ import { createClientSessionModule } from '../di/client-session-module';
19
+ import { DiagramModules, InjectionContainer } from '../di/service-identifiers';
18
20
  import { ClientSessionInitializer } from '../session/client-session-initializer';
19
21
  import { ActionHandlerRegistry } from './action-handler-registry';
20
- import { ClientActionHandler } from './client-action-handler';
21
22
 
22
23
  export const GlobalActionProvider = Symbol('GlobalActionProvider');
23
24
 
25
+ /**
26
+ * Provides a map of handled action kinds grouped by `diagramType`
27
+ */
24
28
  export interface GlobalActionProvider {
25
- readonly serverActionKinds: Map<string, string[]>;
26
- readonly clientActionKinds: Map<string, string[]>;
29
+ readonly actionKinds: Map<string, string[]>;
27
30
  }
28
31
 
29
32
  @injectable()
30
33
  export class DefaultGlobalActionProvider implements GlobalActionProvider {
31
- public readonly serverActionKinds: Map<string, string[]>;
32
- public readonly clientActionKinds: Map<string, string[]>;
34
+ public readonly actionKinds: Map<string, string[]>;
33
35
 
34
36
  constructor(
35
37
  @inject(InjectionContainer) serverContainer: Container,
36
38
  @inject(DiagramModules) diagramModules: Map<string, ContainerModule[]>
37
39
  ) {
38
- this.serverActionKinds = new Map();
39
- this.clientActionKinds = new Map();
40
+ this.actionKinds = new Map();
40
41
  diagramModules.forEach((modules, diagramType) => {
41
42
  const container = this.createDiagramContainer(serverContainer, modules);
42
43
  const initializers = container.getAll<ClientSessionInitializer>(ClientSessionInitializer);
43
44
  initializers.forEach(service => service.initialize());
44
- this.loadServerActionKinds(diagramType, container);
45
- this.loadClientActionKinds(diagramType, container);
45
+ this.loadActionKinds(diagramType, container);
46
46
  container.unbindAll();
47
47
  });
48
48
  }
49
49
 
50
50
  createDiagramContainer(serverContainer: Container, modules: ContainerModule[]): Container {
51
51
  const container = serverContainer.createChild();
52
- container.load(...modules);
52
+ const clientSessionModule = createClientSessionModule({
53
+ clientId: 'tempId',
54
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
55
+ glspClient: { process: () => {} },
56
+ clientActionKinds: []
57
+ });
58
+ container.load(...modules, clientSessionModule);
53
59
  return container;
54
60
  }
55
61
 
56
- loadServerActionKinds(diagramType: string, diagramContainer: Container): void {
62
+ loadActionKinds(diagramType: string, diagramContainer: Container): void {
57
63
  const handlerRegistry = diagramContainer.get<ActionHandlerRegistry>(ActionHandlerRegistry);
58
- const diagramServerActions = this.serverActionKinds.get(diagramType) ?? [];
59
- handlerRegistry
60
- .getAll()
61
- .filter(handler => !(handler instanceof ClientActionHandler))
62
- .forEach(handler => diagramServerActions.push(...handler.actionKinds));
63
- this.serverActionKinds.set(diagramType, [...new Set(diagramServerActions)]);
64
- }
65
-
66
- loadClientActionKinds(diagramType: string, diagramContainer: Container): void {
67
- const clientActionKinds = diagramContainer.getAll<string>(ClientActionKinds);
68
- const diagramClientActions = this.clientActionKinds.get(diagramType) ?? [];
69
- diagramClientActions.push(...clientActionKinds);
70
- this.clientActionKinds.set(diagramType, diagramClientActions);
64
+ const diagramServerActions = this.actionKinds.get(diagramType) ?? [];
65
+ handlerRegistry.getAll().forEach(handler => distinctAdd(diagramServerActions, ...handler.actionKinds));
66
+ this.actionKinds.set(diagramType, diagramServerActions);
71
67
  }
72
68
  }
@@ -152,6 +152,7 @@ namespace NoOPSyntax {
152
152
  };
153
153
  const syntax = {
154
154
  onActivation: noOpReturn,
155
+ onDeactivation: noOpReturn,
155
156
  when: noOpReturn,
156
157
  whenAnyAncestorIs: noOpReturn,
157
158
  whenAnyAncestorMatches: noOpReturn,
@@ -13,17 +13,24 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { GLSPClientProxy } from '@eclipse-glsp/protocol';
16
+ import { GLSPClientProxy, bindOrRebind } from '@eclipse-glsp/protocol';
17
17
  import { ContainerModule } from 'inversify';
18
- import { ClientId } from './service-identifiers';
18
+ import { ClientActionKinds, ClientId } from './service-identifiers';
19
19
 
20
- export function createClientSessionModule(clientId: string, glspClient: GLSPClientProxy): ContainerModule {
21
- return new ContainerModule((bind, _unbind, isBound, rebind) => {
22
- if (isBound(ClientId)) {
23
- rebind(ClientId).toConstantValue(clientId);
24
- } else {
25
- bind(ClientId).toConstantValue(clientId);
26
- }
27
- bind(GLSPClientProxy).toConstantValue(glspClient);
20
+ export interface ClientSessionModuleOptions {
21
+ clientId: string;
22
+ glspClient: GLSPClientProxy;
23
+ clientActionKinds: string[];
24
+ }
25
+
26
+ /**
27
+ * Creates the DI module that binds client session specific configuration
28
+ */
29
+ export function createClientSessionModule(options: ClientSessionModuleOptions): ContainerModule {
30
+ return new ContainerModule((bind, unbind, isBound, rebind) => {
31
+ const context = { bind, unbind, isBound, rebind };
32
+ bindOrRebind(context, ClientId).toConstantValue(options.clientId);
33
+ bind(GLSPClientProxy).toConstantValue(options.glspClient);
34
+ bind(ClientActionKinds).toConstantValue(new Set(options.clientActionKinds));
28
35
  });
29
36
  }