@opensumi/ide-connection 3.0.4-next-1716529130.0 → 3.0.4-next-1716962745.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 (80) hide show
  1. package/lib/browser/ws-channel-handler.d.ts +8 -1
  2. package/lib/browser/ws-channel-handler.d.ts.map +1 -1
  3. package/lib/browser/ws-channel-handler.js +10 -21
  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 +4 -3
  21. package/lib/common/rpc/connection.d.ts.map +1 -1
  22. package/lib/common/rpc/connection.js +14 -30
  23. package/lib/common/rpc/connection.js.map +1 -1
  24. package/lib/common/rpc/message-io.d.ts +54 -11
  25. package/lib/common/rpc/message-io.d.ts.map +1 -1
  26. package/lib/common/rpc/message-io.js +63 -10
  27. package/lib/common/rpc/message-io.js.map +1 -1
  28. package/lib/common/rpc/multiplexer.d.ts +2 -0
  29. package/lib/common/rpc/multiplexer.d.ts.map +1 -1
  30. package/lib/common/rpc/multiplexer.js +1 -0
  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/registry.d.ts +2 -2
  37. package/lib/common/rpc-service/registry.d.ts.map +1 -1
  38. package/lib/common/rpc-service/registry.js +6 -0
  39. package/lib/common/rpc-service/registry.js.map +1 -1
  40. package/lib/common/serializer/fury.d.ts +122 -0
  41. package/lib/common/serializer/fury.d.ts.map +1 -0
  42. package/lib/common/serializer/fury.js +51 -0
  43. package/lib/common/serializer/fury.js.map +1 -0
  44. package/lib/common/serializer/index.d.ts +6 -0
  45. package/lib/common/serializer/index.d.ts.map +1 -0
  46. package/lib/common/serializer/index.js +21 -0
  47. package/lib/common/serializer/index.js.map +1 -0
  48. package/lib/common/serializer/raw.d.ts +4 -0
  49. package/lib/common/serializer/raw.d.ts.map +1 -0
  50. package/lib/common/serializer/raw.js +8 -0
  51. package/lib/common/serializer/raw.js.map +1 -0
  52. package/lib/common/serializer/types.d.ts +5 -0
  53. package/lib/common/serializer/types.d.ts.map +1 -0
  54. package/lib/common/serializer/types.js +3 -0
  55. package/lib/common/serializer/types.js.map +1 -0
  56. package/lib/common/server-handler.d.ts +7 -1
  57. package/lib/common/server-handler.d.ts.map +1 -1
  58. package/lib/common/server-handler.js +13 -11
  59. package/lib/common/server-handler.js.map +1 -1
  60. package/lib/common/ws-channel.d.ts +11 -201
  61. package/lib/common/ws-channel.d.ts.map +1 -1
  62. package/lib/common/ws-channel.js +49 -85
  63. package/lib/common/ws-channel.js.map +1 -1
  64. package/package.json +5 -5
  65. package/src/browser/ws-channel-handler.ts +26 -23
  66. package/src/common/channel/index.ts +1 -0
  67. package/src/common/channel/types.ts +82 -0
  68. package/src/common/connection/drivers/simple.ts +5 -5
  69. package/src/common/index.ts +4 -0
  70. package/src/common/rpc/connection.ts +19 -36
  71. package/src/common/rpc/message-io.ts +123 -10
  72. package/src/common/rpc/multiplexer.ts +3 -1
  73. package/src/common/rpc-service/index.ts +1 -0
  74. package/src/common/rpc-service/registry.ts +10 -2
  75. package/src/common/serializer/fury.ts +61 -0
  76. package/src/common/serializer/index.ts +23 -0
  77. package/src/common/serializer/raw.ts +8 -0
  78. package/src/common/serializer/types.ts +4 -0
  79. package/src/common/server-handler.ts +24 -26
  80. package/src/common/ws-channel.ts +72 -207
@@ -1,6 +1,12 @@
1
1
  import { IReporterService } from '@opensumi/ide-core-common';
2
+ import { ChannelMessage } from '../common/channel/types';
2
3
  import { IRuntimeSocketConnection } from '../common/connection';
4
+ import { IConnectionShape } from '../common/connection/types';
5
+ import { ISerializer } from '../common/serializer';
3
6
  import { WSChannel } from '../common/ws-channel';
7
+ export interface WSChannelHandlerOptions {
8
+ serializer?: ISerializer<ChannelMessage, any>;
9
+ }
4
10
  /**
5
11
  * Channel Handler in browser
6
12
  */
@@ -8,6 +14,7 @@ export declare class WSChannelHandler {
8
14
  connection: IRuntimeSocketConnection<Uint8Array>;
9
15
  private _disposables;
10
16
  private _onChannelCreatedEmitter;
17
+ wrappedConnection: IConnectionShape<ChannelMessage>;
11
18
  onChannelCreated(path: string, listener: (channel: WSChannel) => void): import("@opensumi/events").IDisposable;
12
19
  private channelMap;
13
20
  private channelCloseEventMap;
@@ -20,7 +27,7 @@ export declare class WSChannelHandler {
20
27
  */
21
28
  private openingBarrier;
22
29
  LOG_TAG: string;
23
- constructor(connection: IRuntimeSocketConnection<Uint8Array>, logger: any, clientId: string);
30
+ constructor(connection: IRuntimeSocketConnection<Uint8Array>, logger: any, clientId: string, options?: WSChannelHandlerOptions);
24
31
  replaceLogger(logger: any): void;
25
32
  setReporter(reporterService: IReporterService): void;
26
33
  private heartbeatMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"ws-channel-handler.d.ts","sourceRoot":"","sources":["../../src/browser/ws-channel-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,gBAAgB,EAAyB,MAAM,2BAA2B,CAAC;AAExH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAEhE,OAAO,EAAoB,SAAS,EAAsB,MAAM,sBAAsB,CAAC;AAEvF;;GAEG;AACH,qBAAa,gBAAgB;IAsBR,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC;IArBnE,OAAO,CAAC,YAAY,CAAyB;IAE7C,OAAO,CAAC,wBAAwB,CAA0E;IACnG,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI;IAI5E,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,oBAAoB,CAAuC;IACnE,OAAO,CAAC,MAAM,CAAW;IAClB,QAAQ,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,eAAe,CAAmB;IAE1C;;OAEG;IACH,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,EAAE,MAAM,CAAC;gBAEG,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;IAMlG,aAAa,CAAC,MAAM,EAAE,GAAG;IAKzB,WAAW,CAAC,eAAe,EAAE,gBAAgB;IAG7C,OAAO,CAAC,gBAAgB;IAUX,WAAW;IAqExB,OAAO,CAAC,OAAO;IAIR,UAAU,CAAC,WAAW,EAAE,MAAM;IAIxB,WAAW,CAAC,WAAW,EAAE,MAAM;IA+DrC,OAAO;IAOd,iBAAiB,CAAC,WAAW,EAAE,MAAM;CAiBtC"}
1
+ {"version":3,"file":"ws-channel-handler.d.ts","sourceRoot":"","sources":["../../src/browser/ws-channel-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,gBAAgB,EAAyB,MAAM,2BAA2B,CAAC;AAExH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAkC,MAAM,sBAAsB,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,MAAM,WAAW,uBAAuB;IACtC,UAAU,CAAC,EAAE,WAAW,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAyBlB,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC;IAxBzD,OAAO,CAAC,YAAY,CAAyB;IAE7C,OAAO,CAAC,wBAAwB,CAA0E;IAE1G,iBAAiB,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAC7C,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI;IAI5E,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,oBAAoB,CAAuC;IACnE,OAAO,CAAC,MAAM,CAAW;IAClB,QAAQ,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,eAAe,CAAmB;IAE1C;;OAEG;IACH,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,EAAE,MAAM,CAAC;gBAGP,UAAU,EAAE,wBAAwB,CAAC,UAAU,CAAC,EACvD,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,uBAA4B;IASvC,aAAa,CAAC,MAAM,EAAE,GAAG;IAKzB,WAAW,CAAC,eAAe,EAAE,gBAAgB;IAG7C,OAAO,CAAC,gBAAgB;IAaX,WAAW;IAqDxB,OAAO,CAAC,OAAO;IAIR,UAAU,CAAC,WAAW,EAAE,MAAM;IAIxB,WAAW,CAAC,WAAW,EAAE,MAAM;IA+DrC,OAAO;IAOd,iBAAiB,CAAC,WAAW,EAAE,MAAM;CAiBtC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WSChannelHandler = void 0;
4
4
  const events_1 = require("@opensumi/events");
5
5
  const ide_core_common_1 = require("@opensumi/ide-core-common");
6
+ const serializer_1 = require("../common/serializer");
6
7
  const ws_channel_1 = require("../common/ws-channel");
7
8
  /**
8
9
  * Channel Handler in browser
@@ -11,7 +12,7 @@ class WSChannelHandler {
11
12
  onChannelCreated(path, listener) {
12
13
  return this._onChannelCreatedEmitter.on(path, listener);
13
14
  }
14
- constructor(connection, logger, clientId) {
15
+ constructor(connection, logger, clientId, options = {}) {
15
16
  this.connection = connection;
16
17
  this._disposables = new ide_core_common_1.DisposableStore();
17
18
  this._onChannelCreatedEmitter = this._disposables.add(new events_1.EventEmitter());
@@ -25,6 +26,8 @@ class WSChannelHandler {
25
26
  this.logger = logger || this.logger;
26
27
  this.clientId = clientId;
27
28
  this.LOG_TAG = `[WSChannelHandler] [client-id:${this.clientId}]`;
29
+ const serializer = options.serializer || serializer_1.furySerializer;
30
+ this.wrappedConnection = (0, serializer_1.wrapSerializer)(this.connection, serializer);
28
31
  }
29
32
  // 为解决建立连接之后,替换成可落盘的 logger
30
33
  replaceLogger(logger) {
@@ -40,33 +43,19 @@ class WSChannelHandler {
40
43
  clearTimeout(this.heartbeatMessageTimer);
41
44
  }
42
45
  this.heartbeatMessageTimer = global.setTimeout(() => {
43
- this.connection.send(ws_channel_1.pingMessage);
46
+ this.channelMap.forEach((channel) => {
47
+ channel.ping();
48
+ });
44
49
  this.heartbeatMessage();
45
50
  }, 10 * 1000);
46
51
  }
47
52
  async initHandler() {
48
- this.connection.onMessage((message) => {
53
+ this.wrappedConnection.onMessage((msg) => {
49
54
  // 一个心跳周期内如果有收到消息,则不需要再发送心跳
50
55
  this.heartbeatMessage();
51
- const msg = (0, ws_channel_1.parse)(message);
52
56
  switch (msg.kind) {
53
57
  case 'pong':
54
- // pong 没有 msg.id, 且不需要分发, 不处理
55
- break;
56
- case 'error':
57
- this.logger.error(this.LOG_TAG, `receive error: id: ${msg.id}, code: ${msg.code}, error: ${msg.message}`);
58
- switch (msg.code) {
59
- case ws_channel_1.ErrorMessageCode.ChannelNotFound:
60
- if (this.channelMap.has(msg.id)) {
61
- // 如果远程报错 channel 不存在但是本机存在,则重新打开
62
- const channel = this.channelMap.get(msg.id);
63
- if (channel.channelPath) {
64
- channel.pause();
65
- channel.open(channel.channelPath, this.clientId);
66
- }
67
- }
68
- break;
69
- }
58
+ // pong 不需要分发, 不处理
70
59
  break;
71
60
  default: {
72
61
  const channel = this.channelMap.get(msg.id);
@@ -119,7 +108,7 @@ class WSChannelHandler {
119
108
  this.channelMap.get(key).dispose();
120
109
  this.logger.log(this.LOG_TAG, `channel ${key} already exists, dispose it`);
121
110
  }
122
- const channel = new ws_channel_1.WSChannel(this.connection, {
111
+ const channel = new ws_channel_1.WSChannel(this.wrappedConnection, {
123
112
  id: key,
124
113
  logger: this.logger,
125
114
  ensureServerReady: true,
@@ -1 +1 @@
1
- {"version":3,"file":"ws-channel-handler.js","sourceRoot":"","sources":["../../src/browser/ws-channel-handler.ts"],"names":[],"mappings":";;;AAAA,6CAAgD;AAChD,+DAAwH;AAIxH,qDAAuF;AAEvF;;GAEG;AACH,MAAa,gBAAgB;IAIpB,gBAAgB,CAAC,IAAY,EAAE,QAAsC;QAC1E,OAAO,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAgBD,YAAmB,UAAgD,EAAE,MAAW,EAAE,QAAgB;QAA/E,eAAU,GAAV,UAAU,CAAsC;QArB3D,iBAAY,GAAG,IAAI,iCAAe,EAAE,CAAC;QAErC,6BAAwB,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,qBAAY,EAA+B,CAAC,CAAC;QAKlG,eAAU,GAA2B,IAAI,GAAG,EAAE,CAAC;QAC/C,yBAAoB,GAAG,IAAI,0BAAQ,EAAuB,CAAC;QAC3D,WAAM,GAAG,OAAO,CAAC;QAKzB;;WAEG;QACK,mBAAc,GAAG,IAAI,yBAAO,EAAE,CAAC;QAKrC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,iCAAiC,IAAI,CAAC,QAAQ,GAAG,CAAC;IACnE,CAAC;IACD,2BAA2B;IAC3B,aAAa,CAAC,MAAW;QACvB,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;IACH,CAAC;IACD,WAAW,CAAC,eAAiC;QAC3C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IACO,gBAAgB;QACtB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SAC1C;QACD,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;YAClD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,wBAAW,CAAC,CAAC;YAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,WAAW;QACtB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,2BAA2B;YAC3B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAExB,MAAM,GAAG,GAAG,IAAA,kBAAK,EAAC,OAAO,CAAC,CAAC;YAE3B,QAAQ,GAAG,CAAC,IAAI,EAAE;gBAChB,KAAK,MAAM;oBACT,8BAA8B;oBAC9B,MAAM;gBACR,KAAK,OAAO;oBACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,GAAG,CAAC,EAAE,WAAW,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1G,QAAQ,GAAG,CAAC,IAAI,EAAE;wBAChB,KAAK,6BAAgB,CAAC,eAAe;4BACnC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gCAC/B,iCAAiC;gCACjC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;gCAC7C,IAAI,OAAO,CAAC,WAAW,EAAE;oCACvB,OAAO,CAAC,KAAK,EAAE,CAAC;oCAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;iCAClD;6BACF;4BACD,MAAM;qBACT;oBACD,MAAM;gBACR,OAAO,CAAC,CAAC;oBACP,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC5C,IAAI,OAAO,EAAE;wBACX,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;qBAC/D;iBACF;aACF;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,GAAG,EAAE;YAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE;gBAC5B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACvC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAClC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE;YAC5B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;SAC5B;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE;YAC1B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,QAAQ;YACR,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE;gBAChC,mBAAmB,EAAE,CAAC;aACvB;iBAAM;gBACL,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAEO,OAAO,CAAC,WAAmB;QACjC,OAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,WAAW,EAAE,CAAC;IAC3C,CAAC;IAEM,UAAU,CAAC,WAAmB;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,WAAmB;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,6BAA6B,CAAC,CAAC;SAC5E;QAED,MAAM,OAAO,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,UAAU,EAAE;YAC7C,EAAE,EAAE,GAAG;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEzD,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAE3B,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;YAClB,kBAAkB,EAAE,CAAC;YACrB,IAAI,kBAAkB,GAAG,CAAC,EAAE;gBAC1B,OAAO,CAAC,UAAU,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,IAAI,CAAC,OAAO,EACZ,qBAAqB,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,YAAY,kBAAkB,EAAE,CAC1F,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;aACvF;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,SAAS,EAAE;gBACb,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBACzB,IAAI,CAAC,eAAe;wBAClB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,6BAAW,CAAC,iBAAiB,EAAE,6BAAW,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBACnG,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;aAC9C;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,MAAc,EAAE,EAAE;YAC/C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE;gBACxC,WAAW;gBACX,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;gBAC5B,WAAW,EAAG,SAAiB,CAAC,UAA4B;aAC7D,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,WAAW,kBAAkB,IAAI,aAAa,MAAM,EAAE,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,0BAAQ,EAAQ,CAAC;QAEtC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;YAClC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEzC,MAAM,QAAQ,CAAC,OAAO,CAAC;QAEvB,OAAO,OAAO,CAAC;IACjB,CAAC;IAEM,OAAO;QACZ,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SAC1C;QACD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,iBAAiB,CAAC,WAAmB;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,0BAAQ,EAAQ,CAAC;QACtC,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE;gBACzB,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC7D,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE;oBACzB,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACH,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;CACF;AAlND,4CAkNC"}
1
+ {"version":3,"file":"ws-channel-handler.js","sourceRoot":"","sources":["../../src/browser/ws-channel-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './types';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/channel/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./types"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/channel/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB"}
@@ -0,0 +1,66 @@
1
+ export type ChannelMessage = PingMessage | PongMessage | OpenMessage | ServerReadyMessage | DataMessage | BinaryMessage | CloseMessage | ErrorMessage;
2
+ /**
3
+ * `ping` and `pong` are used to detect whether the connection is alive.
4
+ */
5
+ export interface PingMessage {
6
+ kind: 'ping';
7
+ id: string;
8
+ }
9
+ /**
10
+ * when server receive a `ping` message, it should reply a `pong` message, vice versa.
11
+ */
12
+ export interface PongMessage {
13
+ kind: 'pong';
14
+ id: string;
15
+ }
16
+ /**
17
+ * `data` message indicate that the channel has received some data.
18
+ * the `content` field is the data, it should be a string.
19
+ */
20
+ export interface DataMessage {
21
+ kind: 'data';
22
+ id: string;
23
+ content: string;
24
+ }
25
+ export interface BinaryMessage {
26
+ kind: 'binary';
27
+ id: string;
28
+ binary: Uint8Array;
29
+ }
30
+ export interface CloseMessage {
31
+ kind: 'close';
32
+ id: string;
33
+ code: number;
34
+ reason: string;
35
+ }
36
+ /**
37
+ * `open` message is used to open a new channel.
38
+ * `path` is used to identify which handler should be used to handle the channel.
39
+ * `clientId` is used to identify the client.
40
+ */
41
+ export interface OpenMessage {
42
+ kind: 'open';
43
+ id: string;
44
+ path: string;
45
+ clientId: string;
46
+ connectionToken: string;
47
+ }
48
+ export declare enum ErrorMessageCode {
49
+ ChannelNotFound = 1
50
+ }
51
+ export interface ErrorMessage {
52
+ kind: 'error';
53
+ id: string;
54
+ code: ErrorMessageCode;
55
+ message: string;
56
+ }
57
+ /**
58
+ * when server receive a `open` message, it should reply a `server-ready` message.
59
+ * this is indicate that the channel is ready to use.
60
+ */
61
+ export interface ServerReadyMessage {
62
+ kind: 'server-ready';
63
+ id: string;
64
+ token: string;
65
+ }
66
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/common/channel/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,WAAW,GACX,WAAW,GACX,kBAAkB,GAClB,WAAW,GACX,aAAa,GACb,YAAY,GACZ,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,oBAAY,gBAAgB;IAC1B,eAAe,IAAI;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrorMessageCode = void 0;
4
+ var ErrorMessageCode;
5
+ (function (ErrorMessageCode) {
6
+ ErrorMessageCode[ErrorMessageCode["ChannelNotFound"] = 1] = "ChannelNotFound";
7
+ })(ErrorMessageCode = exports.ErrorMessageCode || (exports.ErrorMessageCode = {}));
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/common/channel/types.ts"],"names":[],"mappings":";;;AA8DA,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,6EAAmB,CAAA;AACrB,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B"}
@@ -1,16 +1,16 @@
1
1
  import { IDisposable } from '@opensumi/ide-core-common';
2
2
  import { BaseConnection } from './base';
3
- export declare class SimpleConnection extends BaseConnection<Uint8Array> {
3
+ export declare class SimpleConnection<T = Uint8Array> extends BaseConnection<T> {
4
4
  options: {
5
- send?: (data: Uint8Array) => void;
6
- onMessage?: (cb: (data: Uint8Array) => void) => IDisposable;
5
+ send?: (data: T) => void;
6
+ onMessage?: (cb: (data: T) => void) => IDisposable;
7
7
  };
8
8
  constructor(options?: {
9
- send?: (data: Uint8Array) => void;
10
- onMessage?: (cb: (data: Uint8Array) => void) => IDisposable;
9
+ send?: (data: T) => void;
10
+ onMessage?: (cb: (data: T) => void) => IDisposable;
11
11
  });
12
- send(data: Uint8Array): void;
13
- onMessage(cb: (data: Uint8Array) => void): IDisposable;
12
+ send(data: T): void;
13
+ onMessage(cb: (data: T) => void): IDisposable;
14
14
  onceClose(cb: () => void): IDisposable;
15
15
  dispose(): void;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simple.d.ts","sourceRoot":"","sources":["../../../../src/common/connection/drivers/simple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,UAAU,CAAC;IAErD,OAAO,EAAE;QACd,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;QAClC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,KAAK,WAAW,CAAC;KAC7D;gBAHM,OAAO,GAAE;QACd,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;QAClC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,KAAK,WAAW,CAAC;KACxD;IAIR,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAG5B,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,WAAW;IAQtD,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,WAAW;IAKtC,OAAO,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"simple.d.ts","sourceRoot":"","sources":["../../../../src/common/connection/drivers/simple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,qBAAa,gBAAgB,CAAC,CAAC,GAAG,UAAU,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAE5D,OAAO,EAAE;QACd,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;QACzB,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,KAAK,WAAW,CAAC;KACpD;gBAHM,OAAO,GAAE;QACd,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;QACzB,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,KAAK,WAAW,CAAC;KAC/C;IAIR,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI;IAGnB,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,WAAW;IAQ7C,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,WAAW;IAKtC,OAAO,IAAI,IAAI;CAGhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"simple.js","sourceRoot":"","sources":["../../../../src/common/connection/drivers/simple.ts"],"names":[],"mappings":";;;AAEA,iCAAwC;AAExC,MAAa,gBAAiB,SAAQ,qBAA0B;IAC9D,YACS,UAGH,EAAE;QAEN,KAAK,EAAE,CAAC;QALD,YAAO,GAAP,OAAO,CAGR;IAGR,CAAC;IACD,IAAI,CAAC,IAAgB;;QACnB,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,IAAI,mDAAG,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,CAAC,EAA8B;QACtC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SACnC;QACD,OAAO;YACL,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,EAAc;QACtB,OAAO;YACL,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB,CAAC;IACJ,CAAC;IACD,OAAO;QACL,aAAa;IACf,CAAC;CACF;AA5BD,4CA4BC"}
1
+ {"version":3,"file":"simple.js","sourceRoot":"","sources":["../../../../src/common/connection/drivers/simple.ts"],"names":[],"mappings":";;;AAEA,iCAAwC;AAExC,MAAa,gBAAiC,SAAQ,qBAAiB;IACrE,YACS,UAGH,EAAE;QAEN,KAAK,EAAE,CAAC;QALD,YAAO,GAAP,OAAO,CAGR;IAGR,CAAC;IACD,IAAI,CAAC,IAAO;;QACV,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,IAAI,mDAAG,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,CAAC,EAAqB;QAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SACnC;QACD,OAAO;YACL,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,EAAc;QACtB,OAAO;YACL,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB,CAAC;IACJ,CAAC;IACD,OAAO;QACL,aAAa;IACf,CAAC;CACF;AA5BD,4CA4BC"}
@@ -1,8 +1,12 @@
1
1
  export * from './rpc-service/proxy';
2
+ export * from './rpc-service';
2
3
  export * from './rpc/multiplexer';
3
4
  export * from './rpcProtocol';
4
5
  export * from './capturer';
5
6
  export * from './ws-channel';
6
7
  export * from './connect';
7
8
  export * from './types';
9
+ export * from './connection';
10
+ export * from './serializer';
11
+ export * from './channel';
8
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC"}
@@ -2,10 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./rpc-service/proxy"), exports);
5
+ tslib_1.__exportStar(require("./rpc-service"), exports);
5
6
  tslib_1.__exportStar(require("./rpc/multiplexer"), exports);
6
7
  tslib_1.__exportStar(require("./rpcProtocol"), exports);
7
8
  tslib_1.__exportStar(require("./capturer"), exports);
8
9
  tslib_1.__exportStar(require("./ws-channel"), exports);
9
10
  tslib_1.__exportStar(require("./connect"), exports);
10
11
  tslib_1.__exportStar(require("./types"), exports);
12
+ tslib_1.__exportStar(require("./connection"), exports);
13
+ tslib_1.__exportStar(require("./serializer"), exports);
14
+ tslib_1.__exportStar(require("./channel"), exports);
11
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC;AACpC,4DAAkC;AAClC,wDAA8B;AAC9B,qDAA2B;AAC3B,uDAA6B;AAC7B,oDAA0B;AAC1B,kDAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC;AACpC,wDAA8B;AAC9B,4DAAkC;AAClC,wDAA8B;AAC9B,qDAA2B;AAC3B,uDAA6B;AAC7B,oDAA0B;AAC1B,kDAAwB;AACxB,uDAA6B;AAC7B,uDAA6B;AAC7B,oDAA0B"}
@@ -4,7 +4,7 @@ import { SumiReadableStream } from '@opensumi/ide-utils/lib/stream';
4
4
  import { Capturer } from '../capturer';
5
5
  import { BaseConnection } from '../connection';
6
6
  import { ILogger } from '../types';
7
- import { MessageIO } from './message-io';
7
+ import { BaseMessageIO } from './message-io';
8
8
  import { TGenericNotificationHandler, TGenericRequestHandler, TNotificationNotFoundHandler, TRequestNotFoundHandler } from './types';
9
9
  import type net from 'net';
10
10
  import type { WebSocket } from 'ws';
@@ -15,6 +15,7 @@ export interface ISumiConnectionOptions {
15
15
  * The name of the connection, used for debugging(and can see in opensumi-devtools).
16
16
  */
17
17
  name?: string;
18
+ io?: BaseMessageIO;
18
19
  }
19
20
  export declare class SumiConnection implements IDisposable {
20
21
  protected socket: BaseConnection<Uint8Array>;
@@ -29,8 +30,8 @@ export declare class SumiConnection implements IDisposable {
29
30
  private readonly _timeoutHandles;
30
31
  private readonly _cancellationTokenSources;
31
32
  private readonly _knownCanceledRequests;
32
- protected activeRequestPool: Map<number, SumiReadableStream<any>>;
33
- io: MessageIO;
33
+ protected activeRequestPool: Map<number, SumiReadableStream<any, Error>>;
34
+ io: BaseMessageIO;
34
35
  protected logger: ILogger;
35
36
  protected capturer: Capturer;
36
37
  constructor(socket: BaseConnection<Uint8Array>, options?: ISumiConnectionOptions);
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":";AACA,OAAO,EAGL,eAAe,EACf,WAAW,EAGZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAoC,MAAM,gCAAgC,CAAC;AAEtG,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAA8C,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,OAAO,EAAE,SAAS,EAAyB,MAAM,cAAc,CAAC;AAChE,OAAO,EAGL,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAE5B,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAIpC,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAMD,qBAAa,cAAe,YAAW,WAAW;IAsBpC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,sBAAsB;IArBnG,SAAS,CAAC,UAAU,kBAAyB;IAE7C,OAAO,CAAC,gBAAgB,CAAkD;IAC1E,OAAO,CAAC,mBAAmB,CAAsC;IACjE,OAAO,CAAC,qBAAqB,CAAkD;IAC/E,OAAO,CAAC,wBAAwB,CAA2C;IAE3E,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAuC;IAEzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA8C;IAC9E,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA8C;IACxF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqB;IAE5D,SAAS,CAAC,iBAAiB,uCAA8C;IAElE,EAAE,YAAmB;IAC5B,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAEP,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,sBAA2B;IAWxG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAO/C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAyD1C,aAAa,CAAC,SAAS,EAAE,MAAM;IAI/B,OAAO,CAAC,cAAc;IAWtB,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,WAAW;IASnF,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW;IAShE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,GAAG,WAAW;IASjF,sBAAsB,CAAC,OAAO,EAAE,4BAA4B,GAAG,WAAW;IAS1E,MAAM;IAwLN,OAAO,IAAI,IAAI;IAIf,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,GAAE,sBAA2B;IAI7E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,GAAE,sBAA2B;IAI5E,OAAO,CAAC,iBAAiB;CAG1B"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":";AACA,OAAO,EAGL,eAAe,EACf,WAAW,EAEZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAoC,MAAM,gCAAgC,CAAC;AAEtG,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAA8C,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,OAAO,EAAE,aAAa,EAAiE,MAAM,cAAc,CAAC;AAC5G,OAAO,EAEL,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAE5B,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAIpC,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,EAAE,CAAC,EAAE,aAAa,CAAC;CACpB;AAMD,qBAAa,cAAe,YAAW,WAAW;IAsBpC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,sBAAsB;IArBnG,SAAS,CAAC,UAAU,kBAAyB;IAE7C,OAAO,CAAC,gBAAgB,CAAkD;IAC1E,OAAO,CAAC,mBAAmB,CAAsC;IACjE,OAAO,CAAC,qBAAqB,CAAkD;IAC/E,OAAO,CAAC,wBAAwB,CAA2C;IAE3E,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAuC;IAEzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA8C;IAC9E,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA8C;IACxF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqB;IAE5D,SAAS,CAAC,iBAAiB,8CAA8C;IAElE,EAAE,EAAE,aAAa,CAAC;IACzB,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAEP,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,sBAA2B;IAaxG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAO/C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAyD1C,aAAa,CAAC,SAAS,EAAE,MAAM;IAI/B,OAAO,CAAC,cAAc;IAWtB,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,WAAW;IASnF,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW;IAShE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,GAAG,WAAW;IASjF,sBAAsB,CAAC,OAAO,EAAE,4BAA4B,GAAG,WAAW;IAS1E,MAAM;IAqKN,OAAO,IAAI,IAAI;IAIf,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,GAAE,sBAA2B;IAI7E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,GAAE,sBAA2B;IAI5E,OAAO,CAAC,iBAAiB;CAG1B"}
@@ -26,13 +26,13 @@ class SumiConnection {
26
26
  this._cancellationTokenSources = new Map();
27
27
  this._knownCanceledRequests = new Set();
28
28
  this.activeRequestPool = new Map();
29
- this.io = new message_io_1.MessageIO();
30
29
  if (options.logger) {
31
30
  this.logger = options.logger;
32
31
  }
33
32
  else {
34
33
  this.logger = (0, ide_core_common_1.getDebugLogger)();
35
34
  }
35
+ this.io = options.io || new message_io_1.MessageIO();
36
36
  this.capturer = new capturer_1.Capturer(options.name || 'sumi');
37
37
  this.disposable.add(this.capturer);
38
38
  }
@@ -124,45 +124,29 @@ class SumiConnection {
124
124
  };
125
125
  }
126
126
  listen() {
127
- const { reader } = this.io;
128
127
  this.disposable.add(this.socket.onMessage((data) => {
129
- reader.reset(data);
130
- // skip version, currently only have version 1
131
- reader.skip(1);
132
- const opType = reader.uint8();
133
- const requestId = reader.uint32();
128
+ const message = this.io.readMessage(data);
129
+ const opType = message.kind;
130
+ const requestId = message.requestId;
134
131
  if (this._timeoutHandles.has(requestId)) {
135
- // Ignore some jest test scenarios where clearTimeout is not defined.
136
- if (typeof clearTimeout === 'function') {
137
- // @ts-ignore
138
- clearTimeout(this._timeoutHandles.get(requestId));
139
- }
132
+ clearTimeout(this._timeoutHandles.get(requestId));
140
133
  this._timeoutHandles.delete(requestId);
141
134
  }
142
135
  switch (opType) {
136
+ case message_io_1.OperationType.Error:
143
137
  case message_io_1.OperationType.Response: {
144
- const method = reader.stringOfVarUInt32();
145
- const status = reader.uint16();
138
+ const { headers, method } = message;
139
+ const err = message.error;
140
+ const result = message.result;
146
141
  const runCallback = (headers, error, result) => {
147
142
  const callback = this._callbacks.get(requestId);
148
143
  if (!callback) {
149
- this.logger.error(`Cannot find callback for request ${requestId}: ${method}, status: ${status}`);
144
+ this.logger.error(`Cannot find callback for request ${requestId}: ${method}`);
150
145
  return;
151
146
  }
152
147
  this._callbacks.delete(requestId);
153
148
  callback(headers, error, result);
154
149
  };
155
- const headers = this.io.responseHeadersSerializer.read();
156
- let err;
157
- let result;
158
- if (status === message_io_1.Status.Err) {
159
- // todo: move to processor
160
- const content = reader.stringOfVarUInt32();
161
- err = (0, ide_utils_1.parseError)(content);
162
- }
163
- else {
164
- result = this.io.getProcessor(method).readResponse();
165
- }
166
150
  if (headers && headers.chunked) {
167
151
  let activeReq;
168
152
  if (this.activeRequestPool.has(requestId)) {
@@ -194,9 +178,7 @@ class SumiConnection {
194
178
  case message_io_1.OperationType.Notification:
195
179
  // fall through
196
180
  case message_io_1.OperationType.Request: {
197
- const method = reader.stringOfVarUInt32();
198
- const headers = this.io.requestHeadersSerializer.read();
199
- const args = this.io.getProcessor(method).readRequest();
181
+ const { method, headers, args } = message;
200
182
  if (headers.cancelable) {
201
183
  const tokenSource = new ide_utils_1.CancellationTokenSource();
202
184
  this._cancellationTokenSources.set(requestId, tokenSource);
@@ -233,16 +215,18 @@ class SumiConnection {
233
215
  },
234
216
  onEnd: () => {
235
217
  this.socket.send(this.io.Response(requestId, method, chunkedResponseHeaders, null));
218
+ this._cancellationTokenSources.delete(requestId);
236
219
  },
237
220
  onError: (err) => {
238
221
  this.socket.send(this.io.Error(requestId, method, chunkedResponseHeaders, err));
222
+ this._cancellationTokenSources.delete(requestId);
239
223
  },
240
224
  });
241
225
  }
242
226
  else {
243
227
  this.socket.send(this.io.Response(requestId, method, nullHeaders, result));
228
+ this._cancellationTokenSources.delete(requestId);
244
229
  }
245
- this._cancellationTokenSources.delete(requestId);
246
230
  };
247
231
  const onError = (err) => {
248
232
  this.traceRequestError(requestId, method, args, err);
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAC3D,mDAM6B;AAC7B,2DAAsG;AAEtG,0CAAuC;AACvC,8CAA2F;AAC3F,4CAAqD;AAGrD,qCAA8C;AAC9C,6CAA4G;AAa5G,MAAM,WAAW,GAAG,EAAE,CAAC;AAavB,MAAM,sBAAsB,GAAqB;IAC/C,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAa,cAAc;IAsBzB,YAAsB,MAAkC,EAAY,UAAkC,EAAE;QAAlF,WAAM,GAAN,MAAM,CAA4B;QAAY,YAAO,GAAP,OAAO,CAA6B;QArB9F,eAAU,GAAG,IAAI,2BAAe,EAAE,CAAC;QAErC,qBAAgB,GAAG,IAAI,GAAG,EAAuC,CAAC;QAElE,0BAAqB,GAAG,IAAI,GAAG,EAAuC,CAAC;QAGvE,eAAU,GAAG,CAAC,CAAC;QACf,eAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;QAExC,oBAAe,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC7D,8BAAyB,GAAG,IAAI,GAAG,EAAmC,CAAC;QACvE,2BAAsB,GAAG,IAAI,GAAG,EAAU,CAAC;QAElD,sBAAiB,GAAG,IAAI,GAAG,EAAmC,CAAC;QAQvE,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,IAAA,gCAAc,GAAE,CAAC;SAChC;QAED,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,IAAI,sBAAS,EAAE,CAAC;QAExC,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,gBAAgB,CAAC,MAAc,EAAE,GAAG,IAAW;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAEpC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,GAAG,IAAW;QACxC,OAAO,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAEpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBACxD,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBAEvD,IAAI,KAAK,KAAK,iCAAqB,EAAE;wBACnC,2DAA2D;wBAC3D,iFAAiF;wBACjF,OAAO,CAAC,KAAK,CAAC,CAAC;wBACf,OAAO;qBACR;oBAED,MAAM,CAAC,KAAK,CAAC,CAAC;oBACd,OAAO;iBACR;gBAED,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;gBAElE,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,kEAAkE;YAClE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC,EAAE;gBACvD,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;oBACpC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACzC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;aACpD;YAED,MAAM,iBAAiB,GACrB,IAAI,CAAC,MAAM,IAAI,6BAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACvG,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,uBAAuB,EAAE;gBAClE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAA,oBAAQ,GAAE,CAAC,CAAC;aACnC;YAED,IAAI,iBAAiB,EAAE;gBACrB,iBAAiB,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;aAChF;YAED,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YAE1D,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,SAAS,EACT,MAAM,EACN;gBACE,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,IAAI,SAAS;aACpD,EACD,IAAI,CACL,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,SAAiB;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,CAAC;IAEO,cAAc,CAAC,MAAc,EAAE,SAAiB;QACtD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC3E,OAAO;SACR;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,QAAQ,CAAC,WAAW,EAAE,IAAI,2BAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,SAAS,CAAU,MAAc,EAAE,OAAkC;QACnE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO;YACL,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,OAAgC;QAChD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;YACvC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,MAAc,EAAE,OAAoC;QACjE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO;YACL,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;SACF,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,OAAqC;QAC1D,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC;YAC5C,CAAC;SACF,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YAEpC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBACvC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;gBAClD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aACxC;YAED,QAAQ,MAAM,EAAE;gBACd,KAAK,0BAAa,CAAC,KAAK,CAAC;gBACzB,KAAK,0BAAa,CAAC,QAAQ,CAAC,CAAC;oBAC3B,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;oBACpC,MAAM,GAAG,GAAI,OAA2B,CAAC,KAAK,CAAC;oBAC/C,MAAM,MAAM,GAAI,OAA8B,CAAC,MAAM,CAAC;oBAEtD,MAAM,WAAW,GAAG,CAAC,OAAyB,EAAE,KAAW,EAAE,MAAY,EAAE,EAAE;wBAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAChD,IAAI,CAAC,QAAQ,EAAE;4BACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC;4BAC9E,OAAO;yBACR;wBAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAElC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;oBACnC,CAAC,CAAC;oBAEF,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE;wBAC9B,IAAI,SAAkC,CAAC;wBACvC,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BACzC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;yBACpD;6BAAM;4BACL,qBAAqB;4BACrB,SAAS,GAAG,IAAI,2BAAkB,EAAE,CAAC;4BACrC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;4BACjD,gCAAgC;4BAChC,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;yBAC5C;wBAED,IAAI,MAAM,KAAK,IAAI,EAAE;4BACnB,qDAAqD;4BACrD,SAAS,CAAC,GAAG,EAAE,CAAC;4BAChB,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACzC,MAAM;yBACP;wBAED,IAAI,GAAG,EAAE;4BACP,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BACzB,MAAM;yBACP;wBAED,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;wBAC3B,MAAM;qBACP;oBAED,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;oBAClC,MAAM;iBACP;gBACD,KAAK,0BAAa,CAAC,YAAY,CAAC;gBAChC,eAAe;gBACf,KAAK,0BAAa,CAAC,OAAO,CAAC,CAAC;oBAC1B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;oBAE1C,IAAI,OAAO,CAAC,UAAU,EAAE;wBACtB,MAAM,WAAW,GAAG,IAAI,mCAAuB,EAAE,CAAC;wBAClD,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;wBAC3D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;wBAE7B,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAC9C,WAAW,CAAC,MAAM,EAAE,CAAC;4BACrB,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;yBAC/C;qBACF;oBAED,QAAQ,MAAM,EAAE;wBACd,KAAK,0BAAa,CAAC,OAAO,CAAC,CAAC;4BAC1B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;4BAExD,IAAI,OAAqB,CAAC;4BAE1B,IAAI;gCACF,IAAI,MAAW,CAAC;gCAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gCAClD,IAAI,OAAO,EAAE;oCACX,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;iCAC3B;qCAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;oCACnC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;iCACjD;gCAED,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;6BACnC;4BAAC,OAAO,GAAG,EAAE;gCACZ,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;6BAC/B;4BAED,MAAM,SAAS,GAAG,CAAC,MAAW,EAAE,EAAE;gCAChC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;gCAEhE,IAAI,IAAA,yBAAgB,EAAC,MAAM,CAAC,EAAE;oCAC5B,IAAA,uBAAc,EAAC,MAAM,EAAE;wCACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;4CACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC,CAAC;wCACtF,CAAC;wCACD,KAAK,EAAE,GAAG,EAAE;4CACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC,CAAC;4CACpF,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wCACnD,CAAC;wCACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;4CACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC,CAAC;4CAChF,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wCACnD,CAAC;qCACF,CAAC,CAAC;iCACJ;qCAAM;oCACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;oCAC3E,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;iCAClD;4BACH,CAAC,CAAC;4BAEF,MAAM,OAAO,GAAG,CAAC,GAAU,EAAE,EAAE;gCAC7B,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;gCAErD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;gCACrE,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACnD,CAAC,CAAC;4BAEF,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4BACvC,MAAM;yBACP;wBACD,KAAK,0BAAa,CAAC,YAAY,CAAC,CAAC;4BAC/B,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;4BAE7D,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAEvD,IAAI,OAAO,EAAE;gCACX,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;6BAClB;iCAAM,IAAI,IAAI,CAAC,wBAAwB,EAAE;gCACxC,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;6BAC7C;4BACD,MAAM;yBACP;qBACF;oBAED,MAAM;iBACP;gBACD,KAAK,0BAAa,CAAC,MAAM,CAAC,CAAC;oBACzB,MAAM,uBAAuB,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9E,IAAI,uBAAuB,EAAE;wBAC3B,uBAAuB,CAAC,MAAM,EAAE,CAAC;qBAClC;yBAAM;wBACL,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;qBAC5C;oBACD,MAAM;iBACP;gBACD,OAAO,CAAC,CAAC;oBACP,MAAM;iBACP;aACF;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAiB,EAAE,UAAkC,EAAE;QAC3E,OAAO,IAAI,cAAc,CAAC,IAAI,kCAAqB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,MAAkB,EAAE,UAAkC,EAAE;QAC1E,OAAO,IAAI,cAAc,CAAC,IAAI,gCAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAEO,iBAAiB,CAAC,SAAiB,EAAE,MAAc,EAAE,IAAW,EAAE,KAAU;QAClF,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;CACF;AA1UD,wCA0UC"}
@@ -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: Record<string, any>;
66
+ result: any;
67
+ }
68
+ export interface RPCErrorMessage {
69
+ kind: OperationType.Error;
70
+ requestId: number;
71
+ method: string;
72
+ headers: Record<string, any>;
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 BaseMessageIO<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 readMessage(data: T): RPCMessage;
90
+ }
91
+ export declare class MessageIO extends BaseMessageIO<PlatformBuffer> {
50
92
  fury: Fury;
51
93
  reader: BinaryReader;
52
94
  writer: BinaryWriter;
@@ -64,10 +106,11 @@ 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
+ readMessage(data: PlatformBuffer): RPCMessage;
72
115
  }
73
116
  //# 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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"}