javonet-ruby-sdk 2.6.10 → 2.6.12

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 (434) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -4
  3. data/README.md +1 -1
  4. data/Rakefile +38 -30
  5. data/VERSION +1 -1
  6. data/javonet-ruby-sdk.gemspec +38 -38
  7. data/lib/javonet-ruby-sdk/Binaries/Clr/Javonet.Clr.Utils.dll +0 -0
  8. data/lib/javonet-ruby-sdk/Binaries/Clr/JavonetClrRuntime.dll +0 -0
  9. data/lib/javonet-ruby-sdk/Binaries/Jvm/JavonetJvmRuntime.jar +0 -0
  10. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libConfigs.so +0 -0
  11. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetActivationService.so +0 -0
  12. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetCppRuntimeNative.so +0 -0
  13. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetGoRuntimeNative.so +0 -0
  14. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetJvmRuntimeNative.so +0 -0
  15. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetNetcoreRuntimeNative.so +0 -0
  16. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetPhpRuntimeNative.so +0 -0
  17. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetPythonRuntimeNative.so +0 -0
  18. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetRubyRuntimeNative.so +0 -0
  19. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetTcpClient.so +0 -0
  20. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libJavonetTcpTlsClient.so +0 -0
  21. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/libUtils.so +0 -0
  22. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/ARM64/version.txt +1 -1
  23. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libConfigs.so +0 -0
  24. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetActivationService.so +0 -0
  25. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetCppRuntimeNative.so +0 -0
  26. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetGoRuntimeNative.so +0 -0
  27. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetJvmRuntimeNative.so +0 -0
  28. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNetcoreRuntimeNative.so +0 -0
  29. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs2218RuntimeNative.so +0 -0
  30. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejsRuntimeNative.so +0 -0
  31. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPerl534RuntimeNative.so +0 -0
  32. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPerlRuntimeNative.so +0 -0
  33. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPhp848RuntimeNative.so +0 -0
  34. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPhpRuntimeNative.so +0 -0
  35. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPython2RuntimeNative.so +0 -0
  36. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPythonRuntimeNative.so +0 -0
  37. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRubyRuntimeNative.so +0 -0
  38. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetTcpClient.so +0 -0
  39. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetTcpTlsClient.so +0 -0
  40. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libUtils.so +0 -0
  41. data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/version.txt +1 -1
  42. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libConfigs.dylib +0 -0
  43. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetActivationService.dylib +0 -0
  44. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetCppRuntimeNative.dylib +0 -0
  45. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetGoRuntimeNative.dylib +0 -0
  46. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetJvmRuntimeNative.dylib +0 -0
  47. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetNetcoreRuntimeNative.dylib +0 -0
  48. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetPythonRuntimeNative.dylib +0 -0
  49. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetRubyRuntimeNative.dylib +0 -0
  50. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetTcpClient.dylib +0 -0
  51. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libJavonetTcpTlsClient.dylib +0 -0
  52. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/libUtils.dylib +0 -0
  53. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/ARM64/version.txt +1 -1
  54. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libConfigs.dylib +0 -0
  55. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetActivationService.dylib +0 -0
  56. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetCppRuntimeNative.dylib +0 -0
  57. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetGoRuntimeNative.dylib +0 -0
  58. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetJvmRuntimeNative.dylib +0 -0
  59. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNetcoreRuntimeNative.dylib +0 -0
  60. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejs2218RuntimeNative.dylib +0 -0
  61. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
  62. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPerlRuntimeNative.dylib +0 -0
  63. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPhp848RuntimeNative.dylib +0 -0
  64. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPhpRuntimeNative.dylib +0 -0
  65. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPythonRuntimeNative.dylib +0 -0
  66. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRubyRuntimeNative.dylib +0 -0
  67. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetTcpClient.dylib +0 -0
  68. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetTcpTlsClient.dylib +0 -0
  69. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
  70. data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/version.txt +1 -1
  71. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/Configs.dll +0 -0
  72. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetActivationService.dll +0 -0
  73. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetCppRuntimeNative.dll +0 -0
  74. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetGoRuntimeNative.dll +0 -0
  75. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetJvmRuntimeNative.dll +0 -0
  76. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetNetcoreRuntimeNative.dll +0 -0
  77. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetPhpRuntimeNative.dll +0 -0
  78. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetPythonRuntimeNative.dll +0 -0
  79. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetRubyRuntimeNative.dll +0 -0
  80. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetTcpClient.dll +0 -0
  81. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/JavonetTcpTlsClient.dll +0 -0
  82. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/Utils.dll +0 -0
  83. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/version.txt +0 -0
  84. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/Configs.dll +0 -0
  85. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetActivationService.dll +0 -0
  86. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
  87. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
  88. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
  89. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
  90. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
  91. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejs2218RuntimeNative.dll +0 -0
  92. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
  93. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
  94. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPhp848RuntimeNative.dll +0 -0
  95. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPhpRuntimeNative.dll +0 -0
  96. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPython2RuntimeNative.dll +0 -0
  97. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
  98. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
  99. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpClient.dll +0 -0
  100. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetTcpTlsClient.dll +0 -0
  101. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/Utils.dll +0 -0
  102. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/version.txt +1 -1
  103. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/Configs.dll +0 -0
  104. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetActivationService.dll +0 -0
  105. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetClrRuntimeNative.dll +0 -0
  106. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetCppRuntimeNative.dll +0 -0
  107. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetGoRuntimeNative.dll +0 -0
  108. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetJvmRuntimeNative.dll +0 -0
  109. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetNetcoreRuntimeNative.dll +0 -0
  110. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPhpRuntimeNative.dll +0 -0
  111. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPython2RuntimeNative.dll +0 -0
  112. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetPythonRuntimeNative.dll +0 -0
  113. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpClient.dll +0 -0
  114. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/JavonetTcpTlsClient.dll +0 -0
  115. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/Utils.dll +0 -0
  116. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/version.txt +1 -1
  117. data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Core.dll +0 -0
  118. data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Plugins.dll +0 -0
  119. data/lib/javonet-ruby-sdk/Binaries/Netcore/Javonet.Netcore.Utils.dll +0 -0
  120. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/handler/Handler.cjs +12 -10
  121. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/handler/PassDelegateHandler.cjs +13 -5
  122. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/interpreter/Interpreter.cjs +4 -13
  123. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/protocol/CommandDeserializer.cjs +1 -1
  124. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/protocol/CommandSerializer.cjs +5 -5
  125. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/core/receiver/Receiver.cjs +4 -7
  126. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/sdk/InvocationContext.cjs +6 -18
  127. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/sdk/Javonet.cjs +3 -1
  128. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/sdk/RuntimeContext.cjs +29 -11
  129. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/sdk/RuntimeFactory.cjs +0 -22
  130. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/handler/Handler.d.ts +11 -11
  131. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/handler/PassDelegateHandler.d.ts +0 -5
  132. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/interpreter/Interpreter.d.ts +2 -7
  133. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/protocol/CommandSerializer.d.ts +2 -2
  134. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/core/receiver/Receiver.d.ts +0 -1
  135. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/sdk/Javonet.d.ts +2 -2
  136. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/sdk/RuntimeContext.d.ts +8 -3
  137. data/lib/javonet-ruby-sdk/Binaries/Nodejs/dist/types/sdk/RuntimeFactory.d.ts +0 -8
  138. 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
  139. 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
  140. 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
  141. 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
  142. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
  143. 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
  144. 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
  145. 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
  146. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
  147. 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
  148. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +96 -96
  149. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Exception/SdkExceptionHelper.pm +3 -3
  150. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/PerlHandler.pm +1 -1
  151. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +6 -14
  152. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +198 -136
  153. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +64 -54
  154. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +11 -12
  155. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +17 -20
  156. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Receiver/Receiver.pm +4 -3
  157. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +166 -54
  158. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -2
  159. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -1
  160. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-events.bat +0 -0
  161. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-highlight.bat +0 -0
  162. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load-dump.bat +0 -0
  163. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load.bat +0 -0
  164. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-parse-emit.bat +0 -0
  165. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
  166. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
  167. 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
  168. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
  169. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
  170. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +26 -26
  171. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Exception/SdkExceptionHelper.pm +3 -3
  172. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/PerlHandler.pm +1 -1
  173. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +6 -14
  174. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +198 -136
  175. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +64 -54
  176. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +11 -12
  177. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +17 -20
  178. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Receiver/Receiver.pm +4 -3
  179. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +166 -54
  180. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -2
  181. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -1
  182. data/lib/javonet-ruby-sdk/Binaries/Php/composer.json +6 -5
  183. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/handler/AbstractHandler.php +1 -2
  184. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/handler/Handler.php +74 -58
  185. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/handler/LoadLibraryHandler.php +110 -0
  186. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/interpreter/Interpreter.php +25 -23
  187. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/protocol/CommandSerializer.php +5 -5
  188. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/receiver/Receiver.php +7 -4
  189. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/webSocketClient/WebSocketClient.php +77 -35
  190. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/Command.php +86 -22
  191. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/DynamicMethodFactory.php +1 -2
  192. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/ExceptionSerializer.php +15 -1
  193. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/RuntimeNameHandler.php +32 -0
  194. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/UtilsConst.php +6 -3
  195. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/IConnectionData.php +1 -1
  196. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/InMemoryConnectionData.php +1 -1
  197. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/TcpConnectionData.php +6 -1
  198. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/WsConnectionData.php +1 -1
  199. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/callback/callbackFunc.py +4 -4
  200. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/Handler.py +72 -52
  201. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/PassDelegateHandler.py +1 -1
  202. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/Interpreter.py +13 -13
  203. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/CommandDeserializer.py +143 -155
  204. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/CommandSerializer.py +7 -5
  205. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/Receiver.py +64 -21
  206. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/Command.py +114 -45
  207. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/callback/callbackFunc.py +2 -3
  208. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/ArrayGetItemHandler.py +3 -6
  209. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/ArraySetItemHandler.py +24 -3
  210. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/GetKwargHandler.py +5 -0
  211. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/Handler.py +30 -12
  212. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/InvokeDelegateHandler.py +2 -2
  213. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/InvokeGlobalFunctionHandler.py +2 -2
  214. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/interpreter/Interpreter.py +9 -9
  215. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/protocol/CommandDeserializer.py +137 -180
  216. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/protocol/CommandSerializer.py +32 -28
  217. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/receiver/Receiver.py +11 -10
  218. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/utils/Command.py +89 -24
  219. data/lib/javonet-ruby-sdk/Binaries/version.txt +1 -1
  220. data/lib/javonet-ruby-sdk/core/handler/abstract_command_handler.rb +23 -23
  221. data/lib/javonet-ruby-sdk/core/handler/abstract_handler.rb +4 -4
  222. data/lib/javonet-ruby-sdk/core/handler/add_event_listener_handler.rb +12 -12
  223. data/lib/javonet-ruby-sdk/core/handler/array_get_item_handler.rb +47 -47
  224. data/lib/javonet-ruby-sdk/core/handler/array_get_rank_handler.rb +22 -22
  225. data/lib/javonet-ruby-sdk/core/handler/array_get_size_handler.rb +36 -36
  226. data/lib/javonet-ruby-sdk/core/handler/array_handler.rb +12 -12
  227. data/lib/javonet-ruby-sdk/core/handler/array_reference_handler.rb +12 -12
  228. data/lib/javonet-ruby-sdk/core/handler/array_set_item_handler.rb +46 -46
  229. data/lib/javonet-ruby-sdk/core/handler/as_kwargs_handler.rb +12 -12
  230. data/lib/javonet-ruby-sdk/core/handler/as_out_handler.rb +12 -12
  231. data/lib/javonet-ruby-sdk/core/handler/as_ref_handler.rb +11 -11
  232. data/lib/javonet-ruby-sdk/core/handler/casting_handler.rb +11 -11
  233. data/lib/javonet-ruby-sdk/core/handler/convert_type_handler.rb +11 -11
  234. data/lib/javonet-ruby-sdk/core/handler/create_class_instance_handler.rb +34 -34
  235. data/lib/javonet-ruby-sdk/core/handler/create_null_handler.rb +12 -12
  236. data/lib/javonet-ruby-sdk/core/handler/destruct_reference_handler.rb +20 -20
  237. data/lib/javonet-ruby-sdk/core/handler/enable_namespace_handler.rb +30 -30
  238. data/lib/javonet-ruby-sdk/core/handler/enable_type_handler.rb +32 -32
  239. data/lib/javonet-ruby-sdk/core/handler/exception_handler.rb +12 -12
  240. data/lib/javonet-ruby-sdk/core/handler/generate_lib_handler.rb +12 -12
  241. data/lib/javonet-ruby-sdk/core/handler/get_async_operation_result_handler.rb +12 -12
  242. data/lib/javonet-ruby-sdk/core/handler/get_enum_item_handler.rb +12 -12
  243. data/lib/javonet-ruby-sdk/core/handler/get_enum_name_handler.rb +12 -12
  244. data/lib/javonet-ruby-sdk/core/handler/get_enum_value_handler.rb +12 -12
  245. data/lib/javonet-ruby-sdk/core/handler/get_global_field_handler.rb +11 -11
  246. data/lib/javonet-ruby-sdk/core/handler/get_instance_field_handler.rb +34 -34
  247. data/lib/javonet-ruby-sdk/core/handler/get_instance_method_as_delegate_handler.rb +11 -11
  248. data/lib/javonet-ruby-sdk/core/handler/get_module_handler.rb +11 -11
  249. data/lib/javonet-ruby-sdk/core/handler/get_ref_value_handler.rb +11 -11
  250. data/lib/javonet-ruby-sdk/core/handler/get_result_type_handler.rb +12 -12
  251. data/lib/javonet-ruby-sdk/core/handler/get_static_field_handler.rb +34 -34
  252. data/lib/javonet-ruby-sdk/core/handler/get_static_method_as_delegate_handler.rb +11 -11
  253. data/lib/javonet-ruby-sdk/core/handler/get_type_handler.rb +70 -71
  254. data/lib/javonet-ruby-sdk/core/handler/handler.rb +227 -225
  255. data/lib/javonet-ruby-sdk/core/handler/handler_dictionary.rb +7 -7
  256. data/lib/javonet-ruby-sdk/core/handler/heartbeat_handler.rb +12 -12
  257. data/lib/javonet-ruby-sdk/core/handler/invoke_delegate_handler.rb +12 -12
  258. data/lib/javonet-ruby-sdk/core/handler/invoke_generic_method_handler.rb +11 -11
  259. data/lib/javonet-ruby-sdk/core/handler/invoke_generic_static_method_handler.rb +12 -12
  260. data/lib/javonet-ruby-sdk/core/handler/invoke_global_function_handler.rb +45 -45
  261. data/lib/javonet-ruby-sdk/core/handler/invoke_instance_method_handler.rb +35 -35
  262. data/lib/javonet-ruby-sdk/core/handler/invoke_static_method_handler.rb +38 -38
  263. data/lib/javonet-ruby-sdk/core/handler/load_library_handler.rb +49 -49
  264. data/lib/javonet-ruby-sdk/core/handler/optimize_handler.rb +12 -12
  265. data/lib/javonet-ruby-sdk/core/handler/pass_delegate_handler.rb +11 -11
  266. data/lib/javonet-ruby-sdk/core/handler/plugin_wrapper_handler.rb +12 -12
  267. data/lib/javonet-ruby-sdk/core/handler/register_for_update_handler.rb +28 -28
  268. data/lib/javonet-ruby-sdk/core/handler/resolve_instance_handler.rb +29 -29
  269. data/lib/javonet-ruby-sdk/core/handler/retrieve_array_handler.rb +12 -12
  270. data/lib/javonet-ruby-sdk/core/handler/set_instance_field_handler.rb +35 -35
  271. data/lib/javonet-ruby-sdk/core/handler/set_static_field_handler.rb +31 -31
  272. data/lib/javonet-ruby-sdk/core/handler/value_for_update_handler.rb +11 -11
  273. data/lib/javonet-ruby-sdk/core/handler/value_handler.rb +6 -6
  274. data/lib/javonet-ruby-sdk/core/interpreter/interpreter.rb +26 -28
  275. data/lib/javonet-ruby-sdk/core/namespace_cache/namespace_cache.rb +42 -42
  276. data/lib/javonet-ruby-sdk/core/protocol/command_deserializer.rb +184 -184
  277. data/lib/javonet-ruby-sdk/core/protocol/command_serializer.rb +36 -36
  278. data/lib/javonet-ruby-sdk/core/protocol/type_deserializer.rb +65 -65
  279. data/lib/javonet-ruby-sdk/core/protocol/type_serializer.rb +120 -120
  280. data/lib/javonet-ruby-sdk/core/receiver/{receiver_new.rb → receiver.rb} +38 -42
  281. data/lib/javonet-ruby-sdk/core/reference_cache/references_cache.rb +39 -39
  282. data/lib/javonet-ruby-sdk/core/transmitter/transmitter.rb +58 -58
  283. data/lib/javonet-ruby-sdk/core/transmitter/transmitter_wrapper.rb +31 -31
  284. data/lib/javonet-ruby-sdk/core/type_cache/type_cache.rb +41 -41
  285. data/lib/javonet-ruby-sdk/core/web_socket_client/web_socket_client.rb +228 -228
  286. data/lib/javonet-ruby-sdk/sdk/config_runtime_factory.rb +132 -132
  287. data/lib/javonet-ruby-sdk/sdk/configuration/config.rb +32 -0
  288. data/lib/javonet-ruby-sdk/sdk/configuration/config_priority.rb +27 -0
  289. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/config_resolver.rb +80 -0
  290. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/connection_string_config_resolver.rb +89 -0
  291. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/json_config_resolver.rb +66 -0
  292. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/yaml_config_resolver.rb +77 -0
  293. data/lib/javonet-ruby-sdk/sdk/configuration/config_source_resolver.rb +70 -0
  294. data/lib/javonet-ruby-sdk/sdk/configuration/configs_dictionary.rb +48 -0
  295. data/lib/javonet-ruby-sdk/sdk/internal/abstract_config_runtime_factory.rb +33 -33
  296. data/lib/javonet-ruby-sdk/sdk/internal/abstract_invocation_context.rb +70 -70
  297. data/lib/javonet-ruby-sdk/sdk/internal/abstract_runtime_context.rb +10 -10
  298. data/lib/javonet-ruby-sdk/sdk/internal/abstract_runtime_factory.rb +37 -37
  299. data/lib/javonet-ruby-sdk/sdk/internal/invocation_context_iterator.rb +27 -27
  300. data/lib/javonet-ruby-sdk/sdk/invocation_context.rb +314 -319
  301. data/lib/javonet-ruby-sdk/sdk/javonet.rb +132 -106
  302. data/lib/javonet-ruby-sdk/sdk/runtime_context.rb +259 -218
  303. data/lib/javonet-ruby-sdk/sdk/runtime_factory.rb +78 -78
  304. data/lib/javonet-ruby-sdk/sdk/tools/activation_helper.rb +37 -37
  305. data/lib/javonet-ruby-sdk/sdk/tools/json_file_resolver.rb +62 -62
  306. data/lib/javonet-ruby-sdk/sdk/tools/sdk_message_helper.rb +71 -71
  307. data/lib/javonet-ruby-sdk/utils/command.rb +79 -93
  308. data/lib/javonet-ruby-sdk/utils/command_type.rb +154 -154
  309. data/lib/javonet-ruby-sdk/utils/connection_type.rb +5 -5
  310. data/lib/javonet-ruby-sdk/utils/exceptions/exception_serializer.rb +116 -116
  311. data/lib/javonet-ruby-sdk/utils/exceptions/exception_thrower.rb +65 -65
  312. data/lib/javonet-ruby-sdk/utils/exceptions/exception_type.rb +10 -10
  313. data/lib/javonet-ruby-sdk/utils/os_helper.rb +21 -21
  314. data/lib/javonet-ruby-sdk/utils/runtime_logger.rb +46 -46
  315. data/lib/javonet-ruby-sdk/utils/runtime_name_handler.rb +71 -40
  316. data/lib/javonet-ruby-sdk/utils/runtime_name_javonet.rb +13 -13
  317. data/lib/javonet-ruby-sdk/utils/string_encoding_mode_javonet.rb +6 -6
  318. data/lib/javonet-ruby-sdk/utils/tcp_connection_data.rb +36 -36
  319. data/lib/javonet-ruby-sdk/utils/type.rb +15 -15
  320. data/lib/javonet-ruby-sdk/utils/types_handler.rb +10 -10
  321. data/lib/javonet-ruby-sdk/utils/ws_connection_data.rb +23 -19
  322. metadata +14 -117
  323. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libcrypto-3-arm64.dll +0 -0
  324. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libssl-3-arm64.dll +0 -0
  325. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxml2.dll +0 -0
  326. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxmlsec-openssl.dll +0 -0
  327. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxmlsec.dll +0 -0
  328. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxslt.dll +0 -0
  329. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libcrypto-3-x64.dll +0 -0
  330. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libssl-3-x64.dll +0 -0
  331. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxml2.dll +0 -0
  332. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxmlsec-openssl.dll +0 -0
  333. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxmlsec.dll +0 -0
  334. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxslt.dll +0 -0
  335. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libcrypto-3.dll +0 -0
  336. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libssl-3.dll +0 -0
  337. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxml2.dll +0 -0
  338. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxmlsec-openssl.dll +0 -0
  339. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxmlsec.dll +0 -0
  340. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxslt.dll +0 -0
  341. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/__pycache__/__init__.cpython-312.pyc +0 -0
  342. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/delegateCache/__pycache__/DelegatesCache.cpython-312.pyc +0 -0
  343. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/delegateCache/__pycache__/__init__.cpython-312.pyc +0 -0
  344. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AbstractCommandHandler.cpython-312.pyc +0 -0
  345. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AbstractHandler.cpython-312.pyc +0 -0
  346. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AddEventListenerHandler.cpython-312.pyc +0 -0
  347. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayGetItemHandler.cpython-312.pyc +0 -0
  348. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayGetRankHandler.cpython-312.pyc +0 -0
  349. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayGetSizeHandler.cpython-312.pyc +0 -0
  350. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayHandler.cpython-312.pyc +0 -0
  351. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayReferenceHandler.cpython-312.pyc +0 -0
  352. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArraySetItemHandler.cpython-312.pyc +0 -0
  353. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AsOutHandler.cpython-312.pyc +0 -0
  354. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AsRefHandler.cpython-312.pyc +0 -0
  355. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/CastingHandler.cpython-312.pyc +0 -0
  356. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ConvertTypeHandler.cpython-312.pyc +0 -0
  357. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/CreateClassInstanceHandler.cpython-312.pyc +0 -0
  358. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/CreateNullHandler.cpython-312.pyc +0 -0
  359. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/DestructReferenceHandler.cpython-312.pyc +0 -0
  360. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/EnableNamespaceHandler.cpython-312.pyc +0 -0
  361. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/EnableTypeHandler.cpython-312.pyc +0 -0
  362. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ExceptionHandler.cpython-312.pyc +0 -0
  363. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GenerateLibHandler.cpython-312.pyc +0 -0
  364. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetAsyncOperationResultHandler.cpython-312.pyc +0 -0
  365. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetEnumItemHandler.cpython-312.pyc +0 -0
  366. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetEnumNameHandler.cpython-312.pyc +0 -0
  367. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetEnumValueHandler.cpython-312.pyc +0 -0
  368. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetGlobalFieldHandler.cpython-312.pyc +0 -0
  369. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetInstanceFieldHandler.cpython-312.pyc +0 -0
  370. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetInstanceMethodAsDelegateHandler.cpython-312.pyc +0 -0
  371. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetKwargHandler.cpython-312.pyc +0 -0
  372. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetModuleHandler.cpython-312.pyc +0 -0
  373. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetRefValueHandler.cpython-312.pyc +0 -0
  374. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetResultTypeHandler.cpython-312.pyc +0 -0
  375. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetStaticFieldHandler.cpython-312.pyc +0 -0
  376. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetStaticMethodAsDelegateHandler.cpython-312.pyc +0 -0
  377. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetTypeHandler.cpython-312.pyc +0 -0
  378. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/Handler.cpython-312.pyc +0 -0
  379. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/HandlerDictionary.cpython-312.pyc +0 -0
  380. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/HeartBeatHandler.cpython-312.pyc +0 -0
  381. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeDelegateHandler.cpython-312.pyc +0 -0
  382. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeGenericMethodHandler.cpython-312.pyc +0 -0
  383. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeGenericStaticMethodHandler.cpython-312.pyc +0 -0
  384. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeGlobalFunctionHandler.cpython-312.pyc +0 -0
  385. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeInstanceMethodHandler.cpython-312.pyc +0 -0
  386. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeStaticMethodHandler.cpython-312.pyc +0 -0
  387. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/LoadLibraryHandler.cpython-312.pyc +0 -0
  388. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/OptimizeHandler.cpython-312.pyc +0 -0
  389. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/PassDelegateHandler.cpython-312.pyc +0 -0
  390. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/PluginWrapperHandler.cpython-312.pyc +0 -0
  391. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/RegisterForUpdateHandler.cpython-312.pyc +0 -0
  392. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ResolveInstanceHandler.cpython-312.pyc +0 -0
  393. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/RetrieveArrayHandler.cpython-312.pyc +0 -0
  394. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/SetInstanceFieldHandler.cpython-312.pyc +0 -0
  395. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/SetStaticFieldHandler.cpython-312.pyc +0 -0
  396. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ValueForUpdateHandler.cpython-312.pyc +0 -0
  397. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ValueHandler.cpython-312.pyc +0 -0
  398. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/__init__.cpython-312.pyc +0 -0
  399. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/__pycache__/Interpreter.cpython-312.pyc +0 -0
  400. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/__pycache__/__init__.cpython-312.pyc +0 -0
  401. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/namespaceCache/__pycache__/NamespaceCache.cpython-312.pyc +0 -0
  402. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/namespaceCache/__pycache__/__init__.cpython-312.pyc +0 -0
  403. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/CommandDeserializer.cpython-312.pyc +0 -0
  404. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/CommandSerializer.cpython-312.pyc +0 -0
  405. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/TypeDeserializer.cpython-312.pyc +0 -0
  406. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/TypeSerializer.cpython-312.pyc +0 -0
  407. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/__init__.cpython-312.pyc +0 -0
  408. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/__pycache__/Receiver.cpython-312.pyc +0 -0
  409. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/__pycache__/__init__.cpython-312.pyc +0 -0
  410. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/referenceCache/__pycache__/ReferencesCache.cpython-312.pyc +0 -0
  411. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/referenceCache/__pycache__/__init__.cpython-312.pyc +0 -0
  412. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/typeCache/__pycache__/TypeCache.cpython-312.pyc +0 -0
  413. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/typeCache/__pycache__/__init__.cpython-312.pyc +0 -0
  414. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/Command.cpython-312.pyc +0 -0
  415. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/CommandType.cpython-312.pyc +0 -0
  416. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/ConnectionType.cpython-312.pyc +0 -0
  417. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/ExceptionType.cpython-312.pyc +0 -0
  418. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/LazyModuleLoader.cpython-312.pyc +0 -0
  419. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/RuntimeLogger.cpython-312.pyc +0 -0
  420. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/RuntimeName.cpython-312.pyc +0 -0
  421. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/StringEncodingMode.cpython-312.pyc +0 -0
  422. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/Type.cpython-312.pyc +0 -0
  423. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/TypesHandler.cpython-312.pyc +0 -0
  424. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/UtilsConst.cpython-312.pyc +0 -0
  425. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  426. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/IConnectionData.cpython-312.pyc +0 -0
  427. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/InMemoryConnectionData.cpython-312.pyc +0 -0
  428. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/__init__.cpython-312.pyc +0 -0
  429. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/ExceptionSerializer.cpython-312.pyc +0 -0
  430. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/ExceptionThrower.cpython-312.pyc +0 -0
  431. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/JavonetException.cpython-312.pyc +0 -0
  432. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/__init__.cpython-312.pyc +0 -0
  433. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/messageHelper/__pycache__/MessageHelper.cpython-312.pyc +0 -0
  434. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/messageHelper/__pycache__/__init__.cpython-312.pyc +0 -0
@@ -1,4 +1,4 @@
1
- =head2 Fri Nov 28 08:46:34 2025: C<Module> L<Data::Cmp|Data::Cmp>
1
+ =head2 Tue Dec 16 13:58:07 2025: C<Module> L<Want|Want>
2
2
 
3
3
  =over 4
4
4
 
@@ -12,7 +12,7 @@ C<LINKTYPE: dynamic>
12
12
 
13
13
  =item *
14
14
 
15
- C<VERSION: 0.010>
15
+ C<VERSION: 0.29>
16
16
 
17
17
  =item *
18
18
 
@@ -20,7 +20,7 @@ C<EXE_FILES: >
20
20
 
21
21
  =back
22
22
 
23
- =head2 Fri Nov 28 08:46:37 2025: C<Module> L<Test::Fatal|Test::Fatal>
23
+ =head2 Tue Dec 16 13:58:12 2025: C<Module> L<Safe::Isa|Safe::Isa>
24
24
 
25
25
  =over 4
26
26
 
@@ -34,7 +34,7 @@ C<LINKTYPE: dynamic>
34
34
 
35
35
  =item *
36
36
 
37
- C<VERSION: 0.018>
37
+ C<VERSION: 1.000010>
38
38
 
39
39
  =item *
40
40
 
@@ -42,7 +42,7 @@ C<EXE_FILES: >
42
42
 
43
43
  =back
44
44
 
45
- =head2 Fri Nov 28 08:46:45 2025: C<Module> L<autobox|autobox>
45
+ =head2 Tue Dec 16 13:58:19 2025: C<Module> L<YAML::PP|YAML::PP>
46
46
 
47
47
  =over 4
48
48
 
@@ -56,15 +56,15 @@ C<LINKTYPE: dynamic>
56
56
 
57
57
  =item *
58
58
 
59
- C<VERSION: v3.0.2>
59
+ C<VERSION: v0.39.0>
60
60
 
61
61
  =item *
62
62
 
63
- C<EXE_FILES: >
63
+ C<EXE_FILES: bin/yamlpp-events bin/yamlpp-highlight bin/yamlpp-load bin/yamlpp-load-dump bin/yamlpp-parse-emit>
64
64
 
65
65
  =back
66
66
 
67
- =head2 Fri Nov 28 08:46:49 2025: C<Module> L<Scalar::Util::Numeric|Scalar::Util::Numeric>
67
+ =head2 Tue Dec 16 13:58:22 2025: C<Module> L<PPI|PPI>
68
68
 
69
69
  =over 4
70
70
 
@@ -78,7 +78,7 @@ C<LINKTYPE: dynamic>
78
78
 
79
79
  =item *
80
80
 
81
- C<VERSION: 0.40>
81
+ C<VERSION: 1.284>
82
82
 
83
83
  =item *
84
84
 
@@ -86,7 +86,7 @@ C<EXE_FILES: >
86
86
 
87
87
  =back
88
88
 
89
- =head2 Fri Nov 28 08:46:52 2025: C<Module> L<Attribute::Util|Attribute::Util>
89
+ =head2 Tue Dec 16 13:58:26 2025: C<Module> L<PPI::XS|PPI::XS>
90
90
 
91
91
  =over 4
92
92
 
@@ -100,7 +100,7 @@ C<LINKTYPE: dynamic>
100
100
 
101
101
  =item *
102
102
 
103
- C<VERSION: 1.07>
103
+ C<VERSION: 0.910>
104
104
 
105
105
  =item *
106
106
 
@@ -108,7 +108,7 @@ C<EXE_FILES: >
108
108
 
109
109
  =back
110
110
 
111
- =head2 Fri Nov 28 08:46:57 2025: C<Module> L<Want|Want>
111
+ =head2 Tue Dec 16 13:58:27 2025: C<Module> L<Nice::Try|Nice::Try>
112
112
 
113
113
  =over 4
114
114
 
@@ -122,7 +122,7 @@ C<LINKTYPE: dynamic>
122
122
 
123
123
  =item *
124
124
 
125
- C<VERSION: 0.29>
125
+ C<VERSION: v1.3.17>
126
126
 
127
127
  =item *
128
128
 
@@ -130,7 +130,7 @@ C<EXE_FILES: >
130
130
 
131
131
  =back
132
132
 
133
- =head2 Fri Nov 28 08:47:01 2025: C<Module> L<Safe::Isa|Safe::Isa>
133
+ =head2 Tue Dec 16 13:58:30 2025: C<Module> L<Test::Fatal|Test::Fatal>
134
134
 
135
135
  =over 4
136
136
 
@@ -144,7 +144,7 @@ C<LINKTYPE: dynamic>
144
144
 
145
145
  =item *
146
146
 
147
- C<VERSION: 1.000010>
147
+ C<VERSION: 0.018>
148
148
 
149
149
  =item *
150
150
 
@@ -152,7 +152,7 @@ C<EXE_FILES: >
152
152
 
153
153
  =back
154
154
 
155
- =head2 Fri Nov 28 08:47:08 2025: C<Module> L<YAML::PP|YAML::PP>
155
+ =head2 Tue Dec 16 13:58:34 2025: C<Module> L<autobox|autobox>
156
156
 
157
157
  =over 4
158
158
 
@@ -166,15 +166,15 @@ C<LINKTYPE: dynamic>
166
166
 
167
167
  =item *
168
168
 
169
- C<VERSION: v0.39.0>
169
+ C<VERSION: v3.0.2>
170
170
 
171
171
  =item *
172
172
 
173
- C<EXE_FILES: bin/yamlpp-events bin/yamlpp-highlight bin/yamlpp-load bin/yamlpp-load-dump bin/yamlpp-parse-emit>
173
+ C<EXE_FILES: >
174
174
 
175
175
  =back
176
176
 
177
- =head2 Fri Nov 28 08:47:11 2025: C<Module> L<PPI|PPI>
177
+ =head2 Tue Dec 16 13:58:38 2025: C<Module> L<Data::UUID|Data::UUID>
178
178
 
179
179
  =over 4
180
180
 
@@ -188,7 +188,7 @@ C<LINKTYPE: dynamic>
188
188
 
189
189
  =item *
190
190
 
191
- C<VERSION: 1.284>
191
+ C<VERSION: 1.227>
192
192
 
193
193
  =item *
194
194
 
@@ -196,7 +196,7 @@ C<EXE_FILES: >
196
196
 
197
197
  =back
198
198
 
199
- =head2 Fri Nov 28 08:47:15 2025: C<Module> L<PPI::XS|PPI::XS>
199
+ =head2 Tue Dec 16 13:58:42 2025: C<Module> L<Scalar::Util::Numeric|Scalar::Util::Numeric>
200
200
 
201
201
  =over 4
202
202
 
@@ -210,7 +210,7 @@ C<LINKTYPE: dynamic>
210
210
 
211
211
  =item *
212
212
 
213
- C<VERSION: 0.910>
213
+ C<VERSION: 0.40>
214
214
 
215
215
  =item *
216
216
 
@@ -218,7 +218,7 @@ C<EXE_FILES: >
218
218
 
219
219
  =back
220
220
 
221
- =head2 Fri Nov 28 08:47:16 2025: C<Module> L<Nice::Try|Nice::Try>
221
+ =head2 Tue Dec 16 13:58:45 2025: C<Module> L<Data::Cmp|Data::Cmp>
222
222
 
223
223
  =over 4
224
224
 
@@ -232,7 +232,7 @@ C<LINKTYPE: dynamic>
232
232
 
233
233
  =item *
234
234
 
235
- C<VERSION: v1.3.17>
235
+ C<VERSION: 0.010>
236
236
 
237
237
  =item *
238
238
 
@@ -240,7 +240,7 @@ C<EXE_FILES: >
240
240
 
241
241
  =back
242
242
 
243
- =head2 Fri Nov 28 08:47:21 2025: C<Module> L<Data::UUID|Data::UUID>
243
+ =head2 Tue Dec 16 13:58:47 2025: C<Module> L<Attribute::Util|Attribute::Util>
244
244
 
245
245
  =over 4
246
246
 
@@ -254,7 +254,7 @@ C<LINKTYPE: dynamic>
254
254
 
255
255
  =item *
256
256
 
257
- C<VERSION: 1.227>
257
+ C<VERSION: 1.07>
258
258
 
259
259
  =item *
260
260
 
@@ -40,7 +40,7 @@ sub send_exception_to_app_insights {
40
40
  }
41
41
  catch ( $e ) {
42
42
  $javonet_version = "2.0.0";
43
- }
43
+ };
44
44
 
45
45
  my $node_name = eval {hostname()} || "Unknown Host";
46
46
 
@@ -86,8 +86,8 @@ sub send_exception_to_app_insights {
86
86
  return $response_code;
87
87
  }
88
88
  catch ( $e ) {
89
- return Exception->new($e);
89
+ return 500;
90
90
  }
91
91
  }
92
92
 
93
- 1;
93
+ 1;
@@ -135,7 +135,7 @@ Javonet::Core::Handler::HandlerDictionary::add_handler_to_dict(
135
135
  );
136
136
 
137
137
  sub handle_command {
138
- my ($self, $command) = @_;
138
+ my ($class, $command) = @_;
139
139
  my $response = Javonet::Core::Handler::HandlerDictionary::get_handler($command->{command_type})->handle_command($command);
140
140
 
141
141
  if (TypesHandler->is_primitive_or_none($response)) {
@@ -9,13 +9,8 @@ use aliased 'Javonet::Core::Protocol::CommandDeserializer' => 'CommandDeserializ
9
9
  use Exporter qw(import);
10
10
  our @EXPORT = qw(execute_ process);
11
11
 
12
- my $handler = PerlHandler->new();
13
-
14
12
  sub execute_ {
15
- my $self = shift;
16
- my $command = shift;
17
- my $connection_type = shift;
18
- my $tcp_address = shift;
13
+ my ($class, $command, $connection_type, $tcp_address) = @_;
19
14
  my @serialized_command = Javonet::Core::Protocol::CommandSerializer->serialize($command, $connection_type, $tcp_address, 0);
20
15
  my $response_byte_array_ref;
21
16
  if ($command->{runtime} eq Javonet::Sdk::Core::RuntimeLib::get_runtime('Perl')) {
@@ -26,18 +21,15 @@ sub execute_ {
26
21
  $response_byte_array_ref = Javonet::Core::Transmitter::PerlTransmitter->t_send_command(\@serialized_command);
27
22
  }
28
23
 
29
- my $commandDeserializer = CommandDeserializer->new($response_byte_array_ref);
30
- return $commandDeserializer->decode();
24
+ return CommandDeserializer->deserialize($response_byte_array_ref);
31
25
  }
32
26
 
33
27
  sub process {
34
- my ($self, $message_byte_array_ref) = @_;
28
+ my ($class, $message_byte_array_ref) = @_;
35
29
  my @message_byte_array = @$message_byte_array_ref;
36
- my $commandDeserializer = CommandDeserializer->new(\@message_byte_array);
37
- my $command = $commandDeserializer->decode();
38
- my $response = $handler->handle_command($command);
39
- my $commandSerializer = CommandSerializer->new();
40
- my @response_byte_array = $commandSerializer->serialize($response, 0, 0, 0);
30
+ my $command = CommandDeserializer->deserialize(\@message_byte_array);
31
+ my $response = PerlHandler->handle_command($command);
32
+ my @response_byte_array = CommandSerializer->serialize($response, 0, 0, 0);
41
33
  return @response_byte_array;
42
34
  }
43
35
 
@@ -1,204 +1,266 @@
1
1
  package Javonet::Core::Protocol::CommandDeserializer;
2
2
  use strict;
3
3
  use warnings;
4
- use Moose;
5
4
  use lib 'lib';
6
5
  use aliased 'Javonet::Sdk::Core::PerlCommand' => 'PerlCommand';
7
6
  use aliased 'Javonet::Sdk::Core::Type' => 'Type', qw(get_type);
8
7
  use aliased 'Javonet::Core::Protocol::TypeDeserializer' => 'TypeDeserializer';
9
8
 
10
9
  use Exporter qw(import);
11
- our @EXPORT = qw(new isAtEnd decode readObject readCommand readCommandRecursively readString readInt readBool readFloat readByte readChar readLongLong readDouble readUnsignedLongLong readUnsignedInt readUndef);
12
-
13
- our $position = 0;
14
- our @buffer = [];
15
- our $command;
16
-
17
- sub new {
18
- my ($self, $array_ref) = @_;
19
- @buffer = @$array_ref;
20
- $command = PerlCommand->new(runtime => $buffer[0],
21
- command_type => $buffer[10], payload => []);
22
- $position = 11;
23
- return $self;
24
- }
25
-
26
- sub isAtEnd {
27
- my $length = @buffer;
28
- return $position == $length;
29
- }
10
+ our @EXPORT = qw(deserialize);
30
11
 
31
- sub decode {
32
- while (!isAtEnd()) {
33
- $command = $command->addArgumentToPayload([ readObject($buffer[$position]) ]);
12
+ # Static deserialize method
13
+ sub deserialize {
14
+ my ($class, $byte_array_ref) = @_;
15
+ my @buffer = ref $byte_array_ref eq 'ARRAY' ? @$byte_array_ref : @$byte_array_ref;
16
+ my $position = 11; # Start position after header
17
+
18
+ my $command = PerlCommand->new(
19
+ runtime => $buffer[0],
20
+ command_type => $buffer[10],
21
+ payload => []
22
+ );
23
+
24
+ # Use position reference to simulate ref parameter
25
+ my $position_ref = \$position;
26
+
27
+ while ($position < @buffer) {
28
+ $command = $command->AddArgToPayload(ReadObject(\@buffer, $position_ref));
34
29
  }
30
+
35
31
  return $command;
36
32
  }
37
33
 
38
- sub readObject {
39
- my $type_num = $_[0];
40
- if ($type_num == Type->get_type('Command')) {
41
- return readCommand();
34
+ # ReadObject
35
+ sub ReadObject {
36
+ my ($buffer_ref, $position_ref) = @_;
37
+ my @buffer = @$buffer_ref;
38
+ my $position = $$position_ref;
39
+
40
+ my $type = $buffer[$position];
41
+
42
+ if ($type == Type->get_type('Command')) {
43
+ return ReadCommand($buffer_ref, $position_ref);
42
44
  }
43
- elsif ($type_num == Type->get_type('JavonetString')) {
44
- return readString();
45
+ elsif ($type == Type->get_type('JavonetString')) {
46
+ return ReadString($buffer_ref, $position_ref);
45
47
  }
46
- elsif ($type_num == Type->get_type('JavonetInteger')) {
47
- return readInt();
48
+ elsif ($type == Type->get_type('JavonetInteger')) {
49
+ return ReadInt($buffer_ref, $position_ref);
48
50
  }
49
- elsif ($type_num == Type->get_type('JavonetBool')) {
50
- return readBool();
51
+ elsif ($type == Type->get_type('JavonetBool')) {
52
+ return ReadBool($buffer_ref, $position_ref);
51
53
  }
52
- elsif ($type_num == Type->get_type('JavonetFloat')) {
53
- return readFloat();
54
+ elsif ($type == Type->get_type('JavonetFloat')) {
55
+ return ReadFloat($buffer_ref, $position_ref);
54
56
  }
55
- elsif ($type_num == Type->get_type('JavonetByte')) {
56
- return readByte();
57
+ elsif ($type == Type->get_type('JavonetByte')) {
58
+ return ReadByte($buffer_ref, $position_ref);
57
59
  }
58
- elsif ($type_num == Type->get_type('JavonetChar')) {
59
- return readChar();
60
+ elsif ($type == Type->get_type('JavonetChar')) {
61
+ return ReadChar($buffer_ref, $position_ref);
60
62
  }
61
- elsif ($type_num == Type->get_type('JavonetLongLong')) {
62
- return readLongLong();
63
+ elsif ($type == Type->get_type('JavonetLongLong')) {
64
+ return ReadLong($buffer_ref, $position_ref);
63
65
  }
64
- elsif ($type_num == Type->get_type('JavonetDouble')) {
65
- return readDouble();
66
+ elsif ($type == Type->get_type('JavonetDouble')) {
67
+ return ReadDouble($buffer_ref, $position_ref);
66
68
  }
67
- elsif ($type_num == Type->get_type('JavonetUnsignedLongLong')) {
68
- return readUnsignedLongLong();
69
+ elsif ($type == Type->get_type('JavonetUnsignedLongLong')) {
70
+ return ReadULong($buffer_ref, $position_ref);
69
71
  }
70
- elsif ($type_num == Type->get_type('JavonetUnsignedInteger')) {
71
- return readUnsignedInt();
72
+ elsif ($type == Type->get_type('JavonetUnsignedInteger')) {
73
+ return ReadUInt($buffer_ref, $position_ref);
72
74
  }
73
- elsif ($type_num == Type->get_type('JavonetNull')) {
74
- return readUndef();
75
+ elsif ($type == Type->get_type('JavonetNull')) {
76
+ return ReadNull($buffer_ref, $position_ref);
75
77
  }
76
78
  else {
77
- die "Type is not supported: $type_num";
79
+ die "NotImplementedException: Type not supported: $type";
78
80
  }
79
81
  }
80
82
 
81
- sub readCommand {
82
- my $p = $position;
83
+ # ReadCommand
84
+ sub ReadCommand {
85
+ my ($buffer_ref, $position_ref) = @_;
86
+ my @buffer = @$buffer_ref;
87
+ my $p = $$position_ref;
88
+
89
+ # Read numberOfElements from bytes p+1 to p+4
83
90
  my @int_buffer = @buffer[$p + 1 .. $p + 4];
84
- my $numberOfArgumentInPayload = TypeDeserializer->deserializeInt(\@int_buffer);
91
+ my $numberOfElements = TypeDeserializer->deserializeInt(\@int_buffer);
92
+
85
93
  my $runtime = $buffer[$p + 5];
86
94
  my $commandType = $buffer[$p + 6];
87
-
88
- $position += 7;
89
- my $returnCommand = PerlCommand->new(runtime => $runtime, command_type => $commandType);
90
- return readCommandRecursively($numberOfArgumentInPayload, $returnCommand);
91
- }
92
-
93
- sub readCommandRecursively {
94
- my $numberOfArgumentInPayloadLeft = $_[0];
95
- my $cmd = $_[1];
96
-
97
- if ($numberOfArgumentInPayloadLeft == 0) {
98
- return $cmd;
99
- }
100
- else {
101
- my $p = $position;
102
- my @int_buffer = @buffer[$p + 1 .. $p + 4];
103
- my $argSize = TypeDeserializer->deserializeInt(\@int_buffer);
104
- $cmd = $cmd->addArgumentToPayload([ readObject($buffer[$p]) ]);
105
- return readCommandRecursively($numberOfArgumentInPayloadLeft - 1, $cmd);
95
+
96
+ $$position_ref += 7;
97
+
98
+ # Read all payload elements at once
99
+ my @payload = ();
100
+ for (my $i = 0; $i < $numberOfElements; $i++) {
101
+ push @payload, ReadObject($buffer_ref, $position_ref);
106
102
  }
103
+
104
+ return PerlCommand->new(
105
+ runtime => $runtime,
106
+ command_type => $commandType,
107
+ payload => \@payload
108
+ );
107
109
  }
108
110
 
109
- sub readString {
110
- my $p = $position;
111
- my $string_encoding_mode = $buffer[$p + 1];
111
+ # ReadString
112
+ sub ReadString {
113
+ my ($buffer_ref, $position_ref) = @_;
114
+ my @buffer = @$buffer_ref;
115
+ my $p = $$position_ref;
116
+
117
+ my $mode = $buffer[$p + 1];
112
118
  my @int_buffer = @buffer[$p + 2 .. $p + 5];
113
119
  my $size = TypeDeserializer->deserializeInt(\@int_buffer);
114
- $position += 6;
115
- $p = $position;
116
- $position += $size;
120
+
121
+ $$position_ref += 6;
122
+ $p = $$position_ref;
123
+ $$position_ref += $size;
124
+
117
125
  my @string_buffer = @buffer[$p .. $p + $size - 1];
118
- my $decodedString = TypeDeserializer->deserializeString($string_encoding_mode, \@string_buffer);
119
-
120
- return $decodedString
126
+ return TypeDeserializer->deserializeString($mode, \@string_buffer);
121
127
  }
122
128
 
123
- sub readInt {
124
- $position += 2;
125
- my $p = $position;
126
- $position += 4;
127
- my @int_buffer = @buffer[$p .. $p + 3];
129
+ # ReadInt
130
+ sub ReadInt {
131
+ my ($buffer_ref, $position_ref) = @_;
132
+ my @buffer = @$buffer_ref;
133
+ my $size = 4;
134
+
135
+ $$position_ref += 2;
136
+ my $p = $$position_ref;
137
+ $$position_ref += $size;
138
+
139
+ my @int_buffer = @buffer[$p .. $p + $size - 1];
128
140
  return TypeDeserializer->deserializeInt(\@int_buffer);
129
141
  }
130
142
 
131
- sub readBool {
132
- $position += 2;
133
- my $p = $position;
134
- $position += 1;
135
- my $bool_buffer = $buffer[$p];
136
- return TypeDeserializer->deserializeBool($bool_buffer);
143
+ # ReadBool
144
+ sub ReadBool {
145
+ my ($buffer_ref, $position_ref) = @_;
146
+ my @buffer = @$buffer_ref;
147
+ my $size = 1;
148
+
149
+ $$position_ref += 2;
150
+ my $p = $$position_ref;
151
+ $$position_ref += $size;
152
+
153
+ return TypeDeserializer->deserializeBool($buffer[$p]);
137
154
  }
138
155
 
139
- sub readFloat {
140
- $position += 2;
141
- my $p = $position;
142
- $position += 4;
143
- my @float_buffer = @buffer[$p .. $p + 3];
156
+ # ReadFloat
157
+ sub ReadFloat {
158
+ my ($buffer_ref, $position_ref) = @_;
159
+ my @buffer = @$buffer_ref;
160
+ my $size = 4;
161
+
162
+ $$position_ref += 2;
163
+ my $p = $$position_ref;
164
+ $$position_ref += $size;
165
+
166
+ my @float_buffer = @buffer[$p .. $p + $size - 1];
144
167
  return TypeDeserializer->deserializeFloat(\@float_buffer);
145
168
  }
146
169
 
147
- sub readByte {
148
- $position += 2;
149
- my $p = $position;
150
- $position += 1;
151
- my $byte_buffer = $buffer[$p];
152
- return TypeDeserializer->deserializeByte($byte_buffer);
170
+ # ReadByte
171
+ sub ReadByte {
172
+ my ($buffer_ref, $position_ref) = @_;
173
+ my @buffer = @$buffer_ref;
174
+ my $size = 1;
175
+
176
+ $$position_ref += 2;
177
+ my $p = $$position_ref;
178
+ $$position_ref += $size;
179
+
180
+ return TypeDeserializer->deserializeByte($buffer[$p]);
153
181
  }
154
182
 
155
- sub readChar {
156
- $position += 2;
157
- my $p = $position;
158
- $position += 1;
159
- my $char_buffer = $buffer[$p];
160
- return TypeDeserializer->deserializeChar($char_buffer);
183
+ # ReadChar
184
+ sub ReadChar {
185
+ my ($buffer_ref, $position_ref) = @_;
186
+ my @buffer = @$buffer_ref;
187
+ my $size = 1;
188
+
189
+ $$position_ref += 2;
190
+ my $p = $$position_ref;
191
+ $$position_ref += $size;
192
+
193
+ return TypeDeserializer->deserializeChar($buffer[$p]);
161
194
  }
162
195
 
163
- sub readLongLong {
164
- $position += 2;
165
- my $p = $position;
166
- $position += 8;
167
- my @longlong_buffer = @buffer[$p .. $p + 7];
196
+ # ReadLong
197
+ sub ReadLong {
198
+ my ($buffer_ref, $position_ref) = @_;
199
+ my @buffer = @$buffer_ref;
200
+ my $size = 8;
201
+
202
+ $$position_ref += 2;
203
+ my $p = $$position_ref;
204
+ $$position_ref += $size;
205
+
206
+ my @longlong_buffer = @buffer[$p .. $p + $size - 1];
168
207
  return TypeDeserializer->deserializeLongLong(\@longlong_buffer);
169
208
  }
170
209
 
171
- sub readDouble {
172
- $position += 2;
173
- my $p = $position;
174
- $position += 8;
175
- my @double_buffer = @buffer[$p .. $p + 7];
210
+ # ReadDouble
211
+ sub ReadDouble {
212
+ my ($buffer_ref, $position_ref) = @_;
213
+ my @buffer = @$buffer_ref;
214
+ my $size = 8;
215
+
216
+ $$position_ref += 2;
217
+ my $p = $$position_ref;
218
+ $$position_ref += $size;
219
+
220
+ my @double_buffer = @buffer[$p .. $p + $size - 1];
176
221
  return TypeDeserializer->deserializeDouble(\@double_buffer);
177
222
  }
178
223
 
179
- sub readUnsignedLongLong {
180
- $position += 2;
181
- my $p = $position;
182
- $position += 8;
183
- my @ulonglong_buffer = @buffer[$p .. $p + 7];
224
+ # ReadULong
225
+ sub ReadULong {
226
+ my ($buffer_ref, $position_ref) = @_;
227
+ my @buffer = @$buffer_ref;
228
+ my $size = 8;
229
+
230
+ $$position_ref += 2;
231
+ my $p = $$position_ref;
232
+ $$position_ref += $size;
233
+
234
+ my @ulonglong_buffer = @buffer[$p .. $p + $size - 1];
184
235
  return TypeDeserializer->deserializeULongLong(\@ulonglong_buffer);
185
236
  }
186
237
 
187
- sub readUnsignedInt {
188
- $position += 2;
189
- my $p = $position;
190
- $position += 4;
191
- my @uint_buffer = @buffer[$p .. $p + 3];
238
+ # ReadUInt
239
+ sub ReadUInt {
240
+ my ($buffer_ref, $position_ref) = @_;
241
+ my @buffer = @$buffer_ref;
242
+ my $size = 4;
243
+
244
+ $$position_ref += 2;
245
+ my $p = $$position_ref;
246
+ $$position_ref += $size;
247
+
248
+ my @uint_buffer = @buffer[$p .. $p + $size - 1];
192
249
  return TypeDeserializer->deserializeUInt(\@uint_buffer);
193
250
  }
194
251
 
195
- sub readUndef {
196
- $position += 2;
197
- my $p = $position;
198
- $position += 1;
199
- my $undef_buffer = $buffer[$p];
200
- return TypeDeserializer->deserializeUndef($undef_buffer);
252
+ # ReadNull
253
+ sub ReadNull {
254
+ my ($buffer_ref, $position_ref) = @_;
255
+ my @buffer = @$buffer_ref;
256
+ my $size = 1;
257
+
258
+ $$position_ref += 2;
259
+ my $p = $$position_ref;
260
+ $$position_ref += $size;
261
+
262
+ # Note: deserializeUndef doesn't use the buffer, but we match C# structure
263
+ return TypeDeserializer->deserializeUndef();
201
264
  }
202
265
 
203
- no Moose;
204
266
  1;