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
@@ -1,126 +0,0 @@
1
- require_relative '../../utils/string_encoding_mode'
2
-
3
- class TypeDeserializer
4
-
5
- def self.deserialize_command(command_byte_array)
6
- Command.new(RuntimeName(command_byte_array[0]), CommandType(command_byte_array[1]), [])
7
- end
8
-
9
- def self.deserialize_string(string_encoding_mode, encoded_string)
10
- raw_str = encoded_string.map(&:chr).join
11
- case string_encoding_mode
12
- when StringEncodingMode::ASCII
13
- raw_str.force_encoding("US-ASCII").encode("UTF-8")
14
- when StringEncodingMode::UTF8
15
- raw_str.force_encoding("UTF-8").encode("UTF-8")
16
- when StringEncodingMode::UTF16
17
- raw_str.force_encoding("UTF-16LE").encode("UTF-8")
18
- when StringEncodingMode::UTF32
19
- raw_str.force_encoding("UTF-32").encode("UTF-8")
20
- else
21
- raise "Argument out of range in deserialize_string"
22
- end
23
- end
24
-
25
- def self.deserialize_int(encoded_int)
26
- # Assuming a 32-bit little-endian integer.
27
- value = 0
28
- encoded_int.each_with_index do |byte, index|
29
- value |= (byte & 0xFF) << (8 * index)
30
- end
31
- # Sign the extension if the 31st bit is set.
32
- value -= (1 << 32) if (value & (1 << 31)) != 0
33
- value
34
- end
35
-
36
- def self.deserialize_bool(encoded_bool)
37
- encoded_bool[0] == 1
38
- end
39
-
40
- def self.deserialize_float(encoded_float)
41
- # Reconstruct the 32-bit integer from the byte array.
42
- bits = 0
43
- encoded_float.each_with_index do |byte, index|
44
- bits |= (byte & 0xFF) << (8 * index)
45
- end
46
-
47
- # IEEE 754 single precision (32-bit) decoding:
48
- sign = ((bits >> 31) == 0) ? 1 : -1
49
- exponent = (bits >> 23) & 0xFF
50
- fraction = bits & 0x7FFFFF
51
-
52
- if exponent == 255
53
- # Handle special cases for Inf and NaN.
54
- return fraction == 0 ? sign * Float::INFINITY : Float::NAN
55
- elsif exponent == 0
56
- # Subnormal numbers.
57
- return sign * (fraction.to_f / (1 << 23)) * (2 ** (-126))
58
- else
59
- # Normalized number.
60
- return sign * (1 + fraction.to_f / (1 << 23)) * (2 ** (exponent - 127))
61
- end
62
- end
63
-
64
- def self.deserialize_byte(encoded_byte)
65
- encoded_byte[0]
66
- end
67
-
68
- def self.deserialize_char(encoded_char)
69
- encoded_char[0].ord
70
- end
71
-
72
- def self.deserialize_longlong(encoded_long)
73
- # Assuming a 64-bit little-endian integer.
74
- value = 0
75
- encoded_long.each_with_index do |byte, index|
76
- value |= (byte & 0xFF) << (8 * index)
77
- end
78
- # Sign extension for 64-bit: if the 63rd bit is set.
79
- value -= (1 << 64) if value >= (1 << 63)
80
- value
81
- end
82
-
83
- def self.deserialize_double(encoded_double)
84
- # Reconstruct the 64-bit bit pattern from the byte array.
85
- bits = 0
86
- encoded_double.each_with_index do |byte, index|
87
- bits |= (byte & 0xFF) << (8 * index)
88
- end
89
-
90
- # IEEE 754 double precision (64-bit) decoding:
91
- sign = ((bits >> 63) == 0) ? 1 : -1
92
- exponent = (bits >> 52) & 0x7FF
93
- fraction = bits & 0xFFFFFFFFFFFFF
94
-
95
- if exponent == 2047
96
- return fraction == 0 ? sign * Float::INFINITY : Float::NAN
97
- elsif exponent == 0
98
- return sign * (fraction.to_f / (1 << 52)) * (2 ** (-1022))
99
- else
100
- return sign * (1 + fraction.to_f / (1 << 52)) * (2 ** (exponent - 1023))
101
- end
102
- end
103
-
104
- def self.deserialize_ullong(encoded_ullong)
105
- # Assuming an unsigned 64-bit little-endian integer.
106
- value = 0
107
- encoded_ullong.each_with_index do |byte, index|
108
- value |= (byte & 0xFF) << (8 * index)
109
- end
110
- value
111
- end
112
-
113
- def self.deserialize_uint(encoded_uint)
114
- # Assuming an unsigned 32-bit little-endian integer.
115
- value = 0
116
- encoded_uint.each_with_index do |byte, index|
117
- value |= (byte & 0xFF) << (8 * index)
118
- end
119
- value
120
- end
121
-
122
- def self.deserialize_nil(encoded_nil)
123
- nil
124
- end
125
-
126
- end
@@ -1,260 +0,0 @@
1
- require_relative '../../utils/type'
2
- require_relative '../../utils/string_encoding_mode'
3
-
4
- class TypeSerializer
5
-
6
- def self.serialize_primitive(payload_item)
7
- if payload_item.nil?
8
- return serialize_nil
9
- elsif [true, false].include? payload_item
10
- return serialize_bool(payload_item)
11
- elsif payload_item.is_a? Integer
12
- if (-2 ** 31..2 ** 31 - 1).include?(payload_item)
13
- return serialize_int(payload_item)
14
- elsif (-2 ** 63..2 ** 63 - 1).include?(payload_item)
15
- return serialize_longlong(payload_item)
16
- else
17
- return serialize_ullong(payload_item)
18
- end
19
- elsif payload_item.is_a? String
20
- return serialize_string(payload_item)
21
- elsif payload_item.is_a? Float
22
- return serialize_double(payload_item)
23
- elsif payload_item.is_a?(FalseClass) || payload_item.is_a?(TrueClass)
24
- return serialize_bool(payload_item)
25
- else
26
- raise TypeError, "Unsupported payload item type: #{payload_item.class} for payload item: #{payload_item}."
27
- end
28
- end
29
-
30
- def self.serialize_command(command)
31
- length = int_to_bytes(command.payload.length)
32
- return [Type::COMMAND] + length + [command.runtime_name, command.command_type]
33
- end
34
-
35
- def self.serialize_string(string_value)
36
- encoded_string_list = string_value.bytes
37
- length = int_to_bytes(encoded_string_list.length)
38
- return [Type::JAVONET_STRING, StringEncodingMode::UTF8] + length + encoded_string_list
39
- end
40
-
41
- def self.serialize_int(int_value)
42
- encoded_int_list = int_to_bytes(int_value)
43
- length = encoded_int_list.length
44
- return [Type::JAVONET_INTEGER, length] + encoded_int_list
45
- end
46
-
47
- def self.serialize_bool(bool_value)
48
- encoded_bool_list = bool_value ? [1] : [0]
49
- length = encoded_bool_list.length
50
- return [Type::JAVONET_BOOLEAN, length] + encoded_bool_list
51
- end
52
-
53
- def self.serialize_float(float_value)
54
- encoded_float_list = float_to_bytes(float_value)
55
- length = encoded_float_list.length
56
- return [Type::JAVONET_FLOAT, length] + encoded_float_list
57
- end
58
-
59
- def self.serialize_byte(byte_value)
60
- encoded_byte_list = [byte_value & 0xFF]
61
- length = encoded_byte_list.length
62
- return [Type::JAVONET_BYTE, length] + encoded_byte_list
63
- end
64
-
65
- def self.serialize_char(char_value)
66
- encoded_char_list = [char_value & 0xFF]
67
- length = encoded_char_list.length
68
- return [Type::JAVONET_CHAR, length] + encoded_char_list
69
- end
70
-
71
- def self.serialize_longlong(longlong_value)
72
- encoded_longlong_list = longlong_to_bytes(longlong_value)
73
- length = encoded_longlong_list.length
74
- return [Type::JAVONET_LONG_LONG, length] + encoded_longlong_list
75
- end
76
-
77
- def self.serialize_double(double_value)
78
- encoded_double_list = double_to_bytes(double_value)
79
- length = encoded_double_list.length
80
- return [Type::JAVONET_DOUBLE, length] + encoded_double_list
81
- end
82
-
83
- def self.serialize_uint(uint_value)
84
- encoded_uint_list = uint_to_bytes(uint_value)
85
- length = encoded_uint_list.length
86
- return [Type::JAVONET_UNSIGNED_INTEGER, length] + encoded_uint_list
87
- end
88
-
89
- def self.serialize_ullong(ullong_value)
90
- encoded_ullong_list = ullong_to_bytes(ullong_value)
91
- length = encoded_ullong_list.length
92
- return [Type::JAVONET_UNSIGNED_LONG_LONG, length] + encoded_ullong_list
93
- end
94
-
95
- def self.serialize_nil
96
- return [Type::JAVONET_NULL, 1, 0]
97
- end
98
-
99
- # Helper methods for byte conversion
100
- def self.int_to_bytes(value)
101
- # Convert to 4-byte (32-bit) integer, little-endian
102
- [
103
- value & 0xFF,
104
- (value >> 8) & 0xFF,
105
- (value >> 16) & 0xFF,
106
- (value >> 24) & 0xFF
107
- ]
108
- end
109
-
110
- def self.uint_to_bytes(value)
111
- # Convert to 4-byte unsigned integer, little-endian
112
- [
113
- value & 0xFF,
114
- (value >> 8) & 0xFF,
115
- (value >> 16) & 0xFF,
116
- (value >> 24) & 0xFF
117
- ]
118
- end
119
-
120
- def self.longlong_to_bytes(value)
121
- # Convert to 8-byte (64-bit) integer, little-endian
122
- [
123
- value & 0xFF,
124
- (value >> 8) & 0xFF,
125
- (value >> 16) & 0xFF,
126
- (value >> 24) & 0xFF,
127
- (value >> 32) & 0xFF,
128
- (value >> 40) & 0xFF,
129
- (value >> 48) & 0xFF,
130
- (value >> 56) & 0xFF
131
- ]
132
- end
133
-
134
- def self.ullong_to_bytes(value)
135
- # Convert to 8-byte unsigned long long, little-endian
136
- [
137
- value & 0xFF,
138
- (value >> 8) & 0xFF,
139
- (value >> 16) & 0xFF,
140
- (value >> 24) & 0xFF,
141
- (value >> 32) & 0xFF,
142
- (value >> 40) & 0xFF,
143
- (value >> 48) & 0xFF,
144
- (value >> 56) & 0xFF
145
- ]
146
- end
147
-
148
- def self.float_to_bytes(value)
149
- # IEEE 754 single-precision binary floating-point format (32-bit)
150
- # Manual implementation without using pack
151
- bits = 0
152
-
153
- if value == 0
154
- # Zero is a special case
155
- return [0, 0, 0, 0]
156
- elsif value.nan?
157
- # NaN is another special case
158
- bits = 0x7FC00000
159
- elsif value.infinite?
160
- # Handle infinity
161
- bits = value > 0 ? 0x7F800000 : 0xFF800000
162
- else
163
- # Regular number
164
- sign = value < 0 ? 1 : 0
165
- value = value.abs
166
-
167
- # Get exponent and fraction
168
- exponent = Math.log2(value).floor
169
- fraction = value / (2.0**exponent) - 1.0
170
-
171
- # Normalize exponent for IEEE 754 bias
172
- biased_exponent = exponent + 127
173
-
174
- # Clamp exponent to valid range
175
- if biased_exponent <= 0
176
- # Denormalized values
177
- biased_exponent = 0
178
- fraction = value / (2.0**(-126))
179
- elsif biased_exponent >= 255
180
- # Overflow, return infinity
181
- biased_exponent = 255
182
- fraction = 0
183
- end
184
-
185
- # Assemble the bits
186
- fraction_bits = (fraction * 0x800000).round & 0x7FFFFF
187
- bits = (sign << 31) | (biased_exponent << 23) | fraction_bits
188
- end
189
-
190
- # Convert to bytes (little-endian)
191
- [
192
- bits & 0xFF,
193
- (bits >> 8) & 0xFF,
194
- (bits >> 16) & 0xFF,
195
- (bits >> 24) & 0xFF
196
- ]
197
- end
198
-
199
- def self.double_to_bytes(value)
200
- # IEEE 754 double-precision binary floating-point format (64-bit)
201
- # Manual implementation without using pack
202
- bits_low = 0
203
- bits_high = 0
204
-
205
- if value == 0
206
- # Zero is a special case
207
- return [0, 0, 0, 0, 0, 0, 0, 0]
208
- elsif value.nan?
209
- # NaN is another special case
210
- bits_high = 0x7FF80000
211
- bits_low = 0
212
- elsif value.infinite?
213
- # Handle infinity
214
- bits_high = value > 0 ? 0x7FF00000 : 0xFFF00000
215
- bits_low = 0
216
- else
217
- # Regular number
218
- sign = value < 0 ? 1 : 0
219
- value = value.abs
220
-
221
- # Get exponent and fraction
222
- exponent = Math.log2(value).floor
223
- fraction = value / (2.0**exponent) - 1.0
224
-
225
- # Normalize exponent for IEEE 754 bias
226
- biased_exponent = exponent + 1023
227
-
228
- # Clamp exponent to valid range
229
- if biased_exponent <= 0
230
- # Denormalized values
231
- biased_exponent = 0
232
- fraction = value / (2.0**(-1022))
233
- elsif biased_exponent >= 2047
234
- # Overflow, return infinity
235
- biased_exponent = 2047
236
- fraction = 0
237
- end
238
-
239
- # Assemble the bits
240
- # Convert a fraction to 52-bit integer
241
- fraction_bits = (fraction * 0x10000000000000).round
242
-
243
- # Split into high and low 32-bit words
244
- bits_high = (sign << 31) | (biased_exponent << 20) | ((fraction_bits >> 32) & 0xFFFFF)
245
- bits_low = fraction_bits & 0xFFFFFFFF
246
- end
247
-
248
- # Convert to bytes (little-endian)
249
- [
250
- bits_low & 0xFF,
251
- (bits_low >> 8) & 0xFF,
252
- (bits_low >> 16) & 0xFF,
253
- (bits_low >> 24) & 0xFF,
254
- bits_high & 0xFF,
255
- (bits_high >> 8) & 0xFF,
256
- (bits_high >> 16) & 0xFF,
257
- (bits_high >> 24) & 0xFF
258
- ]
259
- end
260
- end
@@ -1,39 +0,0 @@
1
- require_relative '../interpreter/interpreter'
2
- require_relative '../../utils/runtime_logger'
3
- require_relative '../protocol/command_serializer'
4
- require_relative '../../utils/command'
5
-
6
- class Receiver
7
-
8
- def initialize
9
- puts get_runtime_info
10
- end
11
-
12
- def send_command(message_array, message_array_len)
13
- begin
14
- CommandSerializer.new.serialize(Interpreter.new.process(message_array))
15
- rescue Exception => e
16
- message = "Error occurred in Javonet Ruby Core: #{e.message}"
17
- puts message
18
- exception_command = Command.new(RuntimeName::RUBY, CommandType::EXCEPTION, [])
19
- exception_command = exception_command.add_arg_to_payload(ExceptionType::EXCEPTION)
20
- exception_command = exception_command.add_arg_to_payload(Command.new(RuntimeName::RUBY, CommandType::EXCEPTION, ["Ruby Core Error", "Ruby Core Error"]).to_string)
21
- exception_command = exception_command.add_arg_to_payload("Ruby Core Error")
22
- exception_command = exception_command.add_arg_to_payload(e.message)
23
- exception_command = exception_command.add_arg_to_payload("Receiver")
24
- exception_command = exception_command.add_arg_to_payload("send_command")
25
- exception_command = exception_command.add_arg_to_payload("undefined")
26
- exception_command = exception_command.add_arg_to_payload(__FILE__)
27
- CommandSerializer.new.serialize(exception_command)
28
- end
29
- end
30
-
31
- def heart_beat(message_array, message_array_len)
32
- [49,48]
33
- end
34
-
35
- def get_runtime_info
36
- RuntimeLogger.get_runtime_info(true)
37
- end
38
- end
39
-
@@ -1,39 +0,0 @@
1
- class ReferencesCache
2
- # Make 'new' a private class method so no other instances can be created.
3
- private_class_method :new
4
-
5
- def self.instance
6
- @instance ||= new
7
- end
8
-
9
- def initialize
10
- @references_cache = {}
11
- end
12
-
13
- def cache_reference(object_reference)
14
- uuid_ = generate_uuid
15
- @references_cache[uuid_] = object_reference
16
- uuid_
17
- end
18
-
19
- def resolve_reference(guid)
20
- if @references_cache[guid].nil?
21
- raise "Unable to resolve reference with id: #{guid}"
22
- else
23
- @references_cache[guid]
24
- end
25
- end
26
-
27
- def delete_reference(guid)
28
- if @references_cache[guid].nil?
29
- raise 'Object not found in reference cache'
30
- else
31
- @references_cache.delete(guid)
32
- 0
33
- end
34
- end
35
-
36
- def generate_uuid
37
- [8, 4, 4, 4, 12].map { |n| rand(16**n).to_s(16).rjust(n, '0') }.join('-')
38
- end
39
- end
@@ -1,58 +0,0 @@
1
- require 'ffi'
2
- require 'os'
3
- require_relative 'transmitter_wrapper'
4
-
5
- class Transmitter
6
-
7
- def self.send_command(message_byte_array, message_byte_array_len)
8
- message = FFI::MemoryPointer.new(:uchar, message_byte_array_len, true)
9
- message.put_array_of_uchar(0, message_byte_array)
10
- response_byte_array_len = TransmitterWrapper.SendCommand(message, message_byte_array_len)
11
- if response_byte_array_len > 0
12
- response = FFI::MemoryPointer.new(:uchar, response_byte_array_len, true)
13
- TransmitterWrapper.ReadResponse(response, response_byte_array_len)
14
- response_byte_array = response.get_array_of_uchar(0, response_byte_array_len)
15
- return response_byte_array
16
- elsif response_byte_array_len == 0
17
- error_message = "Response is empty"
18
- raise Exception.new error_message
19
- else
20
- error_message = get_native_error
21
- raise Exception.new "Javonet native error code: " + response_byte_array_len.to_s + ". " + error_message
22
- end
23
- end
24
-
25
- def self.activate(license_key)
26
- activation_result = TransmitterWrapper.Activate(license_key)
27
- if activation_result < 0
28
- error_message = get_native_error
29
- raise Exception.new "Javonet activation result: " + activation_result.to_s + ". Native error message: " + error_message
30
- else
31
- return activation_result
32
- end
33
- end
34
-
35
- def self.get_native_error
36
- TransmitterWrapper.GetNativeError
37
- end
38
-
39
- def self.set_config_source(config_path)
40
- set_config_result = TransmitterWrapper.SetConfigSource(config_path)
41
- if set_config_result < 0
42
- error_message = get_native_error
43
- raise Exception.new "Javonet set config source result: " + set_config_result.to_s + ". Native error message: " + error_message
44
- else
45
- return set_config_result
46
- end
47
- end
48
-
49
- def self.set_javonet_working_directory(config_path)
50
- set_working_directory_result = TransmitterWrapper.SetWorkingDirectory(config_path)
51
- if set_working_directory_result < 0
52
- error_message = get_native_error
53
- raise Exception.new "Javonet set working directory result: " + set_working_directory_result.to_s + ". Native error message: " + error_message
54
- else
55
- return set_working_directory_result
56
- end
57
- end
58
- end
@@ -1,32 +0,0 @@
1
- module TransmitterWrapper
2
- extend FFI::Library
3
-
4
- arch = case FFI::Platform::ARCH
5
- when 'x86_64'
6
- 'X64'
7
- when 'x86'
8
- 'X86'
9
- when 'arm'
10
- 'ARM'
11
- when 'aarch64'
12
- 'ARM64'
13
- else
14
- raise "Unsupported architecture: #{FFI::Platform::ARCH}"
15
- end
16
-
17
- if OS.linux?
18
- ffi_lib File.expand_path("../../../Binaries/Native/Linux/#{arch}/libJavonetRubyRuntimeNative.so", __FILE__)
19
- elsif OS.mac?
20
- ffi_lib File.expand_path("../../../Binaries/Native/MacOs/#{arch}/libJavonetRubyRuntimeNative.dylib", __FILE__)
21
- else
22
- RubyInstaller::Runtime.add_dll_directory(File.expand_path("../../../Binaries/Native/Windows/#{arch}/", __FILE__))
23
- ffi_lib File.expand_path("../../../Binaries/Native/Windows/#{arch}/JavonetRubyRuntimeNative.dll", __FILE__)
24
- end
25
-
26
- attach_function :SendCommand, [:pointer, :int], :int
27
- attach_function :ReadResponse, [:pointer, :int], :int
28
- attach_function :Activate, [:pointer], :int
29
- attach_function :GetNativeError, [], :string
30
- attach_function :SetConfigSource, [:pointer], :int
31
- attach_function :SetWorkingDirectory, [:pointer], :int
32
- end
@@ -1,42 +0,0 @@
1
- class TypeCache
2
- attr_accessor :type_cache
3
-
4
- def self.instance
5
- @instance ||= new
6
- end
7
-
8
- private_class_method :new
9
-
10
- def initialize
11
- @type_cache = []
12
- end
13
-
14
- def cache_type(type_regex)
15
- @type_cache << type_regex
16
- end
17
-
18
- def is_type_cache_empty?
19
- @type_cache.empty?
20
- end
21
-
22
- def is_type_allowed(type_to_check)
23
- name_to_check = if type_to_check.is_a?(Module)
24
- type_to_check.name
25
- else
26
- "#{type_to_check.class.name}::#{type_to_check.name}"
27
- end
28
-
29
- @type_cache.any? do |pattern|
30
- /#{pattern}/.match?(name_to_check)
31
- end
32
- end
33
-
34
- def get_cached_types
35
- @type_cache
36
- end
37
-
38
- def clear_cache
39
- @type_cache.clear
40
- 0
41
- end
42
- end
@@ -1,108 +0,0 @@
1
- require 'websocket'
2
- require 'uri'
3
-
4
- class WebSocketClient
5
- def initialize(url)
6
- @uri = URI.parse(url)
7
- raise "Only ws:// or wss:// URLs are supported" unless %w[ws wss].include?(@uri.scheme)
8
-
9
- @host = @uri.host
10
- @port = @uri.port || default_port
11
- @path = @uri.path.empty? ? '/' : @uri.path
12
- @path += "?#{@uri.query}" if @uri.query
13
-
14
- @socket = open_socket
15
- @handshake = WebSocket::Handshake::Client.new(
16
- url: url
17
- )
18
-
19
- perform_handshake
20
- end
21
-
22
- def send_message(message)
23
- frame = WebSocket::Frame::Outgoing::Client.new(version: @handshake.version, data: message.pack("C*"), type: :binary)
24
- @socket.write(frame.to_s)
25
- end
26
-
27
- def receive_message(timeout: 5)
28
- buffer = ''
29
- start_time = Time.now
30
-
31
- while Time.now - start_time < timeout
32
- if IO.select([@socket], nil, nil, 0.1)
33
- chunk = @socket.read_nonblock(1024, exception: false)
34
- break if chunk.nil?
35
-
36
- buffer << chunk
37
- frame = WebSocket::Frame::Incoming::Client.new(version: @handshake.version)
38
- frame << buffer
39
- data = frame.next
40
- return data.data.bytes if data
41
- end
42
- end
43
-
44
- nil
45
- end
46
-
47
- def self.add_or_get_client(url)
48
- @@clients ||= {}
49
- client = @@clients[url]
50
- if client.nil? || !client.open?
51
- client&.close
52
- client = new(url)
53
- @@clients[url] = client
54
- end
55
- client
56
- end
57
-
58
- def self.send_message(url, message)
59
- client = add_or_get_client(url)
60
- client.send_message(message)
61
- client.receive_message
62
- end
63
-
64
- def open?
65
- !@socket.closed?
66
- end
67
-
68
- def close
69
- frame = WebSocket::Frame::Outgoing::Client.new(version: @handshake.version, type: :close)
70
- @socket.write(frame.to_s)
71
- @socket.close
72
- end
73
-
74
- private
75
-
76
- def default_port
77
- @uri.scheme == 'wss' ? 443 : 80
78
- end
79
-
80
- def open_socket
81
- tcp = TCPSocket.new(@host, @port)
82
-
83
- if @uri.scheme == 'wss'
84
- ssl_context = OpenSSL::SSL::SSLContext.new
85
- ssl_context.verify_mode = OpenSSL::SSL::VERIFY_NONE
86
- ssl = OpenSSL::SSL::SSLSocket.new(tcp, ssl_context)
87
- ssl.sync_close = true
88
- ssl.hostname = @host
89
- ssl.connect
90
- ssl
91
- else
92
- tcp
93
- end
94
- end
95
-
96
- def perform_handshake
97
- @socket.write(@handshake.to_s)
98
-
99
- until @handshake.finished?
100
- line = @socket.gets
101
- break if line.nil?
102
-
103
- @handshake << line
104
- end
105
-
106
- raise "WebSocket handshake failed!" unless @handshake.valid?
107
- end
108
- end