javonet-ruby-sdk 2.6.0 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/lib/javonet-ruby-sdk/Binaries/Jvm/JavonetJvmRuntime.jar +0 -0
  4. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetActivationService.so +0 -0
  5. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetPythonRuntimeNative.so +0 -0
  6. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetRubyOnLinuxRuntimeNative.so +0 -0
  7. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetRubyRuntimeNative.so +0 -0
  8. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libUtils.so +0 -0
  9. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/version.txt +1 -1
  10. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetActivationService.so +0 -0
  11. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs2218RuntimeNative.so +0 -0
  12. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejsRuntimeNative.so +0 -0
  13. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPythonRuntimeNative.so +0 -0
  14. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRubyOnLinuxRuntimeNative.so +0 -0
  15. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRubyRuntimeNative.so +0 -0
  16. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libUtils.so +0 -0
  17. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libnode.so.127 +0 -0
  18. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libphp.so +0 -0
  19. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libpython2.7.so.1.0 +0 -0
  20. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/version.txt +1 -1
  21. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetActivationService.dylib +0 -0
  22. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/{libJavonetNodejs2214RuntimeNative.dylib → libJavonetNodejs2218RuntimeNative.dylib} +0 -0
  23. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
  24. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPythonRuntimeNative.dylib +0 -0
  25. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRubyOnLinuxRuntimeNative.dylib +0 -0
  26. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRubyRuntimeNative.dylib +0 -0
  27. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
  28. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libnode.127.dylib +0 -0
  29. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/version.txt +1 -1
  30. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetActivationService.dll +0 -0
  31. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetCppRuntimeNative.dll +0 -0
  32. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetGoRuntimeNative.dll +0 -0
  33. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetJvmRuntimeNative.dll +0 -0
  34. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetNetcoreRuntimeNative.dll +0 -0
  35. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetPhpRuntimeNative.dll +0 -0
  36. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetPythonRuntimeNative.dll +0 -0
  37. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetRuby278RuntimeNative.dll +0 -0
  38. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetRubyRuntimeNative.dll +0 -0
  39. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetTcpClient.dll +0 -0
  40. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetTcpTlsClient.dll +0 -0
  41. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/Utils.dll +0 -0
  42. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/version.txt +0 -0
  43. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetActivationService.dll +0 -0
  44. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
  45. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
  46. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
  47. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
  48. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
  49. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/{JavonetNodejs2214RuntimeNative.dll → JavonetNodejs2218RuntimeNative.dll} +0 -0
  50. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
  51. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
  52. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPhp848RuntimeNative.dll +0 -0
  53. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPhpRuntimeNative.dll +0 -0
  54. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPython2RuntimeNative.dll +0 -0
  55. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
  56. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRuby278RuntimeNative.dll +0 -0
  57. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
  58. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpClient.dll +0 -0
  59. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpTlsClient.dll +0 -0
  60. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/Utils.dll +0 -0
  61. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libnode.dll +0 -0
  62. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/version.txt +1 -1
  63. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetActivationService.dll +0 -0
  64. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetClrRuntimeNative.dll +0 -0
  65. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetCppRuntimeNative.dll +0 -0
  66. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetGoRuntimeNative.dll +0 -0
  67. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetJvmRuntimeNative.dll +0 -0
  68. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetNetcoreRuntimeNative.dll +0 -0
  69. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPhpRuntimeNative.dll +0 -0
  70. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPython2RuntimeNative.dll +0 -0
  71. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPythonRuntimeNative.dll +0 -0
  72. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpClient.dll +0 -0
  73. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpTlsClient.dll +0 -0
  74. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/Utils.dll +0 -0
  75. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/version.txt +1 -1
  76. data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Core.dll +0 -0
  77. data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Utils.dll +0 -0
  78. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/webSocketClient/WebSocketClient.cjs +64 -9
  79. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/webSocketClient/WebSocketClientBrowser.cjs +59 -4
  80. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/webSocketClient/WebSocketClient.d.ts +24 -2
  81. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/webSocketClient/WebSocketClientBrowser.d.ts +24 -2
  82. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/Devel/OverloadInfo.pm +2 -2
  83. 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
  84. 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
  85. 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
  86. 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
  87. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
  88. 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
  89. 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
  90. 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
  91. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
  92. 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
  93. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +96 -96
  94. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Exception/ExceptionSerializer.pm +21 -10
  95. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Receiver/Receiver.pm +21 -2
  96. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
  97. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
  98. 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
  99. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
  100. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
  101. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +22 -22
  102. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Exception/ExceptionSerializer.pm +21 -10
  103. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Receiver/Receiver.pm +21 -2
  104. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/receiver/Receiver.php +17 -1
  105. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/transmitter/TransmitterWrapper.php +1 -1
  106. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/ExceptionSerializer.php +4 -4
  107. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/UtilsConst.php +1 -1
  108. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/GetResultTypeHandler.py +10 -0
  109. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/Handler.py +2 -0
  110. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/webSocketClient/WebSocketClient.py +1 -1
  111. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/CommandType.py +1 -0
  112. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/ResolveInstanceHandler.py +1 -0
  113. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/protocol/CommandDeserializer.py +32 -69
  114. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/receiver/Receiver.py +16 -5
  115. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/utils/exception/ExceptionSerializer.py +82 -36
  116. data/lib/javonet-ruby-sdk/Binaries/version.txt +1 -1
  117. data/lib/javonet-ruby-sdk/{Binaries/Ruby/Windows/X64/core/receiver/receiver.rb → core/receiver/receiver_new.rb} +6 -3
  118. data/lib/javonet-ruby-sdk/utils/os_helper.rb +21 -0
  119. metadata +10 -164
  120. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetRuby342RuntimeNative.so +0 -0
  121. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs1816RuntimeNative.so +0 -0
  122. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs2214RuntimeNative.so +0 -0
  123. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRuby342RuntimeNative.dylib +0 -0
  124. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libruby.2.7.dylib +0 -0
  125. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libruby.3.4.dylib +0 -0
  126. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/x64-ucrt-ruby340.dll +0 -0
  127. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/abstract_command_handler.rb +0 -24
  128. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/abstract_handler.rb +0 -5
  129. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/array_get_item_handler.rb +0 -47
  130. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/array_get_rank_handler.rb +0 -23
  131. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/array_get_size_handler.rb +0 -37
  132. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/array_handler.rb +0 -12
  133. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/array_set_item_handler.rb +0 -47
  134. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/casting_handler.rb +0 -11
  135. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/create_class_instance_handler.rb +0 -34
  136. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/destruct_reference_handler.rb +0 -21
  137. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/enable_namespace_handler.rb +0 -31
  138. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/enable_type_handler.rb +0 -32
  139. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/get_instance_field_handler.rb +0 -34
  140. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/get_static_field_handler.rb +0 -34
  141. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/get_type_handler.rb +0 -71
  142. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/handler.rb +0 -105
  143. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/handler_dictionary.rb +0 -8
  144. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/invoke_global_function_handler.rb +0 -45
  145. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/invoke_instance_method_handler.rb +0 -36
  146. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/invoke_static_method_handler.rb +0 -38
  147. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/load_library_handler.rb +0 -36
  148. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/resolve_instance_handler.rb +0 -29
  149. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/set_instance_field_handler.rb +0 -35
  150. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/set_static_field_handler.rb +0 -31
  151. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/handler/value_handler.rb +0 -7
  152. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/interpreter/interpreter.rb +0 -28
  153. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/namespace_cache/namespace_cache.rb +0 -42
  154. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/protocol/command_deserializer.rb +0 -182
  155. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/protocol/command_serializer.rb +0 -39
  156. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/protocol/type_deserializer.rb +0 -126
  157. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/protocol/type_serializer.rb +0 -260
  158. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/receiver/receiver.rb +0 -39
  159. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/reference_cache/references_cache.rb +0 -39
  160. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/transmitter/transmitter.rb +0 -58
  161. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/transmitter/transmitter_wrapper.rb +0 -32
  162. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/type_cache/type_cache.rb +0 -42
  163. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/web_socket_client/web_socket_client.rb +0 -108
  164. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/command.rb +0 -93
  165. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/command_type.rb +0 -145
  166. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/connection_type.rb +0 -5
  167. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/exceptions/exception_serializer.rb +0 -127
  168. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/exceptions/exception_thrower.rb +0 -65
  169. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/exceptions/exception_type.rb +0 -10
  170. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/runtime_logger.rb +0 -30
  171. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/runtime_name.rb +0 -13
  172. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/runtime_name_handler.rb +0 -40
  173. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/string_encoding_mode.rb +0 -6
  174. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/tcp_connection_data.rb +0 -37
  175. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/type.rb +0 -15
  176. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/types_handler.rb +0 -10
  177. data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/ws_connection_data.rb +0 -19
  178. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/abstract_command_handler.rb +0 -24
  179. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/abstract_handler.rb +0 -5
  180. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/array_get_item_handler.rb +0 -47
  181. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/array_get_rank_handler.rb +0 -23
  182. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/array_get_size_handler.rb +0 -37
  183. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/array_handler.rb +0 -12
  184. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/array_set_item_handler.rb +0 -47
  185. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/casting_handler.rb +0 -11
  186. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/create_class_instance_handler.rb +0 -34
  187. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/destruct_reference_handler.rb +0 -21
  188. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/enable_namespace_handler.rb +0 -31
  189. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/enable_type_handler.rb +0 -32
  190. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/get_instance_field_handler.rb +0 -34
  191. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/get_static_field_handler.rb +0 -34
  192. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/get_type_handler.rb +0 -71
  193. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/handler.rb +0 -105
  194. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/handler_dictionary.rb +0 -8
  195. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/invoke_global_function_handler.rb +0 -45
  196. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/invoke_instance_method_handler.rb +0 -36
  197. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/invoke_static_method_handler.rb +0 -38
  198. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/load_library_handler.rb +0 -36
  199. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/resolve_instance_handler.rb +0 -29
  200. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/set_instance_field_handler.rb +0 -35
  201. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/set_static_field_handler.rb +0 -31
  202. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/handler/value_handler.rb +0 -7
  203. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/interpreter/interpreter.rb +0 -28
  204. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/namespace_cache/namespace_cache.rb +0 -42
  205. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/protocol/command_deserializer.rb +0 -182
  206. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/protocol/command_serializer.rb +0 -39
  207. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/protocol/type_deserializer.rb +0 -126
  208. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/protocol/type_serializer.rb +0 -260
  209. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/receiver/receiver.rb +0 -39
  210. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/reference_cache/references_cache.rb +0 -39
  211. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/transmitter/transmitter.rb +0 -58
  212. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/transmitter/transmitter_wrapper.rb +0 -32
  213. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/type_cache/type_cache.rb +0 -42
  214. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/web_socket_client/web_socket_client.rb +0 -108
  215. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/command.rb +0 -93
  216. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/command_type.rb +0 -145
  217. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/connection_type.rb +0 -5
  218. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/exceptions/exception_serializer.rb +0 -127
  219. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/exceptions/exception_thrower.rb +0 -65
  220. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/exceptions/exception_type.rb +0 -10
  221. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/runtime_logger.rb +0 -30
  222. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/runtime_name.rb +0 -13
  223. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/runtime_name_handler.rb +0 -40
  224. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/string_encoding_mode.rb +0 -6
  225. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/tcp_connection_data.rb +0 -37
  226. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/type.rb +0 -15
  227. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/types_handler.rb +0 -10
  228. data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/ws_connection_data.rb +0 -19
  229. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/abstract_command_handler.rb +0 -24
  230. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/abstract_handler.rb +0 -5
  231. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/array_get_item_handler.rb +0 -47
  232. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/array_get_rank_handler.rb +0 -23
  233. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/array_get_size_handler.rb +0 -37
  234. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/array_handler.rb +0 -12
  235. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/array_set_item_handler.rb +0 -47
  236. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/casting_handler.rb +0 -11
  237. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/create_class_instance_handler.rb +0 -34
  238. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/destruct_reference_handler.rb +0 -21
  239. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/enable_namespace_handler.rb +0 -31
  240. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/enable_type_handler.rb +0 -32
  241. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/get_instance_field_handler.rb +0 -34
  242. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/get_static_field_handler.rb +0 -34
  243. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/get_type_handler.rb +0 -71
  244. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/handler.rb +0 -105
  245. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/handler_dictionary.rb +0 -8
  246. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/invoke_global_function_handler.rb +0 -45
  247. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/invoke_instance_method_handler.rb +0 -36
  248. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/invoke_static_method_handler.rb +0 -38
  249. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/load_library_handler.rb +0 -36
  250. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/resolve_instance_handler.rb +0 -29
  251. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/set_instance_field_handler.rb +0 -35
  252. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/set_static_field_handler.rb +0 -31
  253. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/handler/value_handler.rb +0 -7
  254. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/interpreter/interpreter.rb +0 -28
  255. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/namespace_cache/namespace_cache.rb +0 -42
  256. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/protocol/command_deserializer.rb +0 -182
  257. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/protocol/command_serializer.rb +0 -39
  258. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/protocol/type_deserializer.rb +0 -126
  259. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/protocol/type_serializer.rb +0 -260
  260. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/reference_cache/references_cache.rb +0 -39
  261. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/transmitter/transmitter.rb +0 -58
  262. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/transmitter/transmitter_wrapper.rb +0 -32
  263. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/type_cache/type_cache.rb +0 -42
  264. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/web_socket_client/web_socket_client.rb +0 -108
  265. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/command.rb +0 -93
  266. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/command_type.rb +0 -145
  267. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/connection_type.rb +0 -5
  268. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/exceptions/exception_serializer.rb +0 -127
  269. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/exceptions/exception_thrower.rb +0 -65
  270. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/exceptions/exception_type.rb +0 -10
  271. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/runtime_logger.rb +0 -30
  272. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/runtime_name.rb +0 -13
  273. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/runtime_name_handler.rb +0 -40
  274. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/string_encoding_mode.rb +0 -6
  275. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/tcp_connection_data.rb +0 -37
  276. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/type.rb +0 -15
  277. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/types_handler.rb +0 -10
  278. data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/ws_connection_data.rb +0 -19
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f0dc4058694951c0fdd4f5c1ca9d951c2597fcfeca17fe1b0421ef4854943222
4
- data.tar.gz: 3807f9be1c6fca1d923619d8e286399cb1100ade32fd71b7e42045b61779d7c0
3
+ metadata.gz: 297f67ee16d9530988a55e28900546652024c6b29e103ec337b31ce93f42ff96
4
+ data.tar.gz: da54c03b7cc7371bc90de4bddf10eb8348246635f71e22708ad2273266c041ad
5
5
  SHA512:
6
- metadata.gz: e9cf7ec6105b5f3b57aead4f7ff8291d47e14d5228c71699051769e5ef2ba43cd36004e14bca47c4f603d23a5c01c0fee44ed3877fa5697061c1421a4e93f567
7
- data.tar.gz: 10530ff390f94e2881d2d3e8c87661dc65387b852a246550c1627e097f13bb0083831c0ec9d9a8eee9ca20d2fd24671da5c444ad6c08cbb165b6f3938d2a8ef8
6
+ metadata.gz: 3d3da418a1272ccc1a4112635c36bc75ca674b4fc75c8c7225500ea5ac187a75c560b4f5e4b7dd47abf5c47a2e39df7a936faca36f7f012d7761029b778fedbf
7
+ data.tar.gz: '096bc8c262de3147c9072215693f63ba04f9003d4f7ad9b7dac9142f79c4dfe005123ce5c9969beb8e38cc0463dac202d39e10d2ae56080b394108cc9f5f8e79'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.6.0
1
+ 2.6.2
@@ -1 +1 @@
1
- 2.6.0
1
+ 2.6.2
@@ -1 +1 @@
1
- 2.6.0
1
+ 2.6.2
@@ -1 +1 @@
1
- 2.6.0
1
+ 2.6.2
@@ -1 +1 @@
1
- '2.6.0'
1
+ '2.6.2'
@@ -1 +1 @@
1
- '2.6.0'
1
+ '2.6.2'
@@ -19,7 +19,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var WebSocketClient_exports = {};
20
20
  __export(WebSocketClient_exports, {
21
21
  WebSocketClient: () => WebSocketClient,
22
- clients: () => clients
22
+ clients: () => clients,
23
+ messageQueue: () => messageQueue,
24
+ processingQueues: () => processingQueues
23
25
  });
24
26
  module.exports = __toCommonJS(WebSocketClient_exports);
25
27
  var import_Runtime = require("../../utils/Runtime.cjs");
@@ -39,6 +41,8 @@ const WebSocketStateEvent = {
39
41
  };
40
42
  let WebSocket = null;
41
43
  const clients = {};
44
+ const messageQueue = {};
45
+ const processingQueues = {};
42
46
  class WebSocketClient {
43
47
  /**
44
48
  * @param {string} url
@@ -56,15 +60,57 @@ class WebSocketClient {
56
60
  return this.instance ? this.instance?.readyState === WebSocketStateEnum.OPEN : false;
57
61
  }
58
62
  /**
59
- * Sends messageArray through websocket connection
63
+ * Sends messageArray through websocket connection with guaranteed order preservation
60
64
  * @async
61
65
  * @param {Int8Array} messageArray
62
66
  * @returns {Promise<Int8Array>}
63
67
  */
64
68
  send(messageArray) {
69
+ return new Promise((resolve, reject) => {
70
+ if (!messageQueue[this.url]) {
71
+ messageQueue[this.url] = [];
72
+ }
73
+ messageQueue[this.url].push({ resolve, reject, messageArray });
74
+ this._processMessage();
75
+ });
76
+ }
77
+ /**
78
+ * Processes message queue sequentially to maintain order
79
+ * @private
80
+ * @async
81
+ */
82
+ async _processMessage() {
83
+ if (processingQueues[this.url]) {
84
+ return;
85
+ }
86
+ processingQueues[this.url] = true;
87
+ try {
88
+ while (messageQueue[this.url] && messageQueue[this.url].length > 0) {
89
+ const item = messageQueue[this.url].shift();
90
+ if (!item) break;
91
+ const { resolve, reject, messageArray } = item;
92
+ try {
93
+ const response = await this._send(messageArray);
94
+ resolve(response);
95
+ } catch (error) {
96
+ reject(error);
97
+ }
98
+ }
99
+ } finally {
100
+ processingQueues[this.url] = false;
101
+ }
102
+ }
103
+ /**
104
+ * Sends a single message through websocket connection
105
+ * @private
106
+ * @async
107
+ * @param {Int8Array} messageArray
108
+ * @returns {Promise<Int8Array>}
109
+ */
110
+ _send(messageArray) {
65
111
  return new Promise((resolve, reject) => {
66
112
  const client = this.instance;
67
- if (client) {
113
+ if (client && this.isConnected) {
68
114
  client.send(
69
115
  /** @type {any} */
70
116
  messageArray
@@ -78,8 +124,8 @@ class WebSocketClient {
78
124
  };
79
125
  client.on(WebSocketStateEvent.MESSAGE, messageHandler);
80
126
  } else {
81
- this._connect().then((ws) => {
82
- ws.send(
127
+ this._connect().then((client2) => {
128
+ client2.send(
83
129
  /** @type {any} */
84
130
  messageArray
85
131
  );
@@ -88,21 +134,28 @@ class WebSocketClient {
88
134
  if (this.isDisconnectedAfterMessage) {
89
135
  this.disconnect();
90
136
  }
91
- ws.removeListener(WebSocketStateEvent.MESSAGE, messageHandler);
137
+ client2.removeListener(WebSocketStateEvent.MESSAGE, messageHandler);
92
138
  };
93
- ws.on(WebSocketStateEvent.MESSAGE, messageHandler);
139
+ client2.on(WebSocketStateEvent.MESSAGE, messageHandler);
94
140
  }).catch(reject);
95
141
  }
96
142
  });
97
143
  }
98
144
  /**
99
- * Disconnects the WebSocket by terminating the connection.
145
+ * Disconnects the WebSocket by terminating the connection and cleans up queues.
100
146
  */
101
147
  disconnect() {
102
148
  if (this.instance) {
103
149
  this.instance.close();
104
150
  delete clients[this.url];
105
151
  }
152
+ if (messageQueue[this.url]) {
153
+ messageQueue[this.url].forEach(({ reject }) => {
154
+ reject(new Error("WebSocket disconnected"));
155
+ });
156
+ delete messageQueue[this.url];
157
+ }
158
+ delete processingQueues[this.url];
106
159
  }
107
160
  /**
108
161
  * Connects to the WebSocket server.
@@ -144,5 +197,7 @@ class WebSocketClient {
144
197
  // Annotate the CommonJS export names for ESM import in node:
145
198
  0 && (module.exports = {
146
199
  WebSocketClient,
147
- clients
200
+ clients,
201
+ messageQueue,
202
+ processingQueues
148
203
  });
@@ -19,7 +19,9 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var WebSocketClientBrowser_exports = {};
20
20
  __export(WebSocketClientBrowser_exports, {
21
21
  WebSocketClientBrowser: () => WebSocketClientBrowser,
22
- clients: () => clients
22
+ clients: () => clients,
23
+ messageQueue: () => messageQueue,
24
+ processingQueues: () => processingQueues
23
25
  });
24
26
  module.exports = __toCommonJS(WebSocketClientBrowser_exports);
25
27
  var import_Runtime = require("../../utils/Runtime.cjs");
@@ -37,6 +39,8 @@ if ((0, import_Runtime.isBrowserRuntime)()) {
37
39
  WsClient = WebSocket;
38
40
  }
39
41
  const clients = {};
42
+ const messageQueue = {};
43
+ const processingQueues = {};
40
44
  class WebSocketClientBrowser {
41
45
  /**
42
46
  * @param {string} url
@@ -54,12 +58,54 @@ class WebSocketClientBrowser {
54
58
  return this.instance ? this.instance.readyState === WebSocket.OPEN : false;
55
59
  }
56
60
  /**
57
- * Sends messageArray through websocket connection
61
+ * Sends messageArray through websocket connection with guaranteed order preservation
58
62
  * @async
59
63
  * @param {Int8Array} messageArray
60
64
  * @returns {Promise<Int8Array>}
61
65
  */
62
66
  send(messageArray) {
67
+ return new Promise((resolve, reject) => {
68
+ if (!messageQueue[this.url]) {
69
+ messageQueue[this.url] = [];
70
+ }
71
+ messageQueue[this.url].push({ resolve, reject, messageArray });
72
+ this._processMessage();
73
+ });
74
+ }
75
+ /**
76
+ * Processes message queue sequentially to maintain order
77
+ * @private
78
+ * @async
79
+ */
80
+ async _processMessage() {
81
+ if (processingQueues[this.url]) {
82
+ return;
83
+ }
84
+ processingQueues[this.url] = true;
85
+ try {
86
+ while (messageQueue[this.url] && messageQueue[this.url].length > 0) {
87
+ const item = messageQueue[this.url].shift();
88
+ if (!item) break;
89
+ const { resolve, reject, messageArray } = item;
90
+ try {
91
+ const response = await this._sendSingle(messageArray);
92
+ resolve(response);
93
+ } catch (error) {
94
+ reject(error);
95
+ }
96
+ }
97
+ } finally {
98
+ processingQueues[this.url] = false;
99
+ }
100
+ }
101
+ /**
102
+ * Sends a single message through websocket connection
103
+ * @private
104
+ * @async
105
+ * @param {Int8Array} messageArray
106
+ * @returns {Promise<Int8Array>}
107
+ */
108
+ _sendSingle(messageArray) {
63
109
  return new Promise((resolve, reject) => {
64
110
  const client = this.instance;
65
111
  if (client && this.isConnected) {
@@ -72,7 +118,7 @@ class WebSocketClientBrowser {
72
118
  });
73
119
  }
74
120
  /**
75
- * Disconnects the WebSocket by terminating the connection.
121
+ * Disconnects the WebSocket by terminating the connection and cleans up queues.
76
122
  */
77
123
  disconnect() {
78
124
  const client = this.instance;
@@ -80,6 +126,13 @@ class WebSocketClientBrowser {
80
126
  client.close();
81
127
  delete clients[this.url];
82
128
  }
129
+ if (messageQueue[this.url]) {
130
+ messageQueue[this.url].forEach(({ reject }) => {
131
+ reject(new Error("WebSocket disconnected"));
132
+ });
133
+ delete messageQueue[this.url];
134
+ }
135
+ delete processingQueues[this.url];
83
136
  }
84
137
  /**
85
138
  * Connects to the WebSocket server.
@@ -144,5 +197,7 @@ class WebSocketClientBrowser {
144
197
  // Annotate the CommonJS export names for ESM import in node:
145
198
  0 && (module.exports = {
146
199
  WebSocketClientBrowser,
147
- clients
200
+ clients,
201
+ messageQueue,
202
+ processingQueues
148
203
  });
@@ -1,5 +1,13 @@
1
1
  /** @type {Record<string, wsClient>} */
2
2
  export const clients: Record<string, wsClient>;
3
+ /** @type {Record<string, Array<{resolve: Function, reject: Function, messageArray: Int8Array}>>} */
4
+ export const messageQueue: Record<string, Array<{
5
+ resolve: Function;
6
+ reject: Function;
7
+ messageArray: Int8Array;
8
+ }>>;
9
+ /** @type {Record<string, boolean>} */
10
+ export const processingQueues: Record<string, boolean>;
3
11
  export type wsClient = import("ws").WebSocket;
4
12
  export type WebSocketClass = typeof import("ws").WebSocket;
5
13
  /**
@@ -21,14 +29,28 @@ export class WebSocketClient {
21
29
  get instance(): wsClient | null;
22
30
  get isConnected(): boolean;
23
31
  /**
24
- * Sends messageArray through websocket connection
32
+ * Sends messageArray through websocket connection with guaranteed order preservation
25
33
  * @async
26
34
  * @param {Int8Array} messageArray
27
35
  * @returns {Promise<Int8Array>}
28
36
  */
29
37
  send(messageArray: Int8Array): Promise<Int8Array>;
30
38
  /**
31
- * Disconnects the WebSocket by terminating the connection.
39
+ * Processes message queue sequentially to maintain order
40
+ * @private
41
+ * @async
42
+ */
43
+ private _processMessage;
44
+ /**
45
+ * Sends a single message through websocket connection
46
+ * @private
47
+ * @async
48
+ * @param {Int8Array} messageArray
49
+ * @returns {Promise<Int8Array>}
50
+ */
51
+ private _send;
52
+ /**
53
+ * Disconnects the WebSocket by terminating the connection and cleans up queues.
32
54
  */
33
55
  disconnect(): void;
34
56
  /**
@@ -4,6 +4,14 @@
4
4
  */
5
5
  /** @type {Record<string, WebSocket>} */
6
6
  export const clients: Record<string, WebSocket>;
7
+ /** @type {Record<string, Array<{resolve: Function, reject: Function, messageArray: Int8Array}>>} */
8
+ export const messageQueue: Record<string, Array<{
9
+ resolve: Function;
10
+ reject: Function;
11
+ messageArray: Int8Array;
12
+ }>>;
13
+ /** @type {Record<string, boolean>} */
14
+ export const processingQueues: Record<string, boolean>;
7
15
  export type Options = {
8
16
  isDisconnectedAfterMessage?: boolean | undefined;
9
17
  };
@@ -24,14 +32,28 @@ export class WebSocketClientBrowser {
24
32
  get instance(): WebSocket | null;
25
33
  get isConnected(): boolean;
26
34
  /**
27
- * Sends messageArray through websocket connection
35
+ * Sends messageArray through websocket connection with guaranteed order preservation
28
36
  * @async
29
37
  * @param {Int8Array} messageArray
30
38
  * @returns {Promise<Int8Array>}
31
39
  */
32
40
  send(messageArray: Int8Array): Promise<Int8Array>;
33
41
  /**
34
- * Disconnects the WebSocket by terminating the connection.
42
+ * Processes message queue sequentially to maintain order
43
+ * @private
44
+ * @async
45
+ */
46
+ private _processMessage;
47
+ /**
48
+ * Sends a single message through websocket connection
49
+ * @private
50
+ * @async
51
+ * @param {Int8Array} messageArray
52
+ * @returns {Promise<Int8Array>}
53
+ */
54
+ private _sendSingle;
55
+ /**
56
+ * Disconnects the WebSocket by terminating the connection and cleans up queues.
35
57
  */
36
58
  disconnect(): void;
37
59
  /**
@@ -1,5 +1,5 @@
1
1
  package Devel::OverloadInfo;
2
- $Devel::OverloadInfo::VERSION = '0.007';
2
+ $Devel::OverloadInfo::VERSION = '0.008';
3
3
  # ABSTRACT: introspect overloaded operators
4
4
 
5
5
  #pod =head1 DESCRIPTION
@@ -211,7 +211,7 @@ Devel::OverloadInfo - introspect overloaded operators
211
211
 
212
212
  =head1 VERSION
213
213
 
214
- version 0.007
214
+ version 0.008
215
215
 
216
216
  =head1 DESCRIPTION
217
217