javonet-nodejs-sdk 2.5.16 → 2.5.18
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/dist/core/delegatesCache/DelegatesCache.cjs +1 -5
- package/dist/core/handler/AbstractHandler.cjs +24 -9
- package/dist/core/handler/ArrayGetItemHandler.cjs +5 -4
- package/dist/core/handler/ArrayGetRankHandler.cjs +4 -3
- package/dist/core/handler/ArrayGetSizeHandler.cjs +4 -3
- package/dist/core/handler/ArrayHandler.cjs +3 -0
- package/dist/core/handler/ArraySetItemHandler.cjs +5 -4
- package/dist/core/handler/CastingHandler.cjs +3 -1
- package/dist/core/handler/ConvertTypeHandler.cjs +4 -4
- package/dist/core/handler/CreateClassInstanceHandler.cjs +6 -5
- package/dist/core/handler/DestructReferenceHandler.cjs +3 -0
- package/dist/core/handler/EnableNamespaceHandler.cjs +3 -0
- package/dist/core/handler/EnableTypeHandler.cjs +4 -3
- package/dist/core/handler/GetGlobalStaticFieldHandler.cjs +4 -3
- package/dist/core/handler/GetInstanceFieldHandler.cjs +4 -3
- package/dist/core/handler/GetInstanceMethodAsDelegateHandler.cjs +15 -4
- package/dist/core/handler/GetStaticFieldHandler.cjs +5 -3
- package/dist/core/handler/GetStaticMethodAsDelegateHandler.cjs +10 -10
- package/dist/core/handler/GetTypeHandler.cjs +10 -2
- package/dist/core/handler/Handler.cjs +8 -11
- package/dist/core/handler/InvokeGlobalFunctionHandler.cjs +4 -3
- package/dist/core/handler/InvokeInstanceMethodHandler.cjs +4 -3
- package/dist/core/handler/InvokeStaticMethodHandler.cjs +4 -3
- package/dist/core/handler/LoadLibraryHandler.cjs +11 -10
- package/dist/core/handler/PassDelegateHandler.cjs +2 -4
- package/dist/core/handler/SetGlobalStaticFieldHandler.cjs +4 -3
- package/dist/core/handler/SetInstanceFieldHandler.cjs +4 -3
- package/dist/core/handler/SetStaticFieldHandler.cjs +4 -3
- package/dist/core/handler/ValueHandler.cjs +4 -0
- package/dist/core/interpreter/Interpreter.cjs +29 -17
- package/dist/core/namespaceCache/NamespaceCache.cjs +19 -10
- package/dist/core/protocol/CommandDeserializer.cjs +10 -2
- package/dist/core/protocol/CommandSerializer.cjs +24 -4
- package/dist/core/protocol/TypeDeserializer.cjs +35 -0
- package/dist/core/protocol/TypeSerializer.cjs +51 -7
- package/dist/core/receiver/Receiver.cjs +3 -5
- package/dist/core/receiver/ReceiverNative.cjs +6 -0
- package/dist/core/transmitter/Transmitter.cjs +19 -5
- package/dist/core/transmitter/TransmitterWebsocket.cjs +8 -5
- package/dist/core/transmitter/TransmitterWebsocketBrowser.cjs +1 -1
- package/dist/core/transmitter/TransmitterWrapper.cjs +25 -8
- package/dist/core/typeCache/TypeCache.cjs +15 -10
- package/dist/core/webSocketClient/WebSocketClient.cjs +22 -12
- package/dist/core/webSocketClient/WebSocketClientBrowser.cjs +2 -2
- package/dist/sdk/ConfigRuntimeFactory.cjs +92 -98
- package/dist/sdk/InvocationContext.cjs +229 -203
- package/dist/sdk/Javonet.cjs +14 -33
- package/dist/sdk/RuntimeContext.cjs +138 -99
- package/dist/sdk/RuntimeFactory.cjs +3 -0
- package/dist/sdk/tools/ActivationHelper.cjs +66 -0
- package/dist/sdk/tools/JsonResolver.cjs +214 -0
- package/dist/types/core/handler/AbstractHandler.d.ts +23 -4
- package/dist/types/core/handler/ArrayGetItemHandler.d.ts +8 -1
- package/dist/types/core/handler/ArrayGetRankHandler.d.ts +8 -1
- package/dist/types/core/handler/ArrayGetSizeHandler.d.ts +8 -1
- package/dist/types/core/handler/ArrayHandler.d.ts +8 -1
- package/dist/types/core/handler/ArraySetItemHandler.d.ts +8 -1
- package/dist/types/core/handler/CastingHandler.d.ts +4 -0
- package/dist/types/core/handler/ConvertTypeHandler.d.ts +8 -4
- package/dist/types/core/handler/CreateClassInstanceHandler.d.ts +8 -1
- package/dist/types/core/handler/DestructReferenceHandler.d.ts +8 -1
- package/dist/types/core/handler/EnableNamespaceHandler.d.ts +8 -1
- package/dist/types/core/handler/EnableTypeHandler.d.ts +8 -1
- package/dist/types/core/handler/GetGlobalStaticFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/GetInstanceFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/GetStaticFieldHandler.d.ts +9 -1
- package/dist/types/core/handler/GetStaticMethodAsDelegateHandler.d.ts +4 -3
- package/dist/types/core/handler/GetTypeHandler.d.ts +17 -8
- package/dist/types/core/handler/Handler.d.ts +8 -8
- package/dist/types/core/handler/InvokeDelegateHandler.d.ts +4 -0
- package/dist/types/core/handler/InvokeGlobalFunctionHandler.d.ts +8 -1
- package/dist/types/core/handler/InvokeInstanceMethodHandler.d.ts +8 -1
- package/dist/types/core/handler/InvokeStaticMethodHandler.d.ts +8 -1
- package/dist/types/core/handler/LoadLibraryHandler.d.ts +8 -3
- package/dist/types/core/handler/SetGlobalStaticFieldHandler.d.ts +4 -0
- package/dist/types/core/handler/SetInstanceFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/SetStaticFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/ValueHandler.d.ts +9 -1
- package/dist/types/core/interpreter/Interpreter.d.ts +11 -10
- package/dist/types/core/namespaceCache/NamespaceCache.d.ts +17 -5
- package/dist/types/core/protocol/CommandDeserializer.d.ts +10 -3
- package/dist/types/core/protocol/CommandSerializer.d.ts +19 -2
- package/dist/types/core/protocol/TypeDeserializer.d.ts +46 -11
- package/dist/types/core/protocol/TypeSerializer.d.ts +53 -13
- package/dist/types/core/receiver/Receiver.d.ts +2 -2
- package/dist/types/core/receiver/ReceiverNative.d.ts +8 -2
- package/dist/types/core/transmitter/Transmitter.d.ts +20 -4
- package/dist/types/core/transmitter/TransmitterWebsocket.d.ts +8 -4
- package/dist/types/core/transmitter/TransmitterWebsocketBrowser.d.ts +4 -7
- package/dist/types/core/transmitter/TransmitterWrapper.d.ts +12 -3
- package/dist/types/core/typeCache/TypeCache.d.ts +15 -5
- package/dist/types/core/webSocketClient/WebSocketClient.d.ts +17 -21
- package/dist/types/sdk/ConfigRuntimeFactory.d.ts +9 -6
- package/dist/types/sdk/InvocationContext.d.ts +38 -6
- package/dist/types/sdk/Javonet.d.ts +12 -7
- package/dist/types/sdk/RuntimeContext.d.ts +23 -7
- package/dist/types/sdk/RuntimeFactory.d.ts +9 -2
- package/dist/types/sdk/tools/ActivationHelper.d.ts +20 -0
- package/dist/types/sdk/tools/JsonResolver.d.ts +87 -0
- package/dist/types/utils/Command.d.ts +18 -14
- package/dist/types/utils/CreateRequire.browser.d.ts +1 -0
- package/dist/types/utils/CreateRequire.node.d.ts +2 -0
- package/dist/types/utils/CustomError.d.ts +5 -1
- package/dist/types/utils/Runtime.d.ts +2 -3
- package/dist/types/utils/RuntimeNameHandler.d.ts +6 -2
- package/dist/types/utils/Type.d.ts +1 -0
- package/dist/types/utils/TypesHandler.d.ts +16 -0
- package/dist/types/utils/UtilsConst.d.ts +32 -0
- package/dist/types/utils/connectionData/IConnectionData.d.ts +16 -3
- package/dist/types/utils/connectionData/InMemoryConnectionData.d.ts +4 -3
- package/dist/types/utils/connectionData/WsConnectionData.d.ts +7 -10
- package/dist/types/utils/nodejs/connectionData/TcpConnectionData.d.ts +17 -10
- package/dist/utils/Command.cjs +9 -9
- package/dist/utils/CreateRequire.browser.cjs +30 -0
- package/dist/utils/CreateRequire.node.cjs +28 -0
- package/dist/utils/CustomError.cjs +4 -0
- package/dist/utils/Runtime.cjs +24 -18
- package/dist/utils/RuntimeLogger.cjs +2 -4
- package/dist/utils/RuntimeLoggerBrowser.cjs +1 -3
- package/dist/utils/RuntimeNameHandler.cjs +1 -1
- package/dist/utils/Type.cjs +2 -1
- package/dist/utils/TypesHandler.cjs +55 -0
- package/dist/utils/UtilsConst.cjs +101 -0
- package/dist/utils/connectionData/IConnectionData.cjs +9 -0
- package/dist/utils/connectionData/InMemoryConnectionData.cjs +10 -0
- package/dist/utils/connectionData/WsConnectionData.cjs +4 -0
- package/dist/utils/nodejs/connectionData/TcpConnectionData.cjs +45 -25
- package/lib/core/delegatesCache/DelegatesCache.js +1 -0
- package/lib/core/handler/AbstractHandler.js +27 -9
- package/lib/core/handler/ArrayGetItemHandler.js +9 -1
- package/lib/core/handler/ArrayGetRankHandler.js +9 -0
- package/lib/core/handler/ArrayGetSizeHandler.js +8 -0
- package/lib/core/handler/ArrayHandler.js +8 -0
- package/lib/core/handler/ArraySetItemHandler.js +11 -1
- package/lib/core/handler/CastingHandler.js +8 -1
- package/lib/core/handler/ConvertTypeHandler.js +9 -4
- package/lib/core/handler/CreateClassInstanceHandler.js +10 -4
- package/lib/core/handler/DestructReferenceHandler.js +8 -0
- package/lib/core/handler/EnableNamespaceHandler.js +8 -0
- package/lib/core/handler/EnableTypeHandler.js +8 -0
- package/lib/core/handler/GetGlobalStaticFieldHandler.js +9 -0
- package/lib/core/handler/GetInstanceFieldHandler.js +8 -0
- package/lib/core/handler/GetInstanceMethodAsDelegateHandler.js +9 -4
- package/lib/core/handler/GetStaticFieldHandler.js +9 -0
- package/lib/core/handler/GetStaticMethodAsDelegateHandler.js +8 -7
- package/lib/core/handler/GetTypeHandler.js +15 -5
- package/lib/core/handler/Handler.js +13 -18
- package/lib/core/handler/InvokeDelegateHandler.js +5 -0
- package/lib/core/handler/InvokeGlobalFunctionHandler.js +11 -1
- package/lib/core/handler/InvokeInstanceMethodHandler.js +8 -0
- package/lib/core/handler/InvokeStaticMethodHandler.js +8 -0
- package/lib/core/handler/LoadLibraryHandler.js +11 -0
- package/lib/core/handler/SetGlobalStaticFieldHandler.js +10 -0
- package/lib/core/handler/SetInstanceFieldHandler.js +7 -0
- package/lib/core/handler/SetStaticFieldHandler.js +8 -0
- package/lib/core/handler/ValueHandler.js +9 -0
- package/lib/core/interpreter/Interpreter.js +42 -24
- package/lib/core/namespaceCache/NamespaceCache.js +14 -0
- package/lib/core/protocol/CommandDeserializer.js +11 -2
- package/lib/core/protocol/CommandSerializer.js +40 -9
- package/lib/core/protocol/TypeDeserializer.js +36 -0
- package/lib/core/protocol/TypeSerializer.js +62 -7
- package/lib/core/receiver/Receiver.js +3 -2
- package/lib/core/receiver/ReceiverNative.js +8 -0
- package/lib/core/transmitter/Transmitter.js +18 -1
- package/lib/core/transmitter/TransmitterWebsocket.js +12 -5
- package/lib/core/transmitter/TransmitterWebsocketBrowser.js +2 -4
- package/lib/core/transmitter/TransmitterWrapper.js +27 -6
- package/lib/core/typeCache/TypeCache.js +9 -0
- package/lib/core/webSocketClient/WebSocketClient.js +33 -30
- package/lib/core/webSocketClient/WebSocketClientBrowser.js +5 -6
- package/lib/sdk/ConfigRuntimeFactory.js +70 -68
- package/lib/sdk/InvocationContext.js +94 -26
- package/lib/sdk/Javonet.js +18 -36
- package/lib/sdk/RuntimeContext.js +109 -29
- package/lib/sdk/RuntimeFactory.js +7 -0
- package/lib/sdk/tools/ActivationHelper.js +51 -0
- package/lib/sdk/tools/JsonResolver.js +226 -0
- package/lib/types.d.ts +57 -0
- package/lib/utils/Command.js +14 -9
- package/lib/utils/CreateRequire.browser.js +5 -0
- package/lib/utils/CreateRequire.node.js +3 -0
- package/lib/utils/CustomError.js +5 -0
- package/lib/utils/Runtime.js +25 -6
- package/lib/utils/RuntimeLogger.js +3 -0
- package/lib/utils/RuntimeNameHandler.js +6 -1
- package/lib/utils/Type.js +2 -1
- package/lib/utils/TypesHandler.js +35 -0
- package/lib/utils/UtilsConst.js +88 -0
- package/lib/utils/connectionData/IConnectionData.js +14 -0
- package/lib/utils/connectionData/InMemoryConnectionData.js +15 -0
- package/lib/utils/connectionData/WsConnectionData.js +9 -0
- package/lib/utils/nodejs/connectionData/TcpConnectionData.js +35 -5
- package/package.json +13 -3
- package/dist/sdk/tools/browser/ConfigSourceResolver.cjs +0 -153
- package/dist/sdk/tools/nodejs/JsonFileResolver.cjs +0 -120
- package/dist/types/sdk/tools/browser/ConfigSourceResolver.d.ts +0 -46
- package/dist/types/sdk/tools/nodejs/JsonFileResolver.d.ts +0 -13
- package/dist/types/utils/nodejs/TypesConverter.d.ts +0 -48
- package/dist/utils/nodejs/TypesConverter.cjs +0 -102
- package/lib/declarations.d.ts +0 -35
- package/lib/sdk/tools/browser/ConfigSourceResolver.js +0 -146
- package/lib/sdk/tools/nodejs/JsonFileResolver.js +0 -106
- package/lib/utils/nodejs/TypesConverter.js +0 -91
|
@@ -50,16 +50,10 @@ var import_InvokeDelegateHandler = require("./InvokeDelegateHandler.cjs");
|
|
|
50
50
|
var import_InvokeGlobalFunctionHandler = require("./InvokeGlobalFunctionHandler.cjs");
|
|
51
51
|
var import_CommandType = require("../../utils/CommandType.cjs");
|
|
52
52
|
var import_Command = require("../../utils/Command.cjs");
|
|
53
|
+
var import_TypesHandler = require("../../utils/TypesHandler.cjs");
|
|
53
54
|
var import_ExceptionSerializer = require("../../utils/exception/ExceptionSerializer.cjs");
|
|
54
55
|
var import_ConvertTypeHandler = require("./ConvertTypeHandler.cjs");
|
|
55
56
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
56
|
-
function isResponseSimpleType(response) {
|
|
57
|
-
let type = typeof response;
|
|
58
|
-
return ["string", "boolean", "number"].includes(type);
|
|
59
|
-
}
|
|
60
|
-
function isResponseNull(response) {
|
|
61
|
-
return response === null;
|
|
62
|
-
}
|
|
63
57
|
const handlers = {
|
|
64
58
|
[import_CommandType.CommandType.Value]: new import_ValueHandler.ValueHandler(),
|
|
65
59
|
[import_CommandType.CommandType.LoadLibrary]: new import_LoadLibraryHandler.LoadLibraryHandler(),
|
|
@@ -94,13 +88,16 @@ class Handler {
|
|
|
94
88
|
*/
|
|
95
89
|
constructor(interpreter) {
|
|
96
90
|
this.interpreter = interpreter;
|
|
97
|
-
|
|
91
|
+
if (!this.interpreter) {
|
|
92
|
+
throw new Error("interpreter is undefined in Handler constructor");
|
|
93
|
+
}
|
|
94
|
+
handlers[import_CommandType.CommandType.PassDelegate] = new import_PassDelegateHandler.PassDelegateHandler(this.interpreter);
|
|
98
95
|
Object.keys(handlers).forEach((commandTypeHandler) => {
|
|
99
96
|
handlers[commandTypeHandler].handlers = handlers;
|
|
100
97
|
});
|
|
101
98
|
}
|
|
102
99
|
/**
|
|
103
|
-
* @param {
|
|
100
|
+
* @param {Command} command
|
|
104
101
|
*/
|
|
105
102
|
handleCommand(command) {
|
|
106
103
|
try {
|
|
@@ -116,11 +113,11 @@ class Handler {
|
|
|
116
113
|
}
|
|
117
114
|
/**
|
|
118
115
|
* @param {any} response
|
|
119
|
-
* @param {
|
|
116
|
+
* @param {RuntimeName} runtimeName
|
|
120
117
|
* @returns {Command}
|
|
121
118
|
*/
|
|
122
119
|
parseCommand(response, runtimeName) {
|
|
123
|
-
if (
|
|
120
|
+
if (import_TypesHandler.TypesHandler.isPrimitiveOrNullOrUndefined(response)) {
|
|
124
121
|
return import_Command.Command.createResponse(response, runtimeName);
|
|
125
122
|
} else {
|
|
126
123
|
let cache = import_ReferencesCache.ReferencesCache.getInstance();
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var InvokeGlobalFunctionHandler_exports = {};
|
|
22
20
|
__export(InvokeGlobalFunctionHandler_exports, {
|
|
23
21
|
InvokeGlobalFunctionHandler: () => InvokeGlobalFunctionHandler
|
|
@@ -25,10 +23,13 @@ __export(InvokeGlobalFunctionHandler_exports, {
|
|
|
25
23
|
module.exports = __toCommonJS(InvokeGlobalFunctionHandler_exports);
|
|
26
24
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
27
25
|
class InvokeGlobalFunctionHandler extends import_AbstractHandler.AbstractHandler {
|
|
26
|
+
requiredParametersCount = 1;
|
|
28
27
|
constructor() {
|
|
29
28
|
super();
|
|
30
|
-
__publicField(this, "requiredParametersCount", 1);
|
|
31
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {Command} command
|
|
32
|
+
*/
|
|
32
33
|
process(command) {
|
|
33
34
|
try {
|
|
34
35
|
if (command.payload.length < this.requiredParametersCount) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var InvokeInstanceMethodHandler_exports = {};
|
|
22
20
|
__export(InvokeInstanceMethodHandler_exports, {
|
|
23
21
|
InvokeInstanceMethodHandler: () => InvokeInstanceMethodHandler
|
|
@@ -25,10 +23,13 @@ __export(InvokeInstanceMethodHandler_exports, {
|
|
|
25
23
|
module.exports = __toCommonJS(InvokeInstanceMethodHandler_exports);
|
|
26
24
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
27
25
|
class InvokeInstanceMethodHandler extends import_AbstractHandler.AbstractHandler {
|
|
26
|
+
requiredParametersCount = 2;
|
|
28
27
|
constructor() {
|
|
29
28
|
super();
|
|
30
|
-
__publicField(this, "requiredParametersCount", 2);
|
|
31
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {Command} command
|
|
32
|
+
*/
|
|
32
33
|
process(command) {
|
|
33
34
|
try {
|
|
34
35
|
if (command.payload.length < this.requiredParametersCount) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var InvokeStaticMethodHandler_exports = {};
|
|
22
20
|
__export(InvokeStaticMethodHandler_exports, {
|
|
23
21
|
InvokeStaticMethodHandler: () => InvokeStaticMethodHandler
|
|
@@ -25,10 +23,13 @@ __export(InvokeStaticMethodHandler_exports, {
|
|
|
25
23
|
module.exports = __toCommonJS(InvokeStaticMethodHandler_exports);
|
|
26
24
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
27
25
|
class InvokeStaticMethodHandler extends import_AbstractHandler.AbstractHandler {
|
|
26
|
+
requiredParametersCount = 2;
|
|
28
27
|
constructor() {
|
|
29
28
|
super();
|
|
30
|
-
__publicField(this, "requiredParametersCount", 2);
|
|
31
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {Command} command
|
|
32
|
+
*/
|
|
32
33
|
process(command) {
|
|
33
34
|
try {
|
|
34
35
|
if (command.payload.length < this.requiredParametersCount) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,21 +16,25 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var LoadLibraryHandler_exports = {};
|
|
22
20
|
__export(LoadLibraryHandler_exports, {
|
|
23
21
|
LoadLibraryHandler: () => LoadLibraryHandler
|
|
24
22
|
});
|
|
25
23
|
module.exports = __toCommonJS(LoadLibraryHandler_exports);
|
|
26
|
-
const import_meta = {};
|
|
27
24
|
var import_Runtime = require("../../utils/Runtime.cjs");
|
|
28
25
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
26
|
+
const import_meta = {};
|
|
29
27
|
const dynamicImport = (0, import_Runtime.getRequire)(import_meta.url);
|
|
30
|
-
|
|
28
|
+
class LoadLibraryHandler extends import_AbstractHandler.AbstractHandler {
|
|
29
|
+
requiredParametersCount = 1;
|
|
30
|
+
/** @type {string[]} */
|
|
31
|
+
static loadedLibraries = [];
|
|
31
32
|
constructor() {
|
|
32
33
|
super();
|
|
33
|
-
__publicField(this, "requiredParametersCount", 1);
|
|
34
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* @param {Command} command
|
|
37
|
+
*/
|
|
35
38
|
process(command) {
|
|
36
39
|
if (command.payload.length < this.requiredParametersCount) {
|
|
37
40
|
throw new Error("Load Library parameters mismatch");
|
|
@@ -44,7 +47,7 @@ const _LoadLibraryHandler = class _LoadLibraryHandler extends import_AbstractHan
|
|
|
44
47
|
let moduleExports;
|
|
45
48
|
try {
|
|
46
49
|
moduleExports = dynamicImport(lib);
|
|
47
|
-
|
|
50
|
+
LoadLibraryHandler.loadedLibraries.push(lib);
|
|
48
51
|
} catch (error) {
|
|
49
52
|
try {
|
|
50
53
|
const modulePath = `${process.cwd()}/${lib}`;
|
|
@@ -60,11 +63,9 @@ const _LoadLibraryHandler = class _LoadLibraryHandler extends import_AbstractHan
|
|
|
60
63
|
return 0;
|
|
61
64
|
}
|
|
62
65
|
getLoadedLibraries() {
|
|
63
|
-
return
|
|
66
|
+
return LoadLibraryHandler.loadedLibraries;
|
|
64
67
|
}
|
|
65
|
-
}
|
|
66
|
-
__publicField(_LoadLibraryHandler, "loadedLibraries", []);
|
|
67
|
-
let LoadLibraryHandler = _LoadLibraryHandler;
|
|
68
|
+
}
|
|
68
69
|
// Annotate the CommonJS export names for ESM import in node:
|
|
69
70
|
0 && (module.exports = {
|
|
70
71
|
LoadLibraryHandler
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var PassDelegateHandler_exports = {};
|
|
22
20
|
__export(PassDelegateHandler_exports, {
|
|
23
21
|
PassDelegateHandler: () => PassDelegateHandler
|
|
@@ -28,10 +26,10 @@ var import_InMemoryConnectionData = require("../../utils/connectionData/InMemory
|
|
|
28
26
|
var import_DelegatesCache = require("../delegatesCache/DelegatesCache.cjs");
|
|
29
27
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
30
28
|
class PassDelegateHandler extends import_AbstractHandler.AbstractHandler {
|
|
29
|
+
/** @type {Interpreter | null | undefined} */
|
|
30
|
+
interpreter = null;
|
|
31
31
|
constructor(interpreter = null) {
|
|
32
32
|
super();
|
|
33
|
-
/** @type {Interpreter | null | undefined} */
|
|
34
|
-
__publicField(this, "interpreter", null);
|
|
35
33
|
this.requiredParametersCount = 1;
|
|
36
34
|
this.interpreter = interpreter;
|
|
37
35
|
}
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var SetGlobalStaticFieldHandler_exports = {};
|
|
22
20
|
__export(SetGlobalStaticFieldHandler_exports, {
|
|
23
21
|
SetGlobalStaticFieldHandler: () => SetGlobalStaticFieldHandler
|
|
@@ -25,10 +23,13 @@ __export(SetGlobalStaticFieldHandler_exports, {
|
|
|
25
23
|
module.exports = __toCommonJS(SetGlobalStaticFieldHandler_exports);
|
|
26
24
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
27
25
|
class SetGlobalStaticFieldHandler extends import_AbstractHandler.AbstractHandler {
|
|
26
|
+
requiredParametersCount = 2;
|
|
28
27
|
constructor() {
|
|
29
28
|
super();
|
|
30
|
-
__publicField(this, "requiredParametersCount", 2);
|
|
31
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {Command} command
|
|
32
|
+
*/
|
|
32
33
|
process(command) {
|
|
33
34
|
try {
|
|
34
35
|
if (command.payload.length < this.requiredParametersCount) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var SetInstanceFieldHandler_exports = {};
|
|
22
20
|
__export(SetInstanceFieldHandler_exports, {
|
|
23
21
|
SetInstanceFieldHandler: () => SetInstanceFieldHandler
|
|
@@ -25,10 +23,13 @@ __export(SetInstanceFieldHandler_exports, {
|
|
|
25
23
|
module.exports = __toCommonJS(SetInstanceFieldHandler_exports);
|
|
26
24
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
27
25
|
class SetInstanceFieldHandler extends import_AbstractHandler.AbstractHandler {
|
|
26
|
+
requiredParametersCount = 3;
|
|
28
27
|
constructor() {
|
|
29
28
|
super();
|
|
30
|
-
__publicField(this, "requiredParametersCount", 3);
|
|
31
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {Command} command
|
|
32
|
+
*/
|
|
32
33
|
process(command) {
|
|
33
34
|
try {
|
|
34
35
|
if (command.payload.length < this.requiredParametersCount) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,7 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var SetStaticFieldHandler_exports = {};
|
|
22
20
|
__export(SetStaticFieldHandler_exports, {
|
|
23
21
|
SetStaticFieldHandler: () => SetStaticFieldHandler
|
|
@@ -25,10 +23,13 @@ __export(SetStaticFieldHandler_exports, {
|
|
|
25
23
|
module.exports = __toCommonJS(SetStaticFieldHandler_exports);
|
|
26
24
|
var import_AbstractHandler = require("./AbstractHandler.cjs");
|
|
27
25
|
class SetStaticFieldHandler extends import_AbstractHandler.AbstractHandler {
|
|
26
|
+
requiredParametersCount = 3;
|
|
28
27
|
constructor() {
|
|
29
28
|
super();
|
|
30
|
-
__publicField(this, "requiredParametersCount", 3);
|
|
31
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* @param {Command} command
|
|
32
|
+
*/
|
|
32
33
|
process(command) {
|
|
33
34
|
try {
|
|
34
35
|
if (command.payload.length < this.requiredParametersCount) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,13 +16,11 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var Interpreter_exports = {};
|
|
22
20
|
__export(Interpreter_exports, {
|
|
23
21
|
Interpreter: () => Interpreter
|
|
24
22
|
});
|
|
25
23
|
module.exports = __toCommonJS(Interpreter_exports);
|
|
26
|
-
const import_meta = {};
|
|
27
24
|
var import_ConnectionType = require("../../utils/ConnectionType.cjs");
|
|
28
25
|
var import_Runtime = require("../../utils/Runtime.cjs");
|
|
29
26
|
var import_RuntimeName = require("../../utils/RuntimeName.cjs");
|
|
@@ -32,6 +29,7 @@ var import_CommandSerializer = require("../protocol/CommandSerializer.cjs");
|
|
|
32
29
|
var import_TransmitterWebsocketBrowser = require("../transmitter/TransmitterWebsocketBrowser.cjs");
|
|
33
30
|
var import_TransmitterWebsocket = require("../transmitter/TransmitterWebsocket.cjs");
|
|
34
31
|
var import_Handler = require("../handler/Handler.cjs");
|
|
32
|
+
const import_meta = {};
|
|
35
33
|
let _Receiver = null;
|
|
36
34
|
let _Transmitter = null;
|
|
37
35
|
let _TransmitterWebsocket = null;
|
|
@@ -40,9 +38,8 @@ if (!_TransmitterWebsocket) {
|
|
|
40
38
|
}
|
|
41
39
|
const requireDynamic = (0, import_Runtime.getRequire)(import_meta.url);
|
|
42
40
|
class Interpreter {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
41
|
+
/** @type {Handler | null} */
|
|
42
|
+
handler = null;
|
|
46
43
|
/**
|
|
47
44
|
*
|
|
48
45
|
* @param {Command} command
|
|
@@ -51,21 +48,24 @@ class Interpreter {
|
|
|
51
48
|
*/
|
|
52
49
|
async executeAsync(command, connectionData) {
|
|
53
50
|
try {
|
|
51
|
+
if (!this.handler) {
|
|
52
|
+
this.handler = new import_Handler.Handler(this);
|
|
53
|
+
}
|
|
54
54
|
let messageByteArray = new import_CommandSerializer.CommandSerializer().serialize(command, connectionData);
|
|
55
|
-
let responseByteArray;
|
|
55
|
+
let responseByteArray = void 0;
|
|
56
56
|
if (command.runtimeName === import_RuntimeName.RuntimeName.Nodejs && connectionData.connectionType === import_ConnectionType.ConnectionType.IN_MEMORY) {
|
|
57
57
|
if ((0, import_Runtime.isNodejsRuntime)()) {
|
|
58
58
|
if (!_Receiver) {
|
|
59
59
|
const { Receiver } = require("../receiver/Receiver.cjs");
|
|
60
60
|
_Receiver = Receiver;
|
|
61
61
|
}
|
|
62
|
-
responseByteArray = _Receiver
|
|
62
|
+
responseByteArray = _Receiver?.sendCommand(messageByteArray);
|
|
63
63
|
} else {
|
|
64
64
|
throw new Error("Node.js runtime not found");
|
|
65
65
|
}
|
|
66
66
|
} else if (connectionData.connectionType === import_ConnectionType.ConnectionType.WEB_SOCKET) {
|
|
67
67
|
try {
|
|
68
|
-
const _response = await _TransmitterWebsocket
|
|
68
|
+
const _response = await _TransmitterWebsocket?.sendCommand(
|
|
69
69
|
messageByteArray,
|
|
70
70
|
connectionData
|
|
71
71
|
);
|
|
@@ -84,11 +84,14 @@ class Interpreter {
|
|
|
84
84
|
const { Transmitter } = require("../transmitter/Transmitter.cjs");
|
|
85
85
|
_Transmitter = Transmitter;
|
|
86
86
|
}
|
|
87
|
-
responseByteArray = await _Transmitter
|
|
87
|
+
responseByteArray = await _Transmitter?.sendCommand(messageByteArray);
|
|
88
88
|
} else {
|
|
89
89
|
throw new Error("Allowed only to run in nodejs runtime");
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
|
+
if (!responseByteArray) {
|
|
93
|
+
throw new Error("No response received from Transmitter");
|
|
94
|
+
}
|
|
92
95
|
return new import_CommandDeserializer.CommandDeserializer(responseByteArray).deserialize();
|
|
93
96
|
} catch (error) {
|
|
94
97
|
throw error;
|
|
@@ -97,23 +100,29 @@ class Interpreter {
|
|
|
97
100
|
/**
|
|
98
101
|
*
|
|
99
102
|
* @param {Command} command
|
|
100
|
-
* @param {
|
|
101
|
-
* @returns {Promise<Command>}
|
|
103
|
+
* @param {IConnectionData} connectionData
|
|
104
|
+
* @returns {Command | Promise<Command>}
|
|
102
105
|
*/
|
|
103
106
|
execute(command, connectionData) {
|
|
104
107
|
try {
|
|
108
|
+
if (!this.handler) {
|
|
109
|
+
this.handler = new import_Handler.Handler(this);
|
|
110
|
+
}
|
|
105
111
|
let messageByteArray = new import_CommandSerializer.CommandSerializer().serialize(command, connectionData);
|
|
106
|
-
let responseByteArray;
|
|
112
|
+
let responseByteArray = void 0;
|
|
107
113
|
if (command.runtimeName === import_RuntimeName.RuntimeName.Nodejs && connectionData.connectionType === import_ConnectionType.ConnectionType.IN_MEMORY) {
|
|
108
114
|
if ((0, import_Runtime.isNodejsRuntime)()) {
|
|
109
115
|
if (!_Receiver) {
|
|
110
116
|
const { Receiver } = require("../receiver/Receiver.cjs");
|
|
111
117
|
_Receiver = Receiver;
|
|
112
118
|
}
|
|
113
|
-
responseByteArray = _Receiver
|
|
119
|
+
responseByteArray = _Receiver?.sendCommand(messageByteArray);
|
|
114
120
|
}
|
|
115
121
|
} else if (connectionData.connectionType === import_ConnectionType.ConnectionType.WEB_SOCKET) {
|
|
116
|
-
const promise = _TransmitterWebsocket
|
|
122
|
+
const promise = _TransmitterWebsocket?.sendCommand(messageByteArray, connectionData);
|
|
123
|
+
if (!promise) {
|
|
124
|
+
throw new Error("TransmitterWebsocket not found");
|
|
125
|
+
}
|
|
117
126
|
return promise.then((_response) => {
|
|
118
127
|
if (_response) {
|
|
119
128
|
const command2 = new import_CommandDeserializer.CommandDeserializer(_response).deserialize();
|
|
@@ -130,11 +139,14 @@ class Interpreter {
|
|
|
130
139
|
const { Transmitter } = require("../transmitter/Transmitter.cjs");
|
|
131
140
|
_Transmitter = Transmitter;
|
|
132
141
|
}
|
|
133
|
-
responseByteArray = _Transmitter
|
|
142
|
+
responseByteArray = _Transmitter?.sendCommand(messageByteArray);
|
|
134
143
|
} else {
|
|
135
144
|
throw new Error("Allowed only to run in nodejs runtime");
|
|
136
145
|
}
|
|
137
146
|
}
|
|
147
|
+
if (!responseByteArray) {
|
|
148
|
+
throw new Error("No response received from Transmitter");
|
|
149
|
+
}
|
|
138
150
|
return new import_CommandDeserializer.CommandDeserializer(responseByteArray).deserialize();
|
|
139
151
|
} catch (error) {
|
|
140
152
|
throw error;
|
|
@@ -142,7 +154,7 @@ class Interpreter {
|
|
|
142
154
|
}
|
|
143
155
|
/**
|
|
144
156
|
*
|
|
145
|
-
* @param {
|
|
157
|
+
* @param {Int8Array} messageByteArray
|
|
146
158
|
* @returns {Command}
|
|
147
159
|
*/
|
|
148
160
|
process(messageByteArray) {
|
|
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
6
|
var __export = (target, all) => {
|
|
8
7
|
for (var name in all)
|
|
9
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,26 +16,38 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
16
|
return to;
|
|
18
17
|
};
|
|
19
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
19
|
var NamespaceCache_exports = {};
|
|
22
20
|
__export(NamespaceCache_exports, {
|
|
23
21
|
NamespaceCache: () => NamespaceCache
|
|
24
22
|
});
|
|
25
23
|
module.exports = __toCommonJS(NamespaceCache_exports);
|
|
26
|
-
|
|
24
|
+
class NamespaceCache {
|
|
25
|
+
/** @type {NamespaceCache | null} */
|
|
26
|
+
static _instance = null;
|
|
27
|
+
/** @type {string[]} */
|
|
28
|
+
namespaceCache = [];
|
|
27
29
|
constructor() {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
_NamespaceCache._instance = this;
|
|
30
|
+
if (NamespaceCache._instance === null) {
|
|
31
|
+
NamespaceCache._instance = this;
|
|
31
32
|
}
|
|
32
|
-
return
|
|
33
|
+
return NamespaceCache._instance;
|
|
33
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* @param {string} namespaceRegex
|
|
37
|
+
*/
|
|
34
38
|
cacheNamespace(namespaceRegex) {
|
|
35
39
|
this.namespaceCache.push(namespaceRegex);
|
|
36
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* @returns {boolean}
|
|
43
|
+
*/
|
|
37
44
|
isNamespaceCacheEmpty() {
|
|
38
45
|
return this.namespaceCache.length === 0;
|
|
39
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* @param {string} typeToCheck
|
|
49
|
+
* @returns {boolean}
|
|
50
|
+
*/
|
|
40
51
|
isTypeAllowed(typeToCheck) {
|
|
41
52
|
for (let pattern of this.namespaceCache) {
|
|
42
53
|
if (new RegExp(pattern).test(typeToCheck.constructor.name)) {
|
|
@@ -52,9 +63,7 @@ const _NamespaceCache = class _NamespaceCache {
|
|
|
52
63
|
this.namespaceCache = [];
|
|
53
64
|
return 0;
|
|
54
65
|
}
|
|
55
|
-
}
|
|
56
|
-
__publicField(_NamespaceCache, "_instance", null);
|
|
57
|
-
let NamespaceCache = _NamespaceCache;
|
|
66
|
+
}
|
|
58
67
|
// Annotate the CommonJS export names for ESM import in node:
|
|
59
68
|
0 && (module.exports = {
|
|
60
69
|
NamespaceCache
|
|
@@ -22,10 +22,12 @@ __export(CommandDeserializer_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(CommandDeserializer_exports);
|
|
24
24
|
var import_Command = require("../../utils/Command.cjs");
|
|
25
|
-
var import_CommandType = require("../../utils/CommandType.cjs");
|
|
26
25
|
var import_Type = require("../../utils/Type.cjs");
|
|
27
26
|
var import_TypeDeserializer = require("./TypeDeserializer.cjs");
|
|
28
27
|
class CommandDeserializer {
|
|
28
|
+
/**
|
|
29
|
+
* @param {Int8Array} buffer
|
|
30
|
+
*/
|
|
29
31
|
constructor(buffer) {
|
|
30
32
|
this.buffer = buffer;
|
|
31
33
|
this.command = new import_Command.Command(buffer[0], buffer[10], []);
|
|
@@ -43,8 +45,14 @@ class CommandDeserializer {
|
|
|
43
45
|
isAtEnd() {
|
|
44
46
|
return this.position === this.buffer.length;
|
|
45
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* @param {number} typeNum
|
|
50
|
+
* @returns {any}
|
|
51
|
+
*/
|
|
46
52
|
readObject(typeNum) {
|
|
47
|
-
const
|
|
53
|
+
const entry = Object.entries(import_Type.Type).find((entry2) => entry2[1] === typeNum);
|
|
54
|
+
if (!entry) throw new Error("Unknown type number: " + typeNum);
|
|
55
|
+
const type = entry[0];
|
|
48
56
|
switch (type) {
|
|
49
57
|
case "JAVONET_COMMAND":
|
|
50
58
|
return this.readCommand();
|
|
@@ -22,28 +22,48 @@ __export(CommandSerializer_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(CommandSerializer_exports);
|
|
24
24
|
var import_TypeSerializer = require("./TypeSerializer.cjs");
|
|
25
|
+
var import_ReferencesCache = require("../referenceCache/ReferencesCache.cjs");
|
|
25
26
|
var import_Command = require("../../utils/Command.cjs");
|
|
27
|
+
var import_CommandType = require("../../utils/CommandType.cjs");
|
|
26
28
|
var import_RuntimeName = require("../../utils/RuntimeName.cjs");
|
|
29
|
+
var import_TypesHandler = require("../../utils/TypesHandler.cjs");
|
|
27
30
|
class CommandSerializer {
|
|
28
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Serializes the root command with connection data and optional runtime version.
|
|
33
|
+
* @param {Command} rootCommand
|
|
34
|
+
* @param {IConnectionData} connectionData
|
|
35
|
+
* @param {number} runtimeVersion
|
|
36
|
+
* @returns {Int8Array}
|
|
37
|
+
*/
|
|
38
|
+
serialize(rootCommand, connectionData, runtimeVersion = 0) {
|
|
29
39
|
const buffers = [];
|
|
30
|
-
buffers.push(Uint8Array.of(rootCommand.runtimeName,
|
|
40
|
+
buffers.push(Uint8Array.of(rootCommand.runtimeName, runtimeVersion));
|
|
31
41
|
if (connectionData) {
|
|
32
42
|
buffers.push(connectionData.serializeConnectionData());
|
|
33
43
|
} else {
|
|
34
44
|
buffers.push(Uint8Array.of(0, 0, 0, 0, 0, 0, 0));
|
|
35
45
|
}
|
|
36
|
-
buffers.push(Uint8Array.of(import_RuntimeName.RuntimeName.
|
|
46
|
+
buffers.push(Uint8Array.of(import_RuntimeName.RuntimeName.Python, rootCommand.commandType));
|
|
37
47
|
this.serializeRecursively(rootCommand, buffers);
|
|
38
48
|
return concatenateUint8Arrays(buffers);
|
|
39
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Recursively serializes command payload.
|
|
52
|
+
* @param {Command} command
|
|
53
|
+
* @param {Array<Uint8Array>} buffers
|
|
54
|
+
*/
|
|
40
55
|
serializeRecursively(command, buffers) {
|
|
41
56
|
for (const item of command.payload) {
|
|
42
57
|
if (item instanceof import_Command.Command) {
|
|
43
58
|
buffers.push(import_TypeSerializer.TypeSerializer.serializeCommand(item));
|
|
44
59
|
this.serializeRecursively(item, buffers);
|
|
45
|
-
} else {
|
|
60
|
+
} else if (import_TypesHandler.TypesHandler.isPrimitiveOrNullOrUndefined(item)) {
|
|
46
61
|
buffers.push(import_TypeSerializer.TypeSerializer.serializePrimitive(item));
|
|
62
|
+
} else {
|
|
63
|
+
const cachedReference = import_ReferencesCache.ReferencesCache.getInstance().cacheReference(item);
|
|
64
|
+
const refCommand = new import_Command.Command(import_RuntimeName.RuntimeName.Nodejs, import_CommandType.CommandType.Reference, cachedReference);
|
|
65
|
+
buffers.push(import_TypeSerializer.TypeSerializer.serializeCommand(refCommand));
|
|
66
|
+
this.serializeRecursively(refCommand, buffers);
|
|
47
67
|
}
|
|
48
68
|
}
|
|
49
69
|
}
|