javonet-ruby-sdk 2.5.19 → 2.5.20
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.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/VERSION +1 -1
- data/javonet-ruby-sdk.gemspec +2 -3
- data/lib/javonet-ruby-sdk/Binaries/Clr/JavonetClrRuntime.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Jvm/JavonetJvmRuntime.jar +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetActivationService.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetCppRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetGoRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetJvmRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetNetcoreRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetPhpRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetPythonRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetRuby342RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetRubyRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetTcpClient.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetTcpTlsClient.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libUtils.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetActivationService.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetCppRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetGoRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetJvmRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNetcoreRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs1816RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs2214RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejsRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPerl534RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPerlRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPhpRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPython2RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPythonRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRuby278RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRuby342RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRubyRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetTcpClient.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetTcpTlsClient.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libUtils.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetActivationService.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetCppRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetGoRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetJvmRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNetcoreRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejs2214RuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPerlRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPhpRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPythonRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRuby278RuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRuby342RuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRubyRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetTcpClient.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetTcpTlsClient.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetActivationService.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetCppRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetGoRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetJvmRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetNetcoreRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetPhpRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetPythonRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetRuby278RuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetRubyRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetTcpClient.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetTcpTlsClient.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/version.txt +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetActivationService.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejs2214RuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPhpRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPython2RuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRuby278RuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpClient.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpTlsClient.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetActivationService.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetClrRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetCppRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetGoRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetJvmRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetNetcoreRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPhpRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPython2RuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPythonRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpClient.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpTlsClient.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Core.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/transmitter/TransmitterWebsocket.cjs +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/transmitter/TransmitterWebsocketBrowser.cjs +1 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/webSocketClient/WebSocketClient.cjs +62 -74
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/webSocketClient/WebSocketClientBrowser.cjs +51 -56
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/webSocketClient/WebSocketClient.d.ts +5 -10
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/webSocketClient/WebSocketClientBrowser.d.ts +16 -26
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Class/Load/XS/XS.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Data/UUID/UUID.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/FFI/Platypus/Platypus.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/List/Util/Util.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/PPI/XS/XS.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Package/Stash/XS/XS.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Params/Util/Util.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/share/dist/FFI-Platypus/lib/libplfill.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +94 -94
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Scalar/Util/Numeric/Numeric.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +24 -24
- data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/Interpreter.py +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/webSocketClient/WebSocketClient.py +40 -26
- data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/interpreter/Interpreter.py +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/webSocketClient/WebSocketClient.py +53 -35
- data/lib/javonet-ruby-sdk/Binaries/version.txt +1 -1
- data/lib/javonet-ruby-sdk/sdk/runtime_factory.rb +4 -4
- metadata +8 -6
data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/webSocketClient/WebSocketClientBrowser.cjs
CHANGED
@@ -18,7 +18,8 @@ var __copyProps = (to, from, except, desc) => {
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
19
19
|
var WebSocketClientBrowser_exports = {};
|
20
20
|
__export(WebSocketClientBrowser_exports, {
|
21
|
-
WebSocketClientBrowser: () => WebSocketClientBrowser
|
21
|
+
WebSocketClientBrowser: () => WebSocketClientBrowser,
|
22
|
+
clients: () => clients
|
22
23
|
});
|
23
24
|
module.exports = __toCommonJS(WebSocketClientBrowser_exports);
|
24
25
|
var import_Runtime = require("../../utils/Runtime.cjs");
|
@@ -35,6 +36,7 @@ let WsClient = null;
|
|
35
36
|
if ((0, import_Runtime.isBrowserRuntime)()) {
|
36
37
|
WsClient = WebSocket;
|
37
38
|
}
|
39
|
+
const clients = {};
|
38
40
|
class WebSocketClientBrowser {
|
39
41
|
/**
|
40
42
|
* @param {string} url
|
@@ -42,10 +44,15 @@ class WebSocketClientBrowser {
|
|
42
44
|
*/
|
43
45
|
constructor(url, options) {
|
44
46
|
this.url = url;
|
45
|
-
this.instance = null;
|
46
|
-
this.isConnected = false;
|
47
47
|
this.isDisconnectedAfterMessage = options?.isDisconnectedAfterMessage ?? false;
|
48
48
|
}
|
49
|
+
/** @type {WebSocket | null} */
|
50
|
+
get instance() {
|
51
|
+
return clients[this.url] || null;
|
52
|
+
}
|
53
|
+
get isConnected() {
|
54
|
+
return this.instance ? this.instance.readyState === WebSocket.OPEN : false;
|
55
|
+
}
|
49
56
|
/**
|
50
57
|
* Sends messageArray through websocket connection
|
51
58
|
* @async
|
@@ -54,94 +61,81 @@ class WebSocketClientBrowser {
|
|
54
61
|
*/
|
55
62
|
send(messageArray) {
|
56
63
|
return new Promise((resolve, reject) => {
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
}
|
65
|
-
} catch (error) {
|
66
|
-
reject(error);
|
64
|
+
const client = this.instance;
|
65
|
+
if (client && this.isConnected) {
|
66
|
+
this._sendMessage(client, messageArray, resolve, reject);
|
67
|
+
} else {
|
68
|
+
this._connect().then((ws) => {
|
69
|
+
this._sendMessage(ws, messageArray, resolve, reject);
|
70
|
+
}).catch(reject);
|
67
71
|
}
|
68
72
|
});
|
69
73
|
}
|
70
74
|
/**
|
71
75
|
* Disconnects the WebSocket by terminating the connection.
|
72
|
-
* @returns {void}
|
73
|
-
*
|
74
76
|
*/
|
75
77
|
disconnect() {
|
76
|
-
|
77
|
-
|
78
|
+
const client = this.instance;
|
79
|
+
if (client) {
|
80
|
+
client.close();
|
81
|
+
delete clients[this.url];
|
78
82
|
}
|
79
|
-
this.isConnected = false;
|
80
83
|
}
|
81
84
|
/**
|
82
85
|
* Connects to the WebSocket server.
|
83
86
|
* @private
|
84
87
|
* @async
|
85
|
-
* @returns {Promise<
|
88
|
+
* @returns {Promise<WebSocket>}
|
86
89
|
*/
|
87
90
|
_connect() {
|
88
91
|
return new Promise((resolve, reject) => {
|
89
|
-
if (WsClient
|
92
|
+
if (!WsClient) {
|
90
93
|
return reject(new Error("missing WebSocket client"));
|
91
94
|
}
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
}
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
this.isConnected = false;
|
95
|
+
let client = clients[this.url];
|
96
|
+
if (!client) {
|
97
|
+
client = new WsClient(this.url);
|
98
|
+
client.binaryType = "arraybuffer";
|
99
|
+
clients[this.url] = client;
|
100
|
+
}
|
101
|
+
client.addEventListener(WebSocketState.OPEN, () => resolve(client));
|
102
|
+
client.addEventListener(WebSocketState.ERROR, reject);
|
103
|
+
client.addEventListener(WebSocketState.CLOSE, () => {
|
104
|
+
reject(new Error("Connection closed before receiving message"));
|
103
105
|
});
|
104
106
|
});
|
105
107
|
}
|
106
108
|
/**
|
107
109
|
* Sends the data to the WebSocket server and listens for a response.
|
108
110
|
* @private
|
109
|
-
* @
|
110
|
-
* @param {Int8Array} data
|
111
|
-
* @param {
|
112
|
-
* @param {
|
113
|
-
* @returns {void}
|
111
|
+
* @param {WebSocket} client
|
112
|
+
* @param {Int8Array} data
|
113
|
+
* @param {(value: Int8Array) => void} resolve
|
114
|
+
* @param {(reason?: any) => void} reject
|
114
115
|
*/
|
115
|
-
_sendMessage(data, resolve, reject) {
|
116
|
+
_sendMessage(client, data, resolve, reject) {
|
116
117
|
try {
|
117
|
-
if (this.instance === null || !this.instance) {
|
118
|
-
throw new Error("error websocket not connected");
|
119
|
-
}
|
120
118
|
const arrayBuffer = data.buffer;
|
121
|
-
|
122
|
-
const handleMessage = (
|
123
|
-
if (
|
124
|
-
|
119
|
+
client.send(arrayBuffer);
|
120
|
+
const handleMessage = (message) => {
|
121
|
+
if (!message?.data) {
|
122
|
+
return reject(new Error("Invalid message received"));
|
125
123
|
}
|
126
|
-
const byteArray = new Int8Array(
|
124
|
+
const byteArray = new Int8Array(message?.data);
|
127
125
|
resolve(byteArray);
|
128
126
|
if (this.isDisconnectedAfterMessage) {
|
129
127
|
this.disconnect();
|
130
128
|
}
|
131
|
-
|
132
|
-
|
129
|
+
client.removeEventListener(WebSocketState.MESSAGE, handleMessage);
|
130
|
+
client.removeEventListener(WebSocketState.ERROR, handleError);
|
133
131
|
};
|
134
132
|
const handleError = (error) => {
|
135
133
|
reject(error);
|
136
|
-
|
137
|
-
|
138
|
-
this.instance.removeEventListener(WebSocketState.ERROR, handleError);
|
139
|
-
}
|
134
|
+
client.removeEventListener(WebSocketState.MESSAGE, handleMessage);
|
135
|
+
client.removeEventListener(WebSocketState.ERROR, handleError);
|
140
136
|
};
|
141
|
-
|
142
|
-
|
143
|
-
this.instance.addEventListener(WebSocketState.ERROR, handleError);
|
144
|
-
}
|
137
|
+
client.addEventListener(WebSocketState.MESSAGE, handleMessage);
|
138
|
+
client.addEventListener(WebSocketState.ERROR, handleError);
|
145
139
|
} catch (err) {
|
146
140
|
reject(err);
|
147
141
|
}
|
@@ -149,5 +143,6 @@ class WebSocketClientBrowser {
|
|
149
143
|
}
|
150
144
|
// Annotate the CommonJS export names for ESM import in node:
|
151
145
|
0 && (module.exports = {
|
152
|
-
WebSocketClientBrowser
|
146
|
+
WebSocketClientBrowser,
|
147
|
+
clients
|
153
148
|
});
|
data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/webSocketClient/WebSocketClient.d.ts
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
/** @type {Record<string, wsClient>} */
|
2
|
+
export const clients: Record<string, wsClient>;
|
1
3
|
export type wsClient = import("ws").WebSocket;
|
2
4
|
export type WebSocketClass = typeof import("ws").WebSocket;
|
3
5
|
/**
|
@@ -13,18 +15,11 @@ export class WebSocketClient {
|
|
13
15
|
});
|
14
16
|
/** @type {string} */
|
15
17
|
url: string;
|
16
|
-
/** @type {wsClient | null} */
|
17
|
-
instance: wsClient | null;
|
18
|
-
/** @type {boolean} */
|
19
|
-
isConnected: boolean;
|
20
18
|
/** @type {boolean} */
|
21
19
|
isDisconnectedAfterMessage: boolean;
|
22
|
-
/**
|
23
|
-
|
24
|
-
|
25
|
-
* @returns {Promise<wsClient>} - A promise that resolves when the connection is established.
|
26
|
-
*/
|
27
|
-
connect(): Promise<wsClient>;
|
20
|
+
/** @type {wsClient | null} */
|
21
|
+
get instance(): wsClient | null;
|
22
|
+
get isConnected(): boolean;
|
28
23
|
/**
|
29
24
|
* Sends messageArray through websocket connection
|
30
25
|
* @async
|
@@ -1,10 +1,12 @@
|
|
1
|
-
export type Options = {
|
2
|
-
isDisconnectedAfterMessage: boolean;
|
3
|
-
};
|
4
1
|
/**
|
5
2
|
* @typedef {object} Options
|
6
|
-
* @property {boolean} isDisconnectedAfterMessage
|
3
|
+
* @property {boolean} [isDisconnectedAfterMessage]
|
7
4
|
*/
|
5
|
+
/** @type {Record<string, WebSocket>} */
|
6
|
+
export const clients: Record<string, WebSocket>;
|
7
|
+
export type Options = {
|
8
|
+
isDisconnectedAfterMessage?: boolean | undefined;
|
9
|
+
};
|
8
10
|
/**
|
9
11
|
* WebSocketClient class that handles WebSocket connection, message sending, and automatic disconnection.
|
10
12
|
*/
|
@@ -14,22 +16,13 @@ export class WebSocketClientBrowser {
|
|
14
16
|
* @param {Options} [options]
|
15
17
|
*/
|
16
18
|
constructor(url: string, options?: Options);
|
17
|
-
/**
|
18
|
-
* @type {string}
|
19
|
-
*/
|
19
|
+
/** @type {string} */
|
20
20
|
url: string;
|
21
|
-
/**
|
22
|
-
* @type {WebSocket | null}
|
23
|
-
*/
|
24
|
-
instance: WebSocket | null;
|
25
|
-
/**
|
26
|
-
* @type {boolean} isConnected indicates whether the WebSocket is connected.
|
27
|
-
*/
|
28
|
-
isConnected: boolean;
|
29
|
-
/**
|
30
|
-
* @type {boolean}
|
31
|
-
*/
|
21
|
+
/** @type {boolean} */
|
32
22
|
isDisconnectedAfterMessage: boolean;
|
23
|
+
/** @type {WebSocket | null} */
|
24
|
+
get instance(): WebSocket | null;
|
25
|
+
get isConnected(): boolean;
|
33
26
|
/**
|
34
27
|
* Sends messageArray through websocket connection
|
35
28
|
* @async
|
@@ -39,25 +32,22 @@ export class WebSocketClientBrowser {
|
|
39
32
|
send(messageArray: Int8Array): Promise<Int8Array>;
|
40
33
|
/**
|
41
34
|
* Disconnects the WebSocket by terminating the connection.
|
42
|
-
* @returns {void}
|
43
|
-
*
|
44
35
|
*/
|
45
36
|
disconnect(): void;
|
46
37
|
/**
|
47
38
|
* Connects to the WebSocket server.
|
48
39
|
* @private
|
49
40
|
* @async
|
50
|
-
* @returns {Promise<
|
41
|
+
* @returns {Promise<WebSocket>}
|
51
42
|
*/
|
52
43
|
private _connect;
|
53
44
|
/**
|
54
45
|
* Sends the data to the WebSocket server and listens for a response.
|
55
46
|
* @private
|
56
|
-
* @
|
57
|
-
* @param {Int8Array} data
|
58
|
-
* @param {
|
59
|
-
* @param {
|
60
|
-
* @returns {void}
|
47
|
+
* @param {WebSocket} client
|
48
|
+
* @param {Int8Array} data
|
49
|
+
* @param {(value: Int8Array) => void} resolve
|
50
|
+
* @param {(reason?: any) => void} reject
|
61
51
|
*/
|
62
52
|
private _sendMessage;
|
63
53
|
}
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|