javonet-ruby-sdk 2.2.0 → 2.4.0
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/javonet-ruby-sdk.gemspec +3 -3
- 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/libcrypto-3-x64.dll +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Windows/X64/libssl-3-x64.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/Nice/Try.pm +7 -7
- 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/Data/UUID.pm +2 -2
- 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 +145 -79
- 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/Nice/Try.pm +7 -7
- 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/Data/UUID.pm +2 -2
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/auto/Data/UUID/UUID.bundle +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/deps/lib/perl5/darwin-thread-multi-2level/perllocal.pod +148 -82
- 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/Data/UUID.pm +2 -2
- 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 +17 -17
- data/lib/javonet-ruby-sdk/Binaries/Perl/Windows/X64/deps/lib/perl5/Nice/Try.pm +7 -7
- 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/{MacOs/X64/javonet/core/transmitter/PythonTransmitterWrapper.py → Linux/X64/javonet/core/transmitter/TransmitterWrapper.py} +27 -10
- 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/{Windows/X64/javonet/core/transmitter/PythonTransmitterWrapper.py → MacOs/X64/javonet/core/transmitter/TransmitterWrapper.py} +86 -69
- 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/{Linux/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 +63 -17
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libxmlsec1-openssl.so.1.2.34 +0 -0
- data/lib/javonet-ruby-sdk/Binaries/Native/Linux/X64/libxmlsec1.so.1.2.34 +0 -0
- 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
@@ -0,0 +1,26 @@
|
|
1
|
+
from javonet.utils.RuntimeName import RuntimeName
|
2
|
+
|
3
|
+
|
4
|
+
class RuntimeNameHandler:
|
5
|
+
|
6
|
+
@staticmethod
|
7
|
+
def get_name(runtime_name):
|
8
|
+
if isinstance(runtime_name, RuntimeName):
|
9
|
+
if runtime_name == RuntimeName.clr:
|
10
|
+
return "clr"
|
11
|
+
elif runtime_name == RuntimeName.go:
|
12
|
+
return "go"
|
13
|
+
elif runtime_name == RuntimeName.jvm:
|
14
|
+
return "jvm"
|
15
|
+
elif runtime_name == RuntimeName.netcore:
|
16
|
+
return "netcore"
|
17
|
+
elif runtime_name == RuntimeName.perl:
|
18
|
+
return "perl"
|
19
|
+
elif runtime_name == RuntimeName.python:
|
20
|
+
return "python"
|
21
|
+
elif runtime_name == RuntimeName.ruby:
|
22
|
+
return "ruby"
|
23
|
+
elif runtime_name == RuntimeName.nodejs:
|
24
|
+
return "nodejs"
|
25
|
+
else:
|
26
|
+
raise Exception("Invalid runtime name.")
|
@@ -0,0 +1,29 @@
|
|
1
|
+
import socket
|
2
|
+
import hashlib
|
3
|
+
|
4
|
+
|
5
|
+
class TcpConnectionData:
|
6
|
+
def __init__(self, hostname, port):
|
7
|
+
self.port = port
|
8
|
+
if hostname == "localhost":
|
9
|
+
self.ip_address = "127.0.0.1"
|
10
|
+
else:
|
11
|
+
try:
|
12
|
+
self.ip_address = socket.gethostbyname(hostname)
|
13
|
+
except socket.gaierror:
|
14
|
+
raise ValueError("Unable to resolve hostname to an IP address.")
|
15
|
+
|
16
|
+
def __eq__(self, other):
|
17
|
+
if isinstance(other, TcpConnectionData):
|
18
|
+
return self.ip_address == other.ip_address and self.port == other.port
|
19
|
+
return False
|
20
|
+
|
21
|
+
def __hash__(self):
|
22
|
+
return int(hashlib.sha1(f"{self.ip_address}{self.port}".encode()).hexdigest(), 16)
|
23
|
+
|
24
|
+
def get_address_bytes(self):
|
25
|
+
return [int(x) for x in self.ip_address.split(".")]
|
26
|
+
|
27
|
+
def get_pot_bytes(self):
|
28
|
+
return [self.port & 0xFF, self.port >> 8]
|
29
|
+
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/javonet-ruby-sdk/Binaries/Python/Windows/X64/javonet/utils/__pycache__/Type.cpython-311.pyc
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -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
|
@@ -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
|
@@ -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
|
@@ -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
|
@@ -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
|