[Libreoffice-commits] core.git: 3 commits - dbaccess/CppunitTest_dbaccess_embeddeddb_performancetest.mk dbaccess/CppunitTest_dbaccess_hsqldb_test.mk include/jvmfwk jvmfwk/distributions jvmfwk/Library_jvmfwk.mk jvmfwk/Library_sunjavaplugin.mk jvmfwk/Module_jvmfwk.mk jvmfwk/plugins jvmfwk/README jvmfwk/source Repository.mk sal/qa solenv/gbuild ure/source
Stephan Bergmann
sbergman at redhat.com
Thu Oct 9 08:27:42 PDT 2014
Repository.mk | 1
dbaccess/CppunitTest_dbaccess_embeddeddb_performancetest.mk | 1
dbaccess/CppunitTest_dbaccess_hsqldb_test.mk | 1
include/jvmfwk/framework.h | 13
include/jvmfwk/jvmfwkplugindllapi.h | 24 -
include/jvmfwk/vendorplugin.h | 9
jvmfwk/Library_jvmfwk.mk | 23
jvmfwk/Library_sunjavaplugin.mk | 62 --
jvmfwk/Module_jvmfwk.mk | 1
jvmfwk/README | 2
jvmfwk/distributions/OpenOfficeorg/javavendors.xsd | 31 -
jvmfwk/distributions/OpenOfficeorg/javavendors_freebsd.xml | 6
jvmfwk/distributions/OpenOfficeorg/javavendors_linux.xml | 8
jvmfwk/distributions/OpenOfficeorg/javavendors_macosx.xml | 6
jvmfwk/distributions/OpenOfficeorg/javavendors_template.xml | 4
jvmfwk/distributions/OpenOfficeorg/javavendors_unx.xml | 4
jvmfwk/distributions/OpenOfficeorg/javavendors_wnt.xml | 5
jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx | 16
jvmfwk/source/elements.hxx | 17
jvmfwk/source/framework.cxx | 277 +-----------
jvmfwk/source/fwkbase.cxx | 111 ----
jvmfwk/source/fwkbase.hxx | 13
sal/qa/osl/process/osl_process.cxx | 91 +--
solenv/gbuild/CppunitTest.mk | 1
ure/source/README | 2
25 files changed, 120 insertions(+), 609 deletions(-)
New commits:
commit 2ceeee914e3ff69811ca04ecccf30a582c58b34a
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Thu Oct 9 17:24:52 2014 +0200
Remove jvmfwk plugin feature
...which was effectively unused; there only ever was a single sunjavaplugin that
is now folded directly into jvmfwk. Leaves room for further clean up.
Change-Id: I14dd2a3a09bd1ce9a8c3f5c156628ec11d954a0b
diff --git a/Repository.mk b/Repository.mk
index 05365ec..706bf7a 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -519,7 +519,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,PRIVATELIBS_URE,ure, \
sal_textenc \
stocservices \
store \
- $(if $(ENABLE_JAVA),sunjavaplugin) \
unoidl \
uuresolver \
xmlreader \
diff --git a/dbaccess/CppunitTest_dbaccess_embeddeddb_performancetest.mk b/dbaccess/CppunitTest_dbaccess_embeddeddb_performancetest.mk
index 0331398..2fe7e94 100644
--- a/dbaccess/CppunitTest_dbaccess_embeddeddb_performancetest.mk
+++ b/dbaccess/CppunitTest_dbaccess_embeddeddb_performancetest.mk
@@ -25,7 +25,6 @@ $(eval $(call gb_CppunitTest_use_libraries,dbaccess_embeddeddb_performancetest,
jvmfwk \
sal \
subsequenttest \
- sunjavaplugin \
utl \
test \
tk \
diff --git a/dbaccess/CppunitTest_dbaccess_hsqldb_test.mk b/dbaccess/CppunitTest_dbaccess_hsqldb_test.mk
index 07a96ec..9cc4718 100644
--- a/dbaccess/CppunitTest_dbaccess_hsqldb_test.mk
+++ b/dbaccess/CppunitTest_dbaccess_hsqldb_test.mk
@@ -25,7 +25,6 @@ $(eval $(call gb_CppunitTest_use_libraries,dbaccess_hsqldb_test, \
jvmfwk \
sal \
subsequenttest \
- sunjavaplugin \
utl \
test \
tk \
diff --git a/include/jvmfwk/framework.h b/include/jvmfwk/framework.h
index dc99015..e791a1f 100644
--- a/include/jvmfwk/framework.h
+++ b/include/jvmfwk/framework.h
@@ -197,7 +197,6 @@ typedef enum _javaFrameworkError
JFW_E_NEED_RESTART,
JFW_E_RUNNING_JVM,
JFW_E_JAVA_DISABLED,
- JFW_E_NO_PLUGIN,
JFW_E_NOT_RECOGNIZED,
JFW_E_FAILED_VERSION,
JFW_E_NO_JAVA_FOUND,
@@ -376,7 +375,6 @@ JVMFWK_DLLPUBLIC javaFrameworkError SAL_CALL jfw_isVMRunning(sal_Bool *bRunning)
@return
JFW_E_NONE function ran successfully.<br/>
JFW_E_ERROR an error occurred. <br/>
- JFW_E_NO_PLUGIN a plug-in library could not be found.<br/>
JFW_E_NO_JAVA_FOUND no JRE was found that meets the requirements.</br>
JFW_E_DIRECT_MODE the function cannot be used in this mode. </br>
JFW_E_CONFIGURATION mode was not properly set or their prerequisites
@@ -407,7 +405,6 @@ JVMFWK_DLLPUBLIC javaFrameworkError SAL_CALL jfw_findAndSelectJRE(JavaInfo **pIn
JFW_E_NONE function ran successfully.<br/>
JFW_E_INVALID_ARG at least on of the parameters was NULL<br/>
JFW_E_ERROR an error occurred. <br/>
- JFW_E_NO_PLUGIN a plug-in library could not be found.<br/>
JFW_E_CONFIGURATION mode was not properly set or their prerequisites
were not met.
*/
@@ -439,7 +436,6 @@ JVMFWK_DLLPUBLIC javaFrameworkError SAL_CALL jfw_findAllJREs(
JFW_E_ERROR an error occurred. <br/>
JFW_E_CONFIGURATION mode was not properly set or their prerequisites
were not met.</br>
- JFW_E_NO_PLUGIN a plug-in library could not be found.<br/>
JFW_E_NOT_RECOGNIZED neither plug-in library could detect a JRE. <br/>
JFW_E_FAILED_VERSION a JRE was detected but if failed the version
requirements as determined by the javavendors.xml
@@ -496,8 +492,6 @@ JVMFWK_DLLPUBLIC javaFrameworkError SAL_CALL jfw_getJavaInfoByPath(
JFW_E_ERROR an error occurred. <br/>
JFW_E_CONFIGURATION mode was not properly set or their prerequisites
were not met.</br>
- JFW_E_NO_PLUGIN the plug-in library responsible for creating the VM
- could not be found.<br/>
JFW_E_JAVA_DISABLED the use of Java is currently disabled. <br/>
JFW_E_NO_SELECT there is no JRE selected yet. <br/>
JFW_E_RUNNIN_JVM there is already a VM running.<br/>
@@ -768,7 +762,6 @@ JVMFWK_DLLPUBLIC javaFrameworkError SAL_CALL jfw_getJRELocations(
JFW_E_NONE the function ran successfully.</br>
JFW_E_ERROR an error occurred during execution.</br>
JFW_E_INVALID_ARG pInfo contains invalid data</br>
- JFW_E_NO_PLUGIN a plug-in library could not be found.<br/>
*/
JVMFWK_DLLPUBLIC javaFrameworkError SAL_CALL jfw_existJRE(const JavaInfo *pInfo, sal_Bool *exist);
diff --git a/include/jvmfwk/jvmfwkplugindllapi.h b/include/jvmfwk/jvmfwkplugindllapi.h
deleted file mode 100644
index d96016e..0000000
--- a/include/jvmfwk/jvmfwkplugindllapi.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- */
-
-#ifndef INCLUDED_JVMFWK_JVMFWKPLUGINDLLAPI_H
-#define INCLUDED_JVMFWK_JVMFWKPLUGINDLLAPI_H
-
-#include <sal/types.h>
-
-#if defined JVMFWK_PLUGIN_DLLIMPLEMENTATION
-# define JVMFWK_PLUGIN_DLLPUBLIC SAL_DLLPUBLIC_EXPORT
-#else
-# define JVMFWK_PLUGIN_DLLPUBLIC SAL_DLLPUBLIC_IMPORT
-#endif
-#define JVMFWK_PLUGIN_DLLPRIVATE SAL_DLLPRIVATE
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/jvmfwk/vendorplugin.h b/include/jvmfwk/vendorplugin.h
index 2855e33..d51943e 100644
--- a/include/jvmfwk/vendorplugin.h
+++ b/include/jvmfwk/vendorplugin.h
@@ -21,7 +21,6 @@
#ifndef INCLUDED_JVMFWK_VENDORPLUGIN_H
#define INCLUDED_JVMFWK_VENDORPLUGIN_H
-#include <jvmfwk/jvmfwkplugindllapi.h>
#include <jvmfwk/framework.h>
#include <rtl/ustring.h>
#include "jni.h"
@@ -116,7 +115,7 @@ typedef enum
<code>sMinVersion,sMaxVersion,arExcludeList</code> are not recognized as valid
version strings.
*/
-JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_getAllJavaInfos(
+javaPluginError jfw_plugin_getAllJavaInfos(
rtl_uString *sVendor,
rtl_uString *sMinVersion,
rtl_uString *sMaxVersion,
@@ -167,7 +166,7 @@ JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_getAllJavaInfos(
does not mean necessarily that there is no JRE. There could be a JRE but it has
a vendor which is not supported by this API implementation.
*/
-JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_getJavaInfoByPath(
+javaPluginError jfw_plugin_getJavaInfoByPath(
rtl_uString *sLocation,
rtl_uString *sVendor,
rtl_uString *sMinVersion,
@@ -220,7 +219,7 @@ JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_getJavaInfoByPath(
JFW_PLUGIN_E_VM_CREATION_FAILED a VM could not be created. The error was caused
by the JRE.
*/
-JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_startJavaVirtualMachine(
+javaPluginError jfw_plugin_startJavaVirtualMachine(
const JavaInfo *pInfo,
const JavaVMOption *arOptions,
sal_Int32 nSizeOptions,
@@ -246,7 +245,7 @@ JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_startJavaVirtualMachine(
JFW_PLUGIN_E_ERROR an error occurred during execution.</br>
JFW_PLUGIN_E_INVALID_ARG pInfo contains invalid data</br>
*/
-JVMFWK_PLUGIN_DLLPUBLIC javaPluginError jfw_plugin_existJRE(const JavaInfo *pInfo, sal_Bool *exist);
+javaPluginError jfw_plugin_existJRE(const JavaInfo *pInfo, sal_Bool *exist);
#ifdef __cplusplus
}
diff --git a/jvmfwk/Library_jvmfwk.mk b/jvmfwk/Library_jvmfwk.mk
index f47caa2..5b99f58 100644
--- a/jvmfwk/Library_jvmfwk.mk
+++ b/jvmfwk/Library_jvmfwk.mk
@@ -13,16 +13,30 @@ $(eval $(call gb_Library_add_defs,jvmfwk,\
-DJVMFWK_DLLIMPLEMENTATION \
))
+ifneq ($(JVM_ONE_PATH_CHECK),)
+$(eval $(call gb_Library_add_defs,jvmfwk,\
+ -DJVM_ONE_PATH_CHECK=\"$(JVM_ONE_PATH_CHECK)\" \
+))
+endif
+
$(eval $(call gb_Library_use_api,jvmfwk,\
udkapi \
))
$(eval $(call gb_Library_use_libraries,jvmfwk,\
+ cppu \
cppuhelper \
sal \
+ salhelper \
$(gb_UWINAPI) \
))
+ifeq ($(OS),ANDROID)
+$(eval $(call gb_Library_use_libraries,jvmfwk,\
+ lo-bootstrap \
+))
+endif
+
ifeq ($(OS),WNT)
$(eval $(call gb_Library_use_system_win32_libs,jvmfwk,\
advapi32 \
@@ -32,9 +46,18 @@ endif
$(eval $(call gb_Library_use_externals,jvmfwk,\
boost_headers \
libxml2 \
+ valgrind \
))
$(eval $(call gb_Library_add_exception_objects,jvmfwk,\
+ jvmfwk/plugins/sunmajor/pluginlib/gnujre \
+ jvmfwk/plugins/sunmajor/pluginlib/otherjre \
+ jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin \
+ jvmfwk/plugins/sunmajor/pluginlib/sunjre \
+ jvmfwk/plugins/sunmajor/pluginlib/sunversion \
+ jvmfwk/plugins/sunmajor/pluginlib/util \
+ jvmfwk/plugins/sunmajor/pluginlib/vendorbase \
+ jvmfwk/plugins/sunmajor/pluginlib/vendorlist \
jvmfwk/source/elements \
jvmfwk/source/framework \
jvmfwk/source/fwkbase \
diff --git a/jvmfwk/Library_sunjavaplugin.mk b/jvmfwk/Library_sunjavaplugin.mk
deleted file mode 100644
index a82dfe8..0000000
--- a/jvmfwk/Library_sunjavaplugin.mk
+++ /dev/null
@@ -1,62 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Library_Library,sunjavaplugin))
-
-$(eval $(call gb_Library_add_defs,sunjavaplugin,\
- -DJVMFWK_PLUGIN_DLLIMPLEMENTATION \
-))
-
-ifneq ($(JVM_ONE_PATH_CHECK),)
-$(eval $(call gb_Library_add_defs,sunjavaplugin,\
- -DJVM_ONE_PATH_CHECK=\"$(JVM_ONE_PATH_CHECK)\" \
-))
-endif
-
-$(eval $(call gb_Library_use_api,sunjavaplugin,\
- udkapi \
-))
-
-$(eval $(call gb_Library_use_libraries,sunjavaplugin,\
- cppu \
- cppuhelper \
- sal \
- salhelper \
- $(gb_UWINAPI) \
-))
-
-ifeq ($(OS),ANDROID)
-$(eval $(call gb_Library_use_libraries,sunjavaplugin,\
- lo-bootstrap \
-))
-endif
-
-ifeq ($(OS),WNT)
-$(eval $(call gb_Library_use_system_win32_libs,sunjavaplugin,\
- advapi32 \
-))
-endif
-
-$(eval $(call gb_Library_use_externals,sunjavaplugin,\
- boost_headers \
- valgrind \
-))
-
-$(eval $(call gb_Library_add_exception_objects,sunjavaplugin,\
- jvmfwk/plugins/sunmajor/pluginlib/gnujre \
- jvmfwk/plugins/sunmajor/pluginlib/otherjre \
- jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin \
- jvmfwk/plugins/sunmajor/pluginlib/sunjre \
- jvmfwk/plugins/sunmajor/pluginlib/sunversion \
- jvmfwk/plugins/sunmajor/pluginlib/util \
- jvmfwk/plugins/sunmajor/pluginlib/vendorbase \
- jvmfwk/plugins/sunmajor/pluginlib/vendorlist \
-))
-
-# vim:set noet sw=4 ts=4:
diff --git a/jvmfwk/Module_jvmfwk.mk b/jvmfwk/Module_jvmfwk.mk
index 00fd9c5..5ec28e5 100644
--- a/jvmfwk/Module_jvmfwk.mk
+++ b/jvmfwk/Module_jvmfwk.mk
@@ -14,7 +14,6 @@ ifeq ($(ENABLE_JAVA),TRUE)
$(eval $(call gb_Module_add_targets,jvmfwk,\
CustomTarget_jreproperties \
Library_jvmfwk \
- Library_sunjavaplugin \
Package_jreproperties \
Package_rcfiles \
))
diff --git a/jvmfwk/README b/jvmfwk/README
index dad5f43..3c2b105 100644
--- a/jvmfwk/README
+++ b/jvmfwk/README
@@ -1,4 +1,4 @@
Wrappers so you can use all the Java Runtime Environments with their slightly incompatible APIs with more ease.
-Uses an over-engineered "plugin" mechanism although there is only one
+Used to use an over-engineered "plugin" mechanism although there was only one
"plugin", called "sunmajor", that handles all possible JREs.
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors.xsd b/jvmfwk/distributions/OpenOfficeorg/javavendors.xsd
index 34a0cd5..fbc643f 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors.xsd
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors.xsd
@@ -21,33 +21,16 @@
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<element name="javaSelection" type="jf:JavaSelectionType">
- <unique name="dummy1">
- <selector xpath="jf:plugins/jf:library"/>
- <field xpath="@vendor"/>
- </unique>
-
-
- <keyref name="dummy2" refer="jf:pluginKey">
- <selector xpath="jf:vendorInfos/jf:vendor"/>
- <field xpath="@name"/>
- </keyref>
-
<unique name="dummy3">
<selector xpath="jf:vendorInfos/jf:vendor"/>
<field xpath="@name"/>
</unique>
-
- <key name="pluginKey">
- <selector xpath="jf:plugins/jf:library"/>
- <field xpath="@vendor"/>
- </key>
</element>
<complexType name="JavaSelectionType">
<sequence>
<element name="updated" type="date"/>
<element name="vendorInfos" type="jf:VendorInfoType"/>
- <element name="plugins" type="jf:PluginType"/>
</sequence>
</complexType>
@@ -57,21 +40,7 @@
<element name="vendor" type="jf:VendorType" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
-
- <complexType name="PluginType">
- <sequence>
- <element name="library" type="jf:LibraryType" minOccurs="0" maxOccurs="unbounded"/>
- </sequence>
- </complexType>
- <complexType name="LibraryType">
- <simpleContent>
- <extension base="string">
- <attribute name="vendor" use="required" type="string"/>
- </extension>
- </simpleContent>
- </complexType>
-
<complexType name="VendorType">
<sequence>
<element name="minVersion" type="string" minOccurs="0"/>
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors_freebsd.xml b/jvmfwk/distributions/OpenOfficeorg/javavendors_freebsd.xml
index bfd80e0..13089bc 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors_freebsd.xml
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors_freebsd.xml
@@ -37,10 +37,4 @@
</vendor>
</vendorInfos>
- <plugins>
- <library vendor="Oracle Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="Sun Microsystems Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="The FreeBSD Foundation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="Free Software Foundation, Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- </plugins>
</javaSelection>
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors_linux.xml b/jvmfwk/distributions/OpenOfficeorg/javavendors_linux.xml
index 311bf81..1c8c8bd 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors_linux.xml
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors_linux.xml
@@ -43,12 +43,4 @@
</vendor>
</vendorInfos>
- <plugins>
- <library vendor="Sun Microsystems Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="Oracle Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="IBM Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="Blackdown Java-Linux Team">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="Free Software Foundation, Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="BEA Systems, Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- </plugins>
</javaSelection>
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors_macosx.xml b/jvmfwk/distributions/OpenOfficeorg/javavendors_macosx.xml
index aa8b423..e2925ee 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors_macosx.xml
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors_macosx.xml
@@ -33,9 +33,5 @@
<minVersion>1.7.0</minVersion>
</vendor>
</vendorInfos>
- <plugins>
- <library vendor="Oracle Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.dylib</library>
- <library vendor="Apple Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.dylib</library>
- <library vendor="Apple Computer, Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.dylib</library>
- </plugins>
+
</javaSelection>
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors_template.xml b/jvmfwk/distributions/OpenOfficeorg/javavendors_template.xml
index 9bc0c41..f4e5fb8 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors_template.xml
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors_template.xml
@@ -45,8 +45,4 @@ look like.
</vendor>
</vendorInfos>
- <plugins>
- <library vendor="Sun Microsystems Inc.">libsunjavapluginlo.dll</library>
- <library vendor="VendorX">./pluginDir/vendorx.dll</library>
- </plugins>
</javaSelection>
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors_unx.xml b/jvmfwk/distributions/OpenOfficeorg/javavendors_unx.xml
index e9bbd68..c7b0568 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors_unx.xml
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors_unx.xml
@@ -31,8 +31,4 @@
</vendor>
</vendorInfos>
- <plugins>
- <library vendor="Oracle Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- <library vendor="Sun Microsystems Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/libsunjavapluginlo.so</library>
- </plugins>
</javaSelection>
diff --git a/jvmfwk/distributions/OpenOfficeorg/javavendors_wnt.xml b/jvmfwk/distributions/OpenOfficeorg/javavendors_wnt.xml
index 5b33aad..4f76089 100644
--- a/jvmfwk/distributions/OpenOfficeorg/javavendors_wnt.xml
+++ b/jvmfwk/distributions/OpenOfficeorg/javavendors_wnt.xml
@@ -34,9 +34,4 @@
</vendor>
</vendorInfos>
- <plugins>
- <library vendor="Sun Microsystems Inc.">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/sunjavapluginlo.dll</library>
- <library vendor="Oracle Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/sunjavapluginlo.dll</library>
- <library vendor="IBM Corporation">vnd.sun.star.expand:$URE_INTERNAL_LIB_DIR/sunjavapluginlo.dll</library>
- </plugins>
</javaSelection>
diff --git a/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx b/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx
index 09e0435..8f5e5a2 100644
--- a/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx
+++ b/jvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx
@@ -95,22 +95,6 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
}
}
- OUString aVendor( pInfo->sVendor );
- // Only do something if the sunjavaplugin created this JavaInfo
- if ( aVendor != "Sun Microsystems Inc." &&
- aVendor != "Oracle Corporation" &&
- aVendor != "IBM Corporation" &&
- aVendor != "Blackdown Java-Linux Team" &&
- aVendor != "Apple Inc." &&
- aVendor != "Apple Computer, Inc." &&
- aVendor != "BEA Systems, Inc." &&
- aVendor != "Free Software Foundation, Inc." &&
- aVendor != "The FreeBSD Foundation" )
- {
- jfw_freeJavaInfo(pInfo);
- return 0;
- }
-
OString sPaths = getLD_LIBRARY_PATH(pInfo->arVendorData);
fprintf(stdout, "%s\n", sPaths.getStr());
jfw_freeJavaInfo(pInfo);
diff --git a/jvmfwk/source/elements.hxx b/jvmfwk/source/elements.hxx
index 17d66fe..28abbae 100644
--- a/jvmfwk/source/elements.hxx
+++ b/jvmfwk/source/elements.hxx
@@ -353,23 +353,6 @@ public:
sal_Int32 getExcludeVersionSize();
};
-struct PluginLibrary
-{
- PluginLibrary()
- {
- }
- PluginLibrary(const OUString & vendor, const OUString & path) :
- sVendor(vendor), sPath(path)
- {
- }
- /** contains the vendor string which is later userd in the xml API
- */
- OUString sVendor;
- /** File URL the plug-in library
- */
- OUString sPath;
-};
-
} //end namespace
#endif
diff --git a/jvmfwk/source/framework.cxx b/jvmfwk/source/framework.cxx
index 1a32be2..cd7d551 100644
--- a/jvmfwk/source/framework.cxx
+++ b/jvmfwk/source/framework.cxx
@@ -22,7 +22,6 @@
#include "rtl/bootstrap.hxx"
#include "osl/thread.hxx"
#include "osl/file.hxx"
-#include "osl/module.hxx"
#include "jvmfwk/framework.h"
#include "jvmfwk/vendorplugin.h"
#include <cassert>
@@ -48,41 +47,6 @@ bool areEqualJavaInfo(
}
-#ifdef DISABLE_DYNLOADING
-
-extern "C"
-javaPluginError jfw_plugin_getAllJavaInfos(
- rtl_uString *sVendor,
- rtl_uString *sMinVersion,
- rtl_uString *sMaxVersion,
- rtl_uString * *arExcludeList,
- sal_Int32 nLenList,
- JavaInfo*** parJavaInfo,
- sal_Int32 *nLenInfoList);
-
-extern "C"
-javaPluginError jfw_plugin_getJavaInfoByPath(
- rtl_uString *path,
- rtl_uString *sVendor,
- rtl_uString *sMinVersion,
- rtl_uString *sMaxVersion,
- rtl_uString * *arExcludeList,
- sal_Int32 nLenList,
- JavaInfo ** ppInfo);
-
-extern "C"
-javaPluginError jfw_plugin_startJavaVirtualMachine(
- const JavaInfo *pInfo,
- const JavaVMOption* arOptions,
- sal_Int32 cOptions,
- JavaVM ** ppVm,
- JNIEnv ** ppEnv);
-
-extern "C"
-javaPluginError jfw_plugin_existJRE(const JavaInfo *pInfo, sal_Bool *exist);
-
-#endif
-
javaFrameworkError SAL_CALL jfw_findAllJREs(JavaInfo ***pparInfo, sal_Int32 *pSize)
{
javaFrameworkError retVal = JFW_E_NONE;
@@ -94,16 +58,8 @@ javaFrameworkError SAL_CALL jfw_findAllJREs(JavaInfo ***pparInfo, sal_Int32 *pSi
return JFW_E_INVALID_ARG;
jfw::VendorSettings aVendorSettings;
- //Get a list of plugins which provide Java information
- std::vector<jfw::PluginLibrary> vecPlugins =
- aVendorSettings.getPluginData();
-#ifndef DISABLE_DYNLOADING
- //Create a vector that holds the libraries, which will be later
- //dynamically loaded;
- boost::scoped_array<osl::Module> sarModules;
- sarModules.reset(new osl::Module[vecPlugins.size()]);
- osl::Module * arModules = sarModules.get();
-#endif
+ std::vector<OUString> vecVendors =
+ aVendorSettings.getSupportedVendors();
//Add the JavaInfos found by jfw_plugin_getAllJavaInfos to the vector
//Make sure that the contents are destroyed if this
//function returns with an error
@@ -119,42 +75,20 @@ javaFrameworkError SAL_CALL jfw_findAllJREs(JavaInfo ***pparInfo, sal_Int32 *pSi
const std::vector<OUString>& vecJRELocations =
settings.getJRELocations();
//Use every plug-in library to get Java installations.
- typedef std::vector<jfw::PluginLibrary>::const_iterator ci_pl;
+ typedef std::vector<OUString>::const_iterator ci_pl;
int cModule = 0;
- for (ci_pl i = vecPlugins.begin(); i != vecPlugins.end(); ++i, ++cModule)
+ for (ci_pl i = vecVendors.begin(); i != vecVendors.end(); ++i, ++cModule)
{
- const jfw::PluginLibrary & library = *i;
+ const OUString & vendor = *i;
jfw::VersionInfo versionInfo =
- aVendorSettings.getVersionInformation(library.sVendor);
-#ifndef DISABLE_DYNLOADING
- arModules[cModule].load(library.sPath);
- osl::Module & pluginLib = arModules[cModule];
-
- if (!pluginLib.is())
- {
- OString msg = OUStringToOString(
- library.sPath, osl_getThreadTextEncoding());
- fprintf(stderr,"[jvmfwk] Could not load plugin %s\n" \
- "Modify the javavendors.xml accordingly!\n", msg.getStr());
- return JFW_E_NO_PLUGIN;
- }
- jfw_plugin_getAllJavaInfos_ptr getAllJavaFunc =
- (jfw_plugin_getAllJavaInfos_ptr) pluginLib.getFunctionSymbol(
- OUString("jfw_plugin_getAllJavaInfos"));
-#else
- jfw_plugin_getAllJavaInfos_ptr getAllJavaFunc =
- jfw_plugin_getAllJavaInfos;
-#endif
- OSL_ASSERT(getAllJavaFunc);
- if (getAllJavaFunc == NULL)
- return JFW_E_ERROR;
+ aVendorSettings.getVersionInformation(vendor);
//get all installations of one vendor according to minVersion,
//maxVersion and excludeVersions
sal_Int32 cInfos = 0;
JavaInfo** arInfos = NULL;
- javaPluginError plerr = (*getAllJavaFunc)(
- library.sVendor.pData,
+ javaPluginError plerr = jfw_plugin_getAllJavaInfos(
+ vendor.pData,
versionInfo.sMinVersion.pData,
versionInfo.sMaxVersion.pData,
versionInfo.getExcludeVersions(),
@@ -173,27 +107,15 @@ javaFrameworkError SAL_CALL jfw_findAllJREs(JavaInfo ***pparInfo, sal_Int32 *pSi
//Check if the current plugin can detect JREs at the location
// of the paths added by jfw_addJRELocation
//get the function from the plugin
-#ifndef DISABLE_DYNLOADING
- jfw_plugin_getJavaInfoByPath_ptr jfw_plugin_getJavaInfoByPathFunc =
- (jfw_plugin_getJavaInfoByPath_ptr) pluginLib.getFunctionSymbol(
- OUString("jfw_plugin_getJavaInfoByPath"));
- OSL_ASSERT(jfw_plugin_getJavaInfoByPathFunc);
- if (jfw_plugin_getJavaInfoByPathFunc == NULL)
- return JFW_E_ERROR;
-#else
- jfw_plugin_getJavaInfoByPath_ptr jfw_plugin_getJavaInfoByPathFunc =
- jfw_plugin_getJavaInfoByPath;
-#endif
-
typedef std::vector<OUString>::const_iterator citLoc;
//Check every manually added location
for (citLoc ii = vecJRELocations.begin();
ii != vecJRELocations.end(); ++ii)
{
jfw::CJavaInfo aInfo;
- plerr = (*jfw_plugin_getJavaInfoByPathFunc)(
+ plerr = jfw_plugin_getJavaInfoByPath(
ii->pData,
- library.sVendor.pData,
+ vendor.pData,
versionInfo.sMinVersion.pData,
versionInfo.sMaxVersion.pData,
versionInfo.getExcludeVersions(),
@@ -225,9 +147,9 @@ javaFrameworkError SAL_CALL jfw_findAllJREs(JavaInfo ***pparInfo, sal_Int32 *pSi
std::vector<jfw::CJavaInfo> vecInfoManual2;
for (it_info ivm = vecInfoManual.begin(); ivm != vecInfoManual.end(); ++ivm)
{
- for (ci_pl ii = vecPlugins.begin(); ii != vecPlugins.end(); ++ii)
+ for (ci_pl ii = vecVendors.begin(); ii != vecVendors.end(); ++ii)
{
- if ( ii->sVendor.equals((*ivm)->sVendor))
+ if ( ii->equals((*ivm)->sVendor))
{
vecInfoManual2.push_back(*ivm);
break;
@@ -378,23 +300,6 @@ javaFrameworkError SAL_CALL jfw_startVM(
//get the function jfw_plugin_startJavaVirtualMachine
jfw::VendorSettings aVendorSettings;
- OUString sLibPath = aVendorSettings.getPluginLibrary(pInfo->sVendor);
-
-#ifndef DISABLE_DYNLOADING
- osl::Module modulePlugin(sLibPath);
- if ( ! modulePlugin)
- return JFW_E_NO_PLUGIN;
-
- OUString sFunctionName("jfw_plugin_startJavaVirtualMachine");
- jfw_plugin_startJavaVirtualMachine_ptr pFunc =
- (jfw_plugin_startJavaVirtualMachine_ptr)
- osl_getFunctionSymbol(modulePlugin, sFunctionName.pData);
- if (pFunc == NULL)
- return JFW_E_ERROR;
-#else
- jfw_plugin_startJavaVirtualMachine_ptr pFunc =
- jfw_plugin_startJavaVirtualMachine;
-#endif
// create JavaVMOptions array that is passed to the plugin
// it contains the classpath and all options set in the
@@ -434,7 +339,7 @@ javaFrameworkError SAL_CALL jfw_startVM(
//start Java
JavaVM *pVm = NULL;
SAL_INFO("jfw", "Starting Java");
- javaPluginError plerr = (*pFunc)(pInfo, arOpt, index, & pVm, ppEnv);
+ javaPluginError plerr = jfw_plugin_startJavaVirtualMachine(pInfo, arOpt, index, & pVm, ppEnv);
if (plerr == JFW_PLUGIN_E_VM_CREATION_FAILED)
{
errcode = JFW_E_VM_CREATION_FAILED;
@@ -483,47 +388,24 @@ javaFrameworkError SAL_CALL jfw_findAndSelectJRE(JavaInfo **pInfo)
//Get a list of services which provide Java information
jfw::VendorSettings aVendorSettings;
- std::vector<jfw::PluginLibrary> vecPlugins =
- aVendorSettings.getPluginData();
-#ifndef DISABLE_DYNLOADING
- //Create a vector that holds the libraries, which will be later
- //dynamically loaded;
- boost::scoped_array<osl::Module> sarModules;
- sarModules.reset(new osl::Module[vecPlugins.size()]);
- osl::Module * arModules = sarModules.get();
-#endif
- //Use every plug-in library to get Java installations. At the first usable
+ std::vector<OUString> vecVendors =
+ aVendorSettings.getSupportedVendors();
+ //Use every vendor to get Java installations. At the first usable
//Java the loop will break
- typedef std::vector<jfw::PluginLibrary>::const_iterator ci_pl;
+ typedef std::vector<OUString>::const_iterator ci_pl;
int cModule = 0;
- for (ci_pl i = vecPlugins.begin(); i != vecPlugins.end(); ++i, ++cModule)
+ for (ci_pl i = vecVendors.begin(); i != vecVendors.end(); ++i, ++cModule)
{
- const jfw::PluginLibrary & library = *i;
+ const OUString & vendor = *i;
jfw::VersionInfo versionInfo =
- aVendorSettings.getVersionInformation(library.sVendor);
-#ifndef DISABLE_DYNLOADING
- arModules[cModule].load(library.sPath);
- osl::Module & pluginLib = arModules[cModule];
- if (!pluginLib.is())
- return JFW_E_NO_PLUGIN;
-
- jfw_plugin_getAllJavaInfos_ptr getAllJavaFunc =
- (jfw_plugin_getAllJavaInfos_ptr) pluginLib.getFunctionSymbol(
- OUString("jfw_plugin_getAllJavaInfos"));
-#else
- jfw_plugin_getAllJavaInfos_ptr getAllJavaFunc =
- jfw_plugin_getAllJavaInfos;
-#endif
- OSL_ASSERT(getAllJavaFunc);
- if (getAllJavaFunc == NULL)
- continue;
+ aVendorSettings.getVersionInformation(vendor);
//get all installations of one vendor according to minVersion,
//maxVersion and excludeVersions
sal_Int32 cInfos = 0;
JavaInfo** arInfos = NULL;
- javaPluginError plerr = (*getAllJavaFunc)(
- library.sVendor.pData,
+ javaPluginError plerr = jfw_plugin_getAllJavaInfos(
+ vendor.pData,
versionInfo.sMinVersion.pData,
versionInfo.sMaxVersion.pData,
versionInfo.getExcludeVersions(),
@@ -581,37 +463,20 @@ javaFrameworkError SAL_CALL jfw_findAndSelectJRE(JavaInfo **pInfo)
settings.getJRELocations();
//use every plug-in to determine the JavaInfo objects
bool bInfoFound = false;
- for (ci_pl i = vecPlugins.begin(); i != vecPlugins.end(); ++i)
+ for (ci_pl i = vecVendors.begin(); i != vecVendors.end(); ++i)
{
- const jfw::PluginLibrary & library = *i;
+ const OUString & vendor = *i;
jfw::VersionInfo versionInfo =
- aVendorSettings.getVersionInformation(library.sVendor);
-#ifndef DISABLE_DYNLOADING
- osl::Module pluginLib(library.sPath);
- if (!pluginLib.is())
- return JFW_E_NO_PLUGIN;
- //Check if the current plugin can detect JREs at the location
- // of the paths added by jfw_addJRELocation
- //get the function from the plugin
- jfw_plugin_getJavaInfoByPath_ptr jfw_plugin_getJavaInfoByPathFunc =
- (jfw_plugin_getJavaInfoByPath_ptr) pluginLib.getFunctionSymbol(
- OUString("jfw_plugin_getJavaInfoByPath"));
-#else
- jfw_plugin_getJavaInfoByPath_ptr jfw_plugin_getJavaInfoByPathFunc =
- jfw_plugin_getJavaInfoByPath;
-#endif
- OSL_ASSERT(jfw_plugin_getJavaInfoByPathFunc);
- if (jfw_plugin_getJavaInfoByPathFunc == NULL)
- return JFW_E_ERROR;
+ aVendorSettings.getVersionInformation(vendor);
typedef std::vector<OUString>::const_iterator citLoc;
for (citLoc it = vecJRELocations.begin();
it != vecJRELocations.end(); ++it)
{
jfw::CJavaInfo aInfo;
- javaPluginError err = (*jfw_plugin_getJavaInfoByPathFunc)(
+ javaPluginError err = jfw_plugin_getJavaInfoByPath(
it->pData,
- library.sVendor.pData,
+ vendor.pData,
versionInfo.sMinVersion.pData,
versionInfo.sMaxVersion.pData,
versionInfo.getExcludeVersions(),
@@ -787,61 +652,27 @@ javaFrameworkError SAL_CALL jfw_getJavaInfoByPath(
return JFW_E_INVALID_ARG;
jfw::VendorSettings aVendorSettings;
- //Get a list of plugins which provide Java information
- std::vector<jfw::PluginLibrary> vecPlugins =
- aVendorSettings.getPluginData();
-#ifndef DISABLE_DYNLOADING
- //Create a vector that holds the libraries, which will be later
- //dynamically loaded;
- boost::scoped_array<osl::Module> sarModules;
- sarModules.reset(new osl::Module[vecPlugins.size()]);
- osl::Module * arModules = sarModules.get();
-#endif
- typedef std::vector<OUString>::const_iterator CIT_VENDOR;
std::vector<OUString> vecVendors =
aVendorSettings.getSupportedVendors();
//Use every plug-in library to determine if the path represents a
//JRE. If a plugin recognized it then the loop will break
- typedef std::vector<jfw::PluginLibrary>::const_iterator ci_pl;
+ typedef std::vector<OUString>::const_iterator ci_pl;
int cModule = 0;
- for (ci_pl i = vecPlugins.begin(); i != vecPlugins.end();
+ for (ci_pl i = vecVendors.begin(); i != vecVendors.end();
++i, ++cModule)
{
- const jfw::PluginLibrary & library = *i;
+ const OUString & vendor = *i;
jfw::VersionInfo versionInfo =
- aVendorSettings.getVersionInformation(library.sVendor);
-
-#ifndef DISABLE_DYNLOADING
- arModules[cModule].load(library.sPath);
- osl::Module & pluginLib = arModules[cModule];
- if (!pluginLib.is())
- {
- OString msg = OUStringToOString(
- library.sPath, osl_getThreadTextEncoding());
- fprintf(stderr,"[jvmfwk] Could not load plugin %s\n" \
- "Modify the javavendors.xml accordingly!\n", msg.getStr());
- return JFW_E_NO_PLUGIN;
- }
-
- jfw_plugin_getJavaInfoByPath_ptr jfw_plugin_getJavaInfoByPathFunc =
- (jfw_plugin_getJavaInfoByPath_ptr) pluginLib.getFunctionSymbol(
- OUString("jfw_plugin_getJavaInfoByPath"));
-#else
- jfw_plugin_getJavaInfoByPath_ptr jfw_plugin_getJavaInfoByPathFunc =
- jfw_plugin_getJavaInfoByPath;
-#endif
- OSL_ASSERT(jfw_plugin_getJavaInfoByPathFunc);
- if (jfw_plugin_getJavaInfoByPathFunc == NULL)
- continue;
+ aVendorSettings.getVersionInformation(vendor);
//ask the plugin if this is a JRE.
//If so check if it meets the version requirements.
//Only if it does return a JavaInfo
JavaInfo* pInfo = NULL;
- javaPluginError plerr = (*jfw_plugin_getJavaInfoByPathFunc)(
+ javaPluginError plerr = jfw_plugin_getJavaInfoByPath(
pPath,
- library.sVendor.pData,
+ vendor.pData,
versionInfo.sMinVersion.pData,
versionInfo.sMaxVersion.pData,
versionInfo.getExcludeVersions(),
@@ -850,29 +681,8 @@ javaFrameworkError SAL_CALL jfw_getJavaInfoByPath(
if (plerr == JFW_PLUGIN_E_NONE)
{
- //check if the vendor of the found JRE is supported
- if (vecVendors.empty())
- {
- //vendor does not matter
- *ppInfo = pInfo;
- break;
- }
- else
- {
- OUString sVendor(pInfo->sVendor);
- CIT_VENDOR ivendor = std::find(vecVendors.begin(), vecVendors.end(),
- sVendor);
- if (ivendor != vecVendors.end())
- {
- *ppInfo = pInfo;
- }
- else
- {
- *ppInfo = NULL;
- errcode = JFW_E_NOT_RECOGNIZED;
- }
- break;
- }
+ *ppInfo = pInfo;
+ break;
}
else if(plerr == JFW_PLUGIN_E_FAILED_VERSION)
{//found JRE but it has the wrong version
@@ -1141,22 +951,7 @@ javaFrameworkError jfw_existJRE(const JavaInfo *pInfo, sal_Bool *exist)
jfw::VendorSettings aVendorSettings;
jfw::CJavaInfo aInfo;
aInfo = (const ::JavaInfo*) pInfo; //makes a copy of pInfo
-#ifndef DISABLE_DYNLOADING
- OUString sLibPath = aVendorSettings.getPluginLibrary(aInfo.getVendor());
- osl::Module modulePlugin(sLibPath);
- if ( ! modulePlugin)
- return JFW_E_NO_PLUGIN;
- OUString sFunctionName("jfw_plugin_existJRE");
- jfw_plugin_existJRE_ptr pFunc =
- (jfw_plugin_existJRE_ptr)
- osl_getFunctionSymbol(modulePlugin, sFunctionName.pData);
- if (pFunc == NULL)
- return JFW_E_ERROR;
-#else
- jfw_plugin_existJRE_ptr pFunc =
- jfw_plugin_existJRE;
-#endif
- javaPluginError plerr = (*pFunc)(pInfo, exist);
+ javaPluginError plerr = jfw_plugin_existJRE(pInfo, exist);
javaFrameworkError ret = JFW_E_NONE;
switch (plerr)
diff --git a/jvmfwk/source/fwkbase.cxx b/jvmfwk/source/fwkbase.cxx
index 3b4fba3..84dcbb5 100644
--- a/jvmfwk/source/fwkbase.cxx
+++ b/jvmfwk/source/fwkbase.cxx
@@ -118,53 +118,6 @@ VendorSettings::VendorSettings():
}
}
-std::vector<PluginLibrary> VendorSettings::getPluginData()
-{
- OString sExcMsg("[Java framework] Error in function VendorSettings::getVendorPluginURLs "
- "(fwkbase.cxx).");
- std::vector<PluginLibrary> vecPlugins;
- CXPathObjectPtr result(xmlXPathEvalExpression(
- (xmlChar*)"/jf:javaSelection/jf:plugins/jf:library",
- m_xmlPathContextVendorSettings));
- if (xmlXPathNodeSetIsEmpty(result->nodesetval))
- throw FrameworkException(JFW_E_ERROR, sExcMsg);
-
- //get the values of the library elements + vendor attribute
- xmlNode* cur = result->nodesetval->nodeTab[0];
-
- while (cur != NULL)
- {
- //between library elements are also text elements
- if (cur->type == XML_ELEMENT_NODE)
- {
- CXmlCharPtr sAttrVendor(xmlGetProp(cur, (xmlChar*) "vendor"));
- CXmlCharPtr sTextLibrary(
- xmlNodeListGetString(m_xmlDocVendorSettings,
- cur->xmlChildrenNode, 1));
- PluginLibrary plugin;
- OString osVendor((sal_Char*)(xmlChar*) sAttrVendor);
- plugin.sVendor = OStringToOUString(osVendor, RTL_TEXTENCODING_UTF8);
-
- //create the file URL to the library
- OUString sUrl = findPlugin(
- m_xmlDocVendorSettingsFileUrl, sTextLibrary);
- if (sUrl.isEmpty())
- {
- OString sPlugin = OUStringToOString(
- sTextLibrary, osl_getThreadTextEncoding());
- throw FrameworkException(
- JFW_E_CONFIGURATION,
- "[Java framework] The file: " + sPlugin + " does not exist.");
- }
- plugin.sPath = sUrl;
-
- vecPlugins.push_back(plugin);
- }
- cur = cur->next;
- }
- return vecPlugins;
-}
-
VersionInfo VendorSettings::getVersionInformation(const OUString & sVendor)
{
OSL_ASSERT(!sVendor.isEmpty());
@@ -250,67 +203,29 @@ VersionInfo VendorSettings::getVersionInformation(const OUString & sVendor)
std::vector<OUString> VendorSettings::getSupportedVendors()
{
std::vector<OUString> vecVendors;
- //get the nodeset for the library elements
+ //get the nodeset for the vendor elements
jfw::CXPathObjectPtr result;
result = xmlXPathEvalExpression(
- (xmlChar*)"/jf:javaSelection/jf:plugins/jf:library",
+ (xmlChar*)"/jf:javaSelection/jf:vendorInfos/jf:vendor",
m_xmlPathContextVendorSettings);
- if (xmlXPathNodeSetIsEmpty(result->nodesetval))
- throw FrameworkException(
- JFW_E_ERROR,
- OString("[Java framework] Error in function getSupportedVendors (fwkbase.cxx)."));
-
- //get the values of the library elements + vendor attribute
- xmlNode* cur = result->nodesetval->nodeTab[0];
- while (cur != NULL)
+ if (!xmlXPathNodeSetIsEmpty(result->nodesetval))
{
- //between library elements are also text elements
- if (cur->type == XML_ELEMENT_NODE)
+ //get the values of the vendor elements + name attribute
+ xmlNode* cur = result->nodesetval->nodeTab[0];
+ while (cur != NULL)
{
- jfw::CXmlCharPtr sAttrVendor(xmlGetProp(cur, (xmlChar*) "vendor"));
- vecVendors.push_back(sAttrVendor);
+ //between vendor elements are also text elements
+ if (cur->type == XML_ELEMENT_NODE)
+ {
+ jfw::CXmlCharPtr sAttrVendor(xmlGetProp(cur, (xmlChar*) "name"));
+ vecVendors.push_back(sAttrVendor);
+ }
+ cur = cur->next;
}
- cur = cur->next;
}
return vecVendors;
}
-OUString VendorSettings::getPluginLibrary(const OUString& sVendor)
-{
- OSL_ASSERT(!sVendor.isEmpty());
-
- OString sExcMsg("[Java framework] Error in function getPluginLibrary (fwkbase.cxx).");
- OUStringBuffer usBuffer(256);
- usBuffer.appendAscii("/jf:javaSelection/jf:plugins/jf:library[@vendor=\"");
- usBuffer.append(sVendor);
- usBuffer.appendAscii("\"]/text()");
- OUString ouExpr = usBuffer.makeStringAndClear();
- OString sExpression =
- OUStringToOString(ouExpr, osl_getThreadTextEncoding());
- CXPathObjectPtr pathObjVendor;
- pathObjVendor = xmlXPathEvalExpression(
- (xmlChar*) sExpression.getStr(), m_xmlPathContextVendorSettings);
- if (xmlXPathNodeSetIsEmpty(pathObjVendor->nodesetval))
- throw FrameworkException(JFW_E_ERROR, sExcMsg);
-
- CXmlCharPtr xmlCharPlugin;
- xmlCharPlugin =
- xmlNodeListGetString(
- m_xmlDocVendorSettings,pathObjVendor->nodesetval->nodeTab[0], 1);
-
- //make an absolute file url from the relative plugin URL
- OUString sUrl = findPlugin(m_xmlDocVendorSettingsFileUrl, xmlCharPlugin);
- if (sUrl.isEmpty())
- {
- OString sPlugin = OUStringToOString(
- xmlCharPlugin, osl_getThreadTextEncoding());
- throw FrameworkException(
- JFW_E_CONFIGURATION,
- "[Java framework] The file: " + sPlugin + " does not exist.");
- }
- return sUrl;
-}
-
::std::vector<OString> BootParams::getVMParameters()
{
::std::vector<OString> vecParams;
diff --git a/jvmfwk/source/fwkbase.hxx b/jvmfwk/source/fwkbase.hxx
index 89e7b57..a8efc2a 100644
--- a/jvmfwk/source/fwkbase.hxx
+++ b/jvmfwk/source/fwkbase.hxx
@@ -34,19 +34,6 @@ class VendorSettings
public:
VendorSettings();
- /** Gets all plugin library URLs with the corresponding vendor name.
-
- It uses the /javaSelection/plugins/library element from the javavendors.xml
- to locate the library.
- Is is verified that the plug-in exist. If a plug-in does not exist then an
- exception is thrown containing the error JFW_E_CONFIGURATION
- */
- ::std::vector<PluginLibrary> getPluginData();
-
- /* returns the file URL to the plugin.
- */
- OUString getPluginLibrary(const OUString& sVendor);
-
VersionInfo getVersionInformation(const OUString & sVendor);
::std::vector< OUString> getSupportedVendors();
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 0876dee..d79e1ce 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -296,7 +296,6 @@ $(call gb_CppunitTest_get_target,$(1)) : \
$(call gb_Library_get_target,juhx) \
$(call gb_Library_get_target,jvmaccess) \
$(call gb_Library_get_target,jvmfwk) \
- $(call gb_Library_get_target,sunjavaplugin) \
$(call gb_Package_get_target,jvmfwk_javavendors) \
$(call gb_Package_get_target,jvmfwk_jreproperties)
diff --git a/ure/source/README b/ure/source/README
index 16fce15..1a1c247 100644
--- a/ure/source/README
+++ b/ure/source/README
@@ -49,7 +49,6 @@ ELF platforms (Linux, Solaris, *BSD):
/opt/openoffice.org/ure/lib/libxmlreaderlo.so [private]
/opt/openoffice.org/ure/lib/libjvmaccesslo.so [private]
/opt/openoffice.org/ure/lib/libjvmfwklo.so [private]
-/opt/openoffice.org/ure/lib/libsunjavapluginlo.so [private]
/opt/openoffice.org/ure/lib/JREProperties.class [private]
/opt/openoffice.org/ure/lib/jvmfwk3rc [private]
/opt/openoffice.org/ure/lib/libgcc3_uno.so [private]
@@ -108,7 +107,6 @@ Program Files\URE\bin\unoidllo.dll [private]
Program Files\URE\bin\xmlreaderlo.dll [private]
Program Files\URE\bin\jvmaccesslo.dll [private]
Program Files\URE\bin\jvmfwklo.dll [private]
-Program Files\URE\bin\sunjavapluginlo.dll [private]
Program Files\URE\bin\JREProperties.class [private]
Program Files\URE\bin\jvmfwk3.ini [private]
Program Files\URE\bin\msci_uno.dll [private]
commit 3de89997f492c1216592fa4db1c7e6ce6c3fe4fa
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Thu Oct 9 17:14:53 2014 +0200
UNO_JAVA_JFW_PLUGIN is long gone
...since e7f7d511a3ad39faef431bdfc2a79fa090d0b5f7 etc. "INTEGRATION: CWS
jl15: #i37828# removed support of bootstrap parameters UNO_JAVA_JFW_DISABLE and
UNO_JAVA_JFW_PLUGIN"
Change-Id: Ia70fa9919b4b55e8b13473602cfca723f554ec30
diff --git a/include/jvmfwk/framework.h b/include/jvmfwk/framework.h
index 570f852..dc99015 100644
--- a/include/jvmfwk/framework.h
+++ b/include/jvmfwk/framework.h
@@ -104,7 +104,7 @@ extern "C" {
<p>
regcomp -env:UNO_JAVA_JFW_JREHOME=file:///d:/j2re1.4.2
-env:"UNO_JAVA_JFW_CLASSPATH=d:\\solver\\bin\\classes.jar;d:\\solver\\bin\\jurt.jar"
- -env:UNO_JAVA_JFW_PLUGIN=file:\\solver\\bin\\libsunjavaplugin.dll -register ....
+ -register ....
</p>
<p>Additionall parameters for the Java VM can be provided. For every parameter
a separate bootstrap parameter must be specified. The names are
@@ -137,10 +137,6 @@ extern "C" {
environment variable CLASSPATH. If this variable and UNO_JAVA_JFW_CLASSPATH are
set then the class path is composed from UNO_JAVA_JFW_CLASSPATH and the environment
variable CLASSPATH.</dd>
- <dt>UNO_JAVA_JFW_PLUGIN</dt>
- <dd>Specified a file URL to a plugin library. If this variable is provided
- then a javavendors.xml is ignored. It must be provided if no
- javavendors.xml is available.</dd>
<dt>UNO_JAVA_JFW_PARAMETER_X</dt>
<dd>Specifies a parameter for the Java VM. The X is replaced by
non-negative natural numbers starting with 1.</dd>
commit eef4f79eb86ff2b515d53d9802d54027d32bfde4
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Thu Oct 9 17:03:30 2014 +0200
More specific
Change-Id: I7e6490c5b50a236a5f070e98d4501e7dd5a90307
diff --git a/sal/qa/osl/process/osl_process.cxx b/sal/qa/osl/process/osl_process.cxx
index b0ef781..07731e8 100644
--- a/sal/qa/osl/process/osl_process.cxx
+++ b/sal/qa/osl/process/osl_process.cxx
@@ -38,7 +38,9 @@
#include <sal/macros.h>
#if defined HAVE_VALGRIND_HEADERS
-#include <valgrind/memcheck.h>
+#include <valgrind/valgrind.h>
+#else
+#define RUNNING_ON_VALGRIND false
#endif
#if ( defined WNT ) // Windows
@@ -90,11 +92,11 @@ inline ::rtl::OUString getExecutablePath( void )
//rtl::OUString CWD = getExecutablePath();
-typedef std::vector<std::string> string_container_t;
+typedef std::vector<OString> string_container_t;
typedef string_container_t::const_iterator string_container_const_iter_t;
typedef string_container_t::iterator string_container_iter_t;
-class exclude : public std::unary_function<std::string, bool>
+class exclude : public std::unary_function<OString, bool>
{
public:
@@ -106,7 +108,7 @@ public:
exclude_list_.push_back(env_var_name(*iter));
}
- bool operator() (const std::string& env_var) const
+ bool operator() (const OString& env_var) const
{
return (exclude_list_.end() !=
std::find(
@@ -119,15 +121,15 @@ private:
// extract the name from an environment variable
// that is given in the form "NAME=VALUE"
- std::string env_var_name(const std::string& env_var) const
+ OString env_var_name(const OString& env_var) const
{
- std::string::size_type pos_equal_sign =
- env_var.find_first_of("=");
+ sal_Int32 pos_equal_sign =
+ env_var.indexOf('=');
- if (std::string::npos != pos_equal_sign)
- return std::string(env_var, 0, pos_equal_sign);
+ if (-1 != pos_equal_sign)
+ return env_var.copy(0, pos_equal_sign);
- return std::string();
+ return OString();
}
private:
@@ -136,27 +138,20 @@ private:
namespace
{
- class starts_with
- : public std::unary_function<const std::string&, bool>
- {
- private:
- const std::string m_rString;
- public:
- starts_with(const char *pString) : m_rString(pString) {}
- bool operator()(const std::string &rEntry) const
- {
- return rEntry.find(m_rString) == 0;
- }
- };
-
void tidy_container(string_container_t &env_container)
{
//sort them because there are no guarantees to ordering
std::sort(env_container.begin(), env_container.end());
- //remove LD_PRELOAD because valgrind injects that into the
- //parent process
- env_container.erase(std::remove_if(env_container.begin(), env_container.end(),
- starts_with("LD_PRELOAD=")), env_container.end());
+ if (RUNNING_ON_VALGRIND)
+ {
+ env_container.erase(
+ std::remove_if(
+ env_container.begin(), env_container.end(),
+ [](OString const & s) {
+ return s.startsWith("LD_PRELOAD=")
+ || s.startsWith("VALGRIND_LIB="); }),
+ env_container.end());
+ }
}
}
@@ -168,7 +163,7 @@ namespace
while (size_t l = _tcslen(p))
{
- env_container->push_back(std::string(p));
+ env_container->push_back(OString(p));
p += l + 1;
}
FreeEnvironmentStrings(env);
@@ -178,7 +173,7 @@ namespace
void read_parent_environment(string_container_t* env_container)
{
for (int i = 0; NULL != environ[i]; i++)
- env_container->push_back(std::string(environ[i]));
+ env_container->push_back(OString(environ[i]));
tidy_container(*env_container);
}
#endif
@@ -246,14 +241,14 @@ public:
std::string line;
line.reserve(1024);
while (std::getline(file, line, '\0'))
- env_container->push_back(line);
+ env_container->push_back(OString(line.c_str()));
tidy_container(*env_container);
}
// environment of the child process that was
// started. The child process writes his
// environment into a file
- bool compare_environments()
+ void compare_environments()
{
string_container_t parent_env;
read_parent_environment(&parent_env);
@@ -261,8 +256,20 @@ public:
string_container_t child_env;
read_child_environment(&child_env);
- return ((parent_env.size() == child_env.size()) &&
- (std::equal(child_env.begin(), child_env.end(), parent_env.begin())));
+ OString msg(
+ OString::number(parent_env.size()) + "/"
+ + OString::number(child_env.size()));
+ auto min = std::min(parent_env.size(), child_env.size());
+ for (decltype(min) i = 0; i != min; ++i) {
+ CPPUNIT_ASSERT_EQUAL_MESSAGE(
+ msg.getStr(), parent_env[i], child_env[i]);
+ }
+ if (parent_env.size() != child_env.size()) {
+ CPPUNIT_ASSERT_EQUAL_MESSAGE(
+ (parent_env.size() >= child_env.size()
+ ? parent_env.back() : child_env.back()).getStr(),
+ parent_env.size(), child_env.size());
+ }
}
// compare the equal environment parts and the
@@ -367,17 +374,7 @@ public:
osl_freeProcessHandle(process);
-#if defined HAVE_VALGRIND_HEADERS
- //valgrind makes these not match
- if (RUNNING_ON_VALGRIND)
- return;
-#endif
-
- CPPUNIT_ASSERT_MESSAGE
- (
- "Parent and child environment not equal",
- compare_environments()
- );
+ compare_environments();
}
#define ENV1 "PAT=a:\\"
@@ -431,12 +428,6 @@ public:
different_child_env_vars.push_back(ENV2);
different_child_env_vars.push_back(ENV4);
-#if defined HAVE_VALGRIND_HEADERS
- //valgrind makes these not match
- if (RUNNING_ON_VALGRIND)
- return;
-#endif
-
CPPUNIT_ASSERT_MESSAGE
(
"osl_execProc_merged_child_environment",
More information about the Libreoffice-commits
mailing list