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
@@ -8,47 +8,90 @@ from javonet.utils.CommandType import CommandType
8
8
  from javonet.utils.RuntimeLogger import RuntimeLogger
9
9
  from javonet.utils.RuntimeName import RuntimeName
10
10
  from javonet.utils.connectionData.InMemoryConnectionData import InMemoryConnectionData
11
+ from javonet.utils.connectionData.IConnectionData import IConnectionData
11
12
  from javonet.utils.exception.ExceptionSerializer import ExceptionSerializer
12
13
  from javonet.utils.messageHelper.MessageHelper import MessageHelper
13
14
 
14
15
 
15
16
  class Receiver:
17
+ _original_excepthook = None
18
+ _exception_handler_initialized = False
16
19
 
17
- def __init__(self):
18
- self.connection_data = InMemoryConnectionData()
20
+ @staticmethod
21
+ def initialize_exception_handler():
22
+ """Initialize the global exception handler. Should be called once."""
23
+ try:
24
+ if not Receiver._exception_handler_initialized:
25
+ # Store the original excepthook
26
+ Receiver._original_excepthook = sys.excepthook
27
+
28
+ # Set up global exception handler
29
+ def custom_excepthook(exc_type, exc_value, exc_traceback):
30
+ # Format the exception
31
+ exception_string = "".join(traceback.format_exception(exc_type, exc_value, exc_traceback))
32
+ # Send to App Insights
33
+ MessageHelper.send_message_to_app_insights_sync("ReceiverUnhandledException", exception_string)
34
+ print(exception_string)
35
+ # Call the original handler
36
+ if Receiver._original_excepthook:
37
+ Receiver._original_excepthook(exc_type, exc_value, exc_traceback)
19
38
 
20
- # Store the original excepthook
21
- self.original_excepthook = sys.excepthook
39
+ # Register the custom exception handler
40
+ sys.excepthook = custom_excepthook
41
+ Receiver._exception_handler_initialized = True
42
+ except Exception as ex:
43
+ print("Failed to initialize exception handler: {}".format(str(ex)))
22
44
 
23
- # Set up global exception handler
24
- def custom_excepthook(exc_type, exc_value, exc_traceback):
25
- # Format the exception
26
- exception_string = "".join(traceback.format_exception(exc_type, exc_value, exc_traceback))
27
- # Send to App Insights
28
- MessageHelper.send_message_to_app_insights_sync("ReceiverUnhandledException", exception_string)
29
- print(exception_string)
30
- # Call the original handler
31
- self.original_excepthook(exc_type, exc_value, exc_traceback)
32
45
 
33
- # Register the custom exception handler
34
- sys.excepthook = custom_excepthook
46
+ @staticmethod
47
+ def send_command(message_byte_array, connection_data: IConnectionData = None):
48
+ """
49
+ Process a command message and return the response.
35
50
 
36
- def SendCommand(self, message_byte_array):
51
+ Args:
52
+ message_byte_array: The byte array containing the command message.
53
+ connection_data: Optional connection data. If None, uses InMemoryConnectionData.
54
+
55
+ Returns:
56
+ bytearray: The response byte array.
57
+ """
58
+ if connection_data is None:
59
+ connection_data = InMemoryConnectionData()
60
+
37
61
  try:
38
- result = Interpreter().process(message_byte_array)
39
- return bytearray(CommandSerializer().serialize(result, self.connection_data))
62
+ result = Interpreter.process(message_byte_array)
63
+ return bytearray(CommandSerializer.serialize(result, connection_data))
40
64
  except Exception as ex:
41
65
  exception_command = ExceptionSerializer.serialize_exception(
42
66
  ex,
43
67
  Command(RuntimeName.python, CommandType.Exception, [])
44
68
  )
45
- return bytearray(CommandSerializer().serialize(exception_command, self.connection_data))
69
+ return bytearray(CommandSerializer.serialize(exception_command, connection_data))
70
+
71
+ @staticmethod
72
+ def heart_beat(message_byte_array):
73
+ """
74
+ Process a heartbeat message and return the response.
46
75
 
47
- def HeartBeat(self, message_byte_array):
76
+ Args:
77
+ message_byte_array: The byte array containing the heartbeat message.
78
+
79
+ Returns:
80
+ bytearray: The response byte array.
81
+ """
48
82
  response_byte_array = bytearray(2)
49
83
  response_byte_array[0] = message_byte_array[11]
50
84
  response_byte_array[1] = message_byte_array[12] - 2
51
85
  return response_byte_array
52
86
 
53
- def GetRuntimeInfo(self):
87
+
88
+ @staticmethod
89
+ def get_runtime_info():
90
+ """
91
+ Get runtime information.
92
+
93
+ Returns:
94
+ str: Runtime information string.
95
+ """
54
96
  return RuntimeLogger().get_runtime_info()
97
+
@@ -3,88 +3,157 @@ from javonet.utils.CommandType import CommandType
3
3
 
4
4
  class Command:
5
5
 
6
- def __init__(self, runtime_name, command_type, payload):
6
+ def __init__(self, runtime_name, command_type, payload=None):
7
+ """
8
+ Initialize a Command.
9
+ Matches C# constructor: Command(RuntimeName runtimeName, CommandType commandType, params object[] payload)
10
+ and: Command(RuntimeName runtimeName, CommandType commandType, Array payload)
11
+
12
+ Args:
13
+ runtime_name: The runtime name.
14
+ command_type: The command type.
15
+ payload: The payload. Can be None, a list/tuple (array-like), or a single item.
16
+ If None, defaults to empty list.
17
+ """
7
18
  self.runtime_name = runtime_name
8
19
  self.command_type = command_type
9
- self.payload = payload
20
+
21
+ if isinstance(payload, list) and len(payload) == 0:
22
+ # Payload is empty - create empty list
23
+ self.payload = []
24
+ if payload is None:
25
+ self.payload = [None]
26
+ elif isinstance(payload, (list, tuple)):
27
+ # If it's a list or tuple, convert to list (matching C# Array handling)
28
+ # For list, reuse directly for efficiency (matching C# object[] case)
29
+ if isinstance(payload, list):
30
+ self.payload = payload
31
+ else:
32
+ # For tuple or other sequence, convert to list
33
+ self.payload = list(payload)
34
+ else:
35
+ # Single item - wrap in list
36
+ self.payload = [payload]
37
+
38
+ @property
39
+ def RuntimeName(self):
40
+ """Get the runtime name (property accessor matching C# style)."""
41
+ return self.runtime_name
42
+
43
+ @property
44
+ def CommandType(self):
45
+ """Get the command type (property accessor matching C# style)."""
46
+ return self.command_type
47
+
48
+ @property
49
+ def Payload(self):
50
+ """Get the payload (property accessor matching C# style)."""
51
+ return self.payload
10
52
 
11
53
  def get_payload(self):
54
+ """Get the payload (legacy method for backward compatibility)."""
12
55
  return self.payload
13
56
 
14
57
  @staticmethod
15
58
  def create_response(response, runtime_name):
16
- return Command(runtime_name, CommandType.Value, [response])
59
+ return Command(runtime_name, CommandType.Value, response)
17
60
 
18
61
  @staticmethod
19
62
  def create_reference(guid, runtime_name):
20
- return Command(runtime_name, CommandType.Reference, [guid])
63
+ return Command(runtime_name, CommandType.Reference, guid)
21
64
 
22
65
  @staticmethod
23
66
  def create_array_response(array, runtime_name):
24
67
  return Command(runtime_name, CommandType.Array, array)
25
68
 
26
69
  def drop_first_payload_argument(self):
27
- payload_args = []
28
- payload_args.extend(self.payload)
29
- if len(payload_args) != 0:
30
- payload_args.pop(0)
31
- return Command(self.runtime_name, self.command_type, payload_args)
32
-
33
- def add_arg_to_payload(self, argument):
34
- merged_payload = self.payload + [argument]
35
- return Command(self.runtime_name, self.command_type, merged_payload)
36
-
37
- def prepend_arg_to_payload(self, current_command):
38
- if current_command is None:
39
- return Command(self.runtime_name, self.command_type, self.payload)
40
- else:
41
- return Command(self.runtime_name, self.command_type, [current_command] + self.payload)
70
+ """Legacy method name for backward compatibility."""
71
+ return self.drop_first_payload_arg()
72
+
73
+ def drop_first_payload_arg(self):
74
+ if len(self.payload) <= 1:
75
+ return Command(self.runtime_name, self.command_type, [])
76
+
77
+ new_length = len(self.payload) - 1
78
+ new_payload = [None] * new_length
79
+
80
+ # Copy from index 1 to end
81
+ for i in range(new_length):
82
+ new_payload[i] = self.payload[i + 1]
83
+
84
+ return Command(self.runtime_name, self.command_type, new_payload)
85
+
86
+ def add_arg_to_payload(self, arg):
87
+ old_length = len(self.payload)
88
+ new_payload = [None] * (old_length + 1)
89
+
90
+ if old_length > 0:
91
+ for i in range(old_length):
92
+ new_payload[i] = self.payload[i]
93
+
94
+ new_payload[old_length] = arg
95
+
96
+ return Command(self.runtime_name, self.command_type, new_payload)
97
+
98
+ def prepend_arg_to_payload(self, arg_command):
99
+ if arg_command is None:
100
+ return self
101
+
102
+ old_length = len(self.payload)
103
+ new_payload = [None] * (old_length + 1)
104
+
105
+ # Put new element at the front
106
+ new_payload[0] = arg_command
107
+
108
+ if old_length > 0:
109
+ for i in range(old_length):
110
+ new_payload[i + 1] = self.payload[i]
111
+
112
+ return Command(self.runtime_name, self.command_type, new_payload)
42
113
 
43
114
  def to_string(self):
44
- return 'Target runtime: ' + str(self.runtime_name) + ' Command type: ' + str(
45
- self.command_type) + ' Payload: ' + str(self.payload)
115
+ """Legacy method for backward compatibility."""
116
+ return str(self)
46
117
 
47
118
  def __eq__(self, element):
48
- self.is_equal = False
49
119
  if self is element:
50
- self.is_equal = True
120
+ return True
51
121
  if element is None or self.__class__ != element.__class__:
52
- self.is_equal = False
53
- if self.command_type is element.command_type and self.runtime_name is element.runtime_name:
54
- self.is_equal = True
55
- if len(self.payload) == len(element.payload):
56
- i = 0
57
- array_item_equal = False
58
- for payload_item in self.payload:
59
- if payload_item.__eq__(element.payload[i]):
60
- array_item_equal = True
61
- else:
62
- array_item_equal = False
63
- i += 1
64
- self.is_equal = array_item_equal
65
- else:
66
- self.is_equal = False
67
- return self.is_equal
122
+ return False
123
+ if self.command_type != element.command_type or self.runtime_name != element.runtime_name:
124
+ return False
125
+ if len(self.payload) != len(element.payload):
126
+ return False
127
+
128
+ for i, payload_item in enumerate(self.payload):
129
+ if payload_item != element.payload[i]:
130
+ return False
131
+
132
+ return True
68
133
 
69
134
  def __str__(self):
70
135
  try:
71
136
  result = "RuntimeName "
72
- result += str(self.runtime_name).capitalize()
137
+ result += str(self.runtime_name)
73
138
  result += " "
74
139
  result += "CommandType "
75
140
  result += str(self.command_type)
76
141
  result += " "
77
142
  result += "Payload "
78
-
79
- for i, item in enumerate(self.payload):
143
+
144
+ payload = self.payload
145
+ length = len(payload)
146
+
147
+ for i in range(length):
148
+ item = payload[i]
80
149
  if item is None:
81
150
  result += "null"
82
151
  else:
83
152
  result += str(item)
84
-
85
- if i < len(self.payload) - 1:
153
+
154
+ if i < length - 1:
86
155
  result += " "
87
-
156
+
88
157
  return result
89
158
  except Exception as ex:
90
159
  return f"Error while converting command to string: {str(ex)}"
@@ -13,8 +13,7 @@ def callbackFunc(message_byte_array, message_byte_array_len):
13
13
  :return: Response as byte array
14
14
  """
15
15
  from javonet.core.receiver.Receiver import Receiver
16
- python_receiver = Receiver()
17
16
  if message_byte_array[10] == 11:
18
- return python_receiver.handle_heartbeat(message_byte_array, message_byte_array_len)
17
+ return Receiver.HeartBeat(message_byte_array)
19
18
  else:
20
- return python_receiver.send_command(message_byte_array, message_byte_array_len)
19
+ return Receiver.SendCommand(message_byte_array)
@@ -0,0 +1,5 @@
1
+ from javonet.core.handler.AbstractCommandHandler import AbstractCommandHandler
2
+
3
+ class GetKwargHandler(AbstractCommandHandler):
4
+ def process(self, command):
5
+ raise NotImplementedError("%s is not implemented in Python" % self.__class__.__name__)
@@ -3,6 +3,14 @@
3
3
  The Handler class is the main handler for all commands in Javonet.
4
4
  """
5
5
 
6
+ from javonet.core.handler.HandlerDictionary import handler_dict
7
+ from javonet.core.referenceCache.ReferencesCache import ReferencesCache
8
+ from javonet.utils.TypesHandler import TypesHandler
9
+ from javonet.utils.exception.ExceptionSerializer import ExceptionSerializer
10
+ from javonet.utils.CommandType import CommandType
11
+ from javonet.utils.Command import Command
12
+
13
+
6
14
  from javonet.core.handler.AbstractHandler import AbstractHandler
7
15
  from javonet.core.handler.ValueHandler import ValueHandler
8
16
  from javonet.core.handler.LoadLibraryHandler import LoadLibraryHandler
@@ -22,6 +30,7 @@ from javonet.core.handler.OptimizeHandler import OptimizeHandler
22
30
  from javonet.core.handler.GenerateLibHandler import GenerateLibHandler
23
31
  from javonet.core.handler.InvokeGlobalFunctionHandler import InvokeGlobalFunctionHandler
24
32
  from javonet.core.handler.DestructReferenceHandler import DestructReferenceHandler
33
+ from javonet.core.handler.ArrayReferenceHandler import ArrayReferenceHandler
25
34
  from javonet.core.handler.ArrayGetItemHandler import ArrayGetItemHandler
26
35
  from javonet.core.handler.ArrayGetSizeHandler import ArrayGetSizeHandler
27
36
  from javonet.core.handler.ArrayGetRankHandler import ArrayGetRankHandler
@@ -34,6 +43,9 @@ from javonet.core.handler.InvokeGenericMethodHandler import InvokeGenericMethodH
34
43
  from javonet.core.handler.GetEnumItemHandler import GetEnumItemHandler
35
44
  from javonet.core.handler.GetEnumNameHandler import GetEnumNameHandler
36
45
  from javonet.core.handler.GetEnumValueHandler import GetEnumValueHandler
46
+ from javonet.core.handler.AsRefHandler import AsRefHandler
47
+ from javonet.core.handler.AsOutHandler import AsOutHandler
48
+ from javonet.core.handler.GetRefValueHandler import GetRefValueHandler
37
49
  from javonet.core.handler.EnableNamespaceHandler import EnableNamespaceHandler
38
50
  from javonet.core.handler.EnableTypeHandler import EnableTypeHandler
39
51
  from javonet.core.handler.CreateNullHandler import CreateNullHandler
@@ -45,26 +57,25 @@ from javonet.core.handler.ConvertTypeHandler import ConvertTypeHandler
45
57
  from javonet.core.handler.AddEventListenerHandler import AddEventListenerHandler
46
58
  from javonet.core.handler.PluginWrapperHandler import PluginWrapperHandler
47
59
  from javonet.core.handler.GetAsyncOperationResultHandler import GetAsyncOperationResultHandler
48
- from javonet.core.handler.AsKwargsHandler import AsKwargsHandler
60
+ from javonet.core.handler.GetKwargHandler import GetKwargHandler
49
61
  from javonet.core.handler.GetResultTypeHandler import GetResultTypeHandler
50
62
  from javonet.core.handler.GetGlobalFieldHandler import GetGlobalFieldHandler
51
63
 
52
- from javonet.core.handler.HandlerDictionary import handler_dict
53
- from javonet.core.referenceCache.ReferencesCache import ReferencesCache
54
- from javonet.utils.exception.ExceptionSerializer import ExceptionSerializer
55
- from javonet.utils.CommandType import CommandType
56
- from javonet.utils.TypesHandler import TypesHandler
57
- from javonet.utils.Command import Command
58
64
 
59
65
 
60
66
  class Handler(AbstractHandler):
61
67
  """
62
68
  Handler class for processing commands.
63
69
  """
64
- def __init__(self):
70
+ _initialized = False
71
+
72
+ @staticmethod
73
+ def _initialize():
65
74
  """
66
- Initialize the handler with all command handlers.
75
+ Initialize the handler dictionary with all command handlers.
67
76
  """
77
+ if Handler._initialized:
78
+ return
68
79
  handler_dict[CommandType.Value] = ValueHandler()
69
80
  handler_dict[CommandType.LoadLibrary] = LoadLibraryHandler()
70
81
  handler_dict[CommandType.InvokeStaticMethod] = InvokeStaticMethodHandler()
@@ -83,6 +94,7 @@ class Handler(AbstractHandler):
83
94
  handler_dict[CommandType.GenerateLib] = GenerateLibHandler()
84
95
  handler_dict[CommandType.InvokeGlobalFunction] = InvokeGlobalFunctionHandler()
85
96
  handler_dict[CommandType.DestructReference] = DestructReferenceHandler()
97
+ handler_dict[CommandType.ArrayReference] = ArrayReferenceHandler()
86
98
  handler_dict[CommandType.ArrayGetItem] = ArrayGetItemHandler()
87
99
  handler_dict[CommandType.ArrayGetSize] = ArrayGetSizeHandler()
88
100
  handler_dict[CommandType.ArrayGetRank] = ArrayGetRankHandler()
@@ -95,6 +107,9 @@ class Handler(AbstractHandler):
95
107
  handler_dict[CommandType.GetEnumItem] = GetEnumItemHandler()
96
108
  handler_dict[CommandType.GetEnumName] = GetEnumNameHandler()
97
109
  handler_dict[CommandType.GetEnumValue] = GetEnumValueHandler()
110
+ handler_dict[CommandType.AsRef] = AsRefHandler()
111
+ handler_dict[CommandType.AsOut] = AsOutHandler()
112
+ handler_dict[CommandType.GetRefValue] = GetRefValueHandler()
98
113
  handler_dict[CommandType.EnableNamespace] = EnableNamespaceHandler()
99
114
  handler_dict[CommandType.EnableType] = EnableTypeHandler()
100
115
  handler_dict[CommandType.CreateNull] = CreateNullHandler()
@@ -106,11 +121,13 @@ class Handler(AbstractHandler):
106
121
  handler_dict[CommandType.AddEventListener] = AddEventListenerHandler()
107
122
  handler_dict[CommandType.PluginWrapper] = PluginWrapperHandler()
108
123
  handler_dict[CommandType.GetAsyncOperationResult] = GetAsyncOperationResultHandler()
109
- handler_dict[CommandType.AsKwargs] = AsKwargsHandler()
124
+ handler_dict[CommandType.AsKwargs] = GetKwargHandler()
110
125
  handler_dict[CommandType.GetResultType] = GetResultTypeHandler()
111
126
  handler_dict[CommandType.GetGlobalField] = GetGlobalFieldHandler()
127
+ Handler._initialized = True
112
128
 
113
- def handle_command(self, command):
129
+ @staticmethod
130
+ def handle_command(command):
114
131
  """
115
132
  Handle a command and return a response.
116
133
 
@@ -118,6 +135,7 @@ class Handler(AbstractHandler):
118
135
  :type command: Command
119
136
  :return: Response command :rtype:
120
137
  """
138
+ Handler._initialize()
121
139
  try:
122
140
  if command.command_type == CommandType.RetrieveArray:
123
141
  response_array = handler_dict[CommandType.Reference].handle_command(command.payload[0])
@@ -128,7 +146,7 @@ class Handler(AbstractHandler):
128
146
  raise ValueError("No handler found for command type: {0}".format(command.command_type))
129
147
 
130
148
  response = handler.handle_command(command)
131
- return self.__parse_response(response, command.runtime_name)
149
+ return Handler.__parse_response(response, command.runtime_name)
132
150
  except Exception as e:
133
151
  return ExceptionSerializer.serialize_exception(e, command)
134
152
 
@@ -47,8 +47,8 @@ class InvokeDelegateHandler(AbstractCommandHandler):
47
47
  :param command: Command to handle
48
48
  :return: Command with operation result
49
49
  """
50
- delegate_id = command.get_payload()[0]
51
- args = command.get_payload()[1:]
50
+ delegate_id = command.payload[0]
51
+ args = command.payload[1:]
52
52
  result = Command(command.runtime_name, CommandType.Value, [])
53
53
  result = result.add_arg_to_payload(delegate_id)
54
54
  for arg in args:
@@ -69,8 +69,8 @@ class InvokeGlobalFunctionHandler(AbstractCommandHandler):
69
69
  :param command: Command to handle
70
70
  :return: Command with operation result
71
71
  """
72
- function_name = command.get_payload()[0]
73
- args = command.get_payload()[1:]
72
+ function_name = command.payload[0]
73
+ args = command.payload[1:]
74
74
  result = Command(command.runtime_name, CommandType.Value, [])
75
75
  result = result.add_arg_to_payload(function_name)
76
76
  for arg in args:
@@ -8,29 +8,29 @@ from javonet.core.protocol.CommandSerializer import CommandSerializer
8
8
  from javonet.utils.ConnectionType import ConnectionType
9
9
  from javonet.utils.RuntimeName import RuntimeName
10
10
 
11
- handler = Handler()
12
-
13
11
 
14
12
  class Interpreter(object):
15
13
  """
16
14
  Class responsible for interpreting and executing Javonet commands.
17
15
  """
18
16
 
19
- def execute(self, command, connection_data):
20
- message_byte_array = CommandSerializer().serialize(command, connection_data)
17
+ @staticmethod
18
+ def execute(command, connection_data):
19
+ message_byte_array = CommandSerializer.serialize(command, connection_data)
21
20
  if connection_data.connection_type == ConnectionType.WebSocket:
22
21
  from javonet.core.webSocketClient.WebSocketClient import WebSocketClient
23
22
  response_byte_array = WebSocketClient.send_message(connection_data.hostname, message_byte_array)
24
23
  elif (command.runtime_name == RuntimeName.python27) & (
25
24
  connection_data.connection_type == ConnectionType.InMemory):
26
25
  from javonet.core.receiver.Receiver import Receiver
27
- response_byte_array = Receiver().SendCommand(message_byte_array, len(message_byte_array))
26
+ response_byte_array = Receiver.SendCommand(message_byte_array)
28
27
  else:
29
28
  from javonet.core.transmitter.Transmitter import Transmitter
30
29
  response_byte_array = Transmitter.send_command(message_byte_array)
31
30
 
32
- return CommandDeserializer(response_byte_array).deserialize()
31
+ return CommandDeserializer.deserialize(response_byte_array)
33
32
 
34
- def process(self, message_byte_array):
35
- received_command = CommandDeserializer(message_byte_array).deserialize()
36
- return handler.handle_command(received_command)
33
+ @staticmethod
34
+ def process(message_byte_array):
35
+ received_command = CommandDeserializer.deserialize(message_byte_array)
36
+ return Handler.handle_command(received_command)