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,132 +1,132 @@
1
- require 'pathname'
2
- require_relative './internal/abstract_config_runtime_factory'
3
- require_relative './runtime_context'
4
- require_relative './../utils/connection_type'
5
- require_relative './tools/json_file_resolver'
6
- require_relative './../core/transmitter/transmitter'
7
-
8
- # The ConfigRuntimeFactory class implements the AbstractConfigRuntimeFactory interface and provides methods for creating runtime contexts.
9
- # Each method corresponds to a specific runtime (CLR, JVM, .NET Core, Perl, Ruby, Node.js, Python) and returns a RuntimeContext instance for that runtime.
10
- # # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
11
- class ConfigRuntimeFactory < AbstractConfigRuntimeFactory
12
-
13
- def initialize(path)
14
- @path = path
15
- Transmitter.set_config_source(path)
16
- end
17
-
18
- # Creates a RuntimeContext instance to interact with CLR runtime.
19
- # @param config_name [String] The name of the configuration to use.
20
- # @return [RuntimeContext] a RuntimeContext instance for the CLR runtime
21
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
22
- def clr(config_name = "default")
23
- get_runtime_context(RuntimeNameJavonet::CLR, config_name)
24
- end
25
-
26
- # Creates a RuntimeContext instance to interact with JVM runtime.
27
- # @param config_name [String] The name of the configuration to use.
28
- # @return [RuntimeContext] a RuntimeContext instance for the JVM runtime
29
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
30
- def jvm(config_name = "default")
31
- get_runtime_context(RuntimeNameJavonet::JVM, config_name)
32
- end
33
-
34
- # Creates a RuntimeContext instance to interact with .NET runtime.
35
- # @param config_name [String] The name of the configuration to use.
36
- # @return [RuntimeContext] a RuntimeContext instance for the .NET runtime
37
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
38
- def netcore(config_name = "default")
39
- get_runtime_context(RuntimeNameJavonet::NETCORE, config_name)
40
- end
41
-
42
- # Creates a RuntimeContext instance to interact with Perl runtime.
43
- # @param config_name [String] The name of the configuration to use.
44
- # @return [RuntimeContext] a RuntimeContext instance for the Perl runtime
45
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
46
- def perl(config_name = "default")
47
- get_runtime_context(RuntimeNameJavonet::PERL, config_name)
48
- end
49
-
50
- # Creates a RuntimeContext instance to interact with Ruby runtime.
51
- # @param config_name [String] The name of the configuration to use.
52
- # @return [RuntimeContext] a RuntimeContext instance for the Ruby runtime
53
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
54
- def ruby(config_name = "default")
55
- get_runtime_context(RuntimeNameJavonet::RUBY, config_name)
56
- end
57
-
58
- # Creates a RuntimeContext instance to interact with Node.js runtime.
59
- # @param config_name [String] The name of the configuration to use.
60
- # @return [RuntimeContext] a RuntimeContext instance for the Node.js runtime
61
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
62
- def nodejs(config_name = "default")
63
- get_runtime_context(RuntimeNameJavonet::NODEJS, config_name)
64
- end
65
-
66
- # Creates a RuntimeContext instance to interact with Python runtime.
67
- # @param config_name [String] The name of the configuration to use.
68
- # @return [RuntimeContext] a RuntimeContext instance for the Python runtime
69
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
70
- def python(config_name = "default")
71
- get_runtime_context(RuntimeNameJavonet::PYTHON, config_name)
72
- end
73
-
74
- # Creates a RuntimeContext instance to interact with PHP runtime.
75
- # @param config_name [String] The name of the configuration to use.
76
- # @return [RuntimeContext] a RuntimeContext instance for the PHP runtime
77
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
78
- def php(config_name = "default")
79
- get_runtime_context(RuntimeNameJavonet::PHP, config_name)
80
- end
81
-
82
- # Creates a RuntimeContext instance to interact with Python 2.7 runtime.
83
- # @param config_name [String] The name of the configuration to use.
84
- # @return [RuntimeContext] a RuntimeContext instance for the Python 2.7 runtime
85
- # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
86
- def python27(config_name = "default")
87
- get_runtime_context(RuntimeNameJavonet::PYTHON27, config_name)
88
- end
89
-
90
- def get_runtime_context(runtime, config_name)
91
- jfr = JsonFileResolver.new(@path)
92
-
93
- begin
94
- license_key = jfr.get_license_key
95
- Transmitter.activate_with_credentials(license_key)
96
- rescue
97
- # licenseKey not found - do nothing
98
- end
99
-
100
- conn_type = jfr.get_channel_type(RuntimeNameHandler.get_name(runtime), config_name)
101
- if conn_type == "tcp"
102
- conn_data = TcpConnectionData.new(jfr.get_channel_host(RuntimeNameHandler.get_name(runtime), config_name),
103
- jfr.get_channel_port(RuntimeNameHandler.get_name(runtime), config_name))
104
- rtm_ctx = RuntimeContext.get_instance(runtime, ConnectionType::TCP, conn_data)
105
- elsif conn_type == "webSocket"
106
- conn_data = WsConnectionData.new(jfr.get_channel_host(RuntimeNameHandler.get_name(runtime), config_name))
107
- rtm_ctx = RuntimeContext.get_instance(runtime, ConnectionType::WEB_SOCKET, conn_data)
108
- elsif conn_type == "inMemory"
109
- rtm_ctx = RuntimeContext.get_instance(runtime, ConnectionType::IN_MEMORY, nil)
110
- else
111
- raise "Invalid connection type"
112
- end
113
- load_modules(runtime, config_name, jfr, rtm_ctx)
114
- rtm_ctx
115
- end
116
-
117
- def load_modules(runtime, config_name, jfr, rtm_ctx)
118
- modules = jfr.get_modules(RuntimeNameHandler.get_name(runtime), config_name)
119
- .split(',')
120
- .reject(&:empty?)
121
-
122
- config_directory_absolute_path = File.dirname(@path)
123
-
124
- modules.each do |mod|
125
- if Pathname.new(mod).absolute?
126
- rtm_ctx.load_library(mod)
127
- else
128
- rtm_ctx.load_library(File.join(config_directory_absolute_path, mod))
129
- end
130
- end
131
- end
132
- end
1
+ require 'pathname'
2
+ require_relative './internal/abstract_config_runtime_factory'
3
+ require_relative './runtime_context'
4
+ require_relative './../utils/connection_type'
5
+ require_relative './tools/json_file_resolver'
6
+ require_relative './../core/transmitter/transmitter'
7
+
8
+ # The ConfigRuntimeFactory class implements the AbstractConfigRuntimeFactory interface and provides methods for creating runtime contexts.
9
+ # Each method corresponds to a specific runtime (CLR, JVM, .NET Core, Perl, Ruby, Node.js, Python) and returns a RuntimeContext instance for that runtime.
10
+ # # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
11
+ class ConfigRuntimeFactory < AbstractConfigRuntimeFactory
12
+
13
+ def initialize(path)
14
+ @path = path
15
+ Transmitter.set_config_source(path)
16
+ end
17
+
18
+ # Creates a RuntimeContext instance to interact with CLR runtime.
19
+ # @param config_name [String] The name of the configuration to use.
20
+ # @return [RuntimeContext] a RuntimeContext instance for the CLR runtime
21
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
22
+ def clr(config_name = "default")
23
+ get_runtime_context(RuntimeNameJavonet::CLR, config_name)
24
+ end
25
+
26
+ # Creates a RuntimeContext instance to interact with JVM runtime.
27
+ # @param config_name [String] The name of the configuration to use.
28
+ # @return [RuntimeContext] a RuntimeContext instance for the JVM runtime
29
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
30
+ def jvm(config_name = "default")
31
+ get_runtime_context(RuntimeNameJavonet::JVM, config_name)
32
+ end
33
+
34
+ # Creates a RuntimeContext instance to interact with .NET runtime.
35
+ # @param config_name [String] The name of the configuration to use.
36
+ # @return [RuntimeContext] a RuntimeContext instance for the .NET runtime
37
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
38
+ def netcore(config_name = "default")
39
+ get_runtime_context(RuntimeNameJavonet::NETCORE, config_name)
40
+ end
41
+
42
+ # Creates a RuntimeContext instance to interact with Perl runtime.
43
+ # @param config_name [String] The name of the configuration to use.
44
+ # @return [RuntimeContext] a RuntimeContext instance for the Perl runtime
45
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
46
+ def perl(config_name = "default")
47
+ get_runtime_context(RuntimeNameJavonet::PERL, config_name)
48
+ end
49
+
50
+ # Creates a RuntimeContext instance to interact with Ruby runtime.
51
+ # @param config_name [String] The name of the configuration to use.
52
+ # @return [RuntimeContext] a RuntimeContext instance for the Ruby runtime
53
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
54
+ def ruby(config_name = "default")
55
+ get_runtime_context(RuntimeNameJavonet::RUBY, config_name)
56
+ end
57
+
58
+ # Creates a RuntimeContext instance to interact with Node.js runtime.
59
+ # @param config_name [String] The name of the configuration to use.
60
+ # @return [RuntimeContext] a RuntimeContext instance for the Node.js runtime
61
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
62
+ def nodejs(config_name = "default")
63
+ get_runtime_context(RuntimeNameJavonet::NODEJS, config_name)
64
+ end
65
+
66
+ # Creates a RuntimeContext instance to interact with Python runtime.
67
+ # @param config_name [String] The name of the configuration to use.
68
+ # @return [RuntimeContext] a RuntimeContext instance for the Python runtime
69
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
70
+ def python(config_name = "default")
71
+ get_runtime_context(RuntimeNameJavonet::PYTHON, config_name)
72
+ end
73
+
74
+ # Creates a RuntimeContext instance to interact with PHP runtime.
75
+ # @param config_name [String] The name of the configuration to use.
76
+ # @return [RuntimeContext] a RuntimeContext instance for the PHP runtime
77
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
78
+ def php(config_name = "default")
79
+ get_runtime_context(RuntimeNameJavonet::PHP, config_name)
80
+ end
81
+
82
+ # Creates a RuntimeContext instance to interact with Python 2.7 runtime.
83
+ # @param config_name [String] The name of the configuration to use.
84
+ # @return [RuntimeContext] a RuntimeContext instance for the Python 2.7 runtime
85
+ # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
86
+ def python27(config_name = "default")
87
+ get_runtime_context(RuntimeNameJavonet::PYTHON27, config_name)
88
+ end
89
+
90
+ def get_runtime_context(runtime, config_name)
91
+ jfr = JsonFileResolver.new(@path)
92
+
93
+ begin
94
+ license_key = jfr.get_license_key
95
+ Transmitter.activate_with_credentials(license_key)
96
+ rescue
97
+ # licenseKey not found - do nothing
98
+ end
99
+
100
+ conn_type = jfr.get_channel_type(RuntimeNameHandler.get_name(runtime), config_name)
101
+ if conn_type == "tcp"
102
+ conn_data = TcpConnectionData.new(jfr.get_channel_host(RuntimeNameHandler.get_name(runtime), config_name),
103
+ jfr.get_channel_port(RuntimeNameHandler.get_name(runtime), config_name))
104
+ rtm_ctx = RuntimeContext.get_instance(runtime, ConnectionType::TCP, conn_data)
105
+ elsif conn_type == "webSocket"
106
+ conn_data = WsConnectionData.new(jfr.get_channel_host(RuntimeNameHandler.get_name(runtime), config_name))
107
+ rtm_ctx = RuntimeContext.get_instance(runtime, ConnectionType::WEB_SOCKET, conn_data)
108
+ elsif conn_type == "inMemory"
109
+ rtm_ctx = RuntimeContext.get_instance(runtime, ConnectionType::IN_MEMORY, nil)
110
+ else
111
+ raise "Invalid connection type"
112
+ end
113
+ load_modules(runtime, config_name, jfr, rtm_ctx)
114
+ rtm_ctx
115
+ end
116
+
117
+ def load_modules(runtime, config_name, jfr, rtm_ctx)
118
+ modules = jfr.get_modules(RuntimeNameHandler.get_name(runtime), config_name)
119
+ .split(',')
120
+ .reject(&:empty?)
121
+
122
+ config_directory_absolute_path = File.dirname(@path)
123
+
124
+ modules.each do |mod|
125
+ if Pathname.new(mod).absolute?
126
+ rtm_ctx.load_library(mod)
127
+ else
128
+ rtm_ctx.load_library(File.join(config_directory_absolute_path, mod))
129
+ end
130
+ end
131
+ end
132
+ end
@@ -0,0 +1,32 @@
1
+ require_relative './../../utils/connection_type'
2
+
3
+ class Config
4
+ attr_accessor :runtime, :connection_data, :plugins, :modules
5
+
6
+ def initialize(runtime, connection_data, plugins = "", modules = "")
7
+ @runtime = runtime
8
+ @connection_data = connection_data
9
+ @plugins = plugins
10
+ @modules = modules
11
+ end
12
+
13
+ def to_s
14
+ parts = []
15
+ parts << "Runtime: #{@runtime}"
16
+
17
+ if @connection_data
18
+ parts << "Host: #{@connection_data}"
19
+ end
20
+
21
+ if @plugins && !@plugins.strip.empty?
22
+ parts << "Plugins: #{@plugins}"
23
+ end
24
+
25
+ if @modules && !@modules.strip.empty?
26
+ parts << "Modules: #{@modules}"
27
+ end
28
+
29
+ parts.join(", ")
30
+ end
31
+ end
32
+
@@ -0,0 +1,27 @@
1
+ module ConfigPriority
2
+ RUNTIME_SPECIFIC_ENV = 1
3
+ GLOBAL_ENV = 2
4
+ RUNTIME_SPECIFIC_FILE = 3
5
+ GLOBAL_FILE = 4
6
+ USER = 5
7
+ DEFAULT_LIBRARY = 6
8
+
9
+ def self.to_s(priority)
10
+ case priority
11
+ when RUNTIME_SPECIFIC_ENV
12
+ "RUNTIME_SPECIFIC_ENV"
13
+ when GLOBAL_ENV
14
+ "GLOBAL_ENV"
15
+ when RUNTIME_SPECIFIC_FILE
16
+ "RUNTIME_SPECIFIC_FILE"
17
+ when GLOBAL_FILE
18
+ "GLOBAL_FILE"
19
+ when USER
20
+ "USER"
21
+ when DEFAULT_LIBRARY
22
+ "DEFAULT_LIBRARY"
23
+ else
24
+ "UNKNOWN_PRIORITY"
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,80 @@
1
+ require_relative './../../../utils/runtime_name_handler'
2
+ require_relative './../../../utils/tcp_connection_data'
3
+ require_relative './../../../utils/ws_connection_data'
4
+ require_relative './../../../utils/connection_type'
5
+
6
+ class ConfigResolver
7
+ def self.try_parse_runtime(runtime)
8
+ if runtime.nil? || runtime.strip.empty?
9
+ raise "Runtime string cannot be null or whitespace."
10
+ end
11
+ runtime = runtime.strip.downcase
12
+ RuntimeNameHandler.get_runtime(runtime)
13
+ end
14
+
15
+ def self.build_connection_data(host_value)
16
+ if host_value.nil? || host_value.strip.empty?
17
+ return nil # In-memory connection
18
+ end
19
+ hv = host_value.strip
20
+ lower = hv.downcase
21
+
22
+ if lower == "inmemory" || lower == "in-memory"
23
+ return nil # In-memory connection
24
+ end
25
+
26
+ if lower.start_with?("ws://") || lower.start_with?("wss://")
27
+ return WsConnectionData.new(hv)
28
+ end
29
+
30
+ if lower.start_with?("tcp://")
31
+ begin
32
+ return ConfigResolver.parse_tcp(hv[6..-1])
33
+ rescue
34
+ return nil # In-memory connection
35
+ end
36
+ end
37
+
38
+ colon = hv.index(":")
39
+ if colon && colon > 0 && colon < hv.length - 1
40
+ port_part = hv[colon + 1..-1]
41
+ slash = port_part.index("/")
42
+ if slash && slash >= 0
43
+ port_part = port_part[0...slash]
44
+ end
45
+ begin
46
+ port = Integer(port_part)
47
+ host_only = hv[0...colon]
48
+ if !host_only.strip.empty?
49
+ begin
50
+ return TcpConnectionData.new(host_only, port)
51
+ rescue
52
+ return nil # In-memory connection
53
+ end
54
+ end
55
+ rescue
56
+ # Continue to return in-memory
57
+ end
58
+ end
59
+
60
+ nil # In-memory connection
61
+ end
62
+
63
+ def self.parse_tcp(address)
64
+ slash = address.index("/")
65
+ host_port = slash && slash >= 0 ? address[0...slash] : address
66
+ colon = host_port.rindex(":")
67
+ if !colon || colon <= 0 || colon >= host_port.length - 1
68
+ raise "Invalid tcp:// format."
69
+ end
70
+ host = host_port[0...colon]
71
+ port_str = host_port[colon + 1..-1]
72
+ begin
73
+ port = Integer(port_str)
74
+ rescue
75
+ raise "Invalid port in tcp:// address."
76
+ end
77
+ TcpConnectionData.new(host, port)
78
+ end
79
+ end
80
+
@@ -0,0 +1,89 @@
1
+ require_relative 'config_resolver'
2
+ require_relative '../config'
3
+ require_relative '../configs_dictionary'
4
+ require_relative '../config_priority'
5
+ require_relative './../../tools/activation_helper'
6
+
7
+ class ConnectionStringConfigResolver < ConfigResolver
8
+ def self.add_configs(priority, connection_string_source)
9
+ if connection_string_source.nil? || connection_string_source.strip.empty?
10
+ raise "Connection string source cannot be null or empty."
11
+ end
12
+
13
+ normalized = connection_string_source.gsub("\r\n", "\n").gsub("\r", "\n")
14
+ lines = normalized.split("\n").map(&:strip).reject(&:empty?)
15
+
16
+ lines.each do |line|
17
+ if line.start_with?("#") || line.start_with?("//")
18
+ next
19
+ end
20
+ if line.downcase.start_with?("licensekey")
21
+ ConnectionStringConfigResolver._set_license_key(line)
22
+ next
23
+ end
24
+ begin
25
+ key_values = ConnectionStringConfigResolver._parse_key_values(line)
26
+ config_name = key_values["name"]
27
+ runtime_value = key_values["runtime"]
28
+
29
+ if config_name.nil? || config_name.strip.empty?
30
+ raise "Missing or empty config name."
31
+ end
32
+ if runtime_value.nil? || runtime_value.strip.empty?
33
+ raise "Missing or empty runtime."
34
+ end
35
+
36
+ runtime_name = ConfigResolver.try_parse_runtime(runtime_value)
37
+ host_value = key_values["host"]
38
+ connection_data = ConfigResolver.build_connection_data(host_value)
39
+ plugins = key_values["plugins"] || ""
40
+ modules = key_values["modules"] || ""
41
+
42
+ config = Config.new(runtime_name, connection_data, plugins, modules)
43
+ ConfigsDictionary.add_config(config_name, priority, config)
44
+ rescue => ex
45
+ puts "Failed to parse config line: '#{line}'. Reason: #{ex}"
46
+ raise
47
+ end
48
+ end
49
+ end
50
+
51
+ def self._set_license_key(line)
52
+ eq = line.index("=")
53
+ if eq && eq > 0 && eq < line.length - 1
54
+ value_portion = line[eq + 1..-1].strip
55
+ semicolon = value_portion.index(";")
56
+ if semicolon && semicolon >= 0
57
+ value_portion = value_portion[0...semicolon].strip
58
+ end
59
+ hash_idx = value_portion.index("#")
60
+ if hash_idx && hash_idx >= 0
61
+ value_portion = value_portion[0...hash_idx].strip
62
+ end
63
+ slashes = value_portion.index("//")
64
+ if slashes && slashes >= 0
65
+ value_portion = value_portion[0...slashes].strip
66
+ end
67
+ ActivationHelper.temporary_license_key = value_portion
68
+ end
69
+ end
70
+
71
+ def self._parse_key_values(line)
72
+ result = {}
73
+ segments = line.split(";").map(&:strip).reject(&:empty?)
74
+ segments.each do |segment|
75
+ eq = segment.index("=")
76
+ if !eq || eq <= 0 || eq == segment.length - 1
77
+ puts "Ignoring malformed token '#{segment}' in line: #{line}"
78
+ next
79
+ end
80
+ key = segment[0...eq].strip.downcase
81
+ value = segment[eq + 1..-1].strip
82
+ if !key.empty?
83
+ result[key] = value
84
+ end
85
+ end
86
+ result
87
+ end
88
+ end
89
+
@@ -0,0 +1,66 @@
1
+ require 'json'
2
+ require_relative 'config_resolver'
3
+ require_relative '../config'
4
+ require_relative '../configs_dictionary'
5
+ require_relative '../config_priority'
6
+ require_relative './../../tools/activation_helper'
7
+
8
+ class JsonConfigResolver < ConfigResolver
9
+ def self.add_configs(priority, json_object)
10
+ if json_object.nil?
11
+ raise "json_object cannot be nil"
12
+ end
13
+ if !json_object.is_a?(Hash)
14
+ raise "Root JSON element must be a dict/object."
15
+ end
16
+
17
+ license_key = json_object["licenseKey"]
18
+ if license_key.is_a?(String)
19
+ ActivationHelper.temporary_license_key = license_key.strip
20
+ end
21
+
22
+ configs = json_object["configurations"]
23
+ if !configs.is_a?(Hash)
24
+ raise "JSON must contain 'configurations' object."
25
+ end
26
+
27
+ configs.each do |config_name, cfg|
28
+ begin
29
+ if !cfg.is_a?(Hash)
30
+ raise "Configuration value must be an object/dict."
31
+ end
32
+
33
+ runtime_value = JsonConfigResolver._get_required_string(cfg, "runtime")
34
+ runtime_name = ConfigResolver.try_parse_runtime(runtime_value)
35
+
36
+ host = JsonConfigResolver._get_optional_string(cfg, "host")
37
+ connection_data = ConfigResolver.build_connection_data(host)
38
+
39
+ plugins = JsonConfigResolver._get_optional_string(cfg, "plugins")
40
+ modules = JsonConfigResolver._get_optional_string(cfg, "modules")
41
+
42
+ config = Config.new(runtime_name, connection_data, plugins, modules)
43
+ ConfigsDictionary.add_config(config_name, priority, config)
44
+ rescue => ex
45
+ puts "Failed to add config '#{config_name}': #{ex}"
46
+ end
47
+ end
48
+ end
49
+
50
+ def self._get_required_string(obj, property)
51
+ value = obj[property]
52
+ if !value.is_a?(String) || value.strip.empty?
53
+ raise "Missing or invalid '#{property}' property."
54
+ end
55
+ value.strip
56
+ end
57
+
58
+ def self._get_optional_string(obj, property)
59
+ value = obj[property]
60
+ if value.is_a?(String)
61
+ return value
62
+ end
63
+ ""
64
+ end
65
+ end
66
+
@@ -0,0 +1,77 @@
1
+ require 'yaml'
2
+ require_relative 'config_resolver'
3
+ require_relative '../config'
4
+ require_relative '../configs_dictionary'
5
+ require_relative '../config_priority'
6
+ require_relative './../../tools/activation_helper'
7
+
8
+ class YamlConfigResolver < ConfigResolver
9
+ def self.add_configs(priority, yaml_string)
10
+ if yaml_string.nil? || yaml_string.strip.empty?
11
+ raise "YAML string cannot be null or empty."
12
+ end
13
+
14
+ begin
15
+ data = YAML.safe_load(yaml_string)
16
+ rescue => ex
17
+ raise "Failed to parse YAML: #{ex}"
18
+ end
19
+
20
+ if !data.is_a?(Hash)
21
+ raise "Root YAML node must be a mapping."
22
+ end
23
+
24
+ license_key = data["licenseKey"]
25
+ if license_key.is_a?(String)
26
+ ActivationHelper.temporary_license_key = license_key.strip
27
+ end
28
+
29
+ configs = data["configurations"]
30
+ if !configs.is_a?(Hash)
31
+ raise "YAML must contain 'configurations' mapping."
32
+ end
33
+
34
+ configs.each do |config_name, cfg|
35
+ if !config_name.is_a?(String) || config_name.strip.empty?
36
+ puts "Skipping entry with empty config name."
37
+ next
38
+ end
39
+ if !cfg.is_a?(Hash)
40
+ puts "Skipping '#{config_name}': value is not a mapping."
41
+ next
42
+ end
43
+ begin
44
+ runtime_value = YamlConfigResolver._get_required_string(cfg, "runtime")
45
+ runtime_name = ConfigResolver.try_parse_runtime(runtime_value)
46
+
47
+ host = YamlConfigResolver._get_optional_string(cfg, "host")
48
+ connection_data = ConfigResolver.build_connection_data(host)
49
+
50
+ plugins = YamlConfigResolver._get_optional_string(cfg, "plugins")
51
+ modules = YamlConfigResolver._get_optional_string(cfg, "modules")
52
+
53
+ config = Config.new(runtime_name, connection_data, plugins, modules)
54
+ ConfigsDictionary.add_config(config_name, priority, config)
55
+ rescue => ex
56
+ puts "Failed to add config '#{config_name}': #{ex}"
57
+ end
58
+ end
59
+ end
60
+
61
+ def self._get_required_string(mapping, key)
62
+ value = mapping[key]
63
+ if !value.is_a?(String) || value.strip.empty?
64
+ raise "Missing or invalid '#{key}' property."
65
+ end
66
+ value.strip
67
+ end
68
+
69
+ def self._get_optional_string(mapping, key)
70
+ value = mapping[key]
71
+ if value.is_a?(String)
72
+ return value
73
+ end
74
+ ""
75
+ end
76
+ end
77
+