javonet-ruby-sdk 2.3.0 → 2.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Clr/Windows/X64/Javonet.Clr.Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Clr/Windows/X64/JavonetClrRuntime.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Jvm/Linux/X64/JavonetJvmRuntime.jar +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Jvm/MacOs/X64/JavonetJvmRuntime.jar +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Jvm/Windows/X64/JavonetJvmRuntime.jar +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetActivationService.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetCppRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetGoRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetJvmRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNetcoreRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejs1816RuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetNodejsRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPerlRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetPythonRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libJavonetRubyRuntimeNative.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libUtils.so +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetActivationService.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetCppRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetGoRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetJvmRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNetcoreRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejs1816RuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetNodejsRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPerlRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetPythonRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libJavonetRubyRuntimeNative.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/libUtils.dylib +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/MacOs/X64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetActivationService.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetClrRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetCppRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetGoRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetJvmRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNetcoreRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejs1816RuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetNodejsRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPerlRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetPythonRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/JavonetRubyRuntimeNative.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/version.txt +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Netcore/Linux/X64/Javonet.Netcore.Core.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Netcore/Linux/X64/Javonet.Netcore.Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Netcore/MacOs/X64/Javonet.Netcore.Core.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Netcore/MacOs/X64/Javonet.Netcore.Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Netcore/Windows/X64/Javonet.Netcore.Core.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Netcore/Windows/X64/Javonet.Netcore.Utils.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/interpreter/Interpreter.js +3 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/protocol/CommandSerializer.js +21 -23
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/transmitter/Transmitter.js +11 -7
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/core/transmitter/TransmitterWrapper.js +6 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/utils/RuntimeNameHandler.js +30 -0
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Linux/X64/utils/TcpConnectionData.js +43 -6
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/interpreter/Interpreter.js +3 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/protocol/CommandSerializer.js +21 -23
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/transmitter/Transmitter.js +11 -7
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/core/transmitter/TransmitterWrapper.js +6 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/RuntimeNameHandler.js +30 -0
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/MacOs/X64/utils/TcpConnectionData.js +43 -6
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/interpreter/Interpreter.js +3 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/protocol/CommandSerializer.js +21 -23
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/transmitter/Transmitter.js +11 -7
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/core/transmitter/TransmitterWrapper.js +6 -2
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/RuntimeNameHandler.js +30 -0
- data/lib/javonet-ruby-sdk/Binaries/Nodejs/Windows/X64/utils/TcpConnectionData.js +43 -6
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/CPAN/Meta/Requirements/Range.pm +776 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/CPAN/Meta/Requirements.pm +834 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/CPAN/Requirements/Dynamic.pm +384 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Config/MakeMaker.pm +141 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/Config.pm +43 -5
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/HasCompiler.pm +308 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/ExtUtils/InstallPaths.pm +3 -3
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/Module/Build/Tiny.pm +26 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/Path/Tiny.pm +10 -3
- 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
- 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
- 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
- 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
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Moose/Moose.so +0 -0
- 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
- 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
- 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
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Want/Want.so +0 -0
- 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
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/deps/lib/perl5/x86_64-linux-gnu-thread-multi/perllocal.pod +149 -83
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Transmitter/PerlTransmitter.pm +15 -10
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Transmitter/PerlTransmitterWrapper.pm +34 -19
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Javonet.pm +17 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/ConnectionType.pm +2 -1
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +31 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Sdk/Internal/RuntimeFactory.pm +18 -10
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/CPAN/Meta/Requirements/Range.pm +776 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/CPAN/Meta/Requirements.pm +834 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/CPAN/Requirements/Dynamic.pm +384 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Config/MakeMaker.pm +141 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/Config.pm +43 -5
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/HasCompiler.pm +308 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/ExtUtils/InstallPaths.pm +3 -3
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Module/Build/Tiny.pm +26 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/Path/Tiny.pm +10 -3
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/perllocal.pod +149 -83
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Transmitter/PerlTransmitter.pm +15 -10
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Transmitter/PerlTransmitterWrapper.pm +34 -19
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Javonet.pm +17 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/ConnectionType.pm +2 -1
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +31 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Sdk/Internal/RuntimeFactory.pm +18 -10
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Data/UUID/UUID.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/PPI/XS/XS.xs.dll +0 -0
- 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
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/Want/Want.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/auto/autobox/autobox.xs.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/MSWin32-x64-multi-thread/perllocal.pod +18 -18
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Transmitter/PerlTransmitter.pm +15 -10
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Core/Transmitter/PerlTransmitterWrapper.pm +34 -19
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Javonet.pm +17 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/ConnectionType.pm +2 -1
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/RuntimeContext.pm +31 -9
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/lib/Javonet/Sdk/Internal/RuntimeFactory.pm +18 -10
- data/lib/javonet-ruby-sdk/Binaries/Python/Linux/X64/javonet/core/interpreter/Interpreter.py +7 -5
- data/lib/javonet-ruby-sdk/Binaries/Python/Linux/X64/javonet/core/protocol/CommandSerializer.py +8 -15
- data/lib/javonet-ruby-sdk/Binaries/Python/Linux/X64/javonet/core/transmitter/Transmitter.py +28 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/{Windows/X64/javonet/core/transmitter/PythonTransmitterWrapper.py → Linux/X64/javonet/core/transmitter/TransmitterWrapper.py} +86 -69
- data/lib/javonet-ruby-sdk/Binaries/Python/Linux/X64/javonet/utils/RuntimeNameHandler.py +26 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Linux/X64/javonet/utils/TcpConnectionData.py +29 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/interpreter/Interpreter.py +7 -5
- data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/protocol/CommandSerializer.py +8 -15
- data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/transmitter/Transmitter.py +28 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/{Linux/X64/javonet/core/transmitter/PythonTransmitterWrapper.py → MacOs/X64/javonet/core/transmitter/TransmitterWrapper.py} +27 -10
- data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/RuntimeNameHandler.py +26 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/utils/TcpConnectionData.py +29 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/__pycache__/PythonStringBuilder.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/generator/internal/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/AbstractCommandHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ArrayGetItemHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ArrayGetRankHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ArrayGetSizeHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ArrayHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ArraySetItemHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/CastingHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/CreateClassInstanceHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/DestructReferenceHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/GetEnumItemHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/GetEnumNameHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/GetEnumValueHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/GetInstanceFieldHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/GetStaticFieldHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/GetTypeHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/InvokeInstanceMethodHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/InvokeStaticMethodHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/LoadLibraryHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ResolveInstanceHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/SetInstanceFieldHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/SetStaticFieldHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/ValueHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/CommandHandler/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__pycache__/AbstractHandler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__pycache__/Handler.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__pycache__/HandlerDictionary.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__pycache__/ReferencesCache.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/handler/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/interpreter/Interpreter.py +7 -5
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/interpreter/__pycache__/Interpreter.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/interpreter/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/CommandSerializer.py +8 -15
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__pycache__/CommandDeserializer.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__pycache__/CommandSerializer.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__pycache__/TypeDeserializer.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__pycache__/TypeSerializer.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/protocol/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/receiver/__pycache__/Receiver.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/receiver/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/transmitter/Transmitter.py +28 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/{MacOs/X64/javonet/core/transmitter/PythonTransmitterWrapper.py → Windows/X64/javonet/core/transmitter/TransmitterWrapper.py} +86 -69
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/RuntimeNameHandler.py +26 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/TcpConnectionData.py +29 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/Command.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/CommandType.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/ConnectionType.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/ExceptionType.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/RuntimeName.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/StringEncodingMode.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/TcpConnectionData.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/Type.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/__pycache__/ExceptionSerializer.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/exception/__pycache__/__init__.cpython-311.pyc +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/interpreter/interpreter.rb +5 -6
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/protocol/command_serializer.rb +8 -24
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/transmitter/transmitter.rb +21 -12
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/core/transmitter/transmitter_wrapper.rb +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/command.rb +2 -1
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/runtime_name.rb +0 -30
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/runtime_name_handler.rb +34 -0
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Linux/X64/utils/tcp_connection_data.rb +33 -0
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/interpreter/interpreter.rb +5 -6
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/protocol/command_serializer.rb +8 -24
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/transmitter/transmitter.rb +21 -12
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/core/transmitter/transmitter_wrapper.rb +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/command.rb +2 -1
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/runtime_name.rb +0 -30
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/runtime_name_handler.rb +34 -0
- data/lib/javonet-ruby-sdk/Binaries/Ruby/MacOs/X64/utils/tcp_connection_data.rb +33 -0
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/interpreter/interpreter.rb +5 -6
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/protocol/command_serializer.rb +8 -24
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/transmitter/transmitter.rb +21 -12
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/core/transmitter/transmitter_wrapper.rb +1 -1
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/command.rb +2 -1
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/runtime_name.rb +0 -30
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/runtime_name_handler.rb +34 -0
- data/lib/javonet-ruby-sdk/Binaries/Ruby/Windows/X64/utils/tcp_connection_data.rb +33 -0
- data/lib/javonet-ruby-sdk/Binaries/version.txt +1 -1
- data/lib/javonet-ruby-sdk/core/interpreter/interpreter.rb +5 -6
- data/lib/javonet-ruby-sdk/core/protocol/command_serializer.rb +8 -24
- data/lib/javonet-ruby-sdk/core/transmitter/transmitter.rb +21 -12
- data/lib/javonet-ruby-sdk/core/transmitter/transmitter_wrapper.rb +1 -1
- data/lib/javonet-ruby-sdk/sdk/config_runtime_factory.rb +92 -0
- data/lib/javonet-ruby-sdk/sdk/internal/abstract_config_runtime_factory.rb +30 -0
- data/lib/javonet-ruby-sdk/sdk/{internal/invocation_context.rb → invocation_context.rb} +6 -6
- data/lib/javonet-ruby-sdk/sdk/javonet.rb +53 -0
- data/lib/javonet-ruby-sdk/sdk/{internal/runtime_context.rb → runtime_context.rb} +35 -35
- data/lib/javonet-ruby-sdk/sdk/{internal/runtime_factory.rb → runtime_factory.rb} +13 -18
- data/lib/javonet-ruby-sdk/sdk/tools/json_file_resolver.rb +55 -0
- data/lib/javonet-ruby-sdk/utils/command.rb +2 -1
- data/lib/javonet-ruby-sdk/utils/runtime_name.rb +0 -30
- data/lib/javonet-ruby-sdk/utils/runtime_name_handler.rb +34 -0
- data/lib/javonet-ruby-sdk/utils/tcp_connection_data.rb +33 -0
- data/lib/javonet-ruby-sdk.rb +1 -42
- metadata +49 -14
- data/lib/javonet-ruby-sdk/Binaries/Python/Linux/X64/javonet/core/transmitter/PythonTransmitter.py +0 -24
- data/lib/javonet-ruby-sdk/Binaries/Python/MacOs/X64/javonet/core/transmitter/PythonTransmitter.py +0 -24
- data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/core/transmitter/PythonTransmitter.py +0 -24
- /data/lib/javonet-ruby-sdk/sdk/internal/{abstract/abstract_invocation_context.rb → abstract_invocation_context.rb} +0 -0
- /data/lib/javonet-ruby-sdk/sdk/internal/{abstract/abstract_runtime_context.rb → abstract_runtime_context.rb} +0 -0
- /data/lib/javonet-ruby-sdk/sdk/internal/{abstract/abstract_runtime_factory.rb → abstract_runtime_factory.rb} +0 -0
@@ -1,6 +1,7 @@
|
|
1
1
|
require_relative 'type_serializer'
|
2
2
|
require_relative '../../utils/connection_type'
|
3
3
|
require_relative '../../utils/runtime_name'
|
4
|
+
require_relative '../../utils/tcp_connection_data'
|
4
5
|
|
5
6
|
class CommandSerializer
|
6
7
|
|
@@ -8,38 +9,21 @@ class CommandSerializer
|
|
8
9
|
@byte_buffer = []
|
9
10
|
end
|
10
11
|
|
11
|
-
def serialize(root_command, connection_type = ConnectionType::IN_MEMORY,
|
12
|
+
def serialize(root_command, connection_type = ConnectionType::IN_MEMORY, tcp_connection_data = nil, runtime_version = 0)
|
12
13
|
queue = []
|
13
14
|
queue.unshift(root_command)
|
14
15
|
self.insert_into_buffer([root_command.runtime_name, runtime_version])
|
15
|
-
|
16
|
-
|
17
|
-
self.insert_into_buffer(self.serialize_tcp(tcp_address))
|
18
|
-
end
|
19
|
-
if connection_type == ConnectionType::IN_MEMORY
|
20
|
-
self.insert_into_buffer([ConnectionType::IN_MEMORY])
|
21
|
-
self.insert_into_buffer([0, 0, 0, 0, 0, 0])
|
22
|
-
end
|
16
|
+
self.insert_into_buffer([connection_type])
|
17
|
+
self.insert_into_buffer(self.serialize_tcp(tcp_connection_data))
|
23
18
|
self.insert_into_buffer([RuntimeName::RUBY, root_command.command_type])
|
24
19
|
self.serialize_recursively(queue)
|
25
20
|
end
|
26
21
|
|
27
|
-
def serialize_tcp(
|
28
|
-
if
|
29
|
-
|
30
|
-
else
|
31
|
-
tcp_address_array = tcp_address.split(':')
|
32
|
-
tcp_address_ip = tcp_address_array[0].split('.')
|
33
|
-
tcp_address_port = tcp_address_array[1]
|
34
|
-
tcp_address_bytearray = []
|
35
|
-
tcp_address_ip.each { |address|
|
36
|
-
tcp_address_bytearray.concat([address.to_i])
|
37
|
-
}
|
38
|
-
port_byte = [tcp_address_port.to_i].pack("s_").bytes
|
39
|
-
tcp_address_bytearray.concat(port_byte)
|
40
|
-
tcp_address_bytearray
|
22
|
+
def serialize_tcp(tcp_connection_data)
|
23
|
+
if tcp_connection_data.nil?
|
24
|
+
return [0, 0, 0, 0, 0, 0]
|
41
25
|
end
|
42
|
-
|
26
|
+
tcp_connection_data.get_address_bytes + tcp_connection_data.get_port_bytes
|
43
27
|
end
|
44
28
|
|
45
29
|
def serialize_primitive(payload_item)
|
@@ -4,10 +4,6 @@ require_relative 'transmitter_wrapper'
|
|
4
4
|
|
5
5
|
class Transmitter
|
6
6
|
|
7
|
-
def self.get_native_error
|
8
|
-
TransmitterWrapper.GetNativeError
|
9
|
-
end
|
10
|
-
|
11
7
|
def self.send_command(message_byte_array, message_byte_array_len)
|
12
8
|
message = FFI::MemoryPointer.new(:uchar, message_byte_array_len, true)
|
13
9
|
message.put_array_of_uchar(0, message_byte_array)
|
@@ -26,26 +22,39 @@ class Transmitter
|
|
26
22
|
end
|
27
23
|
end
|
28
24
|
|
29
|
-
def self.
|
25
|
+
def self.activate_with_license_file()
|
30
26
|
return activate()
|
31
27
|
end
|
32
28
|
|
33
|
-
def self.activate_with_credentials(
|
34
|
-
return activate(
|
29
|
+
def self.activate_with_credentials(licenseKey)
|
30
|
+
return activate(licenseKey)
|
35
31
|
end
|
36
32
|
|
37
|
-
def self.activate_with_credentials_and_proxy(
|
38
|
-
return activate(
|
33
|
+
def self.activate_with_credentials_and_proxy(licenseKey, proxyHost, proxyUserName, proxyPassword)
|
34
|
+
return activate(licenseKey, proxyHost, proxyUserName, proxyPassword)
|
39
35
|
end
|
40
36
|
|
41
|
-
private_class_method def self.activate(
|
42
|
-
activation_result = TransmitterWrapper.Activate(
|
37
|
+
private_class_method def self.activate(licenseKey = "", proxyHost = "", proxyUserName = "", proxyUserPassword = "")
|
38
|
+
activation_result = TransmitterWrapper.Activate(licenseKey, proxyHost, proxyUserName, proxyUserPassword)
|
43
39
|
if activation_result < 0
|
44
40
|
error_message = get_native_error
|
45
|
-
raise Exception.new "Javonet activation result: " + activation_result.to_s + ". " + error_message
|
41
|
+
raise Exception.new "Javonet activation result: " + activation_result.to_s + ". Native error message: " + error_message
|
46
42
|
else
|
47
43
|
return activation_result
|
48
44
|
end
|
49
45
|
end
|
50
46
|
|
47
|
+
def self.get_native_error
|
48
|
+
TransmitterWrapper.GetNativeError
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.set_config_source(configPath)
|
52
|
+
set_config_result = TransmitterWrapper.SetConfigSource(configPath)
|
53
|
+
if set_config_result < 0
|
54
|
+
error_message = get_native_error
|
55
|
+
raise Exception.new "Javonet set config source result: " + set_config_result.to_s + ". Native error message: " + error_message
|
56
|
+
else
|
57
|
+
return set_config_result
|
58
|
+
end
|
59
|
+
end
|
51
60
|
end
|
@@ -12,5 +12,5 @@ module TransmitterWrapper
|
|
12
12
|
attach_function :ReadResponse, [:pointer, :int], :int
|
13
13
|
attach_function :Activate, [:pointer, :pointer, :pointer, :pointer], :int
|
14
14
|
attach_function :GetNativeError, [], :string
|
15
|
-
|
15
|
+
attach_function :SetConfigSource, [:pointer], :int
|
16
16
|
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative 'runtime_name'
|
2
|
+
require_relative 'runtime_name_handler'
|
2
3
|
require_relative 'command_type'
|
3
4
|
|
4
5
|
class Command
|
@@ -57,7 +58,7 @@ class Command
|
|
57
58
|
end
|
58
59
|
|
59
60
|
def to_string
|
60
|
-
'Runtime Library: ' +
|
61
|
+
'Runtime Library: ' + RuntimeNameHandler.get_name(@runtime_name) + ' ' + 'Ruby command type: ' + CommandType.get_name(@command_type).to_s + ' ' + 'with parameters: ' + @payload.to_s
|
61
62
|
end
|
62
63
|
|
63
64
|
def eql?(other)
|
@@ -8,34 +8,4 @@ module RuntimeName
|
|
8
8
|
RUBY = 6
|
9
9
|
NODEJS = 7
|
10
10
|
CPP = 8
|
11
|
-
|
12
|
-
def self.get_name(runtime_number)
|
13
|
-
if runtime_number == 0
|
14
|
-
return 'CLR'
|
15
|
-
end
|
16
|
-
if runtime_number == 1
|
17
|
-
return 'GO'
|
18
|
-
end
|
19
|
-
if runtime_number == 2
|
20
|
-
return 'JVM'
|
21
|
-
end
|
22
|
-
if runtime_number == 3
|
23
|
-
return 'NETCORE'
|
24
|
-
end
|
25
|
-
if runtime_number == 4
|
26
|
-
return 'PERL'
|
27
|
-
end
|
28
|
-
if runtime_number == 5
|
29
|
-
return 'PYTHON'
|
30
|
-
end
|
31
|
-
if runtime_number == 6
|
32
|
-
return 'RUBY'
|
33
|
-
end
|
34
|
-
if runtime_number == 7
|
35
|
-
return 'NODEJS'
|
36
|
-
end
|
37
|
-
if runtime_number == 8
|
38
|
-
return 'CPP'
|
39
|
-
end
|
40
|
-
end
|
41
11
|
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative './runtime_name'
|
3
|
+
|
4
|
+
class RuntimeNameHandler
|
5
|
+
def self.get_name(runtime_name)
|
6
|
+
if runtime_name == RuntimeName::CLR
|
7
|
+
return 'clr'
|
8
|
+
end
|
9
|
+
if runtime_name == RuntimeName::GO
|
10
|
+
return 'go'
|
11
|
+
end
|
12
|
+
if runtime_name == RuntimeName::JVM
|
13
|
+
return 'jvm'
|
14
|
+
end
|
15
|
+
if runtime_name == RuntimeName::NETCORE
|
16
|
+
return 'netcore'
|
17
|
+
end
|
18
|
+
if runtime_name == RuntimeName::PERL
|
19
|
+
return 'perl'
|
20
|
+
end
|
21
|
+
if runtime_name == RuntimeName::PYTHON
|
22
|
+
return 'python'
|
23
|
+
end
|
24
|
+
if runtime_name == RuntimeName::RUBY
|
25
|
+
return 'ruby'
|
26
|
+
end
|
27
|
+
if runtime_name == RuntimeName::NODEJS
|
28
|
+
return 'nodejs'
|
29
|
+
end
|
30
|
+
if runtime_name == RuntimeName::CPP
|
31
|
+
return 'cpp'
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
class TcpConnectionData
|
2
|
+
attr_reader :ip_address, :port
|
3
|
+
|
4
|
+
def initialize(hostname, port)
|
5
|
+
@port = port
|
6
|
+
if hostname == "localhost"
|
7
|
+
@ip_address = "127.0.0.1"
|
8
|
+
else
|
9
|
+
begin
|
10
|
+
@ip_address = IPSocket.getaddress(hostname)
|
11
|
+
rescue SocketError
|
12
|
+
raise "Unable to resolve hostname to an IP address."
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def ==(other)
|
18
|
+
other.is_a?(TcpConnectionData) && @ip_address == other.ip_address && @port == other.port
|
19
|
+
end
|
20
|
+
|
21
|
+
def to_s
|
22
|
+
"#{@ip_address}:#{@port}"
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
def get_address_bytes
|
27
|
+
@ip_address.split(".").map(&:to_i)
|
28
|
+
end
|
29
|
+
|
30
|
+
def get_port_bytes
|
31
|
+
[@port & 0xFF, @port >> 8]
|
32
|
+
end
|
33
|
+
end
|
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.4.1
|
@@ -3,11 +3,11 @@ require_relative '../protocol/command_deserializer'
|
|
3
3
|
require_relative '../handler/handler'
|
4
4
|
|
5
5
|
class Interpreter
|
6
|
-
def execute(command, connection_type,
|
6
|
+
def execute(command, connection_type, tcp_connection_data)
|
7
7
|
|
8
8
|
command_serializer = CommandSerializer.new
|
9
|
-
message_byte_array = command_serializer.serialize(command, connection_type,
|
10
|
-
if command.runtime_name == RuntimeName::RUBY
|
9
|
+
message_byte_array = command_serializer.serialize(command, connection_type, tcp_connection_data)
|
10
|
+
if command.runtime_name == RuntimeName::RUBY && connection_type == ConnectionType::IN_MEMORY
|
11
11
|
require_relative '../receiver/receiver'
|
12
12
|
response_byte_array = Receiver.new.send_command(message_byte_array, message_byte_array.length)
|
13
13
|
else
|
@@ -16,8 +16,7 @@ class Interpreter
|
|
16
16
|
end
|
17
17
|
|
18
18
|
command_deserializer = CommandDeserializer.new(response_byte_array,response_byte_array.length)
|
19
|
-
|
20
|
-
return encoded_response
|
19
|
+
command_deserializer.deserialize
|
21
20
|
end
|
22
21
|
|
23
22
|
def process(byte_array, byte_array_len)
|
@@ -25,6 +24,6 @@ class Interpreter
|
|
25
24
|
received_command = command_deserializer.deserialize
|
26
25
|
handler = Handler.new
|
27
26
|
command_serializer = CommandSerializer.new
|
28
|
-
|
27
|
+
command_serializer.serialize(handler.handle_command(received_command))
|
29
28
|
end
|
30
29
|
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require_relative 'type_serializer'
|
2
2
|
require_relative '../../utils/connection_type'
|
3
3
|
require_relative '../../utils/runtime_name'
|
4
|
+
require_relative '../../utils/tcp_connection_data'
|
4
5
|
|
5
6
|
class CommandSerializer
|
6
7
|
|
@@ -8,38 +9,21 @@ class CommandSerializer
|
|
8
9
|
@byte_buffer = []
|
9
10
|
end
|
10
11
|
|
11
|
-
def serialize(root_command, connection_type = ConnectionType::IN_MEMORY,
|
12
|
+
def serialize(root_command, connection_type = ConnectionType::IN_MEMORY, tcp_connection_data = nil, runtime_version = 0)
|
12
13
|
queue = []
|
13
14
|
queue.unshift(root_command)
|
14
15
|
self.insert_into_buffer([root_command.runtime_name, runtime_version])
|
15
|
-
|
16
|
-
|
17
|
-
self.insert_into_buffer(self.serialize_tcp(tcp_address))
|
18
|
-
end
|
19
|
-
if connection_type == ConnectionType::IN_MEMORY
|
20
|
-
self.insert_into_buffer([ConnectionType::IN_MEMORY])
|
21
|
-
self.insert_into_buffer([0, 0, 0, 0, 0, 0])
|
22
|
-
end
|
16
|
+
self.insert_into_buffer([connection_type])
|
17
|
+
self.insert_into_buffer(self.serialize_tcp(tcp_connection_data))
|
23
18
|
self.insert_into_buffer([RuntimeName::RUBY, root_command.command_type])
|
24
19
|
self.serialize_recursively(queue)
|
25
20
|
end
|
26
21
|
|
27
|
-
def serialize_tcp(
|
28
|
-
if
|
29
|
-
|
30
|
-
else
|
31
|
-
tcp_address_array = tcp_address.split(':')
|
32
|
-
tcp_address_ip = tcp_address_array[0].split('.')
|
33
|
-
tcp_address_port = tcp_address_array[1]
|
34
|
-
tcp_address_bytearray = []
|
35
|
-
tcp_address_ip.each { |address|
|
36
|
-
tcp_address_bytearray.concat([address.to_i])
|
37
|
-
}
|
38
|
-
port_byte = [tcp_address_port.to_i].pack("s_").bytes
|
39
|
-
tcp_address_bytearray.concat(port_byte)
|
40
|
-
tcp_address_bytearray
|
22
|
+
def serialize_tcp(tcp_connection_data)
|
23
|
+
if tcp_connection_data.nil?
|
24
|
+
return [0, 0, 0, 0, 0, 0]
|
41
25
|
end
|
42
|
-
|
26
|
+
tcp_connection_data.get_address_bytes + tcp_connection_data.get_port_bytes
|
43
27
|
end
|
44
28
|
|
45
29
|
def serialize_primitive(payload_item)
|
@@ -4,10 +4,6 @@ require_relative 'transmitter_wrapper'
|
|
4
4
|
|
5
5
|
class Transmitter
|
6
6
|
|
7
|
-
def self.get_native_error
|
8
|
-
TransmitterWrapper.GetNativeError
|
9
|
-
end
|
10
|
-
|
11
7
|
def self.send_command(message_byte_array, message_byte_array_len)
|
12
8
|
message = FFI::MemoryPointer.new(:uchar, message_byte_array_len, true)
|
13
9
|
message.put_array_of_uchar(0, message_byte_array)
|
@@ -26,26 +22,39 @@ class Transmitter
|
|
26
22
|
end
|
27
23
|
end
|
28
24
|
|
29
|
-
def self.
|
25
|
+
def self.activate_with_license_file()
|
30
26
|
return activate()
|
31
27
|
end
|
32
28
|
|
33
|
-
def self.activate_with_credentials(
|
34
|
-
return activate(
|
29
|
+
def self.activate_with_credentials(licenseKey)
|
30
|
+
return activate(licenseKey)
|
35
31
|
end
|
36
32
|
|
37
|
-
def self.activate_with_credentials_and_proxy(
|
38
|
-
return activate(
|
33
|
+
def self.activate_with_credentials_and_proxy(licenseKey, proxyHost, proxyUserName, proxyPassword)
|
34
|
+
return activate(licenseKey, proxyHost, proxyUserName, proxyPassword)
|
39
35
|
end
|
40
36
|
|
41
|
-
private_class_method def self.activate(
|
42
|
-
activation_result = TransmitterWrapper.Activate(
|
37
|
+
private_class_method def self.activate(licenseKey = "", proxyHost = "", proxyUserName = "", proxyUserPassword = "")
|
38
|
+
activation_result = TransmitterWrapper.Activate(licenseKey, proxyHost, proxyUserName, proxyUserPassword)
|
43
39
|
if activation_result < 0
|
44
40
|
error_message = get_native_error
|
45
|
-
raise Exception.new "Javonet activation result: " + activation_result.to_s + ". " + error_message
|
41
|
+
raise Exception.new "Javonet activation result: " + activation_result.to_s + ". Native error message: " + error_message
|
46
42
|
else
|
47
43
|
return activation_result
|
48
44
|
end
|
49
45
|
end
|
50
46
|
|
47
|
+
def self.get_native_error
|
48
|
+
TransmitterWrapper.GetNativeError
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.set_config_source(configPath)
|
52
|
+
set_config_result = TransmitterWrapper.SetConfigSource(configPath)
|
53
|
+
if set_config_result < 0
|
54
|
+
error_message = get_native_error
|
55
|
+
raise Exception.new "Javonet set config source result: " + set_config_result.to_s + ". Native error message: " + error_message
|
56
|
+
else
|
57
|
+
return set_config_result
|
58
|
+
end
|
59
|
+
end
|
51
60
|
end
|
@@ -12,5 +12,5 @@ module TransmitterWrapper
|
|
12
12
|
attach_function :ReadResponse, [:pointer, :int], :int
|
13
13
|
attach_function :Activate, [:pointer, :pointer, :pointer, :pointer], :int
|
14
14
|
attach_function :GetNativeError, [], :string
|
15
|
-
|
15
|
+
attach_function :SetConfigSource, [:pointer], :int
|
16
16
|
end
|
@@ -0,0 +1,92 @@
|
|
1
|
+
require_relative './internal/abstract_config_runtime_factory'
|
2
|
+
require_relative './runtime_context'
|
3
|
+
require_relative './../utils/connection_type'
|
4
|
+
require_relative './tools/json_file_resolver'
|
5
|
+
|
6
|
+
# The ConfigRuntimeFactory class implements the AbstractConfigRuntimeFactory interface and provides methods for creating runtime contexts.
|
7
|
+
# Each method corresponds to a specific runtime (CLR, JVM, .NET Core, Perl, Ruby, Node.js, Python) and returns a RuntimeContext instance for that runtime.
|
8
|
+
# # @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
9
|
+
class ConfigRuntimeFactory < AbstractConfigRuntimeFactory
|
10
|
+
|
11
|
+
def initialize(path)
|
12
|
+
@path = path
|
13
|
+
end
|
14
|
+
|
15
|
+
# Creates a RuntimeContext instance to interact with CLR runtime.
|
16
|
+
# @param config_name [String] The name of the configuration to use.
|
17
|
+
# @return [RuntimeContext] a RuntimeContext instance for the CLR runtime
|
18
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
19
|
+
def clr(config_name = "default")
|
20
|
+
get_runtime_context(RuntimeName::CLR, config_name)
|
21
|
+
end
|
22
|
+
|
23
|
+
# Creates a RuntimeContext instance to interact with JVM runtime.
|
24
|
+
# @param config_name [String] The name of the configuration to use.
|
25
|
+
# @return [RuntimeContext] a RuntimeContext instance for the JVM runtime
|
26
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
27
|
+
def jvm(config_name = "default")
|
28
|
+
get_runtime_context(RuntimeName::JVM, config_name)
|
29
|
+
end
|
30
|
+
|
31
|
+
# Creates a RuntimeContext instance to interact with .NET runtime.
|
32
|
+
# @param config_name [String] The name of the configuration to use.
|
33
|
+
# @return [RuntimeContext] a RuntimeContext instance for the .NET runtime
|
34
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
35
|
+
def netcore(config_name = "default")
|
36
|
+
get_runtime_context(RuntimeName::NETCORE, config_name)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Creates a RuntimeContext instance to interact with Perl runtime.
|
40
|
+
# @param config_name [String] The name of the configuration to use.
|
41
|
+
# @return [RuntimeContext] a RuntimeContext instance for the Perl runtime
|
42
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
43
|
+
def perl(config_name = "default")
|
44
|
+
get_runtime_context(RuntimeName::PERL, config_name)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Creates a RuntimeContext instance to interact with Ruby runtime.
|
48
|
+
# @param config_name [String] The name of the configuration to use.
|
49
|
+
# @return [RuntimeContext] a RuntimeContext instance for the Ruby runtime
|
50
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
51
|
+
def ruby(config_name = "default")
|
52
|
+
get_runtime_context(RuntimeName::RUBY, config_name)
|
53
|
+
end
|
54
|
+
|
55
|
+
# Creates a RuntimeContext instance to interact with Node.js runtime.
|
56
|
+
# @param config_name [String] The name of the configuration to use.
|
57
|
+
# @return [RuntimeContext] a RuntimeContext instance for the Node.js runtime
|
58
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
59
|
+
def nodejs(config_name = "default")
|
60
|
+
get_runtime_context(RuntimeName::NODEJS, config_name)
|
61
|
+
end
|
62
|
+
|
63
|
+
# Creates a RuntimeContext instance to interact with Python runtime.
|
64
|
+
# @param config_name [String] The name of the configuration to use.
|
65
|
+
# @return [RuntimeContext] a RuntimeContext instance for the Python runtime
|
66
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/runtime-context article on Javonet Guides}
|
67
|
+
def python(config_name = "default")
|
68
|
+
get_runtime_context(RuntimeName::PYTHON, config_name)
|
69
|
+
end
|
70
|
+
|
71
|
+
def get_runtime_context(runtime, config_name)
|
72
|
+
jfr = JsonFileResolver.new(@path)
|
73
|
+
|
74
|
+
begin
|
75
|
+
license_key = jfr.get_license_key
|
76
|
+
Transmitter.activate_with_credentials(license_key)
|
77
|
+
rescue
|
78
|
+
# licenseKey not found - do nothing
|
79
|
+
end
|
80
|
+
|
81
|
+
conn_type = jfr.get_channel_type(RuntimeNameHandler.get_name(runtime), config_name)
|
82
|
+
if conn_type == "tcp"
|
83
|
+
conn_data = TcpConnectionData.new(jfr.get_channel_host(RuntimeNameHandler.get_name(runtime), config_name),
|
84
|
+
jfr.get_channel_port(RuntimeNameHandler.get_name(runtime), config_name))
|
85
|
+
return RuntimeContext.get_instance(runtime, ConnectionType::TCP, conn_data)
|
86
|
+
elsif conn_type == "inMemory"
|
87
|
+
return RuntimeContext.get_instance(runtime, ConnectionType::IN_MEMORY, nil)
|
88
|
+
else
|
89
|
+
raise "Invalid connection type"
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
class AbstractConfigRuntimeFactory
|
2
|
+
def clr(config_name = "default")
|
3
|
+
raise NotImplementedError, "method not implemented"
|
4
|
+
end
|
5
|
+
|
6
|
+
def jvm(config_name = "default")
|
7
|
+
raise NotImplementedError, "method not implemented"
|
8
|
+
end
|
9
|
+
|
10
|
+
def netcore(config_name = "default")
|
11
|
+
raise NotImplementedError, "method not implemented"
|
12
|
+
end
|
13
|
+
|
14
|
+
def perl(config_name = "default")
|
15
|
+
raise NotImplementedError, "method not implemented"
|
16
|
+
end
|
17
|
+
|
18
|
+
def ruby(config_name = "default")
|
19
|
+
raise NotImplementedError, "method not implemented"
|
20
|
+
end
|
21
|
+
|
22
|
+
def nodejs(config_name = "default")
|
23
|
+
raise NotImplementedError, "method not implemented"
|
24
|
+
end
|
25
|
+
|
26
|
+
def python(config_name = "default")
|
27
|
+
raise NotImplementedError, "method not implemented"
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
@@ -1,7 +1,7 @@
|
|
1
|
-
require_relative '
|
2
|
-
require_relative '
|
3
|
-
require_relative '
|
4
|
-
require_relative '
|
1
|
+
require_relative 'internal/abstract_invocation_context'
|
2
|
+
require_relative 'internal/invocation_context_iterator'
|
3
|
+
require_relative '../core/interpreter/interpreter'
|
4
|
+
require_relative '../core/exceptions/exception_thrower'
|
5
5
|
|
6
6
|
# InvocationContext is a class that represents a context for invoking commands.
|
7
7
|
# It implements several interfaces for different types of interactions.
|
@@ -18,8 +18,8 @@ class InvocationContext < AbstractInvocationContext
|
|
18
18
|
@current_command = command
|
19
19
|
@response_command = nil
|
20
20
|
@interpreter = Interpreter.new
|
21
|
-
# generates error: ruby/lib/javonet-ruby-sdk/sdk/internal/invocation_context.rb:17: warning: finalizer references object to be finalized
|
22
|
-
#ObjectSpace.define_finalizer(self, self.finalize(@current_command, @is_executed, @interpreter, @connection_type, @tcp_ip_address))
|
21
|
+
# generates error: ruby/lib/javonet.rb-ruby-sdk/sdk/internal/invocation_context.rb:17: warning: finalizer references object to be finalized
|
22
|
+
# ObjectSpace.define_finalizer(self, self.finalize(@current_command, @is_executed, @interpreter, @connection_type, @tcp_ip_address))
|
23
23
|
end
|
24
24
|
|
25
25
|
def finalize(command, is_executed, interpreter, connection_type, tcp_ip_address)
|
@@ -0,0 +1,53 @@
|
|
1
|
+
require_relative './runtime_factory'
|
2
|
+
require_relative './config_runtime_factory'
|
3
|
+
require_relative './../utils/connection_type'
|
4
|
+
require_relative './../utils/tcp_connection_data'
|
5
|
+
require_relative './../core/transmitter/transmitter'
|
6
|
+
|
7
|
+
# The Javonet class is a singleton class that serves as the entry point for interacting with Javonet.
|
8
|
+
# It provides methods to activate and initialize the Javonet SDK.
|
9
|
+
# It supports both in-memory and TCP connections.
|
10
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/javonet-static-class article on Javonet Guides}
|
11
|
+
class Javonet
|
12
|
+
|
13
|
+
Transmitter.activate_with_license_file
|
14
|
+
|
15
|
+
# Initializes Javonet using an in-memory channel on the same machine.
|
16
|
+
# @return [RuntimeFactory] A RuntimeFactory instance configured for an in-memory connection.
|
17
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/in-memory-channel article on Javonet Guides}
|
18
|
+
def self.in_memory
|
19
|
+
RuntimeFactory.new(ConnectionType::IN_MEMORY, nil)
|
20
|
+
end
|
21
|
+
|
22
|
+
# Initializes Javonet with a TCP connection to a remote machine.
|
23
|
+
# @param address [TcpConnectionData] The address of the remote machine.
|
24
|
+
# @return [RuntimeFactory] A RuntimeFactory instance configured for a TCP connection.
|
25
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/tcp-channel article on Javonet Guides}
|
26
|
+
def self.tcp(tcp_connection_data)
|
27
|
+
RuntimeFactory.new(ConnectionType::TCP, tcp_connection_data)
|
28
|
+
end
|
29
|
+
|
30
|
+
# Initializes Javonet with a custom configuration file.
|
31
|
+
# @param path [String] Path to a configuration file.
|
32
|
+
# @return [ConfigRuntimeFactory] A ConfigRuntimeFactory instance configured with configuration data
|
33
|
+
# @see Refer to this {https://www.javonet.com/guides/v2/ruby/foundations/configure-channel article on Javonet Guides}
|
34
|
+
def self.with_config(path)
|
35
|
+
Transmitter.set_config_source(path)
|
36
|
+
ConfigRuntimeFactory.new(path)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Activates Javonet with the provided license key and optionally with proxy data.
|
40
|
+
# @param license_key [String] The license key to activate Javonet.
|
41
|
+
# @param proxy_host [String] The host for the proxy server (optional).
|
42
|
+
# @param proxy_user_name [String] The username for the proxy server (optional).
|
43
|
+
# @param proxy_user_password [String] The password for the proxy server (optional).
|
44
|
+
# @return [Integer] The activation status code.
|
45
|
+
# @see https://www.javonet.com/guides/v2/ruby/getting-started/activating-javonet Activating Javonet Guide
|
46
|
+
def self.activate(license_key, proxy_host=nil, proxy_user_name=nil, proxy_password=nil)
|
47
|
+
proxy_host ||= ""
|
48
|
+
proxy_user_name ||= ""
|
49
|
+
proxy_password ||= ""
|
50
|
+
return Transmitter.activate_with_credentials_and_proxy(license_key, proxy_host, proxy_user_name, proxy_password)
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|