javonet-ruby-sdk 2.6.10 → 2.6.11

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 (429) 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 +5 -7
  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/Handler/PerlHandler.pm +1 -1
  150. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +6 -14
  151. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +196 -190
  152. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +13 -14
  153. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +11 -12
  154. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +17 -20
  155. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Receiver/Receiver.pm +4 -3
  156. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +166 -54
  157. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -2
  158. data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -1
  159. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-events.bat +0 -0
  160. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-highlight.bat +0 -0
  161. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load-dump.bat +0 -0
  162. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-load.bat +0 -0
  163. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/bin/yamlpp-parse-emit.bat +0 -0
  164. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
  165. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
  166. 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
  167. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
  168. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
  169. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +25 -25
  170. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Handler/PerlHandler.pm +1 -1
  171. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Interpreter/Interpreter.pm +6 -14
  172. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/CommandDeserializer.pm +196 -190
  173. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/CommandSerializer.pm +13 -14
  174. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/TypeDeserializer.pm +11 -12
  175. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Protocol/TypeSerializer.pm +17 -20
  176. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Receiver/Receiver.pm +4 -3
  177. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Core/PerlCommand.pm +166 -54
  178. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/InvocationContext.pm +0 -2
  179. data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +0 -1
  180. data/lib/javonet-ruby-sdk/Binaries/Php/composer.json +6 -5
  181. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/handler/AbstractHandler.php +1 -2
  182. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/handler/Handler.php +74 -58
  183. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/handler/LoadLibraryHandler.php +110 -0
  184. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/interpreter/Interpreter.php +25 -23
  185. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/protocol/CommandSerializer.php +5 -5
  186. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/core/receiver/Receiver.php +7 -4
  187. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/Command.php +86 -22
  188. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/DynamicMethodFactory.php +1 -2
  189. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/ExceptionSerializer.php +15 -1
  190. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/RuntimeNameHandler.php +32 -0
  191. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/UtilsConst.php +6 -3
  192. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/IConnectionData.php +1 -1
  193. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/InMemoryConnectionData.php +1 -1
  194. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/TcpConnectionData.php +6 -1
  195. data/lib/javonet-ruby-sdk/Binaries/Php/javonet/utils/connectiondata/WsConnectionData.php +1 -1
  196. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/callback/callbackFunc.py +4 -4
  197. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/Handler.py +72 -52
  198. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/PassDelegateHandler.py +1 -1
  199. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/Interpreter.py +13 -13
  200. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/CommandDeserializer.py +143 -155
  201. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/CommandSerializer.py +7 -5
  202. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/Receiver.py +64 -21
  203. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/Command.py +114 -45
  204. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/callback/callbackFunc.py +2 -3
  205. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/GetKwargHandler.py +5 -0
  206. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/Handler.py +30 -12
  207. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/InvokeDelegateHandler.py +2 -2
  208. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/handler/InvokeGlobalFunctionHandler.py +2 -2
  209. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/interpreter/Interpreter.py +9 -9
  210. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/protocol/CommandDeserializer.py +149 -130
  211. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/protocol/CommandSerializer.py +21 -17
  212. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/core/receiver/Receiver.py +11 -10
  213. data/lib/javonet-ruby-sdk/Binaries/Python2/javonet/utils/Command.py +89 -24
  214. data/lib/javonet-ruby-sdk/Binaries/version.txt +1 -1
  215. data/lib/javonet-ruby-sdk/core/handler/abstract_command_handler.rb +23 -23
  216. data/lib/javonet-ruby-sdk/core/handler/abstract_handler.rb +4 -4
  217. data/lib/javonet-ruby-sdk/core/handler/add_event_listener_handler.rb +12 -12
  218. data/lib/javonet-ruby-sdk/core/handler/array_get_item_handler.rb +47 -47
  219. data/lib/javonet-ruby-sdk/core/handler/array_get_rank_handler.rb +22 -22
  220. data/lib/javonet-ruby-sdk/core/handler/array_get_size_handler.rb +36 -36
  221. data/lib/javonet-ruby-sdk/core/handler/array_handler.rb +12 -12
  222. data/lib/javonet-ruby-sdk/core/handler/array_reference_handler.rb +12 -12
  223. data/lib/javonet-ruby-sdk/core/handler/array_set_item_handler.rb +46 -46
  224. data/lib/javonet-ruby-sdk/core/handler/as_kwargs_handler.rb +12 -12
  225. data/lib/javonet-ruby-sdk/core/handler/as_out_handler.rb +12 -12
  226. data/lib/javonet-ruby-sdk/core/handler/as_ref_handler.rb +11 -11
  227. data/lib/javonet-ruby-sdk/core/handler/casting_handler.rb +11 -11
  228. data/lib/javonet-ruby-sdk/core/handler/convert_type_handler.rb +11 -11
  229. data/lib/javonet-ruby-sdk/core/handler/create_class_instance_handler.rb +34 -34
  230. data/lib/javonet-ruby-sdk/core/handler/create_null_handler.rb +12 -12
  231. data/lib/javonet-ruby-sdk/core/handler/destruct_reference_handler.rb +20 -20
  232. data/lib/javonet-ruby-sdk/core/handler/enable_namespace_handler.rb +30 -30
  233. data/lib/javonet-ruby-sdk/core/handler/enable_type_handler.rb +32 -32
  234. data/lib/javonet-ruby-sdk/core/handler/exception_handler.rb +12 -12
  235. data/lib/javonet-ruby-sdk/core/handler/generate_lib_handler.rb +12 -12
  236. data/lib/javonet-ruby-sdk/core/handler/get_async_operation_result_handler.rb +12 -12
  237. data/lib/javonet-ruby-sdk/core/handler/get_enum_item_handler.rb +12 -12
  238. data/lib/javonet-ruby-sdk/core/handler/get_enum_name_handler.rb +12 -12
  239. data/lib/javonet-ruby-sdk/core/handler/get_enum_value_handler.rb +12 -12
  240. data/lib/javonet-ruby-sdk/core/handler/get_global_field_handler.rb +11 -11
  241. data/lib/javonet-ruby-sdk/core/handler/get_instance_field_handler.rb +34 -34
  242. data/lib/javonet-ruby-sdk/core/handler/get_instance_method_as_delegate_handler.rb +11 -11
  243. data/lib/javonet-ruby-sdk/core/handler/get_module_handler.rb +11 -11
  244. data/lib/javonet-ruby-sdk/core/handler/get_ref_value_handler.rb +11 -11
  245. data/lib/javonet-ruby-sdk/core/handler/get_result_type_handler.rb +12 -12
  246. data/lib/javonet-ruby-sdk/core/handler/get_static_field_handler.rb +34 -34
  247. data/lib/javonet-ruby-sdk/core/handler/get_static_method_as_delegate_handler.rb +11 -11
  248. data/lib/javonet-ruby-sdk/core/handler/get_type_handler.rb +70 -71
  249. data/lib/javonet-ruby-sdk/core/handler/handler.rb +227 -225
  250. data/lib/javonet-ruby-sdk/core/handler/handler_dictionary.rb +7 -7
  251. data/lib/javonet-ruby-sdk/core/handler/heartbeat_handler.rb +12 -12
  252. data/lib/javonet-ruby-sdk/core/handler/invoke_delegate_handler.rb +12 -12
  253. data/lib/javonet-ruby-sdk/core/handler/invoke_generic_method_handler.rb +11 -11
  254. data/lib/javonet-ruby-sdk/core/handler/invoke_generic_static_method_handler.rb +12 -12
  255. data/lib/javonet-ruby-sdk/core/handler/invoke_global_function_handler.rb +45 -45
  256. data/lib/javonet-ruby-sdk/core/handler/invoke_instance_method_handler.rb +35 -35
  257. data/lib/javonet-ruby-sdk/core/handler/invoke_static_method_handler.rb +38 -38
  258. data/lib/javonet-ruby-sdk/core/handler/load_library_handler.rb +49 -49
  259. data/lib/javonet-ruby-sdk/core/handler/optimize_handler.rb +12 -12
  260. data/lib/javonet-ruby-sdk/core/handler/pass_delegate_handler.rb +11 -11
  261. data/lib/javonet-ruby-sdk/core/handler/plugin_wrapper_handler.rb +12 -12
  262. data/lib/javonet-ruby-sdk/core/handler/register_for_update_handler.rb +28 -28
  263. data/lib/javonet-ruby-sdk/core/handler/resolve_instance_handler.rb +29 -29
  264. data/lib/javonet-ruby-sdk/core/handler/retrieve_array_handler.rb +12 -12
  265. data/lib/javonet-ruby-sdk/core/handler/set_instance_field_handler.rb +35 -35
  266. data/lib/javonet-ruby-sdk/core/handler/set_static_field_handler.rb +31 -31
  267. data/lib/javonet-ruby-sdk/core/handler/value_for_update_handler.rb +11 -11
  268. data/lib/javonet-ruby-sdk/core/handler/value_handler.rb +6 -6
  269. data/lib/javonet-ruby-sdk/core/interpreter/interpreter.rb +26 -28
  270. data/lib/javonet-ruby-sdk/core/namespace_cache/namespace_cache.rb +42 -42
  271. data/lib/javonet-ruby-sdk/core/protocol/command_deserializer.rb +184 -184
  272. data/lib/javonet-ruby-sdk/core/protocol/command_serializer.rb +36 -36
  273. data/lib/javonet-ruby-sdk/core/protocol/type_deserializer.rb +65 -65
  274. data/lib/javonet-ruby-sdk/core/protocol/type_serializer.rb +120 -120
  275. data/lib/javonet-ruby-sdk/core/receiver/{receiver_new.rb → receiver.rb} +38 -42
  276. data/lib/javonet-ruby-sdk/core/reference_cache/references_cache.rb +39 -39
  277. data/lib/javonet-ruby-sdk/core/transmitter/transmitter.rb +58 -58
  278. data/lib/javonet-ruby-sdk/core/transmitter/transmitter_wrapper.rb +31 -31
  279. data/lib/javonet-ruby-sdk/core/type_cache/type_cache.rb +41 -41
  280. data/lib/javonet-ruby-sdk/core/web_socket_client/web_socket_client.rb +228 -228
  281. data/lib/javonet-ruby-sdk/sdk/config_runtime_factory.rb +132 -132
  282. data/lib/javonet-ruby-sdk/sdk/configuration/config.rb +32 -0
  283. data/lib/javonet-ruby-sdk/sdk/configuration/config_priority.rb +27 -0
  284. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/config_resolver.rb +80 -0
  285. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/connection_string_config_resolver.rb +89 -0
  286. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/json_config_resolver.rb +66 -0
  287. data/lib/javonet-ruby-sdk/sdk/configuration/config_resolvers/yaml_config_resolver.rb +77 -0
  288. data/lib/javonet-ruby-sdk/sdk/configuration/config_source_resolver.rb +70 -0
  289. data/lib/javonet-ruby-sdk/sdk/configuration/configs_dictionary.rb +48 -0
  290. data/lib/javonet-ruby-sdk/sdk/internal/abstract_config_runtime_factory.rb +33 -33
  291. data/lib/javonet-ruby-sdk/sdk/internal/abstract_invocation_context.rb +70 -70
  292. data/lib/javonet-ruby-sdk/sdk/internal/abstract_runtime_context.rb +10 -10
  293. data/lib/javonet-ruby-sdk/sdk/internal/abstract_runtime_factory.rb +37 -37
  294. data/lib/javonet-ruby-sdk/sdk/internal/invocation_context_iterator.rb +27 -27
  295. data/lib/javonet-ruby-sdk/sdk/invocation_context.rb +318 -319
  296. data/lib/javonet-ruby-sdk/sdk/javonet.rb +132 -106
  297. data/lib/javonet-ruby-sdk/sdk/runtime_context.rb +259 -218
  298. data/lib/javonet-ruby-sdk/sdk/runtime_factory.rb +78 -78
  299. data/lib/javonet-ruby-sdk/sdk/tools/activation_helper.rb +37 -37
  300. data/lib/javonet-ruby-sdk/sdk/tools/json_file_resolver.rb +62 -62
  301. data/lib/javonet-ruby-sdk/sdk/tools/sdk_message_helper.rb +71 -71
  302. data/lib/javonet-ruby-sdk/utils/command.rb +79 -93
  303. data/lib/javonet-ruby-sdk/utils/command_type.rb +154 -154
  304. data/lib/javonet-ruby-sdk/utils/connection_type.rb +5 -5
  305. data/lib/javonet-ruby-sdk/utils/exceptions/exception_serializer.rb +116 -116
  306. data/lib/javonet-ruby-sdk/utils/exceptions/exception_thrower.rb +65 -65
  307. data/lib/javonet-ruby-sdk/utils/exceptions/exception_type.rb +10 -10
  308. data/lib/javonet-ruby-sdk/utils/os_helper.rb +21 -21
  309. data/lib/javonet-ruby-sdk/utils/runtime_logger.rb +46 -46
  310. data/lib/javonet-ruby-sdk/utils/runtime_name_handler.rb +71 -40
  311. data/lib/javonet-ruby-sdk/utils/runtime_name_javonet.rb +13 -13
  312. data/lib/javonet-ruby-sdk/utils/string_encoding_mode_javonet.rb +6 -6
  313. data/lib/javonet-ruby-sdk/utils/tcp_connection_data.rb +36 -36
  314. data/lib/javonet-ruby-sdk/utils/type.rb +15 -15
  315. data/lib/javonet-ruby-sdk/utils/types_handler.rb +10 -10
  316. data/lib/javonet-ruby-sdk/utils/ws_connection_data.rb +23 -19
  317. metadata +14 -117
  318. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libcrypto-3-arm64.dll +0 -0
  319. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libssl-3-arm64.dll +0 -0
  320. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxml2.dll +0 -0
  321. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxmlsec-openssl.dll +0 -0
  322. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxmlsec.dll +0 -0
  323. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/ARM64/libxslt.dll +0 -0
  324. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libcrypto-3-x64.dll +0 -0
  325. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libssl-3-x64.dll +0 -0
  326. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxml2.dll +0 -0
  327. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxmlsec-openssl.dll +0 -0
  328. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxmlsec.dll +0 -0
  329. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libxslt.dll +0 -0
  330. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libcrypto-3.dll +0 -0
  331. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libssl-3.dll +0 -0
  332. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxml2.dll +0 -0
  333. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxmlsec-openssl.dll +0 -0
  334. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxmlsec.dll +0 -0
  335. data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X86/libxslt.dll +0 -0
  336. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/__pycache__/__init__.cpython-312.pyc +0 -0
  337. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/delegateCache/__pycache__/DelegatesCache.cpython-312.pyc +0 -0
  338. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/delegateCache/__pycache__/__init__.cpython-312.pyc +0 -0
  339. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AbstractCommandHandler.cpython-312.pyc +0 -0
  340. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AbstractHandler.cpython-312.pyc +0 -0
  341. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AddEventListenerHandler.cpython-312.pyc +0 -0
  342. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayGetItemHandler.cpython-312.pyc +0 -0
  343. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayGetRankHandler.cpython-312.pyc +0 -0
  344. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayGetSizeHandler.cpython-312.pyc +0 -0
  345. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayHandler.cpython-312.pyc +0 -0
  346. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArrayReferenceHandler.cpython-312.pyc +0 -0
  347. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ArraySetItemHandler.cpython-312.pyc +0 -0
  348. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AsOutHandler.cpython-312.pyc +0 -0
  349. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/AsRefHandler.cpython-312.pyc +0 -0
  350. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/CastingHandler.cpython-312.pyc +0 -0
  351. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ConvertTypeHandler.cpython-312.pyc +0 -0
  352. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/CreateClassInstanceHandler.cpython-312.pyc +0 -0
  353. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/CreateNullHandler.cpython-312.pyc +0 -0
  354. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/DestructReferenceHandler.cpython-312.pyc +0 -0
  355. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/EnableNamespaceHandler.cpython-312.pyc +0 -0
  356. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/EnableTypeHandler.cpython-312.pyc +0 -0
  357. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ExceptionHandler.cpython-312.pyc +0 -0
  358. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GenerateLibHandler.cpython-312.pyc +0 -0
  359. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetAsyncOperationResultHandler.cpython-312.pyc +0 -0
  360. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetEnumItemHandler.cpython-312.pyc +0 -0
  361. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetEnumNameHandler.cpython-312.pyc +0 -0
  362. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetEnumValueHandler.cpython-312.pyc +0 -0
  363. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetGlobalFieldHandler.cpython-312.pyc +0 -0
  364. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetInstanceFieldHandler.cpython-312.pyc +0 -0
  365. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetInstanceMethodAsDelegateHandler.cpython-312.pyc +0 -0
  366. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetKwargHandler.cpython-312.pyc +0 -0
  367. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetModuleHandler.cpython-312.pyc +0 -0
  368. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetRefValueHandler.cpython-312.pyc +0 -0
  369. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetResultTypeHandler.cpython-312.pyc +0 -0
  370. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetStaticFieldHandler.cpython-312.pyc +0 -0
  371. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetStaticMethodAsDelegateHandler.cpython-312.pyc +0 -0
  372. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/GetTypeHandler.cpython-312.pyc +0 -0
  373. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/Handler.cpython-312.pyc +0 -0
  374. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/HandlerDictionary.cpython-312.pyc +0 -0
  375. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/HeartBeatHandler.cpython-312.pyc +0 -0
  376. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeDelegateHandler.cpython-312.pyc +0 -0
  377. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeGenericMethodHandler.cpython-312.pyc +0 -0
  378. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeGenericStaticMethodHandler.cpython-312.pyc +0 -0
  379. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeGlobalFunctionHandler.cpython-312.pyc +0 -0
  380. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeInstanceMethodHandler.cpython-312.pyc +0 -0
  381. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/InvokeStaticMethodHandler.cpython-312.pyc +0 -0
  382. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/LoadLibraryHandler.cpython-312.pyc +0 -0
  383. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/OptimizeHandler.cpython-312.pyc +0 -0
  384. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/PassDelegateHandler.cpython-312.pyc +0 -0
  385. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/PluginWrapperHandler.cpython-312.pyc +0 -0
  386. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/RegisterForUpdateHandler.cpython-312.pyc +0 -0
  387. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ResolveInstanceHandler.cpython-312.pyc +0 -0
  388. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/RetrieveArrayHandler.cpython-312.pyc +0 -0
  389. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/SetInstanceFieldHandler.cpython-312.pyc +0 -0
  390. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/SetStaticFieldHandler.cpython-312.pyc +0 -0
  391. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ValueForUpdateHandler.cpython-312.pyc +0 -0
  392. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/ValueHandler.cpython-312.pyc +0 -0
  393. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/handler/__pycache__/__init__.cpython-312.pyc +0 -0
  394. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/__pycache__/Interpreter.cpython-312.pyc +0 -0
  395. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/interpreter/__pycache__/__init__.cpython-312.pyc +0 -0
  396. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/namespaceCache/__pycache__/NamespaceCache.cpython-312.pyc +0 -0
  397. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/namespaceCache/__pycache__/__init__.cpython-312.pyc +0 -0
  398. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/CommandDeserializer.cpython-312.pyc +0 -0
  399. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/CommandSerializer.cpython-312.pyc +0 -0
  400. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/TypeDeserializer.cpython-312.pyc +0 -0
  401. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/TypeSerializer.cpython-312.pyc +0 -0
  402. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/protocol/__pycache__/__init__.cpython-312.pyc +0 -0
  403. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/__pycache__/Receiver.cpython-312.pyc +0 -0
  404. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/receiver/__pycache__/__init__.cpython-312.pyc +0 -0
  405. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/referenceCache/__pycache__/ReferencesCache.cpython-312.pyc +0 -0
  406. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/referenceCache/__pycache__/__init__.cpython-312.pyc +0 -0
  407. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/typeCache/__pycache__/TypeCache.cpython-312.pyc +0 -0
  408. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/core/typeCache/__pycache__/__init__.cpython-312.pyc +0 -0
  409. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/Command.cpython-312.pyc +0 -0
  410. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/CommandType.cpython-312.pyc +0 -0
  411. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/ConnectionType.cpython-312.pyc +0 -0
  412. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/ExceptionType.cpython-312.pyc +0 -0
  413. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/LazyModuleLoader.cpython-312.pyc +0 -0
  414. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/RuntimeLogger.cpython-312.pyc +0 -0
  415. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/RuntimeName.cpython-312.pyc +0 -0
  416. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/StringEncodingMode.cpython-312.pyc +0 -0
  417. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/Type.cpython-312.pyc +0 -0
  418. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/TypesHandler.cpython-312.pyc +0 -0
  419. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/UtilsConst.cpython-312.pyc +0 -0
  420. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  421. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/IConnectionData.cpython-312.pyc +0 -0
  422. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/InMemoryConnectionData.cpython-312.pyc +0 -0
  423. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/connectionData/__pycache__/__init__.cpython-312.pyc +0 -0
  424. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/ExceptionSerializer.cpython-312.pyc +0 -0
  425. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/ExceptionThrower.cpython-312.pyc +0 -0
  426. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/JavonetException.cpython-312.pyc +0 -0
  427. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/exception/__pycache__/__init__.cpython-312.pyc +0 -0
  428. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/messageHelper/__pycache__/MessageHelper.cpython-312.pyc +0 -0
  429. data/lib/javonet-ruby-sdk/Binaries/Python/javonet/utils/messageHelper/__pycache__/__init__.cpython-312.pyc +0 -0
@@ -1,7 +1,6 @@
1
1
  package Javonet::Core::Protocol::TypeSerializer;
2
2
  use strict;
3
3
  use warnings;
4
- use Moose;
5
4
  use Encode;
6
5
  use lib 'lib';
7
6
 
@@ -14,26 +13,24 @@ use Exporter qw(import);
14
13
  our @EXPORT = qw(serializeCommand serializePrimitive serializeString serializeInt serializeBool serializeFloat serializeByte serializeChar serializeLongLong serializeDouble serializeUllong serializeUint serializeUndef);
15
14
 
16
15
  sub serializePrimitive {
17
- my $self = $_[0];
18
- my $payload_item = $_[1];
16
+ my ($class, $payload_item) = @_;
19
17
  if(!defined $payload_item) {
20
- return serializeUndef($self);
18
+ return serializeUndef($class);
21
19
  }
22
20
 
23
21
  if(isint($payload_item)){
24
- return serializeInt($self, $payload_item);
22
+ return serializeInt($class, $payload_item);
25
23
  }
26
24
  if(type($payload_item) eq "FLOAT"){
27
- return serializeDouble($self, $payload_item);
25
+ return serializeDouble($class, $payload_item);
28
26
  }
29
27
  else{
30
- return serializeString($self, $payload_item);
28
+ return serializeString($class, $payload_item);
31
29
  }
32
30
  }
33
31
 
34
32
  sub serializeCommand {
35
- my $self = $_[0];
36
- my $command = $_[1];
33
+ my ($class, $command) = @_;
37
34
  my $length = @{$command->{payload}};
38
35
  my @length = unpack "C*", pack "V", $length;
39
36
  my @initial_array =(Type->get_type('Command'), @length, $command->{runtime},$command->{command_type});
@@ -42,8 +39,7 @@ sub serializeCommand {
42
39
  }
43
40
 
44
41
  sub serializeString {
45
- my $self = $_[0];
46
- my $string = $_[1];
42
+ my ($class, $string) = @_;
47
43
  my @serialized_string = unpack("C*", Encode::encode("utf8", $string));
48
44
  my $length = @serialized_string;
49
45
 
@@ -56,7 +52,7 @@ sub serializeString {
56
52
  }
57
53
 
58
54
  sub serializeInt {
59
- my ($self, $int_value) = @_;
55
+ my ($class, $int_value) = @_;
60
56
  my $length = 4;
61
57
  my @initial_array = (Type->get_type('JavonetInteger'), $length);
62
58
  my @bytes = unpack "C*", pack "i", $int_value;
@@ -64,7 +60,7 @@ sub serializeInt {
64
60
  }
65
61
 
66
62
  sub serializeBool {
67
- my ($self, $bool_value) = @_;
63
+ my ($class, $bool_value) = @_;
68
64
  my $length = 1;
69
65
  my @initial_array = (Type->get_type('JavonetBool'), $length);
70
66
  my @bytes;
@@ -79,7 +75,7 @@ sub serializeBool {
79
75
  }
80
76
 
81
77
  sub serializeFloat {
82
- my ($self, $float_value) = @_;
78
+ my ($class, $float_value) = @_;
83
79
  my $length = 4;
84
80
  my @initial_array = (Type->get_type('JavonetFloat'), $length);
85
81
  my @bytes = unpack "C*", pack "f", $float_value;
@@ -87,7 +83,7 @@ sub serializeFloat {
87
83
  }
88
84
 
89
85
  sub serializeByte {
90
- my ($self, $byte_value) = @_;
86
+ my ($class, $byte_value) = @_;
91
87
  my $length = 1;
92
88
  my @initial_array = (Type->get_type('JavonetByte'), $length);
93
89
  my @bytes = ($byte_value);
@@ -95,7 +91,7 @@ sub serializeByte {
95
91
  }
96
92
 
97
93
  sub serializeChar {
98
- my ($self, $char_value) = @_;
94
+ my ($class, $char_value) = @_;
99
95
  my $length = 1;
100
96
  my @initial_array = (Type->get_type('JavonetChar'), $length);
101
97
  my @bytes = ($char_value);
@@ -103,7 +99,7 @@ sub serializeChar {
103
99
  }
104
100
 
105
101
  sub serializeLongLong {
106
- my ($self, $longlong_value) = @_;
102
+ my ($class, $longlong_value) = @_;
107
103
  my $length = 8;
108
104
  my @initial_array = (Type->get_type('JavonetLongLong'), $length);
109
105
  my @bytes = unpack "C*", pack "q", $longlong_value;
@@ -111,7 +107,7 @@ sub serializeLongLong {
111
107
  }
112
108
 
113
109
  sub serializeDouble {
114
- my ($self, $double_value) = @_;
110
+ my ($class, $double_value) = @_;
115
111
  my $length = 8;
116
112
  my @initial_array = (Type->get_type('JavonetDouble'), $length);
117
113
  my @bytes = unpack "C*", pack "d", $double_value;
@@ -119,7 +115,7 @@ sub serializeDouble {
119
115
  }
120
116
 
121
117
  sub serializeUllong {
122
- my ($self, $ullong_value) = @_;
118
+ my ($class, $ullong_value) = @_;
123
119
  my $length = 8;
124
120
  my @initial_array = (Type->get_type('JavonetUnsignedLongLong'), $length);
125
121
  my @bytes = unpack "C*", pack "Q", $ullong_value;
@@ -127,7 +123,7 @@ sub serializeUllong {
127
123
  }
128
124
 
129
125
  sub serializeUint {
130
- my ($self, $uint_value) = @_;
126
+ my ($class, $uint_value) = @_;
131
127
  my $length = 4;
132
128
  my @initial_array = (Type->get_type('JavonetUnsignedInteger'), $length);
133
129
  my @bytes = unpack "C*", pack "V", $uint_value;
@@ -135,6 +131,7 @@ sub serializeUint {
135
131
  }
136
132
 
137
133
  sub serializeUndef {
134
+ my ($class) = @_;
138
135
  my $length = 1;
139
136
  my @initial_array = (Type->get_type('JavonetNull'), $length);
140
137
  my @bytes = (0);
@@ -30,13 +30,13 @@ use aliased 'Javonet::Core::Protocol::CommandSerializer' => 'CommandSerializer';
30
30
 
31
31
 
32
32
  sub heart_beat {
33
- my ($self, $message_byte_array_ref) = @_;
33
+ my ($class, $message_byte_array_ref) = @_;
34
34
  my @response_byte_array = (49, 48);
35
35
  return \@response_byte_array;
36
36
  }
37
37
 
38
38
  sub send_command {
39
- my ($self, $message_byte_array_ref) = @_;
39
+ my ($class, $message_byte_array_ref) = @_;
40
40
  my @message_byte_array = @$message_byte_array_ref;
41
41
  my @response_byte_array;
42
42
  # try {
@@ -45,7 +45,7 @@ sub send_command {
45
45
  # catch ( $e ) {
46
46
  # my $exception = Exception->new($e);
47
47
  # my $exception_command = Javonet::Core::Exception::ExceptionSerializer->serialize($exception);
48
- # @response_byte_array = CommandSerializer->serialize($exception_command, 0);
48
+ # @response_byte_array = CommandSerializer->serialize($exception_command, 0, 0, 0);
49
49
  # };
50
50
 
51
51
  return \@response_byte_array;
@@ -54,6 +54,7 @@ sub send_command {
54
54
  }
55
55
 
56
56
  sub get_runtime_info {
57
+ my ($class) = @_;
57
58
  return RuntimeLogger->rl_get_runtime_info();
58
59
  }
59
60
 
@@ -5,95 +5,207 @@ use lib 'lib';
5
5
  use Moose;
6
6
  use Scalar::Util;
7
7
 
8
+ use aliased 'Javonet::Sdk::Core::PerlCommandType' => 'PerlCommandType';
9
+
8
10
  has 'runtime' => (
9
- is => 'rw',
11
+ is => 'ro',
10
12
  isa => 'Int',
11
13
  required => 1,
12
14
  reader => '_get_runtime'
13
15
  );
14
16
 
15
17
  has 'command_type' => (
16
- is => 'rw',
18
+ is => 'ro',
17
19
  isa => 'Int',
18
20
  required => 1,
19
21
  reader => '_get_command_type'
20
22
  );
21
23
 
22
24
  has 'payload' => (
23
- is => 'rw',
25
+ is => 'ro',
24
26
  isa => 'ArrayRef',
25
27
  default => sub {[]},
26
- writer => '_set_payload',
27
28
  reader => '_get_payload'
28
29
  );
29
30
 
30
- sub addArgumentToPayload{
31
- my ($self, $payload_ref) = @_;
32
- my @payload_array = @$payload_ref;
33
- my $firstVar = $self->{payload}[0];
34
- my @merged_payload;
35
- if (!defined $firstVar){
36
- @merged_payload = @payload_array;
31
+ # Constructor with params object[] (list of objects)
32
+ sub new {
33
+ my ($class, %args) = @_;
34
+ my $runtime = $args{runtime};
35
+ my $command_type = $args{command_type};
36
+ my $payload = $args{payload};
37
+
38
+ # If payload is not provided or is undef, use empty array
39
+ if (!defined $payload) {
40
+ $payload = [];
41
+ }
42
+ # If payload is already an array reference, use it directly
43
+ elsif (ref $payload eq 'ARRAY') {
44
+ # Reuse array reference directly - no conversion overhead
45
+ $payload = $payload;
37
46
  }
38
- else{
39
- my $current_payload_ref = $self->{payload};
40
- my @cur_payload = @$current_payload_ref;
41
- @merged_payload = (@cur_payload, @payload_array);
47
+ # If payload is a list (not a reference), convert to array reference
48
+ else {
49
+ # This handles the case where payload might be passed as a list
50
+ # Convert to array reference
51
+ my @payload_array = ref $payload ? @$payload : ($payload);
52
+ $payload = \@payload_array;
42
53
  }
43
- return Javonet::Sdk::Core::PerlCommand->new(runtime => $self->{runtime}, command_type => $self->{command_type}, payload => \@merged_payload);
54
+
55
+ my $self = {
56
+ runtime => $runtime,
57
+ command_type => $command_type,
58
+ payload => $payload
59
+ };
60
+
61
+ bless $self, $class;
62
+ return $self;
44
63
  }
45
64
 
46
- # sub size{
47
- # my ($self) = @_;
48
- # my $command_size = 0;
49
- # my $current_payload_ref = $self->{payload};
50
- # my @cur_payload = @$current_payload_ref;
51
- # for (my $i = 0; $i < @cur_payload; $i++) {
52
- # if ($cur_payload[$i]->isa("Javonet::Sdk::Core::PerlCommand")) {
53
- # $command_size += $cur_payload[$i]->size();
54
- # }
55
- # if (Scalar::Util::looks_like_number($cur_payload[$i])){
56
- # $command_size += 4
57
- # }
58
- # if ( ! defined $cur_payload[$i]){
59
- # # undefined
60
- # $command_size += 0;
61
- # }
62
- # elsif ( ref $cur_payload[$i] ) {
63
- # # reference (return of ref will give the type)
64
- # $command_size += 0;
65
- # }
66
- # else{
67
- # $command_size += length($cur_payload[$i]);
68
- # }
69
- # }
70
- # return $command_size;
71
- # }
65
+ # Static factory method: CreateResponse
66
+ sub CreateResponse {
67
+ my ($class, $response, $runtime_name) = @_;
68
+ return $class->new(
69
+ runtime => $runtime_name,
70
+ command_type => PerlCommandType->get_command_type('Value'),
71
+ payload => [$response]
72
+ );
73
+ }
72
74
 
73
- sub drop_first_payload_argument {
75
+ # Static factory method: CreateReference
76
+ sub CreateReference {
77
+ my ($class, $guid, $runtime_name) = @_;
78
+ return $class->new(
79
+ runtime => $runtime_name,
80
+ command_type => PerlCommandType->get_command_type('Reference'),
81
+ payload => [$guid]
82
+ );
83
+ }
84
+
85
+ # Static factory method: CreateArrayResponse
86
+ sub CreateArrayResponse {
87
+ my ($class, $array, $runtime_name) = @_;
88
+ # Convert array to array reference if needed
89
+ my $payload = ref $array eq 'ARRAY' ? $array : [$array];
90
+ return $class->new(
91
+ runtime => $runtime_name,
92
+ command_type => PerlCommandType->get_command_type('Array'),
93
+ payload => $payload
94
+ );
95
+ }
96
+
97
+ # DropFirstPayloadArg - matches C# DropFirstPayloadArg
98
+ sub DropFirstPayloadArg {
74
99
  my ($self) = @_;
100
+ my $class = ref($self) || $self;
75
101
  my $current_payload_ref = $self->{payload};
76
102
  my @cur_payload = @$current_payload_ref;
77
103
  my $payload_length = @cur_payload;
78
- if ($payload_length != 0){
79
- shift(@cur_payload);
104
+
105
+ if ($payload_length <= 1) {
106
+ return $class->new(
107
+ runtime => $self->{runtime},
108
+ command_type => $self->{command_type},
109
+ payload => []
110
+ );
80
111
  }
81
- return Javonet::Sdk::Core::PerlCommand->new(runtime => $self->{runtime}, command_type => $self->{command_type}, payload => \@cur_payload);
112
+
113
+ my $new_length = $payload_length - 1;
114
+ my @new_payload = @cur_payload[1 .. $#cur_payload];
115
+
116
+ return $class->new(
117
+ runtime => $self->{runtime},
118
+ command_type => $self->{command_type},
119
+ payload => \@new_payload
120
+ );
121
+ }
82
122
 
123
+ # AddArgToPayload - matches C# AddArgToPayload
124
+ sub AddArgToPayload {
125
+ my ($self, $arg) = @_;
126
+ my $class = ref($self) || $self;
127
+ my $current_payload_ref = $self->{payload};
128
+ my @cur_payload = @$current_payload_ref;
129
+ my $old_length = @cur_payload;
130
+ my @new_payload = (@cur_payload, $arg);
131
+
132
+ return $class->new(
133
+ runtime => $self->{runtime},
134
+ command_type => $self->{command_type},
135
+ payload => \@new_payload
136
+ );
83
137
  }
84
138
 
85
- sub prepend_arg_to_payload{
86
- my ($self, $current_command) = @_;
139
+ # PrependArgToPayload - matches C# PrependArgToPayload
140
+ sub PrependArgToPayload {
141
+ my ($self, $arg_command) = @_;
142
+
143
+ if (!defined $arg_command) {
144
+ return $self;
145
+ }
146
+
147
+ my $class = ref($self) || $self;
87
148
  my $current_payload_ref = $self->{payload};
88
149
  my @cur_payload = @$current_payload_ref;
89
- my @merged_payload;
90
- if(defined $current_command) {
91
- @merged_payload = ($current_command, @cur_payload);
92
- } else {
93
- @merged_payload = @cur_payload;
150
+ my $old_length = @cur_payload;
151
+ my @new_payload = ($arg_command, @cur_payload);
152
+
153
+ return $class->new(
154
+ runtime => $self->{runtime},
155
+ command_type => $self->{command_type},
156
+ payload => \@new_payload
157
+ );
158
+ }
159
+
160
+ # Legacy method name for backward compatibility
161
+ sub addArgumentToPayload {
162
+ my ($self, $payload_ref) = @_;
163
+ my @payload_array = ref $payload_ref eq 'ARRAY' ? @$payload_ref : ($payload_ref);
164
+ return $self->AddArgToPayload($payload_array[0]) if @payload_array == 1;
165
+ # For multiple items, add them one by one
166
+ my $result = $self;
167
+ for my $item (@payload_array) {
168
+ $result = $result->AddArgToPayload($item);
94
169
  }
170
+ return $result;
171
+ }
172
+
173
+ # Legacy method name for backward compatibility
174
+ sub drop_first_payload_argument {
175
+ return $_[0]->DropFirstPayloadArg();
176
+ }
177
+
178
+ # Legacy method name for backward compatibility
179
+ sub prepend_arg_to_payload {
180
+ return $_[0]->PrependArgToPayload($_[1]);
181
+ }
95
182
 
96
- return Javonet::Sdk::Core::PerlCommand->new(runtime => $self->{runtime}, command_type => $self->{command_type}, payload => \@merged_payload);
183
+ # ToString method - matches C# ToString
184
+ sub ToString {
185
+ my ($self) = @_;
186
+ eval {
187
+ my $result = "RuntimeName " . $self->{runtime} . " ";
188
+ $result .= "CommandType " . $self->{command_type} . " ";
189
+ $result .= "Payload ";
190
+
191
+ my $payload_ref = $self->{payload};
192
+ my @payload = @$payload_ref;
193
+ my $len = @payload;
194
+
195
+ for (my $i = 0; $i < $len; $i++) {
196
+ my $item = $payload[$i];
197
+ $result .= defined $item ? $item : "null";
198
+
199
+ if ($i < $len - 1) {
200
+ $result .= " ";
201
+ }
202
+ }
203
+
204
+ return $result;
205
+ };
206
+ if ($@) {
207
+ return "Error while converting command to string: " . $@;
208
+ }
97
209
  }
98
210
 
99
211
  no Moose;
@@ -13,8 +13,6 @@ extends 'Javonet::Sdk::Internal::Abstract::AbstractInstanceContext',
13
13
  'Javonet::Sdk::Internal::Abstract::AbstractMethodInvocationContext',
14
14
  'Javonet::Sdk::Internal::Abstract::AbstractInvocationContext';
15
15
 
16
- my $perl_handler = Javonet::Core::Handler::PerlHandler->new();
17
-
18
16
  sub new {
19
17
  my $class = shift;
20
18
 
@@ -13,7 +13,6 @@ use aliased 'Javonet::Sdk::Core::TypesHandler' => 'TypesHandler';
13
13
  extends 'Javonet::Sdk::Internal::Abstract::AbstractRuntimeContext',
14
14
  'Javonet::Sdk::Internal::Abstract::AbstractTypeContext';
15
15
 
16
- my $perl_handler = Javonet::Core::Handler::PerlHandler->new();
17
16
  our %memoryRuntimeContexts;
18
17
  our %networkRuntimeContexts;
19
18
  our %configRuntimeContexts;
@@ -4,11 +4,12 @@
4
4
  "type": "library",
5
5
  "license": "MIT",
6
6
  "require": {
7
- "php": "^7.4 || ^8.0",
8
- "ext-curl": "*",
9
- "ext-json": "*",
10
- "ext-ffi": "*",
11
- "guzzlehttp/promises": "^2.0"
7
+ "php": "^7.4 || ^8.0",
8
+ "ext-curl": "*",
9
+ "ext-json": "*",
10
+ "symfony/yaml": "^v5.4.45",
11
+ "ext-ffi": "*",
12
+ "guzzlehttp/promises": "^2.0"
12
13
  },
13
14
  "require-dev": {
14
15
  "phpunit/phpunit": "^9.5"
@@ -22,8 +22,7 @@ abstract class AbstractHandler
22
22
  if (!self::$isInitializing && empty(self::$HANDLER_MAP)) {
23
23
  self::$isInitializing = true;
24
24
  try {
25
- $handler = new Handler();
26
- self::$HANDLER_MAP = $handler->handlers;
25
+ self::$HANDLER_MAP = Handler::getHandlers();
27
26
  } finally {
28
27
  self::$isInitializing = false;
29
28
  }
@@ -17,65 +17,80 @@ use utils\TypesHandler;
17
17
 
18
18
  final class Handler
19
19
  {
20
- public array $handlers = [];
20
+ private static array $handlers = [];
21
21
 
22
- public function __construct()
22
+ private function __construct()
23
23
  {
24
- $this->handlers[CommandType::VALUE()->getValue()] = new ValueHandler();
25
- $this->handlers[CommandType::LOAD_LIBRARY()->getValue()] = new LoadLibraryHandler();
26
- $this->handlers[CommandType::INVOKE_STATIC_METHOD()->getValue()] = new InvokeStaticMethodHandler();
27
- $this->handlers[CommandType::GET_STATIC_FIELD()->getValue()] = new GetStaticFieldHandler();
28
- $this->handlers[CommandType::SET_STATIC_FIELD()->getValue()] = new SetStaticFieldHandler();
29
- $this->handlers[CommandType::CREATE_INSTANCE()->getValue()] = new CreateInstanceHandler();
30
- $this->handlers[CommandType::GET_TYPE()->getValue()] = new GetTypeHandler();
31
- $this->handlers[CommandType::REFERENCE()->getValue()] = new ResolveInstanceHandler();
32
- $this->handlers[CommandType::GET_MODULE()->getValue()] = new GetModuleHandler();
33
- $this->handlers[CommandType::INVOKE_INSTANCE_METHOD()->getValue()] = new InvokeInstanceMethodHandler();
34
- $this->handlers[CommandType::EXCEPTION()->getValue()] = new ExceptionHandler();
35
- $this->handlers[CommandType::HEART_BEAT()->getValue()] = new HeartBeatHandler();
36
- $this->handlers[CommandType::CAST()->getValue()] = new CastHandler();
37
- $this->handlers[CommandType::GET_INSTANCE_FIELD()->getValue()] = new GetInstanceFieldHandler();
38
- $this->handlers[CommandType::OPTIMIZE()->getValue()] = new OptimizeHandler();
39
- $this->handlers[CommandType::GENERATE_LIB()->getValue()] = new GenerateLibHandler();
40
- $this->handlers[CommandType::INVOKE_GLOBAL_FUNCTION()->getValue()] = new InvokeGlobalFunctionHandler();
41
- $this->handlers[CommandType::DESTRUCT_REFERENCE()->getValue()] = new DestructReferenceHandler();
42
- $this->handlers[CommandType::ARRAY_REFERENCE()->getValue()] = new ArrayReferenceHandler();
43
- $this->handlers[CommandType::ARRAY_GET_ITEM()->getValue()] = new ArrayGetItemHandler();
44
- $this->handlers[CommandType::ARRAY_GET_SIZE()->getValue()] = new ArrayGetSizeHandler();
45
- $this->handlers[CommandType::ARRAY_GET_RANK()->getValue()] = new ArrayGetRankHandler();
46
- $this->handlers[CommandType::ARRAY_SET_ITEM()->getValue()] = new ArraySetItemHandler();
47
- $this->handlers[CommandType::ARRAY()->getValue()] = new ArrayHandler();
48
- $this->handlers[CommandType::RETRIEVE_ARRAY()->getValue()] = null; // obsługiwane osobno
49
- $this->handlers[CommandType::SET_INSTANCE_FIELD()->getValue()] = new SetInstanceFieldHandler();
50
- $this->handlers[CommandType::INVOKE_GENERIC_STATIC_METHOD()->getValue()] = new InvokeGenericStaticMethodHandler();
51
- $this->handlers[CommandType::INVOKE_GENERIC_METHOD()->getValue()] = new InvokeGenericMethodHandler();
52
- $this->handlers[CommandType::GET_ENUM_ITEM()->getValue()] = new GetEnumItemHandler();
53
- $this->handlers[CommandType::GET_ENUM_NAME()->getValue()] = new GetEnumNameHandler();
54
- $this->handlers[CommandType::GET_ENUM_VALUE()->getValue()] = new GetEnumValueHandler();
55
- $this->handlers[CommandType::AS_REF()->getValue()] = new AsRefHandler();
56
- $this->handlers[CommandType::AS_OUT()->getValue()] = new AsOutHandler();
57
- $this->handlers[CommandType::GET_REF_VALUE()->getValue()] = new GetRefValueHandler();
58
- $this->handlers[CommandType::ENABLE_NAMESPACE()->getValue()] = new EnableNamespaceHandler();
59
- $this->handlers[CommandType::ENABLE_TYPE()->getValue()] = new EnableTypeHandler();
60
- $this->handlers[CommandType::CREATE_NULL()->getValue()] = new CreateNullHandler();
61
- $this->handlers[CommandType::GET_STATIC_METHOD_AS_DELEGATE()->getValue()] = new GetStaticMethodAsDelegateHandler();
62
- $this->handlers[CommandType::GET_INSTANCE_METHOD_AS_DELEGATE()->getValue()] = new GetInstanceMethodAsDelegateHandler();
63
- $this->handlers[CommandType::PASS_DELEGATE()->getValue()] = new PassDelegateHandler();
64
- $this->handlers[CommandType::INVOKE_DELEGATE()->getValue()] = new InvokeDelegateHandler();
65
- $this->handlers[CommandType::CONVERT_TYPE()->getValue()] = new ConvertTypeHandler();
66
- $this->handlers[CommandType::ADD_EVENT_LISTENER()->getValue()] = new AddEventListenerHandler();
67
- $this->handlers[CommandType::PLUGIN_WRAPPER()->getValue()] = new PluginWrapperHandler();
68
- $this->handlers[CommandType::GET_ASYNC_OPERATION_RESULT()->getValue()] = new GetAsyncOperationResultHandler();
69
- $this->handlers[CommandType::AS_KWARGS()->getValue()] = new AsKwargsHandler();
70
- $this->handlers[CommandType::GET_RESULT_TYPE()->getValue()] = new GetResultTypeHandler();
71
- $this->handlers[CommandType::GET_GLOBAL_FIELD()->getValue()] = new GetGlobalFieldHandler();
72
24
  }
73
25
 
74
- public function handleCommand(CommandInterface $command): CommandInterface
26
+ private static function initializeHandlers(): void
27
+ {
28
+ if (!empty(self::$handlers)) {
29
+ return;
30
+ }
31
+
32
+ self::$handlers[CommandType::VALUE()->getValue()] = new ValueHandler();
33
+ self::$handlers[CommandType::LOAD_LIBRARY()->getValue()] = new LoadLibraryHandler();
34
+ self::$handlers[CommandType::INVOKE_STATIC_METHOD()->getValue()] = new InvokeStaticMethodHandler();
35
+ self::$handlers[CommandType::GET_STATIC_FIELD()->getValue()] = new GetStaticFieldHandler();
36
+ self::$handlers[CommandType::SET_STATIC_FIELD()->getValue()] = new SetStaticFieldHandler();
37
+ self::$handlers[CommandType::CREATE_INSTANCE()->getValue()] = new CreateInstanceHandler();
38
+ self::$handlers[CommandType::GET_TYPE()->getValue()] = new GetTypeHandler();
39
+ self::$handlers[CommandType::REFERENCE()->getValue()] = new ResolveInstanceHandler();
40
+ self::$handlers[CommandType::GET_MODULE()->getValue()] = new GetModuleHandler();
41
+ self::$handlers[CommandType::INVOKE_INSTANCE_METHOD()->getValue()] = new InvokeInstanceMethodHandler();
42
+ self::$handlers[CommandType::EXCEPTION()->getValue()] = new ExceptionHandler();
43
+ self::$handlers[CommandType::HEART_BEAT()->getValue()] = new HeartBeatHandler();
44
+ self::$handlers[CommandType::CAST()->getValue()] = new CastHandler();
45
+ self::$handlers[CommandType::GET_INSTANCE_FIELD()->getValue()] = new GetInstanceFieldHandler();
46
+ self::$handlers[CommandType::OPTIMIZE()->getValue()] = new OptimizeHandler();
47
+ self::$handlers[CommandType::GENERATE_LIB()->getValue()] = new GenerateLibHandler();
48
+ self::$handlers[CommandType::INVOKE_GLOBAL_FUNCTION()->getValue()] = new InvokeGlobalFunctionHandler();
49
+ self::$handlers[CommandType::DESTRUCT_REFERENCE()->getValue()] = new DestructReferenceHandler();
50
+ self::$handlers[CommandType::ARRAY_REFERENCE()->getValue()] = new ArrayReferenceHandler();
51
+ self::$handlers[CommandType::ARRAY_GET_ITEM()->getValue()] = new ArrayGetItemHandler();
52
+ self::$handlers[CommandType::ARRAY_GET_SIZE()->getValue()] = new ArrayGetSizeHandler();
53
+ self::$handlers[CommandType::ARRAY_GET_RANK()->getValue()] = new ArrayGetRankHandler();
54
+ self::$handlers[CommandType::ARRAY_SET_ITEM()->getValue()] = new ArraySetItemHandler();
55
+ self::$handlers[CommandType::ARRAY()->getValue()] = new ArrayHandler();
56
+ self::$handlers[CommandType::RETRIEVE_ARRAY()->getValue()] = null; // obsługiwane osobno
57
+ self::$handlers[CommandType::SET_INSTANCE_FIELD()->getValue()] = new SetInstanceFieldHandler();
58
+ self::$handlers[CommandType::INVOKE_GENERIC_STATIC_METHOD()->getValue()] = new InvokeGenericStaticMethodHandler();
59
+ self::$handlers[CommandType::INVOKE_GENERIC_METHOD()->getValue()] = new InvokeGenericMethodHandler();
60
+ self::$handlers[CommandType::GET_ENUM_ITEM()->getValue()] = new GetEnumItemHandler();
61
+ self::$handlers[CommandType::GET_ENUM_NAME()->getValue()] = new GetEnumNameHandler();
62
+ self::$handlers[CommandType::GET_ENUM_VALUE()->getValue()] = new GetEnumValueHandler();
63
+ self::$handlers[CommandType::AS_REF()->getValue()] = new AsRefHandler();
64
+ self::$handlers[CommandType::AS_OUT()->getValue()] = new AsOutHandler();
65
+ self::$handlers[CommandType::GET_REF_VALUE()->getValue()] = new GetRefValueHandler();
66
+ self::$handlers[CommandType::ENABLE_NAMESPACE()->getValue()] = new EnableNamespaceHandler();
67
+ self::$handlers[CommandType::ENABLE_TYPE()->getValue()] = new EnableTypeHandler();
68
+ self::$handlers[CommandType::CREATE_NULL()->getValue()] = new CreateNullHandler();
69
+ self::$handlers[CommandType::GET_STATIC_METHOD_AS_DELEGATE()->getValue()] = new GetStaticMethodAsDelegateHandler();
70
+ self::$handlers[CommandType::GET_INSTANCE_METHOD_AS_DELEGATE()->getValue()] = new GetInstanceMethodAsDelegateHandler();
71
+ self::$handlers[CommandType::PASS_DELEGATE()->getValue()] = new PassDelegateHandler();
72
+ self::$handlers[CommandType::INVOKE_DELEGATE()->getValue()] = new InvokeDelegateHandler();
73
+ self::$handlers[CommandType::CONVERT_TYPE()->getValue()] = new ConvertTypeHandler();
74
+ self::$handlers[CommandType::ADD_EVENT_LISTENER()->getValue()] = new AddEventListenerHandler();
75
+ self::$handlers[CommandType::PLUGIN_WRAPPER()->getValue()] = new PluginWrapperHandler();
76
+ self::$handlers[CommandType::GET_ASYNC_OPERATION_RESULT()->getValue()] = new GetAsyncOperationResultHandler();
77
+ self::$handlers[CommandType::AS_KWARGS()->getValue()] = new AsKwargsHandler();
78
+ self::$handlers[CommandType::GET_RESULT_TYPE()->getValue()] = new GetResultTypeHandler();
79
+ self::$handlers[CommandType::GET_GLOBAL_FIELD()->getValue()] = new GetGlobalFieldHandler();
80
+ }
81
+
82
+ public static function getHandlers(): array
83
+ {
84
+ self::initializeHandlers();
85
+ return self::$handlers;
86
+ }
87
+
88
+ public static function handleCommand(CommandInterface $command): CommandInterface
75
89
  {
76
90
  try {
77
91
  if ($command->getCommandType()->equalsByValue(CommandType::RETRIEVE_ARRAY)) {
78
- $resolvedObject = $this->handlers[CommandType::REFERENCE()->getValue()]->handleCommand($command->getPayload()[0]);
92
+ self::initializeHandlers();
93
+ $resolvedObject = self::$handlers[CommandType::REFERENCE()->getValue()]->handleCommand($command->getPayload()[0]);
79
94
 
80
95
  if ($resolvedObject instanceof ArrayWrapper) {
81
96
  return Command::createArrayResponse(
@@ -104,7 +119,7 @@ final class Handler
104
119
  ));
105
120
  }
106
121
 
107
- return $this->getParseResponse($command);
122
+ return self::getParseResponse($command);
108
123
  } catch (Throwable $e) {
109
124
  if ($e->getPrevious() !== null) {
110
125
  return ExceptionSerializer::serializeException($e->getPrevious(), $command);
@@ -114,14 +129,15 @@ final class Handler
114
129
  }
115
130
  }
116
131
 
117
- private function getParseResponse(CommandInterface $command): CommandInterface
132
+ private static function getParseResponse(CommandInterface $command): CommandInterface
118
133
  {
119
- $response = $this->handlers[$command->getCommandType()->getValue()]->handleCommand($command);
134
+ self::initializeHandlers();
135
+ $response = self::$handlers[$command->getCommandType()->getValue()]->handleCommand($command);
120
136
  if (TypesHandler::isSimpleType($response)) {
121
137
  return Command::createResponse($response, $command->getRuntimeName());
122
138
  }
123
139
 
124
- if ($this->isCommandGenerateLibType($response) || $this->isCommandExceptionType($response)) {
140
+ if (self::isCommandGenerateLibType($response) || self::isCommandExceptionType($response)) {
125
141
  return $response;
126
142
  }
127
143
 
@@ -138,7 +154,7 @@ final class Handler
138
154
  /**
139
155
  * @param mixed $result
140
156
  */
141
- private function isCommandGenerateLibType($result): bool
157
+ private static function isCommandGenerateLibType($result): bool
142
158
  {
143
159
  if (is_object($result) && get_class($result) === Command::class) {
144
160
  return $result->getCommandType()->equalsByValue(CommandType::GENERATE_LIB);
@@ -150,7 +166,7 @@ final class Handler
150
166
  /**
151
167
  * @param mixed $result
152
168
  */
153
- private function isCommandExceptionType($result): bool
169
+ private static function isCommandExceptionType($result): bool
154
170
  {
155
171
  if (is_object($result) && get_class($result) === Command::class) {
156
172
  return $result->getCommandType()->equalsByValue(CommandType::EXCEPTION);