@opensumi/ide-connection 2.27.3-rc-1706857131.0 → 2.27.3-rc-1708222409.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/ws-channel-handler.d.ts.map +1 -1
- package/lib/browser/ws-channel-handler.js +2 -6
- package/lib/browser/ws-channel-handler.js.map +1 -1
- package/lib/common/{connection → buffers}/buffers.d.ts +2 -1
- package/lib/common/buffers/buffers.d.ts.map +1 -0
- package/lib/common/{connection → buffers}/buffers.js +21 -3
- package/lib/common/buffers/buffers.js.map +1 -0
- package/lib/common/connection/drivers/base.d.ts +2 -2
- package/lib/common/connection/drivers/base.d.ts.map +1 -1
- package/lib/common/connection/drivers/base.js +0 -4
- package/lib/common/connection/drivers/base.js.map +1 -1
- package/lib/common/connection/drivers/frame-decoder.d.ts +34 -0
- package/lib/common/connection/drivers/frame-decoder.d.ts.map +1 -0
- package/lib/common/connection/drivers/frame-decoder.js +147 -0
- package/lib/common/connection/drivers/frame-decoder.js.map +1 -0
- package/lib/common/connection/drivers/{empty.d.ts → message-port.d.ts} +5 -2
- package/lib/common/connection/drivers/message-port.d.ts.map +1 -0
- package/lib/common/connection/drivers/message-port.js +41 -0
- package/lib/common/connection/drivers/message-port.js.map +1 -0
- package/lib/common/connection/drivers/node-message-port.d.ts +1 -0
- package/lib/common/connection/drivers/node-message-port.d.ts.map +1 -1
- package/lib/common/connection/drivers/node-message-port.js +3 -0
- package/lib/common/connection/drivers/node-message-port.js.map +1 -1
- package/lib/common/connection/drivers/reconnecting-websocket.d.ts +1 -0
- package/lib/common/connection/drivers/reconnecting-websocket.d.ts.map +1 -1
- package/lib/common/connection/drivers/reconnecting-websocket.js +3 -0
- package/lib/common/connection/drivers/reconnecting-websocket.js.map +1 -1
- package/lib/common/connection/drivers/simple.d.ts +17 -0
- package/lib/common/connection/drivers/simple.d.ts.map +1 -0
- package/lib/common/connection/drivers/simple.js +32 -0
- package/lib/common/connection/drivers/simple.js.map +1 -0
- package/lib/common/connection/drivers/socket.d.ts +4 -2
- package/lib/common/connection/drivers/socket.d.ts.map +1 -1
- package/lib/common/connection/drivers/socket.js +10 -7
- package/lib/common/connection/drivers/socket.js.map +1 -1
- package/lib/common/connection/drivers/ws-websocket.d.ts +2 -0
- package/lib/common/connection/drivers/ws-websocket.d.ts.map +1 -1
- package/lib/common/connection/drivers/ws-websocket.js +6 -0
- package/lib/common/connection/drivers/ws-websocket.js.map +1 -1
- package/lib/common/connection/types.d.ts +1 -1
- package/lib/common/connection/types.d.ts.map +1 -1
- package/lib/common/ext-rpc-protocol.d.ts +7 -21
- package/lib/common/ext-rpc-protocol.d.ts.map +1 -1
- package/lib/common/ext-rpc-protocol.js +13 -33
- package/lib/common/ext-rpc-protocol.js.map +1 -1
- package/lib/common/fury-extends/any.d.ts +22 -0
- package/lib/common/fury-extends/any.d.ts.map +1 -0
- package/lib/common/fury-extends/any.js +143 -0
- package/lib/common/fury-extends/any.js.map +1 -0
- package/lib/common/fury-extends/one-of.d.ts +14 -0
- package/lib/common/fury-extends/one-of.d.ts.map +1 -0
- package/lib/common/fury-extends/one-of.js +50 -0
- package/lib/common/fury-extends/one-of.js.map +1 -0
- package/lib/common/fury-extends/shared.d.ts +142 -0
- package/lib/common/fury-extends/shared.d.ts.map +1 -0
- package/lib/common/fury-extends/shared.js +17 -0
- package/lib/common/fury-extends/shared.js.map +1 -0
- package/lib/common/index.d.ts +2 -1
- package/lib/common/index.d.ts.map +1 -1
- package/lib/common/index.js +2 -1
- package/lib/common/index.js.map +1 -1
- package/lib/common/protocols/common-server.d.ts +3 -0
- package/lib/common/protocols/common-server.d.ts.map +1 -0
- package/lib/common/protocols/common-server.js +18 -0
- package/lib/common/protocols/common-server.js.map +1 -0
- package/lib/common/protocols/common.d.ts +24 -0
- package/lib/common/protocols/common.d.ts.map +1 -0
- package/lib/common/protocols/common.js +12 -0
- package/lib/common/protocols/common.js.map +1 -0
- package/lib/common/rpc/connection.d.ts +44 -0
- package/lib/common/rpc/connection.d.ts.map +1 -0
- package/lib/common/rpc/connection.js +256 -0
- package/lib/common/rpc/connection.js.map +1 -0
- package/lib/common/rpc/errors.d.ts +4 -0
- package/lib/common/rpc/errors.d.ts.map +1 -0
- package/lib/common/rpc/errors.js +10 -0
- package/lib/common/rpc/errors.js.map +1 -0
- package/lib/common/rpc/index.d.ts +3 -0
- package/lib/common/rpc/index.d.ts.map +1 -0
- package/lib/common/rpc/index.js +6 -0
- package/lib/common/rpc/index.js.map +1 -0
- package/lib/common/rpc/multiplexer.d.ts +28 -0
- package/lib/common/rpc/multiplexer.d.ts.map +1 -0
- package/lib/common/rpc/multiplexer.js +82 -0
- package/lib/common/rpc/multiplexer.js.map +1 -0
- package/lib/common/rpc/packet.d.ts +65 -0
- package/lib/common/rpc/packet.d.ts.map +1 -0
- package/lib/common/rpc/packet.js +82 -0
- package/lib/common/rpc/packet.js.map +1 -0
- package/lib/common/rpc/protocol-repository.d.ts +32 -0
- package/lib/common/rpc/protocol-repository.d.ts.map +1 -0
- package/lib/common/rpc/protocol-repository.js +118 -0
- package/lib/common/rpc/protocol-repository.js.map +1 -0
- package/lib/common/rpc/types.d.ts +13 -0
- package/lib/common/rpc/types.d.ts.map +1 -0
- package/lib/common/rpc/types.js +3 -0
- package/lib/common/rpc/types.js.map +1 -0
- package/lib/common/rpc/utils.d.ts +2 -0
- package/lib/common/rpc/utils.d.ts.map +1 -0
- package/lib/common/rpc/utils.js +10 -0
- package/lib/common/rpc/utils.js.map +1 -0
- package/lib/common/rpc-service/center.d.ts +12 -5
- package/lib/common/rpc-service/center.d.ts.map +1 -1
- package/lib/common/rpc-service/center.js +47 -42
- package/lib/common/rpc-service/center.js.map +1 -1
- package/lib/common/rpc-service/index.d.ts +6 -0
- package/lib/common/rpc-service/index.d.ts.map +1 -1
- package/lib/common/rpc-service/index.js +7 -0
- package/lib/common/rpc-service/index.js.map +1 -1
- package/lib/common/rpc-service/proxy/base.d.ts +32 -0
- package/lib/common/rpc-service/proxy/base.d.ts.map +1 -0
- package/lib/common/rpc-service/proxy/base.js +93 -0
- package/lib/common/rpc-service/proxy/base.js.map +1 -0
- package/lib/common/rpc-service/proxy/index.d.ts +5 -0
- package/lib/common/rpc-service/proxy/index.d.ts.map +1 -0
- package/lib/common/rpc-service/proxy/index.js +8 -0
- package/lib/common/rpc-service/proxy/index.js.map +1 -0
- package/lib/common/rpc-service/proxy/invoker.d.ts +14 -0
- package/lib/common/rpc-service/proxy/invoker.d.ts.map +1 -0
- package/lib/common/rpc-service/proxy/invoker.js +34 -0
- package/lib/common/rpc-service/proxy/invoker.js.map +1 -0
- package/lib/common/{proxy → rpc-service/proxy}/legacy.d.ts +3 -7
- package/lib/common/rpc-service/proxy/legacy.d.ts.map +1 -0
- package/lib/common/rpc-service/proxy/legacy.js +136 -0
- package/lib/common/rpc-service/proxy/legacy.js.map +1 -0
- package/lib/common/rpc-service/proxy/registry.d.ts +18 -0
- package/lib/common/rpc-service/proxy/registry.d.ts.map +1 -0
- package/lib/common/rpc-service/proxy/registry.js +46 -0
- package/lib/common/rpc-service/proxy/registry.js.map +1 -0
- package/lib/common/rpc-service/proxy/sumi.d.ts +9 -0
- package/lib/common/rpc-service/proxy/sumi.d.ts.map +1 -0
- package/lib/common/rpc-service/proxy/sumi.js +86 -0
- package/lib/common/rpc-service/proxy/sumi.js.map +1 -0
- package/lib/common/rpc-service/stub.d.ts +0 -1
- package/lib/common/rpc-service/stub.d.ts.map +1 -1
- package/lib/common/rpc-service/stub.js +3 -11
- package/lib/common/rpc-service/stub.js.map +1 -1
- package/lib/common/types.d.ts +1 -1
- package/lib/common/types.d.ts.map +1 -1
- package/lib/common/ws-channel.d.ts +97 -32
- package/lib/common/ws-channel.d.ts.map +1 -1
- package/lib/common/ws-channel.js +75 -51
- package/lib/common/ws-channel.js.map +1 -1
- package/lib/node/common-channel-handler.js +1 -1
- package/lib/node/common-channel-handler.js.map +1 -1
- package/package.json +5 -5
- package/src/browser/ws-channel-handler.ts +2 -6
- package/src/common/{connection → buffers}/buffers.ts +24 -3
- package/src/common/connection/drivers/base.ts +2 -6
- package/src/common/connection/drivers/frame-decoder.ts +170 -0
- package/src/common/connection/drivers/message-port.ts +42 -0
- package/src/common/connection/drivers/node-message-port.ts +3 -0
- package/src/common/connection/drivers/reconnecting-websocket.ts +4 -0
- package/src/common/connection/drivers/simple.ts +33 -0
- package/src/common/connection/drivers/socket.ts +11 -7
- package/src/common/connection/drivers/ws-websocket.ts +8 -0
- package/src/common/connection/types.ts +1 -1
- package/src/common/ext-rpc-protocol.ts +16 -51
- package/src/common/fury-extends/any.ts +144 -0
- package/src/common/fury-extends/one-of.ts +61 -0
- package/src/common/fury-extends/shared.ts +15 -0
- package/src/common/index.ts +2 -1
- package/src/common/protocols/common-server.ts +18 -0
- package/src/common/protocols/common.ts +9 -0
- package/src/common/rpc/connection.ts +345 -0
- package/src/common/rpc/errors.ts +5 -0
- package/src/common/rpc/index.ts +2 -0
- package/src/common/rpc/multiplexer.ts +105 -0
- package/src/common/rpc/packet.ts +104 -0
- package/src/common/rpc/protocol-repository.ts +180 -0
- package/src/common/rpc/types.ts +23 -0
- package/src/common/rpc/utils.ts +5 -0
- package/src/common/rpc-service/center.ts +59 -49
- package/src/common/rpc-service/index.ts +9 -0
- package/src/common/rpc-service/proxy/base.ts +126 -0
- package/src/common/rpc-service/proxy/index.ts +4 -0
- package/src/common/rpc-service/proxy/invoker.ts +45 -0
- package/src/common/rpc-service/proxy/legacy.ts +150 -0
- package/src/common/rpc-service/proxy/registry.ts +56 -0
- package/src/common/rpc-service/proxy/sumi.ts +81 -0
- package/src/common/rpc-service/stub.ts +4 -11
- package/src/common/types.ts +1 -1
- package/src/common/ws-channel.ts +100 -61
- package/src/node/common-channel-handler.ts +1 -1
- package/lib/common/connection/buffers.d.ts.map +0 -1
- package/lib/common/connection/buffers.js.map +0 -1
- package/lib/common/connection/drivers/empty.d.ts.map +0 -1
- package/lib/common/connection/drivers/empty.js +0 -21
- package/lib/common/connection/drivers/empty.js.map +0 -1
- package/lib/common/connection/drivers/stream-decoder.d.ts +0 -67
- package/lib/common/connection/drivers/stream-decoder.d.ts.map +0 -1
- package/lib/common/connection/drivers/stream-decoder.js +0 -171
- package/lib/common/connection/drivers/stream-decoder.js.map +0 -1
- package/lib/common/proxy/base.d.ts +0 -22
- package/lib/common/proxy/base.d.ts.map +0 -1
- package/lib/common/proxy/base.js +0 -47
- package/lib/common/proxy/base.js.map +0 -1
- package/lib/common/proxy/index.d.ts +0 -8
- package/lib/common/proxy/index.d.ts.map +0 -1
- package/lib/common/proxy/index.js +0 -12
- package/lib/common/proxy/index.js.map +0 -1
- package/lib/common/proxy/legacy.d.ts.map +0 -1
- package/lib/common/proxy/legacy.js +0 -183
- package/lib/common/proxy/legacy.js.map +0 -1
- package/src/common/connection/drivers/empty.ts +0 -19
- package/src/common/connection/drivers/stream-decoder.ts +0 -196
- package/src/common/proxy/base.ts +0 -67
- package/src/common/proxy/index.ts +0 -10
- package/src/common/proxy/legacy.ts +0 -200
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-channel.js","sourceRoot":"","sources":["../../src/common/ws-channel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ws-channel.js","sourceRoot":"","sources":["../../src/common/ws-channel.ts"],"names":[],"mappings":"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"}
|
|
@@ -141,7 +141,7 @@ class CommonChannelHandler extends ws_2.WebSocketHandler {
|
|
|
141
141
|
const { id } = msgObj;
|
|
142
142
|
const channel = this.channelMap.get(id);
|
|
143
143
|
if (channel) {
|
|
144
|
-
channel.
|
|
144
|
+
channel.dispatchChannelMessage(msgObj);
|
|
145
145
|
}
|
|
146
146
|
else {
|
|
147
147
|
this.logger.warn(`The channel(${id}) was not found`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common-channel-handler.js","sourceRoot":"","sources":["../../src/node/common-channel-handler.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"common-channel-handler.js","sourceRoot":"","sources":["../../src/node/common-channel-handler.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/ide-connection",
|
|
3
|
-
"version": "2.27.3-rc-
|
|
3
|
+
"version": "2.27.3-rc-1708222409.0",
|
|
4
4
|
"files": [
|
|
5
5
|
"lib",
|
|
6
6
|
"src"
|
|
@@ -18,17 +18,17 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@furyjs/fury": "0.5.6-beta",
|
|
21
|
-
"@opensumi/events": "^
|
|
22
|
-
"@opensumi/ide-core-common": "2.27.3-rc-
|
|
21
|
+
"@opensumi/events": "^1.0.0",
|
|
22
|
+
"@opensumi/ide-core-common": "2.27.3-rc-1708222409.0",
|
|
23
23
|
"@opensumi/vscode-jsonrpc": "^8.0.0-next.2",
|
|
24
24
|
"path-match": "^1.2.4",
|
|
25
25
|
"reconnecting-websocket": "^4.4.0",
|
|
26
26
|
"ws": "^8.15.1"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@opensumi/ide-components": "2.27.3-rc-
|
|
29
|
+
"@opensumi/ide-components": "2.27.3-rc-1708222409.0",
|
|
30
30
|
"@opensumi/ide-dev-tool": "1.3.1",
|
|
31
31
|
"@opensumi/mock-socket": "^9.3.1"
|
|
32
32
|
},
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "d1aa8844ced93f5f1a4ca6510215398e29ca4acb"
|
|
34
34
|
}
|
|
@@ -72,11 +72,7 @@ export class WSChannelHandler {
|
|
|
72
72
|
|
|
73
73
|
const channel = this.channelMap.get(msg.id);
|
|
74
74
|
if (channel) {
|
|
75
|
-
|
|
76
|
-
// 要求前端发送初始化消息,但后端最先发送消息时,前端并未准备好
|
|
77
|
-
this.logger.error(this.LOG_TAG, 'channel not ready!', msg);
|
|
78
|
-
}
|
|
79
|
-
channel.handleMessage(msg);
|
|
75
|
+
channel.dispatchChannelMessage(msg);
|
|
80
76
|
} else {
|
|
81
77
|
this.logger.warn(this.LOG_TAG, `channel ${msg.id} not found`);
|
|
82
78
|
}
|
|
@@ -133,7 +129,7 @@ export class WSChannelHandler {
|
|
|
133
129
|
channel.onOpen(() => {
|
|
134
130
|
resolve();
|
|
135
131
|
});
|
|
136
|
-
channel.
|
|
132
|
+
channel.onceClose((code: number, reason: string) => {
|
|
137
133
|
this.channelCloseEventMap.set(channelId, {
|
|
138
134
|
channelPath,
|
|
139
135
|
closeEvent: { code, reason },
|
|
@@ -261,9 +261,30 @@ export class Cursor {
|
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
263
|
|
|
264
|
-
|
|
265
|
-
this.offset
|
|
266
|
-
this.
|
|
264
|
+
read(n: number) {
|
|
265
|
+
const end = this.offset + n;
|
|
266
|
+
const buffers = this.buffers.slice(this.offset, end);
|
|
267
|
+
this.skip(n);
|
|
268
|
+
return buffers;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
skip(n: number) {
|
|
272
|
+
let count = 0;
|
|
273
|
+
while (this.chunkIndex < this.buffers.buffers.length) {
|
|
274
|
+
const chunk = this.buffers.buffers[this.chunkIndex];
|
|
275
|
+
const chunkLength = chunk.byteLength;
|
|
276
|
+
|
|
277
|
+
while (this.chunkOffset < chunkLength) {
|
|
278
|
+
this.chunkOffset++;
|
|
279
|
+
this.offset++;
|
|
280
|
+
|
|
281
|
+
if (++count === n) {
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
this.chunkOffset = 0;
|
|
286
|
+
this.chunkIndex++;
|
|
287
|
+
}
|
|
267
288
|
}
|
|
268
289
|
|
|
269
290
|
moveTo(n: number) {
|
|
@@ -2,14 +2,10 @@ import { IDisposable } from '@opensumi/ide-core-common';
|
|
|
2
2
|
|
|
3
3
|
import { IConnectionShape } from '../types';
|
|
4
4
|
|
|
5
|
-
import { createQueue } from './utils';
|
|
6
|
-
|
|
7
5
|
export abstract class BaseConnection<T> implements IConnectionShape<T> {
|
|
8
6
|
abstract send(data: T): void;
|
|
9
7
|
abstract onMessage(cb: (data: T) => void): IDisposable;
|
|
10
|
-
abstract onceClose(cb: () => void): IDisposable;
|
|
8
|
+
abstract onceClose(cb: (code?: number, reason?: string) => void): IDisposable;
|
|
11
9
|
|
|
12
|
-
|
|
13
|
-
return createQueue(this);
|
|
14
|
-
}
|
|
10
|
+
abstract dispose(): void;
|
|
15
11
|
}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import { BinaryWriter } from '@furyjs/fury/dist/lib/writer';
|
|
2
|
+
|
|
3
|
+
import { readUInt32LE, Emitter } from '@opensumi/ide-core-common';
|
|
4
|
+
|
|
5
|
+
import { Buffers } from '../../buffers/buffers';
|
|
6
|
+
|
|
7
|
+
const writer = BinaryWriter({});
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* You can use `Buffer.from('\r\n\r\n')` to get this indicator.
|
|
11
|
+
*/
|
|
12
|
+
export const indicator = new Uint8Array([0x0d, 0x0a, 0x0d, 0x0a]);
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* sticky packet unpacking problems are generally problems at the transport layer.
|
|
16
|
+
* we use a length field to represent the length of the data, and then read the data according to the length
|
|
17
|
+
*/
|
|
18
|
+
export function prependLengthField(content: Uint8Array) {
|
|
19
|
+
writer.reset();
|
|
20
|
+
writer.buffer(indicator);
|
|
21
|
+
writer.uint32(content.byteLength);
|
|
22
|
+
writer.buffer(content);
|
|
23
|
+
return writer.dump();
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export class LengthFieldBasedFrameDecoder {
|
|
27
|
+
protected dataEmitter = new Emitter<Uint8Array>();
|
|
28
|
+
onData = this.dataEmitter.event;
|
|
29
|
+
|
|
30
|
+
protected buffers = new Buffers();
|
|
31
|
+
protected cursor = this.buffers.cursor();
|
|
32
|
+
|
|
33
|
+
protected contentLength = -1;
|
|
34
|
+
|
|
35
|
+
protected state = 0;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* The number of bytes in the length field.
|
|
39
|
+
*
|
|
40
|
+
* How many bytes are used to represent data length.
|
|
41
|
+
*
|
|
42
|
+
* For example, if the length field is 4 bytes, then the maximum length of the data is 2^32 = 4GB
|
|
43
|
+
*/
|
|
44
|
+
lengthFieldLength = 4;
|
|
45
|
+
|
|
46
|
+
reset() {
|
|
47
|
+
this.contentLength = -1;
|
|
48
|
+
this.state = 0;
|
|
49
|
+
this.cursor.reset();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
push(chunk: Uint8Array): void {
|
|
53
|
+
this.buffers.push(chunk);
|
|
54
|
+
let done = false;
|
|
55
|
+
|
|
56
|
+
while (!done) {
|
|
57
|
+
done = this.readFrame();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
protected readFrame(): boolean {
|
|
62
|
+
const found = this.readLengthField();
|
|
63
|
+
|
|
64
|
+
if (found) {
|
|
65
|
+
const start = this.cursor.offset;
|
|
66
|
+
const end = start + this.contentLength;
|
|
67
|
+
|
|
68
|
+
const binary = this.buffers.slice(start, end);
|
|
69
|
+
|
|
70
|
+
this.dataEmitter.fire(binary);
|
|
71
|
+
|
|
72
|
+
if (this.buffers.byteLength > end) {
|
|
73
|
+
this.contentLength = -1;
|
|
74
|
+
this.state = 0;
|
|
75
|
+
this.cursor.moveTo(end);
|
|
76
|
+
// has more data, continue to parse
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// delete used buffers
|
|
81
|
+
this.buffers.splice(0, end);
|
|
82
|
+
this.reset();
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
protected readLengthField() {
|
|
89
|
+
const bufferLength = this.buffers.byteLength;
|
|
90
|
+
|
|
91
|
+
if (this.state !== 4) {
|
|
92
|
+
if (this.cursor.offset + indicator.length > bufferLength) {
|
|
93
|
+
// Not enough data yet, wait for more data
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
this.readIndicator();
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
if (this.state !== 4) {
|
|
101
|
+
// Not a complete indicator yet, wait for more data
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
if (this.contentLength === -1) {
|
|
106
|
+
if (this.cursor.offset + this.lengthFieldLength > bufferLength) {
|
|
107
|
+
// Not enough data yet, wait for more data
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
// read the content length
|
|
112
|
+
const buf = this.cursor.read(this.lengthFieldLength);
|
|
113
|
+
// fury writer use little endian
|
|
114
|
+
this.contentLength = readUInt32LE(buf, 0);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
if (this.cursor.offset + this.contentLength > bufferLength) {
|
|
118
|
+
// Not enough data yet, wait for more data
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
protected readIndicator() {
|
|
126
|
+
const iter = this.cursor.iterator();
|
|
127
|
+
|
|
128
|
+
let result = iter.next();
|
|
129
|
+
while (!result.done) {
|
|
130
|
+
switch (result.value) {
|
|
131
|
+
case 0x0d:
|
|
132
|
+
switch (this.state) {
|
|
133
|
+
case 0:
|
|
134
|
+
this.state = 1;
|
|
135
|
+
break;
|
|
136
|
+
case 2:
|
|
137
|
+
this.state = 3;
|
|
138
|
+
break;
|
|
139
|
+
default:
|
|
140
|
+
this.state = 0;
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
break;
|
|
144
|
+
case 0x0a:
|
|
145
|
+
switch (this.state) {
|
|
146
|
+
case 1:
|
|
147
|
+
this.state = 2;
|
|
148
|
+
break;
|
|
149
|
+
case 3:
|
|
150
|
+
this.state = 4;
|
|
151
|
+
iter.return();
|
|
152
|
+
break;
|
|
153
|
+
default:
|
|
154
|
+
this.state = 0;
|
|
155
|
+
break;
|
|
156
|
+
}
|
|
157
|
+
break;
|
|
158
|
+
default:
|
|
159
|
+
this.state = 0;
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
162
|
+
result = iter.next();
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
dispose() {
|
|
167
|
+
this.dataEmitter.dispose();
|
|
168
|
+
this.buffers.dispose();
|
|
169
|
+
}
|
|
170
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { IDisposable } from '@opensumi/ide-core-common';
|
|
2
|
+
|
|
3
|
+
import { BaseConnection } from './base';
|
|
4
|
+
|
|
5
|
+
export class MessagePortConnection extends BaseConnection<Uint8Array> {
|
|
6
|
+
constructor(public port: MessagePort) {
|
|
7
|
+
super();
|
|
8
|
+
if (typeof port.start === 'function') {
|
|
9
|
+
// compatible with nodejs in unittest, nodejs does not have start method
|
|
10
|
+
port.start();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
send(data: Uint8Array): void {
|
|
15
|
+
this.port.postMessage(data);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
onMessage(cb: (data: Uint8Array) => void): IDisposable {
|
|
19
|
+
const listener = (e: MessageEvent) => {
|
|
20
|
+
cb(e.data);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
this.port.addEventListener('message', listener);
|
|
24
|
+
return {
|
|
25
|
+
dispose: () => {
|
|
26
|
+
this.port.removeEventListener('message', listener);
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
onceClose(cb: () => void): IDisposable {
|
|
32
|
+
this.port.addEventListener('close', cb);
|
|
33
|
+
return {
|
|
34
|
+
dispose: () => {
|
|
35
|
+
this.port.addEventListener('close', cb);
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
dispose(): void {
|
|
40
|
+
// do nothing
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -76,6 +76,10 @@ export class ReconnectingWebSocketConnection extends BaseConnection<Uint8Array>
|
|
|
76
76
|
};
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
+
dispose(): void {
|
|
80
|
+
// do nothing
|
|
81
|
+
}
|
|
82
|
+
|
|
79
83
|
static forURL(url: UrlProvider, protocols?: string | string[], options?: ReconnectingWebSocketOptions) {
|
|
80
84
|
const rawConnection = new ReconnectingWebSocket(url, protocols, options);
|
|
81
85
|
rawConnection.binaryType = 'arraybuffer';
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { IDisposable } from '@opensumi/ide-core-common';
|
|
2
|
+
|
|
3
|
+
import { BaseConnection } from './base';
|
|
4
|
+
|
|
5
|
+
export class SimpleConnection extends BaseConnection<Uint8Array> {
|
|
6
|
+
constructor(
|
|
7
|
+
public options: {
|
|
8
|
+
send?: (data: Uint8Array) => void;
|
|
9
|
+
onMessage?: (cb: (data: Uint8Array) => void) => IDisposable;
|
|
10
|
+
} = {},
|
|
11
|
+
) {
|
|
12
|
+
super();
|
|
13
|
+
}
|
|
14
|
+
send(data: Uint8Array): void {
|
|
15
|
+
this.options.send?.(data);
|
|
16
|
+
}
|
|
17
|
+
onMessage(cb: (data: Uint8Array) => void): IDisposable {
|
|
18
|
+
if (this.options.onMessage) {
|
|
19
|
+
return this.options.onMessage(cb);
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
dispose: () => {},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
onceClose(cb: () => void): IDisposable {
|
|
26
|
+
return {
|
|
27
|
+
dispose: () => {},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
dispose(): void {
|
|
31
|
+
// do nothing
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -3,10 +3,10 @@ import type net from 'net';
|
|
|
3
3
|
import { IDisposable } from '@opensumi/ide-core-common';
|
|
4
4
|
|
|
5
5
|
import { BaseConnection } from './base';
|
|
6
|
-
import {
|
|
6
|
+
import { LengthFieldBasedFrameDecoder, prependLengthField } from './frame-decoder';
|
|
7
7
|
|
|
8
8
|
export class NetSocketConnection extends BaseConnection<Uint8Array> {
|
|
9
|
-
protected decoder = new
|
|
9
|
+
protected decoder = new LengthFieldBasedFrameDecoder();
|
|
10
10
|
|
|
11
11
|
constructor(private socket: net.Socket) {
|
|
12
12
|
super();
|
|
@@ -23,14 +23,11 @@ export class NetSocketConnection extends BaseConnection<Uint8Array> {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
send(data: Uint8Array): void {
|
|
26
|
-
this.socket.write(
|
|
26
|
+
this.socket.write(prependLengthField(data));
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
onMessage(cb: (data: Uint8Array) => void): IDisposable {
|
|
30
|
-
|
|
31
|
-
return {
|
|
32
|
-
dispose,
|
|
33
|
-
};
|
|
30
|
+
return this.decoder.onData(cb);
|
|
34
31
|
}
|
|
35
32
|
|
|
36
33
|
onceClose(cb: () => void): IDisposable {
|
|
@@ -59,4 +56,11 @@ export class NetSocketConnection extends BaseConnection<Uint8Array> {
|
|
|
59
56
|
},
|
|
60
57
|
};
|
|
61
58
|
}
|
|
59
|
+
dispose(): void {
|
|
60
|
+
this.decoder.dispose();
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
destroy(): void {
|
|
64
|
+
this.socket.destroy();
|
|
65
|
+
}
|
|
62
66
|
}
|
|
@@ -3,5 +3,5 @@ import { IDisposable } from '@opensumi/ide-core-common';
|
|
|
3
3
|
export interface IConnectionShape<T> {
|
|
4
4
|
send(data: T): void;
|
|
5
5
|
onMessage: (cb: (data: T) => void) => IDisposable;
|
|
6
|
-
onceClose: (cb: () => void) => IDisposable;
|
|
6
|
+
onceClose: (cb: (code?: number, reason?: string) => void) => IDisposable;
|
|
7
7
|
}
|
|
@@ -2,18 +2,15 @@ import {
|
|
|
2
2
|
CancellationToken,
|
|
3
3
|
CancellationTokenSource,
|
|
4
4
|
Deferred,
|
|
5
|
-
Emitter,
|
|
6
5
|
Event,
|
|
7
6
|
SerializedError,
|
|
7
|
+
// Uri: vscode 中的 uri
|
|
8
|
+
// URI: 在 vscode 中的 uri 基础上包装了一些基础方法
|
|
8
9
|
Uri,
|
|
9
10
|
transformErrorForSerialization,
|
|
10
11
|
} from '@opensumi/ide-core-common';
|
|
11
12
|
|
|
12
|
-
import {
|
|
13
|
-
import { WSChannel } from './ws-channel';
|
|
14
|
-
|
|
15
|
-
// Uri: vscode 中的 uri
|
|
16
|
-
// URI: 在 vscode 中的 uri 基础上包装了一些基础方法
|
|
13
|
+
import { IRPCProtocol, ProxyIdentifier } from './rpc/multiplexer';
|
|
17
14
|
|
|
18
15
|
export enum RPCProtocolEnv {
|
|
19
16
|
MAIN,
|
|
@@ -25,16 +22,7 @@ export interface IProxyIdentifier {
|
|
|
25
22
|
countId: number;
|
|
26
23
|
}
|
|
27
24
|
|
|
28
|
-
export
|
|
29
|
-
public static count = 0;
|
|
30
|
-
|
|
31
|
-
public readonly serviceId: string;
|
|
32
|
-
public readonly countId: number;
|
|
33
|
-
constructor(serviceId: string) {
|
|
34
|
-
this.serviceId = serviceId;
|
|
35
|
-
this.countId = ++ProxyIdentifier.count;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
25
|
+
export { ProxyIdentifier, IRPCProtocol } from './rpc/multiplexer';
|
|
38
26
|
|
|
39
27
|
export function createExtHostContextProxyIdentifier<T>(serviceId: string): ProxyIdentifier<T> {
|
|
40
28
|
const identifier = new ProxyIdentifier<T>(serviceId);
|
|
@@ -44,8 +32,9 @@ export function createMainContextProxyIdentifier<T>(identifier: string): ProxyId
|
|
|
44
32
|
const result = new ProxyIdentifier<T>(identifier);
|
|
45
33
|
return result;
|
|
46
34
|
}
|
|
35
|
+
|
|
47
36
|
export interface IMessagePassingProtocol {
|
|
48
|
-
send(msg
|
|
37
|
+
send(msg): void;
|
|
49
38
|
onMessage: Event<string>;
|
|
50
39
|
timeout?: number;
|
|
51
40
|
}
|
|
@@ -180,19 +169,15 @@ export class MessageIO {
|
|
|
180
169
|
}
|
|
181
170
|
}
|
|
182
171
|
|
|
183
|
-
export const IRPCProtocol = Symbol('IRPCProtocol');
|
|
184
|
-
export interface IRPCProtocol {
|
|
185
|
-
getProxy<T>(proxyId: ProxyIdentifier<T>): T;
|
|
186
|
-
set<T>(identifier: ProxyIdentifier<T>, instance: T): T;
|
|
187
|
-
get<T>(identifier: ProxyIdentifier<T>): T;
|
|
188
|
-
}
|
|
189
|
-
|
|
190
172
|
function canceled(): Error {
|
|
191
173
|
const error = new Error('Canceled');
|
|
192
174
|
error.name = error.message;
|
|
193
175
|
return error;
|
|
194
176
|
}
|
|
195
177
|
|
|
178
|
+
/**
|
|
179
|
+
* @deprecated Please use `SumiConnectionMultiplexer` instead.
|
|
180
|
+
*/
|
|
196
181
|
export class RPCProtocol implements IRPCProtocol {
|
|
197
182
|
private readonly _protocol: IMessagePassingProtocol;
|
|
198
183
|
private readonly _locals: Map<string, any>;
|
|
@@ -201,9 +186,9 @@ export class RPCProtocol implements IRPCProtocol {
|
|
|
201
186
|
private readonly _timeoutHandles: Map<string, NodeJS.Timeout | number>;
|
|
202
187
|
private _lastMessageId: number;
|
|
203
188
|
private _pendingRPCReplies: Map<string, Deferred<any>>;
|
|
204
|
-
private logger
|
|
189
|
+
private logger;
|
|
205
190
|
|
|
206
|
-
constructor(connection: IMessagePassingProtocol, logger?:
|
|
191
|
+
constructor(connection: IMessagePassingProtocol, logger?: any) {
|
|
207
192
|
this._protocol = connection;
|
|
208
193
|
this._locals = new Map();
|
|
209
194
|
this._proxies = new Map();
|
|
@@ -213,6 +198,9 @@ export class RPCProtocol implements IRPCProtocol {
|
|
|
213
198
|
|
|
214
199
|
this._lastMessageId = 0;
|
|
215
200
|
this.logger = logger || console;
|
|
201
|
+
this.logger.error(
|
|
202
|
+
"You are using the deprecated 'RPCProtocol' class. Please use the new 'SumiConnectionMultiplexer'",
|
|
203
|
+
);
|
|
216
204
|
this._protocol.onMessage((msg) => this._receiveOneMessage(msg));
|
|
217
205
|
}
|
|
218
206
|
|
|
@@ -279,8 +267,8 @@ export class RPCProtocol implements IRPCProtocol {
|
|
|
279
267
|
return result.promise;
|
|
280
268
|
}
|
|
281
269
|
|
|
282
|
-
private _receiveOneMessage(
|
|
283
|
-
const msg = JSON.parse(
|
|
270
|
+
private _receiveOneMessage(rawmsg: string): void {
|
|
271
|
+
const msg = JSON.parse(rawmsg, ObjectTransfer.reviver);
|
|
284
272
|
|
|
285
273
|
if (this._timeoutHandles.has(msg.id)) {
|
|
286
274
|
// 忽略一些 jest 测试场景 clearTimeout not defined 的问题
|
|
@@ -402,26 +390,3 @@ export class RPCProtocol implements IRPCProtocol {
|
|
|
402
390
|
pendingReply.reject(new Error('RPC Timeout: ' + callId));
|
|
403
391
|
}
|
|
404
392
|
}
|
|
405
|
-
|
|
406
|
-
interface RPCProtocolCreateOptions {
|
|
407
|
-
timeout?: number;
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
export function createRPCProtocol(channel: WSChannel, options: RPCProtocolCreateOptions = {}): RPCProtocol {
|
|
411
|
-
const onMessageEmitter = new Emitter<string>();
|
|
412
|
-
channel.onMessage((msg: string) => {
|
|
413
|
-
onMessageEmitter.fire(msg);
|
|
414
|
-
});
|
|
415
|
-
|
|
416
|
-
const onMessage = onMessageEmitter.event;
|
|
417
|
-
const send = (msg: string) => {
|
|
418
|
-
channel.send(msg);
|
|
419
|
-
};
|
|
420
|
-
|
|
421
|
-
const mainThreadProtocol = new RPCProtocol({
|
|
422
|
-
onMessage,
|
|
423
|
-
send,
|
|
424
|
-
timeout: options.timeout,
|
|
425
|
-
});
|
|
426
|
-
return mainThreadProtocol;
|
|
427
|
-
}
|