@opensumi/ide-connection 3.0.4 → 3.0.5-next-1717466130.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.
Files changed (88) hide show
  1. package/lib/browser/ws-channel-handler.d.ts +10 -1
  2. package/lib/browser/ws-channel-handler.d.ts.map +1 -1
  3. package/lib/browser/ws-channel-handler.js +11 -22
  4. package/lib/browser/ws-channel-handler.js.map +1 -1
  5. package/lib/common/channel/index.d.ts +2 -0
  6. package/lib/common/channel/index.d.ts.map +1 -0
  7. package/lib/common/channel/index.js +5 -0
  8. package/lib/common/channel/index.js.map +1 -0
  9. package/lib/common/channel/types.d.ts +66 -0
  10. package/lib/common/channel/types.d.ts.map +1 -0
  11. package/lib/common/channel/types.js +8 -0
  12. package/lib/common/channel/types.js.map +1 -0
  13. package/lib/common/connection/drivers/simple.d.ts +7 -7
  14. package/lib/common/connection/drivers/simple.d.ts.map +1 -1
  15. package/lib/common/connection/drivers/simple.js.map +1 -1
  16. package/lib/common/index.d.ts +4 -0
  17. package/lib/common/index.d.ts.map +1 -1
  18. package/lib/common/index.js +4 -0
  19. package/lib/common/index.js.map +1 -1
  20. package/lib/common/rpc/connection.d.ts +5 -4
  21. package/lib/common/rpc/connection.d.ts.map +1 -1
  22. package/lib/common/rpc/connection.js +21 -37
  23. package/lib/common/rpc/connection.js.map +1 -1
  24. package/lib/common/rpc/message-io.d.ts +62 -11
  25. package/lib/common/rpc/message-io.d.ts.map +1 -1
  26. package/lib/common/rpc/message-io.js +111 -10
  27. package/lib/common/rpc/message-io.js.map +1 -1
  28. package/lib/common/rpc/multiplexer.d.ts +11 -11
  29. package/lib/common/rpc/multiplexer.d.ts.map +1 -1
  30. package/lib/common/rpc/multiplexer.js +18 -17
  31. package/lib/common/rpc/multiplexer.js.map +1 -1
  32. package/lib/common/rpc-service/index.d.ts +1 -0
  33. package/lib/common/rpc-service/index.d.ts.map +1 -1
  34. package/lib/common/rpc-service/index.js +1 -0
  35. package/lib/common/rpc-service/index.js.map +1 -1
  36. package/lib/common/rpc-service/proxy/json.d.ts.map +1 -1
  37. package/lib/common/rpc-service/proxy/json.js +2 -2
  38. package/lib/common/rpc-service/proxy/json.js.map +1 -1
  39. package/lib/common/rpc-service/proxy/sumi.d.ts.map +1 -1
  40. package/lib/common/rpc-service/proxy/sumi.js +2 -2
  41. package/lib/common/rpc-service/proxy/sumi.js.map +1 -1
  42. package/lib/common/rpc-service/registry.d.ts +2 -2
  43. package/lib/common/rpc-service/registry.d.ts.map +1 -1
  44. package/lib/common/rpc-service/registry.js +6 -0
  45. package/lib/common/rpc-service/registry.js.map +1 -1
  46. package/lib/common/serializer/fury.d.ts +122 -0
  47. package/lib/common/serializer/fury.d.ts.map +1 -0
  48. package/lib/common/serializer/fury.js +51 -0
  49. package/lib/common/serializer/fury.js.map +1 -0
  50. package/lib/common/serializer/index.d.ts +7 -0
  51. package/lib/common/serializer/index.d.ts.map +1 -0
  52. package/lib/common/serializer/index.js +22 -0
  53. package/lib/common/serializer/index.js.map +1 -0
  54. package/lib/common/serializer/raw.d.ts +4 -0
  55. package/lib/common/serializer/raw.d.ts.map +1 -0
  56. package/lib/common/serializer/raw.js +8 -0
  57. package/lib/common/serializer/raw.js.map +1 -0
  58. package/lib/common/serializer/types.d.ts +5 -0
  59. package/lib/common/serializer/types.d.ts.map +1 -0
  60. package/lib/common/serializer/types.js +3 -0
  61. package/lib/common/serializer/types.js.map +1 -0
  62. package/lib/common/server-handler.d.ts +7 -1
  63. package/lib/common/server-handler.d.ts.map +1 -1
  64. package/lib/common/server-handler.js +13 -11
  65. package/lib/common/server-handler.js.map +1 -1
  66. package/lib/common/ws-channel.d.ts +10 -202
  67. package/lib/common/ws-channel.d.ts.map +1 -1
  68. package/lib/common/ws-channel.js +40 -92
  69. package/lib/common/ws-channel.js.map +1 -1
  70. package/package.json +5 -5
  71. package/src/browser/ws-channel-handler.ts +29 -26
  72. package/src/common/channel/index.ts +1 -0
  73. package/src/common/channel/types.ts +82 -0
  74. package/src/common/connection/drivers/simple.ts +5 -5
  75. package/src/common/index.ts +4 -0
  76. package/src/common/rpc/connection.ts +28 -44
  77. package/src/common/rpc/message-io.ts +172 -10
  78. package/src/common/rpc/multiplexer.ts +27 -29
  79. package/src/common/rpc-service/index.ts +1 -0
  80. package/src/common/rpc-service/proxy/json.ts +13 -11
  81. package/src/common/rpc-service/proxy/sumi.ts +5 -3
  82. package/src/common/rpc-service/registry.ts +10 -2
  83. package/src/common/serializer/fury.ts +61 -0
  84. package/src/common/serializer/index.ts +24 -0
  85. package/src/common/serializer/raw.ts +8 -0
  86. package/src/common/serializer/types.ts +4 -0
  87. package/src/common/server-handler.ts +24 -26
  88. package/src/common/ws-channel.ts +63 -225
@@ -1,4 +1,5 @@
1
1
  import Fury, { Serializer } from '@furyjs/fury';
2
+ import { PlatformBuffer } from '@furyjs/fury/dist/lib/platformBuffer';
2
3
  import { BinaryReader, BinaryWriter } from '@furyjs/fury/dist/lib/type';
3
4
  import { AnySerializer, IObjectTransfer } from '../fury-extends/any';
4
5
  import { IProtocolSerializer, IRequestHeaders, IResponseHeaders, TSumiProtocol, TSumiProtocolMethod } from './types';
@@ -6,11 +7,8 @@ export declare enum OperationType {
6
7
  Request = 0,
7
8
  Notification = 1,
8
9
  Response = 2,
9
- Cancel = 3
10
- }
11
- export declare enum Status {
12
- OK = 0,
13
- Err = 1
10
+ Cancel = 3,
11
+ Error = 4
14
12
  }
15
13
  export declare const HeadersProto: {
16
14
  readonly Request: {
@@ -46,7 +44,51 @@ export declare class AnyProtocolSerializer implements IProtocolSerializer {
46
44
  writeResponse<T = any>(result: T): void;
47
45
  readResponse<T = any>(): T;
48
46
  }
49
- export declare class MessageIO {
47
+ export interface RPCRequestMessage {
48
+ kind: OperationType.Request;
49
+ requestId: number;
50
+ method: string;
51
+ headers: IRequestHeaders;
52
+ args: any[];
53
+ }
54
+ export interface RPCNotificationMessage {
55
+ kind: OperationType.Notification;
56
+ requestId: number;
57
+ method: string;
58
+ headers: IRequestHeaders;
59
+ args: any[];
60
+ }
61
+ export interface RPCResponseMessage {
62
+ kind: OperationType.Response;
63
+ requestId: number;
64
+ method: string;
65
+ headers: IResponseHeaders;
66
+ result: any;
67
+ }
68
+ export interface RPCErrorMessage {
69
+ kind: OperationType.Error;
70
+ requestId: number;
71
+ method: string;
72
+ headers: IResponseHeaders;
73
+ error: any;
74
+ }
75
+ export interface RPCCancelMessage {
76
+ kind: OperationType.Cancel;
77
+ requestId: number;
78
+ }
79
+ export type RPCMessage = RPCRequestMessage | RPCNotificationMessage | RPCResponseMessage | RPCErrorMessage | RPCCancelMessage;
80
+ export declare abstract class IMessageIO<T = any> {
81
+ abstract loadProtocolMethod?(methodProtocol: TSumiProtocolMethod, options?: {
82
+ nameConverter?: (str: string) => string;
83
+ }): void;
84
+ abstract Request(requestId: number, method: string, headers: IRequestHeaders, args: any[]): T;
85
+ abstract Notification(requestId: number, method: string, headers: IRequestHeaders, args: any[]): T;
86
+ abstract Cancel(requestId: number): T;
87
+ abstract Response(requestId: number, method: string, headers: Record<string, any>, result: any): T;
88
+ abstract Error(requestId: number, method: string, headers: Record<string, any>, error: any): T;
89
+ abstract parse(data: T): RPCMessage;
90
+ }
91
+ export declare class MessageIO extends IMessageIO<PlatformBuffer> {
50
92
  fury: Fury;
51
93
  reader: BinaryReader;
52
94
  writer: BinaryWriter;
@@ -64,10 +106,19 @@ export declare class MessageIO {
64
106
  nameConverter?: (str: string) => string;
65
107
  }): void;
66
108
  getProcessor(method: string): IProtocolSerializer;
67
- Notification(requestId: number, method: string, headers: IRequestHeaders, args: any[]): import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
68
- Request(requestId: number, method: string, headers: IRequestHeaders, args: any[]): import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
69
- Cancel(requestId: number): import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
70
- Response(requestId: number, method: string, headers: Record<string, any>, result: any): import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
71
- Error(requestId: number, method: string, headers: Record<string, any>, error: any): import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
109
+ Notification(requestId: number, method: string, headers: IRequestHeaders, args: any[]): PlatformBuffer;
110
+ Request(requestId: number, method: string, headers: IRequestHeaders, args: any[]): PlatformBuffer;
111
+ Cancel(requestId: number): PlatformBuffer;
112
+ Response(requestId: number, method: string, headers: Record<string, any>, result: any): PlatformBuffer;
113
+ Error(requestId: number, method: string, headers: Record<string, any>, error: any): PlatformBuffer;
114
+ parse(data: PlatformBuffer): RPCMessage;
115
+ }
116
+ export declare class RawMessageIO implements IMessageIO<RPCMessage> {
117
+ Request(requestId: number, method: string, headers: IRequestHeaders, args: any[]): RPCRequestMessage;
118
+ Notification(requestId: number, method: string, headers: IRequestHeaders, args: any[]): RPCNotificationMessage;
119
+ Cancel(requestId: number): RPCCancelMessage;
120
+ Response(requestId: number, method: string, headers: Record<string, any>, result: any): RPCResponseMessage;
121
+ Error(requestId: number, method: string, headers: Record<string, any>, error: any): RPCErrorMessage;
122
+ parse(data: any): RPCMessage;
72
123
  }
73
124
  //# sourceMappingURL=message-io.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-io.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/message-io.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,UAAU,EAAyB,MAAM,cAAc,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAIxE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGrE,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAGhB,aAAa,EACb,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAIjB,oBAAY,aAAa;IACvB,OAAO,IAAA;IACP,YAAY,IAAA;IACZ,QAAQ,IAAA;IACR,MAAM,IAAA;CACP;AAED,oBAAY,MAAM;IAChB,EAAE,IAAA;IACF,GAAG,IAAA;CACJ;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;CAOf,CAAC;AA8CX,qBAAa,qBAAsB,YAAW,mBAAmB;IAG5C,MAAM,EAAE,YAAY;IAAS,MAAM,EAAE,YAAY;IAFpE,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;gBAEpB,MAAM,EAAE,YAAY,EAAS,MAAM,EAAE,YAAY,EAAE,cAAc,CAAC,EAAE,eAAe;IAItG,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAG/B,WAAW,IAAI,GAAG,EAAE;IAGpB,aAAa,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI;IAGvC,YAAY,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC;CAG3B;AAED,qBAAa,SAAS;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IAErB,OAAO,CAAC,aAAa,CAA6C;IAElE,OAAO,CAAC,aAAa,CAAsB;IAE3C,wBAAwB,EAAE,UAAU,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IACvE,yBAAyB,EAAE,UAAU,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;;IAczE,gBAAgB,CAAC,UAAU,EAAE,mBAAmB;IAIhD,GAAG,CAAC,IAAI,EAAE,MAAM;IAIhB,YAAY,CACV,QAAQ,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;KACzC;IASH,kBAAkB,CAChB,cAAc,EAAE,mBAAmB,EACnC,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;KACzC;IASH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAQjD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE;IAcrF,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE;IAchF,MAAM,CAAC,SAAS,EAAE,MAAM;IAUxB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG;IAcrF,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG;CAalF"}
1
+ {"version":3,"file":"message-io.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/message-io.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MessageIO = exports.AnyProtocolSerializer = exports.HeadersProto = exports.Status = exports.OperationType = void 0;
3
+ exports.RawMessageIO = exports.MessageIO = exports.IMessageIO = exports.AnyProtocolSerializer = exports.HeadersProto = exports.OperationType = void 0;
4
4
  const fury_1 = require("@furyjs/fury");
5
5
  const gen_1 = require("@furyjs/fury/dist/lib/gen");
6
6
  const utils_1 = require("@opensumi/ide-core-common/lib/utils");
@@ -13,12 +13,8 @@ var OperationType;
13
13
  OperationType[OperationType["Notification"] = 1] = "Notification";
14
14
  OperationType[OperationType["Response"] = 2] = "Response";
15
15
  OperationType[OperationType["Cancel"] = 3] = "Cancel";
16
+ OperationType[OperationType["Error"] = 4] = "Error";
16
17
  })(OperationType = exports.OperationType || (exports.OperationType = {}));
17
- var Status;
18
- (function (Status) {
19
- Status[Status["OK"] = 0] = "OK";
20
- Status[Status["Err"] = 1] = "Err";
21
- })(Status = exports.Status || (exports.Status = {}));
22
18
  exports.HeadersProto = {
23
19
  Request: fury_1.Type.object('req-headers', {
24
20
  cancelable: fury_1.Type.bool(),
@@ -32,6 +28,7 @@ const PacketPrefix = {
32
28
  Notification: (OperationType.Notification << 8) | ProtoVersionV1,
33
29
  Response: (OperationType.Response << 8) | ProtoVersionV1,
34
30
  Cancel: (OperationType.Cancel << 8) | ProtoVersionV1,
31
+ Error: (OperationType.Error << 8) | ProtoVersionV1,
35
32
  };
36
33
  class SumiProtocolSerializer {
37
34
  constructor(methodProtocol, fury) {
@@ -81,8 +78,12 @@ class AnyProtocolSerializer {
81
78
  }
82
79
  }
83
80
  exports.AnyProtocolSerializer = AnyProtocolSerializer;
84
- class MessageIO {
81
+ class IMessageIO {
82
+ }
83
+ exports.IMessageIO = IMessageIO;
84
+ class MessageIO extends IMessageIO {
85
85
  constructor() {
86
+ super();
86
87
  this.serializerMap = new Map();
87
88
  const fury = (0, shared_1.furyFactory)();
88
89
  this.fury = fury.fury;
@@ -151,7 +152,6 @@ class MessageIO {
151
152
  writer.uint16(PacketPrefix.Response);
152
153
  writer.uint32(requestId);
153
154
  writer.stringOfVarUInt32(method);
154
- writer.uint16(Status.OK);
155
155
  this.responseHeadersSerializer.write(headers);
156
156
  this.getProcessor(method).writeResponse(result);
157
157
  return writer.dump();
@@ -159,14 +159,115 @@ class MessageIO {
159
159
  Error(requestId, method, headers, error) {
160
160
  const { writer } = this;
161
161
  writer.reset();
162
- writer.uint16(PacketPrefix.Response);
162
+ writer.uint16(PacketPrefix.Error);
163
163
  writer.uint32(requestId);
164
164
  writer.stringOfVarUInt32(method);
165
- writer.uint16(Status.Err);
166
165
  this.responseHeadersSerializer.write(headers);
167
166
  writer.stringOfVarUInt32((0, utils_1.stringifyError)(error));
168
167
  return writer.dump();
169
168
  }
169
+ parse(data) {
170
+ const { reader } = this;
171
+ reader.reset(data);
172
+ // skip version, currently only have version 1
173
+ reader.skip(1);
174
+ const opType = reader.uint8();
175
+ const requestId = reader.uint32();
176
+ switch (opType) {
177
+ case OperationType.Request:
178
+ case OperationType.Notification: {
179
+ const method = reader.stringOfVarUInt32();
180
+ const headers = this.requestHeadersSerializer.read();
181
+ const args = this.getProcessor(method).readRequest();
182
+ return {
183
+ kind: opType,
184
+ requestId,
185
+ method,
186
+ headers,
187
+ args,
188
+ };
189
+ }
190
+ case OperationType.Error: {
191
+ const method = reader.stringOfVarUInt32();
192
+ const headers = this.responseHeadersSerializer.read();
193
+ const error = (0, utils_1.parseError)(reader.stringOfVarUInt32());
194
+ return {
195
+ kind: OperationType.Error,
196
+ requestId,
197
+ method,
198
+ headers,
199
+ error,
200
+ };
201
+ }
202
+ case OperationType.Response: {
203
+ const method = reader.stringOfVarUInt32();
204
+ const headers = this.responseHeadersSerializer.read();
205
+ const result = this.getProcessor(method).readResponse();
206
+ return {
207
+ kind: OperationType.Response,
208
+ requestId,
209
+ method,
210
+ headers,
211
+ result,
212
+ };
213
+ }
214
+ case OperationType.Cancel:
215
+ return {
216
+ kind: OperationType.Cancel,
217
+ requestId,
218
+ };
219
+ default:
220
+ throw new Error(`Unknown message type: ${opType}`);
221
+ }
222
+ }
170
223
  }
171
224
  exports.MessageIO = MessageIO;
225
+ class RawMessageIO {
226
+ Request(requestId, method, headers, args) {
227
+ return {
228
+ kind: OperationType.Request,
229
+ requestId,
230
+ method,
231
+ headers,
232
+ args,
233
+ };
234
+ }
235
+ Notification(requestId, method, headers, args) {
236
+ return {
237
+ kind: OperationType.Notification,
238
+ requestId,
239
+ method,
240
+ headers,
241
+ args,
242
+ };
243
+ }
244
+ Cancel(requestId) {
245
+ return {
246
+ kind: OperationType.Cancel,
247
+ requestId,
248
+ };
249
+ }
250
+ Response(requestId, method, headers, result) {
251
+ return {
252
+ kind: OperationType.Response,
253
+ requestId,
254
+ headers,
255
+ method,
256
+ result,
257
+ };
258
+ }
259
+ Error(requestId, method, headers, error) {
260
+ return {
261
+ kind: OperationType.Error,
262
+ requestId,
263
+ method,
264
+ headers,
265
+ error,
266
+ };
267
+ }
268
+ parse(data) {
269
+ return data;
270
+ }
271
+ }
272
+ exports.RawMessageIO = RawMessageIO;
172
273
  //# sourceMappingURL=message-io.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-io.js","sourceRoot":"","sources":["../../../src/common/rpc/message-io.ts"],"names":[],"mappings":";;;AAAA,uCAAuE;AACvE,mDAA+D;AAG/D,+DAAqE;AAErE,6CAAqE;AACrE,mDAAqD;AAYrD,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,uDAAO,CAAA;IACP,iEAAY,CAAA;IACZ,yDAAQ,CAAA;IACR,qDAAM,CAAA;AACR,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB;AAED,IAAY,MAGX;AAHD,WAAY,MAAM;IAChB,+BAAE,CAAA;IACF,iCAAG,CAAA;AACL,CAAC,EAHW,MAAM,GAAN,cAAM,KAAN,cAAM,QAGjB;AAEY,QAAA,YAAY,GAAG;IAC1B,OAAO,EAAE,WAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QAClC,UAAU,EAAE,WAAI,CAAC,IAAI,EAAE;KACxB,CAAC;IACF,QAAQ,EAAE,WAAI,CAAC,MAAM,CAAC,cAAc,EAAE;QACpC,OAAO,EAAE,WAAI,CAAC,IAAI,EAAE;KACrB,CAAC;CACM,CAAC;AAEX,MAAM,YAAY,GAAG;IACnB,OAAO,EAAE,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,cAAc;IACtD,YAAY,EAAE,CAAC,aAAa,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,cAAc;IAChE,QAAQ,EAAE,CAAC,aAAa,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,cAAc;IACxD,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,cAAc;CAC5C,CAAC;AAEX,MAAM,sBAAsB;IAI1B,YAAY,cAAmC,EAAS,IAAU;QAAV,SAAI,GAAJ,IAAI,CAAM;QAChE,MAAM,SAAS,GAAG,EAAuB,CAAC;QAE1C,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE;YAC5C,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC9B;QAED,MAAM,YAAY,GAAG,WAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAE3C,IAAI,WAAW,GAAoB,WAAI,CAAC,GAAG,EAAE,CAAC;QAE9C,IAAI,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE;YAC3D,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;SAC5C;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED,YAAY,CAAC,IAAW;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,WAAW;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IACD,aAAa,CAAoB,MAAS;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IACD,YAAY;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;CACF;AAED,MAAa,qBAAqB;IAGhC,YAAmB,MAAoB,EAAS,MAAoB,EAAE,cAAgC;QAAnF,WAAM,GAAN,MAAM,CAAc;QAAS,WAAM,GAAN,MAAM,CAAc;QAClE,IAAI,CAAC,aAAa,GAAG,IAAI,mBAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACnF,CAAC;IAED,YAAY,CAAC,IAAW;QACtB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,WAAW;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IACD,aAAa,CAAU,MAAS;QAC9B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IACD,YAAY;QACV,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;CACF;AAnBD,sDAmBC;AAED,MAAa,SAAS;IAYpB;QAPQ,kBAAa,GAAG,IAAI,GAAG,EAAkC,CAAC;QAQhE,MAAM,IAAI,GAAG,IAAA,oBAAW,GAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE1B,IAAI,CAAC,wBAAwB,GAAG,IAAA,wBAAkB,EAAC,IAAI,CAAC,IAAI,EAAE,oBAAY,CAAC,OAAO,CAAC,CAAC;QACpF,IAAI,CAAC,yBAAyB,GAAG,IAAA,wBAAkB,EAAC,IAAI,CAAC,IAAI,EAAE,oBAAY,CAAC,QAAQ,CAAC,CAAC;QAEtF,IAAI,CAAC,aAAa,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED,gBAAgB,CAAC,UAA+B;QAC9C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;IAClC,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,YAAY,CACV,QAAuB,EACvB,OAEC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;QAE7B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACzC;IACH,CAAC;IAED,kBAAkB,CAChB,cAAmC,EACnC,OAEC;QAED,IAAI,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;QACnC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,EAAE;YAC1B,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;SACxC;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,sBAAsB,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,SAAS,EAAE;YACb,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,YAAY,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAwB,EAAE,IAAW;QACnF,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACzC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzB,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAwB,EAAE,IAAW;QAC9E,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzB,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,SAAiB;QACtB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzB,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,QAAQ,CAAC,SAAiB,EAAE,MAAc,EAAE,OAA4B,EAAE,MAAW;QACnF,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAEhD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,SAAiB,EAAE,MAAc,EAAE,OAA4B,EAAE,KAAU;QAC/E,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,CAAC,iBAAiB,CAAC,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC,CAAC;QAEhD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;CACF;AAnID,8BAmIC"}
1
+ {"version":3,"file":"message-io.js","sourceRoot":"","sources":["../../../src/common/rpc/message-io.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { BaseConnection } from '../connection';
2
2
  import { ISumiConnectionOptions, SumiConnection } from './connection';
3
+ import { MessageIO } from './message-io';
3
4
  import { TSumiProtocol } from './types';
4
5
  export declare class ProxyIdentifier<T = any> {
5
6
  static count: number;
@@ -8,36 +9,35 @@ export declare class ProxyIdentifier<T = any> {
8
9
  constructor(serviceId: string);
9
10
  static for(serviceId: string): ProxyIdentifier<any>;
10
11
  }
11
- export interface ISumiMultiplexerConnectionOptions extends ISumiConnectionOptions {
12
- /**
13
- * Known protocols that will be loaded automatically when a proxy is created.
14
- */
15
- knownProtocols?: Record<string, TSumiProtocol>;
16
- }
17
12
  export declare const IRPCProtocol: unique symbol;
18
13
  export interface IRPCProtocol {
19
14
  getProxy<T>(proxyId: ProxyIdentifier<T>): T;
20
15
  set<T>(identifier: ProxyIdentifier<T>, instance: T): T;
21
16
  get<T>(identifier: ProxyIdentifier<T>): T;
22
17
  }
18
+ /**
19
+ *
20
+ * @param protocols Known protocols that will be loaded automatically when a proxy is created.
21
+ * @returns
22
+ */
23
+ export declare function createExtMessageIO(protocols?: Map<ProxyIdentifier<any>, TSumiProtocol>): MessageIO;
23
24
  /**
24
25
  * A connection multiplexer that allows to register multiple local RPC services and to create proxies for them.
25
26
  */
26
27
  export declare class SumiConnectionMultiplexer extends SumiConnection implements IRPCProtocol {
27
28
  protected socket: BaseConnection<Uint8Array>;
28
- protected options: ISumiMultiplexerConnectionOptions;
29
+ protected options: ISumiConnectionOptions;
29
30
  protected static SEP: string;
30
31
  protected static SEP_LENGTH: number;
31
- protected static getRPCName(serviceId: string, methodName: string): string;
32
+ static getRPCName(serviceId: string, methodName: string): string;
32
33
  protected static extractServiceAndMethod(rpcId: string): [string, string];
33
34
  protected static normalizeServiceId(serviceId: string): string;
34
35
  protected readonly _locals: Map<string, any>;
35
36
  protected readonly _proxies: Map<string, any>;
36
- protected _knownProtocols: Record<string, TSumiProtocol>;
37
- constructor(socket: BaseConnection<Uint8Array>, options?: ISumiMultiplexerConnectionOptions);
37
+ io: MessageIO;
38
+ constructor(socket: BaseConnection<Uint8Array>, options?: ISumiConnectionOptions);
38
39
  set<T>(identifier: ProxyIdentifier<T>, instance: any): any;
39
40
  get<T>(identifier: ProxyIdentifier<T>): any;
40
- protected loadProtocol(rpcId: string, protocol: TSumiProtocol): void;
41
41
  getProxy<T>(proxyId: ProxyIdentifier<T>): any;
42
42
  protected _createProxy(rpcId: string): any;
43
43
  invoke(rpcName: string, args: any[]): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"multiplexer.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG;IAClC,OAAc,KAAK,SAAK;IAExB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;gBACpB,SAAS,EAAE,MAAM;IAK7B,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM;CAG7B;AAED,MAAM,WAAW,iCAAkC,SAAQ,sBAAsB;IAC/E;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAChD;AAED,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5C,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACvD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,cAAe,YAAW,YAAY;IAqBvE,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,iCAAiC;IApB9G,SAAS,CAAC,MAAM,CAAC,GAAG,SAAO;IAC3B,SAAS,CAAC,MAAM,CAAC,UAAU,SAAwC;IAEnE,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAIjE,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAKzE,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM;IAIrD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9C,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;gBAEnC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,iCAAsC;IAc5G,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG;IAWpD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;IAI5C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa;IAMtD,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAe9C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM;IAmBvB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAe/D,SAAS;CAGV"}
1
+ {"version":3,"file":"multiplexer.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAyB,SAAS,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG;IAClC,OAAc,KAAK,SAAK;IAExB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;gBACpB,SAAS,EAAE,MAAM;IAK7B,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM;CAG7B;AAED,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5C,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACvD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,aAWtF;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,cAAe,YAAW,YAAY;IAsBvE,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,sBAAsB;IArBnG,SAAS,CAAC,MAAM,CAAC,GAAG,SAAO;IAC3B,SAAS,CAAC,MAAM,CAAC,UAAU,SAAwC;IAEnE,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAIvD,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAKzE,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM;IAIrD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE9C,EAAE,EAAE,SAAS,CAAC;gBAEQ,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,sBAA2B;IAejG,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG;IAOpD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;IAIrC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAU9C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM;IAmBvB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAe/D,SAAS;CAGV"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SumiConnectionMultiplexer = exports.IRPCProtocol = exports.ProxyIdentifier = void 0;
3
+ exports.SumiConnectionMultiplexer = exports.createExtMessageIO = exports.IRPCProtocol = exports.ProxyIdentifier = void 0;
4
4
  const any_1 = require("../fury-extends/any");
5
5
  const connection_1 = require("./connection");
6
6
  const message_io_1 = require("./message-io");
@@ -16,6 +16,22 @@ class ProxyIdentifier {
16
16
  exports.ProxyIdentifier = ProxyIdentifier;
17
17
  ProxyIdentifier.count = 0;
18
18
  exports.IRPCProtocol = Symbol('IRPCProtocol');
19
+ /**
20
+ *
21
+ * @param protocols Known protocols that will be loaded automatically when a proxy is created.
22
+ * @returns
23
+ */
24
+ function createExtMessageIO(protocols) {
25
+ const io = new message_io_1.MessageIO();
26
+ io.setAnySerializer(new message_io_1.AnyProtocolSerializer(io.writer, io.reader, any_1.ExtObjectTransfer));
27
+ protocols === null || protocols === void 0 ? void 0 : protocols.forEach((protocol, proxyId) => {
28
+ io.loadProtocol(protocol, {
29
+ nameConverter: (str) => SumiConnectionMultiplexer.getRPCName(proxyId.serviceId, str),
30
+ });
31
+ });
32
+ return io;
33
+ }
34
+ exports.createExtMessageIO = createExtMessageIO;
19
35
  /**
20
36
  * A connection multiplexer that allows to register multiple local RPC services and to create proxies for them.
21
37
  */
@@ -31,13 +47,11 @@ class SumiConnectionMultiplexer extends connection_1.SumiConnection {
31
47
  return serviceId.replace(/\//g, '_');
32
48
  }
33
49
  constructor(socket, options = {}) {
34
- super(socket, options);
50
+ super(socket, Object.assign(Object.assign({}, options), { io: options.io || createExtMessageIO() }));
35
51
  this.socket = socket;
36
52
  this.options = options;
37
53
  this._locals = new Map();
38
54
  this._proxies = new Map();
39
- this._knownProtocols = options.knownProtocols || {};
40
- this.io.setAnySerializer(new message_io_1.AnyProtocolSerializer(this.io.writer, this.io.reader, any_1.ExtObjectTransfer));
41
55
  this.onRequestNotFound((rpcName, args) => this.invoke(rpcName, args));
42
56
  // call `listen` implicitly
43
57
  // compatible behavior with the RPCProtocol
@@ -46,27 +60,14 @@ class SumiConnectionMultiplexer extends connection_1.SumiConnection {
46
60
  set(identifier, instance) {
47
61
  const id = SumiConnectionMultiplexer.normalizeServiceId(identifier.serviceId);
48
62
  this._locals.set(id, instance);
49
- const protocol = this._knownProtocols[identifier.serviceId];
50
- if (protocol) {
51
- this.loadProtocol(id, protocol);
52
- }
53
63
  return instance;
54
64
  }
55
65
  get(identifier) {
56
66
  return this._locals.get(SumiConnectionMultiplexer.normalizeServiceId(identifier.serviceId));
57
67
  }
58
- loadProtocol(rpcId, protocol) {
59
- this.io.loadProtocol(protocol, {
60
- nameConverter: (str) => SumiConnectionMultiplexer.getRPCName(rpcId, str),
61
- });
62
- }
63
68
  getProxy(proxyId) {
64
69
  const serviceId = SumiConnectionMultiplexer.normalizeServiceId(proxyId.serviceId);
65
70
  if (!this._proxies.has(serviceId)) {
66
- const protocol = this._knownProtocols[proxyId.serviceId];
67
- if (protocol) {
68
- this.loadProtocol(serviceId, protocol);
69
- }
70
71
  this._proxies.set(serviceId, this._createProxy(serviceId));
71
72
  }
72
73
  return this._proxies.get(serviceId);
@@ -1 +1 @@
1
- {"version":3,"file":"multiplexer.js","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiplexer.js","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export * from './stub';
2
2
  export * from './center';
3
+ export * from './registry';
3
4
  export declare abstract class RPCService<T = any> {
4
5
  rpcClient?: T[];
5
6
  rpcRegistered?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/rpc-service/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AAEzB,8BAAsB,UAAU,CAAC,CAAC,GAAG,GAAG;IACtC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC;IAC7B,IAAI,MAAM,IAAI,CAAC,GAAG,SAAS,CAE1B;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/rpc-service/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAE3B,8BAAsB,UAAU,CAAC,CAAC,GAAG,GAAG;IACtC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC;IAC7B,IAAI,MAAM,IAAI,CAAC,GAAG,SAAS,CAE1B;CACF"}
@@ -4,6 +4,7 @@ exports.RPCService = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  tslib_1.__exportStar(require("./stub"), exports);
6
6
  tslib_1.__exportStar(require("./center"), exports);
7
+ tslib_1.__exportStar(require("./registry"), exports);
7
8
  class RPCService {
8
9
  get client() {
9
10
  return this.rpcClient ? this.rpcClient[0] : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/rpc-service/index.ts"],"names":[],"mappings":";;;;AAAA,iDAAuB;AACvB,mDAAyB;AAEzB,MAAsB,UAAU;IAI9B,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxD,CAAC;CACF;AAPD,gCAOC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/rpc-service/index.ts"],"names":[],"mappings":";;;;AAAA,iDAAuB;AACvB,mDAAyB;AACzB,qDAA2B;AAE3B,MAAsB,UAAU;IAI9B,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxD,CAAC;CACF;AAPD,gCAOC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,qBAAa,SAAU,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACzD,SAAS,CAAC,MAAM,SAAmB;IACnC,SAAS,CAAC,QAAQ,WAAoD;IAEtE,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAyCxC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA+CxD;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAa1B,MAAM,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI;CAe5C"}
1
+ {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,qBAAa,SAAU,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACzD,SAAS,CAAC,MAAM,SAAmB;IACnC,SAAS,CAAC,QAAQ,WAAoD;IAEtE,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAyCxC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA+CxD;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAa1B,MAAM,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI;CAiB5C"}
@@ -111,7 +111,7 @@ class ProxyJson extends base_1.ProxyBase {
111
111
  }
112
112
  listen(connection) {
113
113
  super.listen(connection);
114
- connection.onRequest((method) => {
114
+ this._disposables.add(connection.onRequest((method) => {
115
115
  if (!this.registry.has(method)) {
116
116
  const requestId = this.nextRequestId();
117
117
  this.capturer.captureOnRequest(requestId, method, []);
@@ -121,7 +121,7 @@ class ProxyJson extends base_1.ProxyBase {
121
121
  this.capturer.captureOnRequestFail(requestId, method, result.data);
122
122
  return result;
123
123
  }
124
- });
124
+ }));
125
125
  }
126
126
  }
127
127
  exports.ProxyJson = ProxyJson;
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/json.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sumi.d.ts","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/sumi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,qBAAa,SAAU,SAAQ,SAAS,CAAC,cAAc,CAAC;IACtD,SAAS,CAAC,MAAM,SAAmB;IAEnC,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAgBxC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAWxD,MAAM,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;CAMzC"}
1
+ {"version":3,"file":"sumi.d.ts","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/sumi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,qBAAa,SAAU,SAAQ,SAAS,CAAC,cAAc,CAAC;IACtD,SAAS,CAAC,MAAM,SAAmB;IAEnC,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAgBxC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAWxD,MAAM,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;CAQzC"}
@@ -37,9 +37,9 @@ class ProxySumi extends base_1.ProxyBase {
37
37
  }
38
38
  listen(connection) {
39
39
  super.listen(connection);
40
- connection.onRequestNotFound(() => {
40
+ this._disposables.add(connection.onRequestNotFound(() => {
41
41
  throw constants_1.METHOD_NOT_REGISTERED;
42
- });
42
+ }));
43
43
  }
44
44
  }
45
45
  exports.ProxySumi = ProxySumi;
@@ -1 +1 @@
1
- {"version":3,"file":"sumi.js","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/sumi.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AAGxD,iCAAmC;AAEnC,MAAa,SAAU,SAAQ,gBAAyB;IAAxD;;QACY,WAAM,GAAG,MAAe,CAAC;IAmCrC,CAAC;IAjCW,WAAW,CAAC,OAAiB;QACrC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAC3B,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBAC9D,IAAI;wBACF,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;qBAC7C;oBAAC,OAAO,CAAC,EAAE;wBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,QAAQ,EAAE,CAAC,CAAC,CAAC;qBAC1D;gBACH,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;aAC1G;SACF;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,GAAG,IAAW;QACvC,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;QAErC,sBAAsB;QACtB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;SACjD;aAAM;YACL,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;SACzD;IACH,CAAC;IAED,MAAM,CAAC,UAA0B;QAC/B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzB,UAAU,CAAC,iBAAiB,CAAC,GAAG,EAAE;YAChC,MAAM,iCAAqB,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApCD,8BAoCC"}
1
+ {"version":3,"file":"sumi.js","sourceRoot":"","sources":["../../../../src/common/rpc-service/proxy/sumi.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AAGxD,iCAAmC;AAEnC,MAAa,SAAU,SAAQ,gBAAyB;IAAxD;;QACY,WAAM,GAAG,MAAe,CAAC;IAqCrC,CAAC;IAnCW,WAAW,CAAC,OAAiB;QACrC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAC3B,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBAC9D,IAAI;wBACF,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;qBAC7C;oBAAC,OAAO,CAAC,EAAE;wBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,QAAQ,EAAE,CAAC,CAAC,CAAC;qBAC1D;gBACH,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;aAC1G;SACF;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,GAAG,IAAW;QACvC,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;QAErC,sBAAsB;QACtB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;SACjD;aAAM;YACL,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;SACzD;IACH,CAAC;IAED,MAAM,CAAC,UAA0B;QAC/B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,UAAU,CAAC,iBAAiB,CAAC,GAAG,EAAE;YAChC,MAAM,iCAAqB,CAAC;QAC9B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF;AAtCD,8BAsCC"}
@@ -1,5 +1,5 @@
1
1
  import { DisposableStore, Emitter, IDisposable } from '@opensumi/ide-core-common';
2
- import { MessageIO, TSumiProtocol } from '../rpc';
2
+ import { IMessageIO, TSumiProtocol } from '../rpc';
3
3
  import { RPCServiceMethod } from '../types';
4
4
  export declare function getServiceMethods(service: any): string[];
5
5
  /**
@@ -27,7 +27,7 @@ export declare class ProtocolRegistry {
27
27
  addProtocol(protocol: TSumiProtocol, options?: {
28
28
  nameConverter?: (str: string) => string;
29
29
  }): void;
30
- applyTo(io: MessageIO): void;
30
+ applyTo(io: IMessageIO): void;
31
31
  dispose(): void;
32
32
  }
33
33
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/common/rpc-service/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAElF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAuB,MAAM,QAAQ,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI5C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,EAAE,CAqBxD;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,YAAY,CAAyB;IAE7C,SAAS,CAAC,OAAO,oBAAkD;IACnE,gBAAgB,sDAAsB;IAEtC,OAAO,CAAC,gBAAgB,CAA4C;IAEpE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB;IAKjD,eAAe,CACb,OAAO,EAAE,GAAG,EACZ,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;KACzC;IAkBH,GAAG,CAAC,IAAI,EAAE,WAAW;IAIrB,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG;IAM9C,OAAO;IAIP,OAAO;CAGR;AAED,qBAAa,gBAAgB;IAC3B,SAAS,CAAC,YAAY,kBAAyB;IAE/C,SAAS,CAAC,OAAO,oBAAkD;IACnE,gBAAgB,sDAAsB;IAEtC,OAAO,CAAC,WAAW,CAA+C;IAElE,WAAW,CACT,QAAQ,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;KACzC;IAsBH,OAAO,CAAC,EAAE,EAAE,SAAS;IAiBrB,OAAO;CAGR"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/common/rpc-service/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAElF,OAAO,EAAE,UAAU,EAAE,aAAa,EAAuB,MAAM,QAAQ,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI5C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,EAAE,CAqBxD;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,YAAY,CAAyB;IAE7C,SAAS,CAAC,OAAO,oBAAkD;IACnE,gBAAgB,sDAAsB;IAEtC,OAAO,CAAC,gBAAgB,CAA4C;IAEpE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB;IAKjD,eAAe,CACb,OAAO,EAAE,GAAG,EACZ,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;KACzC;IAkBH,GAAG,CAAC,IAAI,EAAE,WAAW;IAIrB,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG;IAM9C,OAAO;IAIP,OAAO;CAGR;AAED,qBAAa,gBAAgB;IAC3B,SAAS,CAAC,YAAY,kBAAyB;IAE/C,SAAS,CAAC,OAAO,oBAAkD;IACnE,gBAAgB,sDAAsB;IAEtC,OAAO,CAAC,WAAW,CAA+C;IAElE,WAAW,CACT,QAAQ,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;KACzC;IAsBH,OAAO,CAAC,EAAE,EAAE,UAAU;IAyBtB,OAAO;CAGR"}
@@ -88,10 +88,16 @@ class ProtocolRegistry {
88
88
  this.emitter.fire(serviceNames);
89
89
  }
90
90
  applyTo(io) {
91
+ if (!io.loadProtocolMethod) {
92
+ return;
93
+ }
91
94
  for (const protocol of this.protocolMap.values()) {
92
95
  io.loadProtocolMethod(protocol);
93
96
  }
94
97
  this._disposables.add(this.onProtocolUpdate((methods) => {
98
+ if (!io.loadProtocolMethod) {
99
+ return;
100
+ }
95
101
  for (const method of methods) {
96
102
  const protocol = this.protocolMap.get(method);
97
103
  if (protocol) {