The build configuration on the build bots enables both script providers for JavaScript. One of them will end up being chosen for the provider_expandall test and that probably depends on non-deterministic factors such as the order of files on the disk. If the Java-based one is chosen then the test will fail because it will ignore the temporary JavaScript macro file created for the test. We do specifically want to test the QuickJS-based provider in this test case because we want to make sure the singleprov code is compatible with Python. The Java-based script provider code will already be tested because of the Beanshell provider. This patch therefore uses the remove method of the service manager to just disable the Java-based JavaScript provider. Change-Id: I265f4cf2191c0c5d08894c700be346ed93d12898 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208226 Reviewed-by: Neil Roberts <nroberts@libreoffice.org> Tested-by: Jenkins
Scripting Framework
This module provides the source code for the Scripting Framework.
For more information on the Scripting Framework, see the project web page: https://framework.openoffice.org/scripting/
This module uses astyle to keep consistent java coding style. Please run
./Format_java_code.sh
before committing.
Source Code Structure
The following directories contain the source code currently used by the Scripting Framework:
source/provider
C++ source for the implementations of the com.sun.star.script.provider.*
and com.sun.star.script.browse.* UNO types. These types are used for
browsing and executing scripts.
source/protocolhandler
C++ for a ProtocolHandler implementation that handles vnd.sun.star.script
URIs and dispatches them for execution to the Scripting Framework.
source/singleprov
A base helper class for C++ implementations of LanguageScriptProviders that store a single macro in a source file.
source/basprov
C++ implementation of the LanguageScriptProvider UNO service for Basic
source/dlgprov
C++ implementation of the DialogProvider UNO service used for loading
UNO dialogs from various languages
source/jsprov
C++ implementation of the LanguageScriptProvider UNO service for JavaScript using QuickJS.
source/pyprov
LanguageScriptProvider for Python
java/com/sun/star/script/framework/provider
Implementation of an abstract base class ScriptProvider which provides
core methods for implementing Java based LanguageScriptProvider implementations
java/com/sun/star/script/framework/provider/*
BeanShell, JavaScript and Java LanguageScriptProvider implementations
java/com/sun/star/script/framework/browse/*
BrowseNode implementations for the Java based LanguageScriptProviders
java/com/sun/star/script/framework/iojava/com/sun/star/script/framework/container
Classes for performing script IO
examples
Example scripts in BeanShell, JavaScript, Java and Python
Deprecated Code
java/org/openoffice/*
Support for developing scripts in IDEs such as NetBeans.