76e0e0
From 4fd868fdfca690e9b0f159b2beadde5920897ab4 Mon Sep 17 00:00:00 2001
76e0e0
From: Stephan Bergmann <sbergman@redhat.com>
76e0e0
Date: Sun, 11 Apr 2021 09:20:13 +0200
76e0e0
Subject: [PATCH] Get rid of apache-commons-logging
76e0e0
76e0e0
...using Java 1.4 java.util.logging.Logger instead also for the last remaining
76e0e0
uses in reportbuilder.
76e0e0
76e0e0
(The mention in swext/mediawiki/src/THIRDPARTYLICENSEREADME.html was presumably
76e0e0
a leftover from 4b6ceed4a4a9b152905a8b1712ffb9bd61373c16 "swext: Wiki Publisher
76e0e0
does not use those apache-commons libraries".)
76e0e0
76e0e0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113939
76e0e0
Tested-by: Jenkins
76e0e0
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
76e0e0
(cherry picked from commit 6de0b1710adfba82c96b75a5da6f52633a54c692)
76e0e0
Conflicts:
76e0e0
	readlicense_oo/license/NOTICE
76e0e0
	swext/mediawiki/src/THIRDPARTYLICENSEREADME.html
76e0e0
76e0e0
Change-Id: Ia0bc598fe5844ced11cae497548ec7d09453a99d
76e0e0
---
76e0e0
 Makefile.fetch                                |  1 -
76e0e0
 RepositoryExternal.mk                         | 26 ----------
76e0e0
 config_host.mk.in                             |  3 --
76e0e0
 configure.ac                                  | 40 ---------------
76e0e0
 distro-configs/LibreOfficeFlatpak.conf        |  1 -
76e0e0
 download.lst                                  |  2 -
76e0e0
 external/Module_external.mk                   |  1 -
76e0e0
 .../ExternalPackage_apache_commons_logging.mk | 16 ------
76e0e0
 .../ExternalProject_apache_commons_logging.mk | 32 ------------
76e0e0
 external/apache-commons/Makefile              |  7 ---
76e0e0
 .../apache-commons/Module_apache-commons.mk   | 18 -------
76e0e0
 external/apache-commons/README                |  1 -
76e0e0
 .../UnpackedTarball_apache_commons_logging.mk | 22 ---------
76e0e0
 external/apache-commons/patches/logging.patch | 46 -----------------
76e0e0
 readlicense_oo/license/NOTICE                 |  8 ---
76e0e0
 readlicense_oo/license/license.xml            |  6 ---
76e0e0
 reportbuilder/Jar_reportbuilder.mk            |  1 -
76e0e0
 .../report/SDBCReportDataFactory.java         |  7 +--
76e0e0
 .../libreoffice/report/StorageRepository.java | 48 +++++++++---------
76e0e0
 .../libreoffice/report/pentaho/Manifest.mf    |  2 +-
76e0e0
 .../report/pentaho/PentahoReportJob.java      | 10 ++--
76e0e0
 .../report/pentaho/SOReportJobFactory.java    |  9 ++--
76e0e0
 .../layoutprocessor/FormatValueUtility.java   |  2 +-
76e0e0
 .../FormattedTextLayoutController.java        |  7 ++-
76e0e0
 .../ImageElementLayoutController.java         | 19 ++++---
76e0e0
 .../report/pentaho/output/ImageProducer.java  | 23 ++++-----
76e0e0
 .../output/OfficeDocumentReportTarget.java    | 23 ++++-----
76e0e0
 .../report/pentaho/output/OleProducer.java    | 12 ++---
76e0e0
 .../report/pentaho/output/StyleUtilities.java | 10 ++--
76e0e0
 .../SpreadsheetRawReportTarget.java           |  2 +-
76e0e0
 .../office/DocumentContentReadHandler.java    | 13 +++--
76e0e0
 solenv/flatpak-manifest.in                    |  6 ---
76e0e0
 .../src/THIRDPARTYLICENSEREADME.html          | 49 -------------------
76e0e0
 33 files changed, 82 insertions(+), 391 deletions(-)
76e0e0
 delete mode 100644 external/apache-commons/ExternalPackage_apache_commons_logging.mk
76e0e0
 delete mode 100644 external/apache-commons/ExternalProject_apache_commons_logging.mk
76e0e0
 delete mode 100644 external/apache-commons/Makefile
76e0e0
 delete mode 100644 external/apache-commons/Module_apache-commons.mk
76e0e0
 delete mode 100644 external/apache-commons/README
76e0e0
 delete mode 100644 external/apache-commons/UnpackedTarball_apache_commons_logging.mk
76e0e0
 delete mode 100644 external/apache-commons/patches/logging.patch
76e0e0
76e0e0
diff --git a/Makefile.fetch b/Makefile.fetch
76e0e0
index 0a6202a4b3c7..924927bb4fb5 100644
76e0e0
--- a/Makefile.fetch
76e0e0
+++ b/Makefile.fetch
76e0e0
@@ -101,7 +101,6 @@ $(WORKDIR)/download: $(BUILDDIR)/config_$(gb_Side).mk $(SRCDIR)/download.lst $(S
76e0e0
 	@date >> $(fetch_LOGFILE)
76e0e0
 	$(foreach item, \
76e0e0
 		$(call fetch_Optional,ABW,ABW_TARBALL) \
76e0e0
-		$(call fetch_Optional,APACHE_COMMONS,APACHE_COMMONS_LOGGING_TARBALL) \
76e0e0
 		$(call fetch_Optional,APR,APR_TARBALL) \
76e0e0
 		$(call fetch_Optional,APR,APR_UTIL_TARBALL) \
76e0e0
 		$(call fetch_Optional,BOOST,BOOST_TARBALL) \
76e0e0
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
76e0e0
index ad3febbae41b..d2fe7e044dfb 100644
76e0e0
--- a/RepositoryExternal.mk
76e0e0
+++ b/RepositoryExternal.mk
76e0e0
@@ -3723,32 +3723,6 @@ endif # SYSTEM_RHINO
76e0e0
 
76e0e0
 endif
76e0e0
 
76e0e0
-ifneq ($(SYSTEM_APACHE_COMMONS),)
76e0e0
-
76e0e0
-define gb_Jar__use_commons-logging
76e0e0
-$(call gb_Jar_use_system_jar,$(1),$(COMMONS_LOGGING_JAR))
76e0e0
-endef
76e0e0
-gb_ExternalProject__use_commons-logging :=
76e0e0
-
76e0e0
-else # !SYSTEM_APACHE_COMMONS
76e0e0
-
76e0e0
-ifeq ($(ENABLE_JAVA),TRUE)
76e0e0
-$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder,\
76e0e0
-	commons-logging-$(COMMONS_LOGGING_VERSION) \
76e0e0
-))
76e0e0
-endif
76e0e0
-
76e0e0
-define gb_Jar__use_commons-logging
76e0e0
-$(call gb_Jar_use_external_project,$(1),apache_commons_logging)
76e0e0
-$(call gb_Jar_use_jar,$(1),commons-logging-$(COMMONS_LOGGING_VERSION))
76e0e0
-endef
76e0e0
-define gb_ExternalProject__use_commons-logging
76e0e0
-$(call gb_ExternalProject_use_external_project,$(1),apache_commons_logging)
76e0e0
-endef
76e0e0
-
76e0e0
-endif # SYSTEM_APACHE_COMMONS
76e0e0
-
76e0e0
-
76e0e0
 ifneq ($(SYSTEM_JFREEREPORT),)
76e0e0
 
76e0e0
 define gb_Jar__use_flow-engine
76e0e0
diff --git a/config_host.mk.in b/config_host.mk.in
76e0e0
index 42f4511a62e8..c9b3aa015123 100644
76e0e0
--- a/config_host.mk.in
76e0e0
+++ b/config_host.mk.in
76e0e0
@@ -77,8 +77,6 @@ export CLUCENE_LIBS=$(gb_SPACE)@CLUCENE_LIBS@
76e0e0
 export LIBCMIS_CFLAGS=$(gb_SPACE)@LIBCMIS_CFLAGS@
76e0e0
 export LIBCMIS_LIBS=$(gb_SPACE)@LIBCMIS_LIBS@
76e0e0
 export COM=@COM@
76e0e0
-export COMMONS_LOGGING_JAR=@COMMONS_LOGGING_JAR@
76e0e0
-export COMMONS_LOGGING_VERSION=@COMMONS_LOGGING_VERSION@
76e0e0
 export COMPATH=@COMPATH@
76e0e0
 export COMPILER_PLUGINS=@COMPILER_PLUGINS@
76e0e0
 export COMPILER_PLUGINS_ANALYZER_PCH=@COMPILER_PLUGINS_ANALYZER_PCH@
76e0e0
@@ -546,7 +544,6 @@ export STRIP=@STRIP@
76e0e0
 export STRIP_COMPONENTS=@STRIP_COMPONENTS@
76e0e0
 export SYSBASE=@SYSBASE@
76e0e0
 export SYSTEM_ABW=@SYSTEM_ABW@
76e0e0
-export SYSTEM_APACHE_COMMONS=@SYSTEM_APACHE_COMMONS@
76e0e0
 export SYSTEM_APR=@SYSTEM_APR@
76e0e0
 export SYSTEM_BLUEZ=@SYSTEM_BLUEZ@
76e0e0
 export SYSTEM_BOOST=@SYSTEM_BOOST@
76e0e0
diff --git a/configure.ac b/configure.ac
76e0e0
index 11d93b7ba6eb..1cb0a61ad9c2 100644
76e0e0
--- a/configure.ac
76e0e0
+++ b/configure.ac
76e0e0
@@ -2076,11 +2076,6 @@ AC_ARG_WITH(system-gpgmepp,
76e0e0
         [Use gpgmepp already on system]),,
76e0e0
     [with_system_gpgmepp="$with_system_libs"])
76e0e0
 
76e0e0
-AC_ARG_WITH(system-apache-commons,
76e0e0
-    AS_HELP_STRING([--with-system-apache-commons],
76e0e0
-        [Use Apache commons libraries already on system.]),,
76e0e0
-    [with_system_apache_commons="$with_system_jars"])
76e0e0
-
76e0e0
 AC_ARG_WITH(system-mariadb,
76e0e0
     AS_HELP_STRING([--with-system-mariadb],
76e0e0
         [Use MariaDB/MySQL libraries already on system.]),,
76e0e0
@@ -2158,11 +2153,6 @@ AC_ARG_WITH(rhino-jar,
76e0e0
         [Specify path to jarfile manually.]),
76e0e0
     RHINO_JAR=$withval)
76e0e0
 
76e0e0
-AC_ARG_WITH(commons-logging-jar,
76e0e0
-    AS_HELP_STRING([--with-commons-logging-jar=JARFILE],
76e0e0
-        [Specify path to jarfile manually.]),
76e0e0
-    COMMONS_LOGGING_JAR=$withval)
76e0e0
-
76e0e0
 AC_ARG_WITH(system-jfreereport,
76e0e0
     AS_HELP_STRING([--with-system-jfreereport],
76e0e0
         [Use JFreeReport already on system.]),,
76e0e0
@@ -12298,36 +12288,6 @@ AC_SUBST(LIBREPOSITORY_JAR)
76e0e0
 AC_SUBST(LIBFONTS_JAR)
76e0e0
 AC_SUBST(LIBSERIALIZER_JAR)
76e0e0
 
76e0e0
-# this has to be here because both the Wiki Publisher and the SRB use
76e0e0
-# commons-logging
76e0e0
-COMMONS_LOGGING_VERSION=1.2
76e0e0
-if test "$ENABLE_REPORTBUILDER" = "TRUE"; then
76e0e0
-    AC_MSG_CHECKING([which Apache commons-* libs to use])
76e0e0
-    if test "$with_system_apache_commons" = "yes"; then
76e0e0
-        SYSTEM_APACHE_COMMONS=TRUE
76e0e0
-        AC_MSG_RESULT([external])
76e0e0
-        if test -z $COMMONS_LOGGING_JAR; then
76e0e0
-            if test -f /usr/share/java/commons-logging-${COMMONS_LOGGING_VERSION}.jar; then
76e0e0
-               COMMONS_LOGGING_JAR=/usr/share/java/commons-logging-${COMMONS_LOGGING_VERSION}.jar
76e0e0
-           elif test -f /usr/share/java/commons-logging.jar; then
76e0e0
-                COMMONS_LOGGING_JAR=/usr/share/java/commons-logging.jar
76e0e0
-            else
76e0e0
-                AC_MSG_ERROR(commons-logging.jar replacement not found.)
76e0e0
-            fi
76e0e0
-        elif ! test -f $COMMONS_LOGGING_JAR; then
76e0e0
-            AC_MSG_ERROR(commons-logging.jar not found.)
76e0e0
-        fi
76e0e0
-    else
76e0e0
-        AC_MSG_RESULT([internal])
76e0e0
-        SYSTEM_APACHE_COMMONS=
76e0e0
-        BUILD_TYPE="$BUILD_TYPE APACHE_COMMONS"
76e0e0
-        NEED_ANT=TRUE
76e0e0
-    fi
76e0e0
-fi
76e0e0
-AC_SUBST(SYSTEM_APACHE_COMMONS)
76e0e0
-AC_SUBST(COMMONS_LOGGING_JAR)
76e0e0
-AC_SUBST(COMMONS_LOGGING_VERSION)
76e0e0
-
76e0e0
 # scripting provider for BeanShell?
76e0e0
 AC_MSG_CHECKING([whether to build support for scripts in BeanShell])
76e0e0
 if test "${enable_scripting_beanshell}" != "no" -a "x$with_java" != "xno"; then
76e0e0
diff --git a/distro-configs/LibreOfficeFlatpak.conf b/distro-configs/LibreOfficeFlatpak.conf
76e0e0
index 81604de9f1f7..97bfaba200fc 100644
76e0e0
--- a/distro-configs/LibreOfficeFlatpak.conf
76e0e0
+++ b/distro-configs/LibreOfficeFlatpak.conf
76e0e0
@@ -10,7 +10,6 @@
76e0e0
 --without-export-validation
76e0e0
 --without-junit
76e0e0
 --without-lxml
76e0e0
---without-system-apache-commons
76e0e0
 --without-system-beanshell
76e0e0
 --without-system-bluez
76e0e0
 --without-system-boost
76e0e0
diff --git a/download.lst b/download.lst
76e0e0
index c474e9f60208..f74d49e8dfcb 100644
76e0e0
--- a/download.lst
76e0e0
+++ b/download.lst
76e0e0
@@ -5,8 +5,6 @@
76e0e0
 
76e0e0
 export ABW_SHA256SUM := e763a9dc21c3d2667402d66e202e3f8ef4db51b34b79ef41f56cacb86dcd6eed
76e0e0
 export ABW_TARBALL := libabw-0.1.3.tar.xz
76e0e0
-export APACHE_COMMONS_LOGGING_SHA256SUM := 49665da5a60d033e6dff40fe0a7f9173e886ae859ce6096c1afe34c48b677c81
76e0e0
-export APACHE_COMMONS_LOGGING_TARBALL := commons-logging-1.2-src.tar.gz
76e0e0
 export APR_SHA256SUM := 1af06e1720a58851d90694a984af18355b65bb0d047be03ec7d659c746d6dbdb
76e0e0
 export APR_TARBALL := apr-1.5.2.tar.gz
76e0e0
 export APR_UTIL_SHA256SUM := 976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19
76e0e0
diff --git a/external/Module_external.mk b/external/Module_external.mk
76e0e0
index 1c722a325c2d..185974271b93 100644
76e0e0
--- a/external/Module_external.mk
76e0e0
+++ b/external/Module_external.mk
76e0e0
@@ -16,7 +16,6 @@ endif
76e0e0
 $(eval $(call gb_Module_add_moduledirs,external,\
76e0e0
 	$(call gb_Helper_optional,XMLSEC,xmlsec) \
76e0e0
 	$(call gb_Helper_optional,ABW,libabw) \
76e0e0
-	$(call gb_Helper_optional,APACHE_COMMONS,apache-commons) \
76e0e0
 	$(call gb_Helper_optional,APR,apr) \
76e0e0
 	$(call gb_Helper_optional,BOOST,boost) \
76e0e0
 	$(call gb_Helper_optional,BOX2D,box2d) \
76e0e0
diff --git a/external/apache-commons/ExternalPackage_apache_commons_logging.mk b/external/apache-commons/ExternalPackage_apache_commons_logging.mk
76e0e0
deleted file mode 100644
76e0e0
index 2bff13b93c66..000000000000
76e0e0
--- a/external/apache-commons/ExternalPackage_apache_commons_logging.mk
76e0e0
+++ /dev/null
76e0e0
@@ -1,16 +0,0 @@
76e0e0
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
76e0e0
-#
76e0e0
-# This file is part of the LibreOffice project.
76e0e0
-#
76e0e0
-# This Source Code Form is subject to the terms of the Mozilla Public
76e0e0
-# License, v. 2.0. If a copy of the MPL was not distributed with this
76e0e0
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
76e0e0
-#
76e0e0
-
76e0e0
-$(eval $(call gb_ExternalPackage_ExternalPackage,apache_commons_logging,apache_commons_logging))
76e0e0
-
76e0e0
-$(eval $(call gb_ExternalPackage_use_external_project,apache_commons_logging,apache_commons_logging))
76e0e0
-
76e0e0
-$(eval $(call gb_ExternalPackage_add_file,apache_commons_logging,$(LIBO_SHARE_JAVA_FOLDER)/commons-logging-$(COMMONS_LOGGING_VERSION).jar,target/commons-logging-$(COMMONS_LOGGING_VERSION).jar))
76e0e0
-
76e0e0
-# vim: set noet sw=4 ts=4:
76e0e0
diff --git a/external/apache-commons/ExternalProject_apache_commons_logging.mk b/external/apache-commons/ExternalProject_apache_commons_logging.mk
76e0e0
deleted file mode 100644
76e0e0
index 7c689d18c443..000000000000
76e0e0
--- a/external/apache-commons/ExternalProject_apache_commons_logging.mk
76e0e0
+++ /dev/null
76e0e0
@@ -1,32 +0,0 @@
76e0e0
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
76e0e0
-#
76e0e0
-# This file is part of the LibreOffice project.
76e0e0
-#
76e0e0
-# This Source Code Form is subject to the terms of the Mozilla Public
76e0e0
-# License, v. 2.0. If a copy of the MPL was not distributed with this
76e0e0
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
76e0e0
-#
76e0e0
-
76e0e0
-$(eval $(call gb_ExternalProject_ExternalProject,apache_commons_logging))
76e0e0
-
76e0e0
-$(eval $(call gb_ExternalProject_register_targets,apache_commons_logging,\
76e0e0
-	build \
76e0e0
-))
76e0e0
-
76e0e0
-$(call gb_ExternalProject_get_state_target,apache_commons_logging,build) :
76e0e0
-	$(call gb_Trace_StartRange,apache_commons_logging,EXTERNAL)
76e0e0
-	$(call gb_ExternalProject_run,build,\
76e0e0
-	JAVA_HOME=$(JAVA_HOME_FOR_BUILD) \
76e0e0
-	ANT_OPTS="$$ANT_OPTS -Dfile.encoding=ISO-8859-1" \
76e0e0
-	$(ICECREAM_RUN) "$(ANT)" \
76e0e0
-		$(if $(verbose),-v,-q) \
76e0e0
-		-f build.xml \
76e0e0
-		-Dbuild.label="build-$(LIBO_VERSION_MAJOR).$(LIBO_VERSION_MINOR).$(LIBO_VERSION_MICRO).$(LIBO_VERSION_PATCH)" \
76e0e0
-		-Dant.build.javac.source=$(JAVA_SOURCE_VER) \
76e0e0
-		-Dant.build.javac.target=$(JAVA_TARGET_VER) \
76e0e0
-		$(if $(debug),-Dcompile.debug="true",-Dcompile.debug="false") \
76e0e0
-		compile build-jar \
76e0e0
-	)
76e0e0
-	$(call gb_Trace_EndRange,apache_commons_logging,EXTERNAL)
76e0e0
-
76e0e0
-# vim: set noet sw=4 ts=4:
76e0e0
diff --git a/external/apache-commons/Makefile b/external/apache-commons/Makefile
76e0e0
deleted file mode 100644
76e0e0
index e4968cf85fb6..000000000000
76e0e0
--- a/external/apache-commons/Makefile
76e0e0
+++ /dev/null
76e0e0
@@ -1,7 +0,0 @@
76e0e0
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
76e0e0
-
76e0e0
-module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
76e0e0
-
76e0e0
-include $(module_directory)/../../solenv/gbuild/partial_build.mk
76e0e0
-
76e0e0
-# vim: set noet sw=4 ts=4:
76e0e0
diff --git a/external/apache-commons/Module_apache-commons.mk b/external/apache-commons/Module_apache-commons.mk
76e0e0
deleted file mode 100644
76e0e0
index 45aabe229b03..000000000000
76e0e0
--- a/external/apache-commons/Module_apache-commons.mk
76e0e0
+++ /dev/null
76e0e0
@@ -1,18 +0,0 @@
76e0e0
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
76e0e0
-#
76e0e0
-# This file is part of the LibreOffice project.
76e0e0
-#
76e0e0
-# This Source Code Form is subject to the terms of the Mozilla Public
76e0e0
-# License, v. 2.0. If a copy of the MPL was not distributed with this
76e0e0
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
76e0e0
-#
76e0e0
-
76e0e0
-$(eval $(call gb_Module_Module,apache-commons))
76e0e0
-
76e0e0
-$(eval $(call gb_Module_add_targets,apache-commons,\
76e0e0
-	ExternalPackage_apache_commons_logging \
76e0e0
-	ExternalProject_apache_commons_logging \
76e0e0
-	UnpackedTarball_apache_commons_logging \
76e0e0
-))
76e0e0
-
76e0e0
-# vim: set noet sw=4 ts=4:
76e0e0
diff --git a/external/apache-commons/README b/external/apache-commons/README
76e0e0
deleted file mode 100644
76e0e0
index 18944aca4af7..000000000000
76e0e0
--- a/external/apache-commons/README
76e0e0
+++ /dev/null
76e0e0
@@ -1 +0,0 @@
76e0e0
-Java library; used for logging in Extensions, from [http://commons.apache.org/]
76e0e0
diff --git a/external/apache-commons/UnpackedTarball_apache_commons_logging.mk b/external/apache-commons/UnpackedTarball_apache_commons_logging.mk
76e0e0
deleted file mode 100644
76e0e0
index 1d5ad3dc2d9d..000000000000
76e0e0
--- a/external/apache-commons/UnpackedTarball_apache_commons_logging.mk
76e0e0
+++ /dev/null
76e0e0
@@ -1,22 +0,0 @@
76e0e0
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
76e0e0
-#
76e0e0
-# This file is part of the LibreOffice project.
76e0e0
-#
76e0e0
-# This Source Code Form is subject to the terms of the Mozilla Public
76e0e0
-# License, v. 2.0. If a copy of the MPL was not distributed with this
76e0e0
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
76e0e0
-#
76e0e0
-
76e0e0
-$(eval $(call gb_UnpackedTarball_UnpackedTarball,apache_commons_logging))
76e0e0
-
76e0e0
-$(eval $(call gb_UnpackedTarball_set_tarball,apache_commons_logging,$(APACHE_COMMONS_LOGGING_TARBALL),,apache-commons))
76e0e0
-
76e0e0
-$(eval $(call gb_UnpackedTarball_fix_end_of_line,apache_commons_logging,\
76e0e0
-	build.xml \
76e0e0
-))
76e0e0
-
76e0e0
-$(eval $(call gb_UnpackedTarball_add_patches,apache_commons_logging,\
76e0e0
-	external/apache-commons/patches/logging.patch \
76e0e0
-))
76e0e0
-
76e0e0
-# vim: set noet sw=4 ts=4:
76e0e0
diff --git a/external/apache-commons/patches/logging.patch b/external/apache-commons/patches/logging.patch
76e0e0
deleted file mode 100644
76e0e0
index c225e5a30338..000000000000
76e0e0
--- a/external/apache-commons/patches/logging.patch
76e0e0
+++ /dev/null
76e0e0
@@ -1,46 +0,0 @@
76e0e0
---- misc/commons-logging-1.1.1-src/build.xml   2007-11-22 00:27:52.000000000 +0100
76e0e0
-+++ misc/build/commons-logging-1.1.1-src/build.xml     2008-06-24 14:23:56.316301736 +0200
76e0e0
-@@ -129,12 +129,6 @@
76e0e0
-   
76e0e0
- 
76e0e0
- 
76e0e0
--  
76e0e0
--  <property name="target.version" value="1.2"/>
76e0e0
--
76e0e0
--  
76e0e0
--  <property name="source.version" value="1.2"/>
76e0e0
--
76e0e0
-   
76e0e0
-   <property name="compile.debug"           value="true"/>
76e0e0
- 
76e0e0
-@@ -283,6 +277,10 @@
76e0e0
-                classpathref="compile.classpath"
76e0e0
-                classname="org.apache.avalon.framework.logger.Logger"/>
76e0e0
- 
76e0e0
-+    
76e0e0
-+               classpathref="compile.classpath"
76e0e0
-+               classname="javax.servlet.ServletContextListener"/>
76e0e0
-+
76e0e0
-     <available file="${log4j12.jar}" property="log4j12.present"/>
76e0e0
-     <available file="${log4j13.jar}" property="log4j13.present"/>
76e0e0
-     <available file="${build.home}/docs" property="maven.generated.docs.present"/>
76e0e0
-@@ -362,8 +360,8 @@
76e0e0
-            debug="${compile.debug}"
76e0e0
-            deprecation="${compile.deprecation}"
76e0e0
-            optimize="${compile.optimize}"
76e0e0
--           source="${source.version}"
76e0e0
--           target="${target.version}">
76e0e0
-+           source="${ant.build.javac.source}"
76e0e0
-+           target="${ant.build.javac.target}">
76e0e0
- 
76e0e0
-       <classpath refid="compile.classpath"/>
76e0e0
-     
76e0e0
-@@ -373,6 +371,8 @@
76e0e0
-                unless="logkit.present"/>
76e0e0
-       
76e0e0
-                unless="avalon-framework.present"/>
76e0e0
-+      
76e0e0
-+               unless="servlet-api.present"/>
76e0e0
-     </javac>
76e0e0
-   </target>
76e0e0
- 
76e0e0
diff --git a/readlicense_oo/license/NOTICE b/readlicense_oo/license/NOTICE
76e0e0
index 46b7fccaf737..0cecc2dbfa50 100644
76e0e0
--- a/readlicense_oo/license/NOTICE
76e0e0
+++ b/readlicense_oo/license/NOTICE
76e0e0
@@ -25,7 +25,6 @@ Apache projects:
76e0e0
 - Apache Lucene
76e0e0
 - Apache Portable Runtime
76e0e0
 - Apache Portable Runtime Utility Library
76e0e0
-- Apache Commons - used by MediaWiki Publisher extension
76e0e0
 - Apache Jakarta HttpClient - used by MediaWiki Publisher extension
76e0e0
 - Apache Tomcat - used by MediaWiki Publisher extension
76e0e0
 
76e0e0
@@ -106,13 +105,6 @@ This product includes software from the Spring Framework,
76e0e0
 under the Apache License 2.0 (see: StringUtils.containsWhitespace())
76e0e0
 
76e0e0
 
76e0e0
-Apache Commons Logging
76e0e0
-Copyright 2003-2007 The Apache Software Foundation
76e0e0
-
76e0e0
-This product includes software developed by
76e0e0
-The Apache Software Foundation (http://www.apache.org/).
76e0e0
-
76e0e0
-
76e0e0
 Apache Tomcat
76e0e0
 Copyright 1999-2012 The Apache Software Foundation
76e0e0
 
76e0e0
diff --git a/readlicense_oo/license/license.xml b/readlicense_oo/license/license.xml
76e0e0
index 2c45a12fd202..2bd6b943096f 100644
76e0e0
--- a/readlicense_oo/license/license.xml
76e0e0
+++ b/readlicense_oo/license/license.xml
76e0e0
@@ -52,12 +52,6 @@
76e0e0
     

Third Party Code Additional Copyright

76e0e0
     Notices and License Terms
76e0e0
     

Libraries

76e0e0
-    
76e0e0
-        

Apache Commons

76e0e0
-        

The following software may be included in this product: Apache Commons (codec, httpclient, lang, logging).

76e0e0
-        Use of any of this software is governed by the terms of the license below:

76e0e0
-        

Jump to Apache License Version 2.0

76e0e0
-    
76e0e0
     
76e0e0
         

Apache Portable Runtime (APR)

76e0e0
         

The following software may be included in this product: Apache Portable Runtime (APR).

76e0e0
diff --git a/reportbuilder/Jar_reportbuilder.mk b/reportbuilder/Jar_reportbuilder.mk
76e0e0
index 101ebc9330b7..7abcf796a0d0 100644
76e0e0
--- a/reportbuilder/Jar_reportbuilder.mk
76e0e0
+++ b/reportbuilder/Jar_reportbuilder.mk
76e0e0
@@ -15,7 +15,6 @@ $(eval $(call gb_Jar_use_jars,reportbuilder,\
76e0e0
 ))
76e0e0
 
76e0e0
 $(eval $(call gb_Jar_use_externals,reportbuilder,\
76e0e0
-	commons-logging \
76e0e0
 	flow-engine \
76e0e0
 	flute \
76e0e0
 	libbase \
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/SDBCReportDataFactory.java b/reportbuilder/java/org/libreoffice/report/SDBCReportDataFactory.java
76e0e0
index 463addc63e71..b3c4508666ca 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/SDBCReportDataFactory.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/SDBCReportDataFactory.java
76e0e0
@@ -58,9 +58,6 @@ import java.util.Map;
76e0e0
 import java.util.logging.Level;
76e0e0
 import java.util.logging.Logger;
76e0e0
 
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
-
76e0e0
 
76e0e0
 /**
76e0e0
  * Very primitive implementation, just to show how this could be used ...
76e0e0
@@ -142,7 +139,7 @@ public class SDBCReportDataFactory implements DataSourceFactory
76e0e0
         private int parameterCount = 0;
76e0e0
         private final ArrayList<Integer> parameterIndex = new ArrayList<Integer>();
76e0e0
     }
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(SDBCReportDataFactory.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(SDBCReportDataFactory.class.getName());
76e0e0
     public static final String COMMAND_TYPE = "command-type";
76e0e0
     public static final String ESCAPE_PROCESSING = "escape-processing";
76e0e0
     public static final String SORT_EXPRESSIONS = "sort-expressions";
76e0e0
@@ -259,7 +256,7 @@ public class SDBCReportDataFactory implements DataSourceFactory
76e0e0
         }
76e0e0
         catch (SQLException ex)
76e0e0
         {
76e0e0
-            LOGGER.error("ReportProcessing failed / getOrderStatement could not get quote character", ex);
76e0e0
+            LOGGER.severe("ReportProcessing failed / getOrderStatement could not get quote character: " + ex);
76e0e0
             // fall back to the SQL standard
76e0e0
             quote="";
76e0e0
         }
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/StorageRepository.java b/reportbuilder/java/org/libreoffice/report/StorageRepository.java
76e0e0
index 8b6d08c458a2..a338ee5dedb5 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/StorageRepository.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/StorageRepository.java
76e0e0
@@ -37,9 +37,7 @@ import java.io.BufferedOutputStream;
76e0e0
 import java.io.IOException;
76e0e0
 import java.io.InputStream;
76e0e0
 import java.io.OutputStream;
76e0e0
-
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 /**
76e0e0
  * A directory holds all the contents here.
76e0e0
@@ -49,8 +47,8 @@ import org.apache.commons.logging.LogFactory;
76e0e0
 public class StorageRepository implements InputRepository, OutputRepository
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(StorageRepository.class);
76e0e0
-    private static final String REPORT_PROCESSING_FAILED = "ReportProcessing failed";
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(StorageRepository.class.getName());
76e0e0
+    private static final String REPORT_PROCESSING_FAILED = "ReportProcessing failed: ";
76e0e0
     private XStorage input;
76e0e0
     private XStorage output;
76e0e0
     private final String rootURL;
76e0e0
@@ -134,11 +132,11 @@ public class StorageRepository implements InputRepository, OutputRepository
76e0e0
         }
76e0e0
         catch (InvalidStorageException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (com.sun.star.lang.IllegalArgumentException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (NoSuchElementException e)
76e0e0
         {
76e0e0
@@ -168,15 +166,15 @@ public class StorageRepository implements InputRepository, OutputRepository
76e0e0
         }
76e0e0
         catch (InvalidStorageException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (com.sun.star.lang.IllegalArgumentException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (NoSuchElementException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         return false;
76e0e0
     }
76e0e0
@@ -195,23 +193,23 @@ public class StorageRepository implements InputRepository, OutputRepository
76e0e0
         }
76e0e0
         catch (NoSuchElementException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (WrappedTargetException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (InvalidStorageException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (IllegalArgumentException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (com.sun.star.io.IOException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         throw new IOException();
76e0e0
     }
76e0e0
@@ -245,27 +243,27 @@ public class StorageRepository implements InputRepository, OutputRepository
76e0e0
         }
76e0e0
         catch (UnknownPropertyException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (PropertyVetoException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (IllegalArgumentException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (WrappedTargetException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (InvalidStorageException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (com.sun.star.io.IOException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
 
76e0e0
         throw new IOException();
76e0e0
@@ -293,11 +291,11 @@ public class StorageRepository implements InputRepository, OutputRepository
76e0e0
             }
76e0e0
             catch (com.sun.star.io.IOException ex)
76e0e0
             {
76e0e0
-                LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+                LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
             }
76e0e0
             catch (WrappedTargetException ex)
76e0e0
             {
76e0e0
-                LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+                LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
             }
76e0e0
             output.dispose();
76e0e0
         }
76e0e0
@@ -312,11 +310,11 @@ public class StorageRepository implements InputRepository, OutputRepository
76e0e0
         }
76e0e0
         catch (InvalidStorageException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (com.sun.star.lang.IllegalArgumentException ex)
76e0e0
         {
76e0e0
-            LOGGER.error(REPORT_PROCESSING_FAILED, ex);
76e0e0
+            LOGGER.severe(REPORT_PROCESSING_FAILED + ex);
76e0e0
         }
76e0e0
         catch (NoSuchElementException ex)
76e0e0
         {
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/Manifest.mf b/reportbuilder/java/org/libreoffice/report/pentaho/Manifest.mf
76e0e0
index 23731b104054..2a56b2fbb9fa 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/Manifest.mf
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/Manifest.mf
76e0e0
@@ -3,5 +3,5 @@ Class-Path: reportbuilderwizard.jar
76e0e0
   flute-1.1.6.jar libserializer-1.1.6.jar libbase-1.1.6.jar
76e0e0
   libfonts-1.1.6.jar libformula-1.1.7.jar liblayout.jar
76e0e0
   libloader-1.1.6.jar librepository-1.1.6.jar libxml-1.1.7.jar
76e0e0
-  flow-engine.jar sac.jar commons-logging-1.2.jar
76e0e0
+  flow-engine.jar sac.jar
76e0e0
 UNO-Type-Path: 
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/PentahoReportJob.java b/reportbuilder/java/org/libreoffice/report/pentaho/PentahoReportJob.java
76e0e0
index 480bca548e7e..efb4261ce127 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/PentahoReportJob.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/PentahoReportJob.java
76e0e0
@@ -42,9 +42,7 @@ import java.io.IOException;
76e0e0
 
76e0e0
 import java.util.ArrayList;
76e0e0
 import java.util.List;
76e0e0
-
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 import org.jfree.report.expressions.Expression;
76e0e0
 import org.jfree.report.expressions.FormulaExpression;
76e0e0
@@ -72,7 +70,7 @@ import org.pentaho.reporting.libraries.resourceloader.ResourceManager;
76e0e0
 public class PentahoReportJob implements ReportJob
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(PentahoReportJob.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(PentahoReportJob.class.getName());
76e0e0
     private final DataSourceFactory dataSourceFactory;
76e0e0
     private final OutputRepository outputRepository;
76e0e0
     private final JobProperties jobProperties;
76e0e0
@@ -235,7 +233,7 @@ public class PentahoReportJob implements ReportJob
76e0e0
                 }
76e0e0
                 catch (ParseException ex)
76e0e0
                 {
76e0e0
-                    LOGGER.error("ReportProcessing failed", ex);
76e0e0
+                    LOGGER.severe("ReportProcessing failed: " + ex);
76e0e0
                 }
76e0e0
             }
76e0e0
             else if (node instanceof OfficeDetailSection)
76e0e0
@@ -338,7 +336,7 @@ public class PentahoReportJob implements ReportJob
76e0e0
             rp.processReport(job);
76e0e0
             job.close();
76e0e0
             final long endTime = System.currentTimeMillis();
76e0e0
-            LOGGER.debug("Report processing time: " + (endTime - startTime));
76e0e0
+            LOGGER.config("Report processing time: " + (endTime - startTime));
76e0e0
         }
76e0e0
         catch (final Exception e)
76e0e0
         {
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/SOReportJobFactory.java b/reportbuilder/java/org/libreoffice/report/pentaho/SOReportJobFactory.java
76e0e0
index 54694fd619ab..3c52473e3d3c 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/SOReportJobFactory.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/SOReportJobFactory.java
76e0e0
@@ -68,9 +68,6 @@ import java.io.Writer;
76e0e0
 import java.io.PrintWriter;
76e0e0
 import java.io.StringWriter;
76e0e0
 
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
-
76e0e0
 /**
76e0e0
  * This class capsulates the class, that implements the minimal component, a factory for creating the service
76e0e0
  * (__getComponentFactory) and a method, that writes the information into the given registry key
76e0e0
@@ -86,7 +83,7 @@ public class SOReportJobFactory
76e0e0
     public static class _SOReportJobFactory extends WeakBase implements XInitialization, XServiceInfo, XJob, XPropertySet, ReportJobFactory
76e0e0
     {
76e0e0
 
76e0e0
-        private static final Log LOGGER = LogFactory.getLog(_SOReportJobFactory.class);
76e0e0
+        private static final Logger LOGGER = Logger.getLogger(_SOReportJobFactory.class.getName());
76e0e0
         /**
76e0e0
          * The service name, that must be used to get an instance of this service.
76e0e0
          */
76e0e0
@@ -242,7 +239,7 @@ public class SOReportJobFactory
76e0e0
             }
76e0e0
             catch (java.lang.Exception e)
76e0e0
             {
76e0e0
-                LOGGER.error("ReportProcessing failed", e);
76e0e0
+                LOGGER.severe("ReportProcessing failed: " + e);
76e0e0
                 Writer result = new StringWriter();
76e0e0
                 PrintWriter printWriter = new PrintWriter(result);
76e0e0
                 e.printStackTrace(printWriter);
76e0e0
@@ -254,7 +251,7 @@ public class SOReportJobFactory
76e0e0
             }
76e0e0
             catch (java.lang.IncompatibleClassChangeError e)
76e0e0
             {
76e0e0
-                LOGGER.error("Detected an IncompatibleClassChangeError");
76e0e0
+                LOGGER.severe("Detected an IncompatibleClassChangeError");
76e0e0
                 Writer result = new StringWriter();
76e0e0
                 PrintWriter printWriter = new PrintWriter(result);
76e0e0
                 e.printStackTrace(printWriter);
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java
76e0e0
index 6a1bd00736ee..eab7c512284d 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java
76e0e0
@@ -208,7 +208,7 @@ public class FormatValueUtility
76e0e0
         if (result == null)
76e0e0
         {
76e0e0
             // ignore it. Ignoring it is much better than printing 'null'.
76e0e0
-            // LOGGER.debug("Formula '" + formulaExpression.getFormula() + "' evaluated to null.");
76e0e0
+            // LOGGER.config("Formula '" + formulaExpression.getFormula() + "' evaluated to null.");
76e0e0
             return null;
76e0e0
         }
76e0e0
         else if (result instanceof DataFlags)
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormattedTextLayoutController.java b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormattedTextLayoutController.java
76e0e0
index 7f1470edc866..7959b5857408 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormattedTextLayoutController.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormattedTextLayoutController.java
76e0e0
@@ -20,8 +20,7 @@ package org.libreoffice.report.pentaho.layoutprocessor;
76e0e0
 
76e0e0
 import org.libreoffice.report.pentaho.OfficeNamespaces;
76e0e0
 import org.libreoffice.report.pentaho.model.FormattedTextElement;
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 import org.jfree.report.DataFlags;
76e0e0
 import org.jfree.report.DataSourceException;
76e0e0
@@ -45,7 +44,7 @@ public class FormattedTextLayoutController
76e0e0
         extends AbstractReportElementLayoutController
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(FormattedTextLayoutController.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(FormattedTextLayoutController.class.getName());
76e0e0
 
76e0e0
     @Override
76e0e0
     public boolean isValueChanged()
76e0e0
@@ -62,7 +61,7 @@ public class FormattedTextLayoutController
76e0e0
         }
76e0e0
         catch (final ParseException e)
76e0e0
         {
76e0e0
-            LOGGER.debug("Parse Exception", e);
76e0e0
+            LOGGER.config("Parse Exception: " + e);
76e0e0
             return false;
76e0e0
         }
76e0e0
     }
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/ImageElementLayoutController.java b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/ImageElementLayoutController.java
76e0e0
index 0bf40b9dcd28..6fc68e816f7c 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/ImageElementLayoutController.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/ImageElementLayoutController.java
76e0e0
@@ -22,8 +22,7 @@ import org.libreoffice.report.OfficeToken;
76e0e0
 import org.libreoffice.report.pentaho.OfficeNamespaces;
76e0e0
 import org.libreoffice.report.pentaho.model.ImageElement;
76e0e0
 
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 import org.jfree.layouting.util.AttributeMap;
76e0e0
 import org.jfree.report.DataSourceException;
76e0e0
@@ -59,7 +58,7 @@ public class ImageElementLayoutController
76e0e0
         extends AbstractReportElementLayoutController
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(ImageElementLayoutController.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(ImageElementLayoutController.class.getName());
76e0e0
     private ImageElementContext context;
76e0e0
 
76e0e0
     @Override
76e0e0
@@ -116,7 +115,7 @@ public class ImageElementLayoutController
76e0e0
             final LayoutController cellController = findParentCell();
76e0e0
             if (cellController == null)
76e0e0
             {
76e0e0
-                LOGGER.warn("Image is not contained in a table. Unable to calculate the image-size.");
76e0e0
+                LOGGER.warning("Image is not contained in a table. Unable to calculate the image-size.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
             final Element tableCell = (Element) cellController.getNode();
76e0e0
@@ -124,14 +123,14 @@ public class ImageElementLayoutController
76e0e0
             final int colSpan = TextUtilities.parseInt((String) tableCell.getAttribute(OfficeNamespaces.TABLE_NS, "number-columns-spanned"), 1);
76e0e0
             if (rowSpan < 1 || colSpan < 1)
76e0e0
             {
76e0e0
-                LOGGER.warn("Rowspan or colspan for image-size calculation was invalid.");
76e0e0
+                LOGGER.warning("Rowspan or colspan for image-size calculation was invalid.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
 
76e0e0
             final LayoutController rowController = cellController.getParent();
76e0e0
             if (rowController == null)
76e0e0
             {
76e0e0
-                LOGGER.warn("Table-Cell has no parent. Unable to calculate the image-size.");
76e0e0
+                LOGGER.warning("Table-Cell has no parent. Unable to calculate the image-size.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
             final Section tableRow = (Section) rowController.getNode();
76e0e0
@@ -141,14 +140,14 @@ public class ImageElementLayoutController
76e0e0
             final int columnPos = findNodeInSection(tableRow, tableCell, OfficeToken.COVERED_TABLE_CELL);
76e0e0
             if (columnPos == -1)
76e0e0
             {
76e0e0
-                LOGGER.warn("Table-Cell is not a direct child of the table-row. Unable to calculate the image-size.");
76e0e0
+                LOGGER.warning("Table-Cell is not a direct child of the table-row. Unable to calculate the image-size.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
 
76e0e0
             final LayoutController tableController = rowController.getParent();
76e0e0
             if (tableController == null)
76e0e0
             {
76e0e0
-                LOGGER.warn("Table-Row has no Table. Unable to calculate the image-size.");
76e0e0
+                LOGGER.warning("Table-Row has no Table. Unable to calculate the image-size.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
 
76e0e0
@@ -158,7 +157,7 @@ public class ImageElementLayoutController
76e0e0
             if (columns.getNodeCount() <= columnPos + colSpan)
76e0e0
             {
76e0e0
                 // the colspan is too large. The table definition is therefore invalid. We do not try to fix this.
76e0e0
-                LOGGER.warn(
76e0e0
+                LOGGER.warning(
76e0e0
                         "The Table's defined columns do not match the col-span or col-position. Unable to calculate the image-size.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
@@ -169,7 +168,7 @@ public class ImageElementLayoutController
76e0e0
             final int rowPos = findNodeInSection(table, tableRow, null);
76e0e0
             if (rowPos == -1)
76e0e0
             {
76e0e0
-                LOGGER.warn("Table-Cell is not a direct child of the table-row. Unable to calculate the image-size.");
76e0e0
+                LOGGER.warning("Table-Cell is not a direct child of the table-row. Unable to calculate the image-size.");
76e0e0
                 return null;
76e0e0
             }
76e0e0
 
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/output/ImageProducer.java b/reportbuilder/java/org/libreoffice/report/pentaho/output/ImageProducer.java
76e0e0
index ae1a8273bfb7..69995d7aa1c5 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/output/ImageProducer.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/output/ImageProducer.java
76e0e0
@@ -48,9 +48,6 @@ import java.util.Map;
76e0e0
 import java.util.logging.Level;
76e0e0
 import java.util.logging.Logger;
76e0e0
 
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
-
76e0e0
 import org.jfree.layouting.input.style.values.CSSNumericType;
76e0e0
 import org.jfree.layouting.input.style.values.CSSNumericValue;
76e0e0
 
76e0e0
@@ -67,7 +64,7 @@ import org.pentaho.reporting.libraries.base.util.WaitingImageObserver;
76e0e0
 public class ImageProducer
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(ImageProducer.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(ImageProducer.class.getName());
76e0e0
 
76e0e0
     public static class OfficeImage
76e0e0
     {
76e0e0
@@ -188,7 +185,7 @@ public class ImageProducer
76e0e0
             final boolean preserveIRI)
76e0e0
     {
76e0e0
 
76e0e0
-        LOGGER.debug("Want to produce image " + imageData);
76e0e0
+        LOGGER.config("Want to produce image " + imageData);
76e0e0
         if (imageData instanceof String)
76e0e0
         {
76e0e0
             return produceFromString((String) imageData, preserveIRI);
76e0e0
@@ -247,11 +244,11 @@ public class ImageProducer
76e0e0
         }
76e0e0
         catch (IOException e)
76e0e0
         {
76e0e0
-            LOGGER.warn("Failed to produce image from Blob", e);
76e0e0
+            LOGGER.warning("Failed to produce image from Blob: " + e);
76e0e0
         }
76e0e0
         catch (SQLException e)
76e0e0
         {
76e0e0
-            LOGGER.warn("Failed to produce image from Blob", e);
76e0e0
+            LOGGER.warning("Failed to produce image from Blob: " + e);
76e0e0
         }
76e0e0
         return null;
76e0e0
     }
76e0e0
@@ -295,11 +292,11 @@ public class ImageProducer
76e0e0
         }
76e0e0
         catch (IOException e)
76e0e0
         {
76e0e0
-            LOGGER.warn("Failed to load image from local input-repository", e);
76e0e0
+            LOGGER.warning("Failed to load image from local input-repository: " + e);
76e0e0
         }
76e0e0
         catch (ReportExecutionException e)
76e0e0
         {
76e0e0
-            LOGGER.warn("Failed to create image from local input-repository", e);
76e0e0
+            LOGGER.warning("Failed to create image from local input-repository: " + e);
76e0e0
         }
76e0e0
         return null;
76e0e0
     }
76e0e0
@@ -353,11 +350,11 @@ public class ImageProducer
76e0e0
             }
76e0e0
             catch (IOException e)
76e0e0
             {
76e0e0
-                LOGGER.warn("Failed to load image from local input-repository", e);
76e0e0
+                LOGGER.warning("Failed to load image from local input-repository: " + e);
76e0e0
             }
76e0e0
             catch (ReportExecutionException e)
76e0e0
             {
76e0e0
-                LOGGER.warn("Failed to create image from local input-repository", e);
76e0e0
+                LOGGER.warning("Failed to create image from local input-repository: " + e);
76e0e0
             }
76e0e0
         }
76e0e0
         else
76e0e0
@@ -435,11 +432,11 @@ public class ImageProducer
76e0e0
         }
76e0e0
         catch (IOException e)
76e0e0
         {
76e0e0
-            LOGGER.warn("Failed to load image from local input-repository", e);
76e0e0
+            LOGGER.warning("Failed to load image from local input-repository: " + e);
76e0e0
         }
76e0e0
         catch (ReportExecutionException e)
76e0e0
         {
76e0e0
-            LOGGER.warn("Failed to create image from local input-repository", e);
76e0e0
+            LOGGER.warning("Failed to create image from local input-repository: " + e);
76e0e0
         }
76e0e0
 
76e0e0
         if (!preserveIRI)
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/output/OfficeDocumentReportTarget.java b/reportbuilder/java/org/libreoffice/report/pentaho/output/OfficeDocumentReportTarget.java
76e0e0
index a5c3be135a65..b73b5781b3a3 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/output/OfficeDocumentReportTarget.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/output/OfficeDocumentReportTarget.java
76e0e0
@@ -65,9 +65,6 @@ import java.util.Map;
76e0e0
 import java.util.zip.DeflaterOutputStream;
76e0e0
 import java.util.zip.InflaterInputStream;
76e0e0
 
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
-
76e0e0
 import org.jfree.layouting.input.style.parser.CSSValueFactory;
76e0e0
 import org.jfree.layouting.input.style.parser.StyleSheetParserUtil;
76e0e0
 import org.jfree.layouting.input.style.values.CSSNumericType;
76e0e0
@@ -112,7 +109,7 @@ import org.w3c.css.sac.LexicalUnit;
76e0e0
 public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
 {
76e0e0
 
76e0e0
-    protected static final Log LOGGER = LogFactory.getLog(OfficeDocumentReportTarget.class);
76e0e0
+    protected static final Logger LOGGER = Logger.getLogger(OfficeDocumentReportTarget.class.getName());
76e0e0
     public static final String HORIZONTAL_POS = "horizontal-pos";
76e0e0
     public static final String TAG_DEF_PREFIX = "org.libreoffice.report.pentaho.output.";
76e0e0
     private static final int ROLE_NONE = 0;
76e0e0
@@ -517,7 +514,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
         // todo
76e0e0
         if (DEBUG_ELEMENTS)
76e0e0
         {
76e0e0
-            LOGGER.debug("Starting " + getCurrentState() + '/' + states.size() + ' ' + ReportTargetUtil.getNamespaceFromAttribute(attrs) + " -> " + ReportTargetUtil.getElemenTypeFromAttribute(attrs));
76e0e0
+            LOGGER.config("Starting " + getCurrentState() + '/' + states.size() + ' ' + ReportTargetUtil.getNamespaceFromAttribute(attrs) + " -> " + ReportTargetUtil.getElemenTypeFromAttribute(attrs));
76e0e0
         }
76e0e0
         try
76e0e0
         {
76e0e0
@@ -713,7 +710,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
         }
76e0e0
         catch (IOException ioe)
76e0e0
         {
76e0e0
-            LOGGER.error("ReportProcessing failed", ioe);
76e0e0
+            LOGGER.severe("ReportProcessing failed: " + ioe);
76e0e0
             throw new ReportProcessingException("Failed to write content", ioe);
76e0e0
         }
76e0e0
     }
76e0e0
@@ -762,7 +759,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
                 if (styleMapper.isListOfStyles(elementNamespace, elementName, attrNamespace, attrName))
76e0e0
                 {
76e0e0
                     // ignored for now.
76e0e0
-                    LOGGER.warn("List of styles is not yet implemented.");
76e0e0
+                    LOGGER.warning("List of styles is not yet implemented.");
76e0e0
                     continue;
76e0e0
                 }
76e0e0
 
76e0e0
@@ -970,7 +967,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
 
76e0e0
             if (DEBUG_ELEMENTS)
76e0e0
             {
76e0e0
-                LOGGER.debug("Finished " + getCurrentState() + "/" + states.size() + " " + ReportTargetUtil.getNamespaceFromAttribute(attrs) + ":" + ReportTargetUtil.getElemenTypeFromAttribute(attrs));
76e0e0
+                LOGGER.config("Finished " + getCurrentState() + "/" + states.size() + " " + ReportTargetUtil.getNamespaceFromAttribute(attrs) + ":" + ReportTargetUtil.getElemenTypeFromAttribute(attrs));
76e0e0
             }
76e0e0
 
76e0e0
         }
76e0e0
@@ -1153,7 +1150,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
         }
76e0e0
         catch (IOException e)
76e0e0
         {
76e0e0
-            LOGGER.error("ReportProcessing failed", e);
76e0e0
+            LOGGER.severe("ReportProcessing failed: " + e);
76e0e0
         }
76e0e0
         return state;
76e0e0
     }
76e0e0
@@ -1294,7 +1291,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
 
76e0e0
             final CSSNumericValue height = image.getHeight(); // always in 100th of a mm
76e0e0
 
76e0e0
-            LOGGER.debug("Image " + imageData + " Width: " + width + ", Height: " + height);
76e0e0
+            LOGGER.config("Image " + imageData + " Width: " + width + ", Height: " + height);
76e0e0
             if (width == null || height == null)
76e0e0
             {
76e0e0
                 return;
76e0e0
@@ -1313,7 +1310,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
 
76e0e0
                 if (imageAreaWidthVal == null || imageAreaHeightVal == null)
76e0e0
                 {
76e0e0
-                    LOGGER.debug("Image data returned from context is invalid. Maybe this is not an image?");
76e0e0
+                    LOGGER.config("Image data returned from context is invalid. Maybe this is not an image?");
76e0e0
                     return;
76e0e0
                 }
76e0e0
                 else
76e0e0
@@ -1410,7 +1407,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
             }
76e0e0
             else
76e0e0
             {
76e0e0
-                LOGGER.debug("There is no image-context, so we have to rely on the image's natural bounds. " + "This may go awfully wrong.");
76e0e0
+                LOGGER.config("There is no image-context, so we have to rely on the image's natural bounds. " + "This may go awfully wrong.");
76e0e0
                 imageAreaWidthVal = image.getWidth();
76e0e0
                 imageAreaHeightVal = image.getHeight();
76e0e0
             }
76e0e0
@@ -1427,7 +1424,7 @@ public abstract class OfficeDocumentReportTarget extends AbstractReportTarget
76e0e0
             frameList.setAttribute(OfficeNamespaces.SVG_NS, "y", posY.getValue() + posY.getType().getType());
76e0e0
 
76e0e0
 
76e0e0
-            LOGGER.debug("Image " + imageData + " A-Width: " + imageAreaWidthVal + ", A-Height: " + imageAreaHeightVal);
76e0e0
+            LOGGER.config("Image " + imageData + " A-Width: " + imageAreaWidthVal + ", A-Height: " + imageAreaHeightVal);
76e0e0
 
76e0e0
             if (imageAreaWidthVal != null)
76e0e0
             {
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/output/OleProducer.java b/reportbuilder/java/org/libreoffice/report/pentaho/output/OleProducer.java
76e0e0
index 2010a189be1d..27f3c25a4b4b 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/output/OleProducer.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/output/OleProducer.java
76e0e0
@@ -32,14 +32,12 @@ import org.libreoffice.report.pentaho.PentahoReportEngineMetaData;
76e0e0
 import java.io.IOException;
76e0e0
 
76e0e0
 import java.util.List;
76e0e0
-
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 public class OleProducer
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(OleProducer.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(OleProducer.class.getName());
76e0e0
     private final InputRepository inputRepository;
76e0e0
     private final OutputRepository outputRepository;
76e0e0
     private final DefaultNameGenerator nameGenerator;
76e0e0
@@ -100,16 +98,16 @@ public class OleProducer
76e0e0
             }
76e0e0
             catch (ReportExecutionException ex)
76e0e0
             {
76e0e0
-                LOGGER.error("ReportProcessing failed", ex);
76e0e0
+                LOGGER.severe("ReportProcessing failed: " + ex);
76e0e0
             }
76e0e0
             catch (IOException ex)
76e0e0
             {
76e0e0
-                LOGGER.error("ReportProcessing failed", ex);
76e0e0
+                LOGGER.severe("ReportProcessing failed: " + ex);
76e0e0
             }
76e0e0
         }
76e0e0
         catch (IOException ex)
76e0e0
         {
76e0e0
-            LOGGER.error("ReportProcessing failed", ex);
76e0e0
+            LOGGER.severe("ReportProcessing failed: " + ex);
76e0e0
         } finally
76e0e0
         {
76e0e0
             if (subInputRepository != null)
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/output/StyleUtilities.java b/reportbuilder/java/org/libreoffice/report/pentaho/output/StyleUtilities.java
76e0e0
index 2b204a4bf502..98af0c3fa076 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/output/StyleUtilities.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/output/StyleUtilities.java
76e0e0
@@ -28,9 +28,7 @@ import org.libreoffice.report.pentaho.model.OfficeStylesCollection;
76e0e0
 import java.util.ArrayList;
76e0e0
 import java.util.HashSet;
76e0e0
 import java.util.Set;
76e0e0
-
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 import org.jfree.report.ReportProcessingException;
76e0e0
 import org.jfree.report.structure.Element;
76e0e0
@@ -46,7 +44,7 @@ import org.jfree.report.util.AttributeNameGenerator;
76e0e0
 public class StyleUtilities
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(StyleUtilities.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(StyleUtilities.class.getName());
76e0e0
     private static final String STYLE = "style";
76e0e0
 
76e0e0
     private StyleUtilities()
76e0e0
@@ -180,7 +178,7 @@ public class StyleUtilities
76e0e0
             }
76e0e0
             else if (styleParent != null)
76e0e0
             {
76e0e0
-                LOGGER.warn("Inconsistent styles: " + styleFamily + ":" + styleParent + " does not exist.");
76e0e0
+                LOGGER.warning("Inconsistent styles: " + styleFamily + ":" + styleParent + " does not exist.");
76e0e0
             }
76e0e0
             return preStyle;
76e0e0
         }
76e0e0
@@ -301,7 +299,7 @@ public class StyleUtilities
76e0e0
                         }
76e0e0
                         else
76e0e0
                         {
76e0e0
-                            LOGGER.warn("Dangling data style: " + styleName);
76e0e0
+                            LOGGER.warning("Dangling data style: " + styleName);
76e0e0
                             derivedStyle = null;
76e0e0
                         }
76e0e0
                     }
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/output/spreadsheet/SpreadsheetRawReportTarget.java b/reportbuilder/java/org/libreoffice/report/pentaho/output/spreadsheet/SpreadsheetRawReportTarget.java
76e0e0
index e6c234503c22..b1d979e7b788 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/output/spreadsheet/SpreadsheetRawReportTarget.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/output/spreadsheet/SpreadsheetRawReportTarget.java
76e0e0
@@ -305,7 +305,7 @@ public class SpreadsheetRawReportTarget extends OfficeDocumentReportTarget
76e0e0
             }
76e0e0
             catch (IOException ex)
76e0e0
             {
76e0e0
-                LOGGER.error("ReportProcessing failed", ex);
76e0e0
+                LOGGER.severe("ReportProcessing failed: " + ex);
76e0e0
             }
76e0e0
         }
76e0e0
     }
76e0e0
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/parser/office/DocumentContentReadHandler.java b/reportbuilder/java/org/libreoffice/report/pentaho/parser/office/DocumentContentReadHandler.java
76e0e0
index 6d36eb6f9ea5..65a48252e69f 100644
76e0e0
--- a/reportbuilder/java/org/libreoffice/report/pentaho/parser/office/DocumentContentReadHandler.java
76e0e0
+++ b/reportbuilder/java/org/libreoffice/report/pentaho/parser/office/DocumentContentReadHandler.java
76e0e0
@@ -22,8 +22,7 @@ import org.libreoffice.report.pentaho.model.OfficeDocument;
76e0e0
 import org.libreoffice.report.pentaho.model.OfficeStylesCollection;
76e0e0
 import org.libreoffice.report.pentaho.parser.style.OfficeStylesReadHandler;
76e0e0
 
76e0e0
-import org.apache.commons.logging.Log;
76e0e0
-import org.apache.commons.logging.LogFactory;
76e0e0
+import java.util.logging.Logger;
76e0e0
 
76e0e0
 import org.jfree.report.JFreeReport;
76e0e0
 
76e0e0
@@ -49,7 +48,7 @@ import org.xml.sax.SAXException;
76e0e0
 public class DocumentContentReadHandler extends AbstractXmlReadHandler
76e0e0
 {
76e0e0
 
76e0e0
-    private static final Log LOGGER = LogFactory.getLog(DocumentContentReadHandler.class);
76e0e0
+    private static final Logger LOGGER = Logger.getLogger(DocumentContentReadHandler.class.getName());
76e0e0
     private OfficeDocument report;
76e0e0
     private FontFaceDeclsReadHandler fontFaceReadHandler;
76e0e0
     private BodyReadHandler bodyReadHandler;
76e0e0
@@ -98,12 +97,12 @@ public class DocumentContentReadHandler extends AbstractXmlReadHandler
76e0e0
         catch (ResourceKeyCreationException e)
76e0e0
         {
76e0e0
             // ignore ..
76e0e0
-            LOGGER.debug("Failed to create resource-key for 'styles.xml'. Ignoring.", e);
76e0e0
+            LOGGER.config("Failed to create resource-key for 'styles.xml'. Ignoring: " + e);
76e0e0
         }
76e0e0
         catch (ResourceException e)
76e0e0
         {
76e0e0
             // ignore ..
76e0e0
-            LOGGER.debug("Failed to parse resource for 'styles.xml'. Ignoring.", e);
76e0e0
+            LOGGER.config("Failed to parse resource for 'styles.xml'. Ignoring: " + e);
76e0e0
         }
76e0e0
 
76e0e0
         return new OfficeStylesCollection();
76e0e0
@@ -135,12 +134,12 @@ public class DocumentContentReadHandler extends AbstractXmlReadHandler
76e0e0
         catch (ResourceKeyCreationException e)
76e0e0
         {
76e0e0
             // ignore ..
76e0e0
-            LOGGER.debug("Failed to create resource-key for 'content.xml'. Ignoring.");
76e0e0
+            LOGGER.config("Failed to create resource-key for 'content.xml'. Ignoring.");
76e0e0
         }
76e0e0
         catch (ResourceException e)
76e0e0
         {
76e0e0
             // ignore ..
76e0e0
-            LOGGER.debug("Failed to parse resource for 'content.xml'. Ignoring.");
76e0e0
+            LOGGER.config("Failed to parse resource for 'content.xml'. Ignoring.");
76e0e0
         }
76e0e0
         return new OfficeDocument();
76e0e0
 
76e0e0
diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in
76e0e0
index d5699baefb90..8610fa05d6f5 100644
76e0e0
--- a/solenv/flatpak-manifest.in
76e0e0
+++ b/solenv/flatpak-manifest.in
76e0e0
@@ -543,13 +543,6 @@
76e0e0
                     "dest": "external/tarballs",
76e0e0
                     "dest-filename": "beeca87be45ec87d241ddd0e1bad80c1-bsh-2.0b6-src.zip"
76e0e0
                 },
76e0e0
-                {
76e0e0
-                    "url": "https://dev-www.libreoffice.org/src/commons-logging-1.2-src.tar.gz",
76e0e0
-                    "sha256": "49665da5a60d033e6dff40fe0a7f9173e886ae859ce6096c1afe34c48b677c81",
76e0e0
-                    "type": "file",
76e0e0
-                    "dest": "external/tarballs",
76e0e0
-                    "dest-filename": "commons-logging-1.2-src.tar.gz"
76e0e0
-                },
76e0e0
                 {
76e0e0
                     "url": "https://dev-www.libreoffice.org/src/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip",
76e0e0
                     "sha256": "233f66e8d25c5dd971716d4200203a612a407649686ef3b52075d04b4c9df0dd",
76e0e0
diff --git a/swext/mediawiki/src/THIRDPARTYLICENSEREADME.html b/swext/mediawiki/src/THIRDPARTYLICENSEREADME.html
76e0e0
index fbd8b0bfdca0..877661330b6b 100644
76e0e0
--- a/swext/mediawiki/src/THIRDPARTYLICENSEREADME.html
76e0e0
+++ b/swext/mediawiki/src/THIRDPARTYLICENSEREADME.html
76e0e0
@@ -10,27 +10,6 @@ DO NOT TRANSLATE OR LOCALIZE THIS DOCUMENT
76e0e0
 
76e0e0
 
    76e0e0
     
    76e0e0
    -  
  • The Apache Software Foundation
  • 76e0e0
    -    
    76e0e0
    -    
      76e0e0
      -      
    • Commons Codec
    • 76e0e0
      -        
      76e0e0
      -    
      76e0e0
      -  
      76e0e0
      -  
    • The Apache Software Foundation
    • 76e0e0
      -    
      76e0e0
      -    
        76e0e0
        -      
      • Commons HTTP Client
      • 76e0e0
        -        
        76e0e0
        -    
        76e0e0
        -  
        76e0e0
        -  
      • The Apache Software Foundation
      • 76e0e0
        -    
        76e0e0
        -    
          76e0e0
          -      
        • Commons Lang
        • 76e0e0
          -        
          76e0e0
          -    
          76e0e0
          -  
          76e0e0
             
        • The Apache Software Foundation
        • 76e0e0
               
          76e0e0
               
            76e0e0
            @@ -51,34 +30,6 @@ Foundation
            76e0e0
             
            The following software may be
            76e0e0
             included in this product: Jakarta Commons Codec; Use of any of this
            76e0e0
             software is governed by the terms of the license below:
            76e0e0
            -

            The Apache Software

            76e0e0
            -Foundation
            76e0e0
            -
            76e0e0
            -

            Commons Codec

            76e0e0
            -
            76e0e0
            -
                                             Apache License
            Version 2.0, January 2004
            http://www.apache.org/licenses/

            TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

            1. Definitions.

            "License" shall mean the terms and conditions for use, reproduction,
            and distribution as defined by Sections 1 through 9 of this document.

            "Licensor" shall mean the copyright owner or entity authorized by
            the copyright owner that is granting the License.

            "Legal Entity" shall mean the union of the acting entity and all
            other entities that control, are controlled by, or are under common
            control with that entity. For the purposes of this definition,
            "control" means (i) the power, direct or indirect, to cause the
            direction or management of such entity, whether by contract or
            otherwise, or (ii) ownership of fifty percent (50%) or more of the
            outstanding shares, or (iii) beneficial ownership of such entity.

            "You" (or "Your") shall mean an individual or Legal Entity
            exercising permissions granted by this License.

            "Source" form shall mean the preferred form for making modifications,
            including but not limited to software source code, documentation
            source, and configuration files.

            "Object" form shall mean any form resulting from mechanical
            transformation or translation of a Source form, including but
            not limited to compiled object code, generated documentation,
            and conversions to other media types.

            "Work" shall mean the work of authorship, whether in Source or
            Object form, made available under the License, as indicated by a
            copyright notice that is included in or attached to the work
            (an example is provided in the Appendix below).

            "Derivative Works" shall mean any work, whether in Source or Object
            form, that is based on (or derived from) the Work and for which the
            editorial revisions, annotations, elaborations, or other modifications
            represent, as a whole, an original work of authorship. For the purposes
            of this License, Derivative Works shall not include works that remain
            separable from, or merely link (or bind by name) to the interfaces of,
            the Work and Derivative Works thereof.

            "Contribution" shall mean any work of authorship, including
            the original version of the Work and any modifications or additions
            to that Work or Derivative Works thereof, that is intentionally
            submitted to Licensor for inclusion in the Work by the copyright owner
            or by an individual or Legal Entity authorized to submit on behalf of
            the copyright owner. For the purposes of this definition, "submitted"
            means any form of electronic, verbal, or written communication sent
            to the Licensor or its representatives, including but not limited to
            communication on electronic mailing lists, source code control systems,
            and issue tracking systems that are managed by, or on behalf of, the
            Licensor for the purpose of discussing and improving the Work, but
            excluding communication that is conspicuously marked or otherwise
            designated in writing by the copyright owner as "Not a Contribution."

            "Contributor" shall mean Licensor and any individual or Legal Entity
            on behalf of whom a Contribution has been received by Licensor and
            subsequently incorporated within the Work.

            2. Grant of Copyright License. Subject to the terms and conditions of
            this License, each Contributor hereby grants to You a perpetual,
            worldwide, non-exclusive, no-charge, royalty-free, irrevocable
            copyright license to reproduce, prepare Derivative Works of,
            publicly display, publicly perform, sublicense, and distribute the
            Work and such Derivative Works in Source or Object form.

            3. Grant of Patent License. Subject to the terms and conditions of
            this License, each Contributor hereby grants to You a perpetual,
            worldwide, non-exclusive, no-charge, royalty-free, irrevocable
            (except as stated in this section) patent license to make, have made,
            use, offer to sell, sell, import, and otherwise transfer the Work,
            where such license applies only to those patent claims licensable
            by such Contributor that are necessarily infringed by their
            Contribution(s) alone or by combination of their Contribution(s)
            with the Work to which such Contribution(s) was submitted. If You
            institute patent litigation against any entity (including a
            cross-claim or counterclaim in a lawsuit) alleging that the Work
            or a Contribution incorporated within the Work constitutes direct
            or contributory patent infringement, then any patent licenses
            granted to You under this License for that Work shall terminate
            as of the date such litigation is filed.

            4. Redistribution. You may reproduce and distribute copies of the
            Work or Derivative Works thereof in any medium, with or without
            modifications, and in Source or Object form, provided that You
            meet the following conditions:

            (a) You must give any other recipients of the Work or
            Derivative Works a copy of this License; and

            (b) You must cause any modified files to carry prominent notices
            stating that You changed the files; and

            (c) You must retain, in the Source form of any Derivative Works
            that You distribute, all copyright, patent, trademark, and
            attribution notices from the Source form of the Work,
            excluding those notices that do not pertain to any part of
            the Derivative Works; and

            (d) If the Work includes a "NOTICE" text file as part of its
            distribution, then any Derivative Works that You distribute must
            include a readable copy of the attribution notices contained
            within such NOTICE file, excluding those notices that do not
            pertain to any part of the Derivative Works, in at least one
            of the following places: within a NOTICE text file distributed
            as part of the Derivative Works; within the Source form or
            documentation, if provided along with the Derivative Works; or,
            within a display generated by the Derivative Works, if and
            wherever such third-party notices normally appear. The contents
            of the NOTICE file are for informational purposes only and
            do not modify the License. You may add Your own attribution
            notices within Derivative Works that You distribute, alongside
            or as an addendum to the NOTICE text from the Work, provided
            that such additional attribution notices cannot be construed
            as modifying the License.

            You may add Your own copyright statement to Your modifications and
            may provide additional or different license terms and conditions
            for use, reproduction, or distribution of Your modifications, or
            for any such Derivative Works as a whole, provided Your use,
            reproduction, and distribution of the Work otherwise complies with
            the conditions stated in this License.

            5. Submission of Contributions. Unless You explicitly state otherwise,
            any Contribution intentionally submitted for inclusion in the Work
            by You to the Licensor shall be under the terms and conditions of
            this License, without any additional terms or conditions.
            Notwithstanding the above, nothing herein shall supersede or modify
            the terms of any separate license agreement you may have executed
            with Licensor regarding such Contributions.

            6. Trademarks. This License does not grant permission to use the trade
            names, trademarks, service marks, or product names of the Licensor,
            except as required for reasonable and customary use in describing the
            origin of the Work and reproducing the content of the NOTICE file.

            7. Disclaimer of Warranty. Unless required by applicable law or
            agreed to in writing, Licensor provides the Work (and each
            Contributor provides its Contributions) on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
            implied, including, without limitation, any warranties or conditions
            of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
            PARTICULAR PURPOSE. You are solely responsible for determining the
            appropriateness of using or redistributing the Work and assume any
            risks associated with Your exercise of permissions under this License.

            8. Limitation of Liability. In no event and under no legal theory,
            whether in tort (including negligence), contract, or otherwise,
            unless required by applicable law (such as deliberate and grossly
            negligent acts) or agreed to in writing, shall any Contributor be
            liable to You for damages, including any direct, indirect, special,
            incidental, or consequential damages of any character arising as a
            result of this License or out of the use or inability to use the
            Work (including but not limited to damages for loss of goodwill,
            work stoppage, computer failure or malfunction, or any and all
            other commercial damages or losses), even if such Contributor
            has been advised of the possibility of such damages.

            9. Accepting Warranty or Additional Liability. While redistributing
            the Work or Derivative Works thereof, You may choose to offer,
            and charge a fee for, acceptance of support, warranty, indemnity,
            or other liability obligations and/or rights consistent with this
            License. However, in accepting such obligations, You may act only
            on Your own behalf and on Your sole responsibility, not on behalf
            of any other Contributor, and only if You agree to indemnify,
            defend, and hold each Contributor harmless for any liability
            incurred by, or claims asserted against, such Contributor by reason
            of your accepting any such warranty or additional liability.

            END OF TERMS AND CONDITIONS

            APPENDIX: How to apply the Apache License to your work.

            To apply the Apache License to your work, attach the following
            boilerplate notice, with the fields enclosed by brackets "[]"
            replaced with your own identifying information. (Don't include
            the brackets!) The text should be enclosed in the appropriate
            comment syntax for the file format. We also recommend that a
            file or class name and description of purpose be included on the
            same "printed page" as the copyright notice for easier
            identification within third-party archives.

            Copyright [yyyy] [name of copyright owner]

            Licensed under the Apache License, Version 2.0 (the "License");
            you may not use this file except in compliance with the License.
            You may obtain a copy of the License at

            http://www.apache.org/licenses/LICENSE-2.0

            Unless required by applicable law or agreed to in writing, software
            distributed under the License is distributed on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
            See the License for the specific language governing permissions and
            limitations under the License.

            76e0e0
            -
            The following software may be
            76e0e0
            -included in this product: Jakarta Commons HTTP Client 2; Use of any of
            76e0e0
            -this
            76e0e0
            -software is governed by the terms of the license below:
            76e0e0
            -

            The Apache Software

            76e0e0
            -Foundation
            76e0e0
            -
            76e0e0
            -

            Commons HTTP Client

            76e0e0
            -
            76e0e0
            -
                                             Apache License
            Version 2.0, January 2004
            http://www.apache.org/licenses/

            TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

            1. Definitions.

            "License" shall mean the terms and conditions for use, reproduction,
            and distribution as defined by Sections 1 through 9 of this document.

            "Licensor" shall mean the copyright owner or entity authorized by
            the copyright owner that is granting the License.

            "Legal Entity" shall mean the union of the acting entity and all
            other entities that control, are controlled by, or are under common
            control with that entity. For the purposes of this definition,
            "control" means (i) the power, direct or indirect, to cause the
            direction or management of such entity, whether by contract or
            otherwise, or (ii) ownership of fifty percent (50%) or more of the
            outstanding shares, or (iii) beneficial ownership of such entity.

            "You" (or "Your") shall mean an individual or Legal Entity
            exercising permissions granted by this License.

            "Source" form shall mean the preferred form for making modifications,
            including but not limited to software source code, documentation
            source, and configuration files.

            "Object" form shall mean any form resulting from mechanical
            transformation or translation of a Source form, including but
            not limited to compiled object code, generated documentation,
            and conversions to other media types.

            "Work" shall mean the work of authorship, whether in Source or
            Object form, made available under the License, as indicated by a
            copyright notice that is included in or attached to the work
            (an example is provided in the Appendix below).

            "Derivative Works" shall mean any work, whether in Source or Object
            form, that is based on (or derived from) the Work and for which the
            editorial revisions, annotations, elaborations, or other modifications
            represent, as a whole, an original work of authorship. For the purposes
            of this License, Derivative Works shall not include works that remain
            separable from, or merely link (or bind by name) to the interfaces of,
            the Work and Derivative Works thereof.

            "Contribution" shall mean any work of authorship, including
            the original version of the Work and any modifications or additions
            to that Work or Derivative Works thereof, that is intentionally
            submitted to Licensor for inclusion in the Work by the copyright owner
            or by an individual or Legal Entity authorized to submit on behalf of
            the copyright owner. For the purposes of this definition, "submitted"
            means any form of electronic, verbal, or written communication sent
            to the Licensor or its representatives, including but not limited to
            communication on electronic mailing lists, source code control systems,
            and issue tracking systems that are managed by, or on behalf of, the
            Licensor for the purpose of discussing and improving the Work, but
            excluding communication that is conspicuously marked or otherwise
            designated in writing by the copyright owner as "Not a Contribution."

            "Contributor" shall mean Licensor and any individual or Legal Entity
            on behalf of whom a Contribution has been received by Licensor and
            subsequently incorporated within the Work.

            2. Grant of Copyright License. Subject to the terms and conditions of
            this License, each Contributor hereby grants to You a perpetual,
            worldwide, non-exclusive, no-charge, royalty-free, irrevocable
            copyright license to reproduce, prepare Derivative Works of,
            publicly display, publicly perform, sublicense, and distribute the
            Work and such Derivative Works in Source or Object form.

            3. Grant of Patent License. Subject to the terms and conditions of
            this License, each Contributor hereby grants to You a perpetual,
            worldwide, non-exclusive, no-charge, royalty-free, irrevocable
            (except as stated in this section) patent license to make, have made,
            use, offer to sell, sell, import, and otherwise transfer the Work,
            where such license applies only to those patent claims licensable
            by such Contributor that are necessarily infringed by their
            Contribution(s) alone or by combination of their Contribution(s)
            with the Work to which such Contribution(s) was submitted. If You
            institute patent litigation against any entity (including a
            cross-claim or counterclaim in a lawsuit) alleging that the Work
            or a Contribution incorporated within the Work constitutes direct
            or contributory patent infringement, then any patent licenses
            granted to You under this License for that Work shall terminate
            as of the date such litigation is filed.

            4. Redistribution. You may reproduce and distribute copies of the
            Work or Derivative Works thereof in any medium, with or without
            modifications, and in Source or Object form, provided that You
            meet the following conditions:

            (a) You must give any other recipients of the Work or
            Derivative Works a copy of this License; and

            (b) You must cause any modified files to carry prominent notices
            stating that You changed the files; and

            (c) You must retain, in the Source form of any Derivative Works
            that You distribute, all copyright, patent, trademark, and
            attribution notices from the Source form of the Work,
            excluding those notices that do not pertain to any part of
            the Derivative Works; and

            (d) If the Work includes a "NOTICE" text file as part of its
            distribution, then any Derivative Works that You distribute must
            include a readable copy of the attribution notices contained
            within such NOTICE file, excluding those notices that do not
            pertain to any part of the Derivative Works, in at least one
            of the following places: within a NOTICE text file distributed
            as part of the Derivative Works; within the Source form or
            documentation, if provided along with the Derivative Works; or,
            within a display generated by the Derivative Works, if and
            wherever such third-party notices normally appear. The contents
            of the NOTICE file are for informational purposes only and
            do not modify the License. You may add Your own attribution
            notices within Derivative Works that You distribute, alongside
            or as an addendum to the NOTICE text from the Work, provided
            that such additional attribution notices cannot be construed
            as modifying the License.

            You may add Your own copyright statement to Your modifications and
            may provide additional or different license terms and conditions
            for use, reproduction, or distribution of Your modifications, or
            for any such Derivative Works as a whole, provided Your use,
            reproduction, and distribution of the Work otherwise complies with
            the conditions stated in this License.

            5. Submission of Contributions. Unless You explicitly state otherwise,
            any Contribution intentionally submitted for inclusion in the Work
            by You to the Licensor shall be under the terms and conditions of
            this License, without any additional terms or conditions.
            Notwithstanding the above, nothing herein shall supersede or modify
            the terms of any separate license agreement you may have executed
            with Licensor regarding such Contributions.

            6. Trademarks. This License does not grant permission to use the trade
            names, trademarks, service marks, or product names of the Licensor,
            except as required for reasonable and customary use in describing the
            origin of the Work and reproducing the content of the NOTICE file.

            7. Disclaimer of Warranty. Unless required by applicable law or
            agreed to in writing, Licensor provides the Work (and each
            Contributor provides its Contributions) on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
            implied, including, without limitation, any warranties or conditions
            of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
            PARTICULAR PURPOSE. You are solely responsible for determining the
            appropriateness of using or redistributing the Work and assume any
            risks associated with Your exercise of permissions under this License.

            8. Limitation of Liability. In no event and under no legal theory,
            whether in tort (including negligence), contract, or otherwise,
            unless required by applicable law (such as deliberate and grossly
            negligent acts) or agreed to in writing, shall any Contributor be
            liable to You for damages, including any direct, indirect, special,
            incidental, or consequential damages of any character arising as a
            result of this License or out of the use or inability to use the
            Work (including but not limited to damages for loss of goodwill,
            work stoppage, computer failure or malfunction, or any and all
            other commercial damages or losses), even if such Contributor
            has been advised of the possibility of such damages.

            9. Accepting Warranty or Additional Liability. While redistributing
            the Work or Derivative Works thereof, You may choose to offer,
            and charge a fee for, acceptance of support, warranty, indemnity,
            or other liability obligations and/or rights consistent with this
            License. However, in accepting such obligations, You may act only
            on Your own behalf and on Your sole responsibility, not on behalf
            of any other Contributor, and only if You agree to indemnify,
            defend, and hold each Contributor harmless for any liability
            incurred by, or claims asserted against, such Contributor by reason
            of your accepting any such warranty or additional liability.

            END OF TERMS AND CONDITIONS

            APPENDIX: How to apply the Apache License to your work.

            To apply the Apache License to your work, attach the following
            boilerplate notice, with the fields enclosed by brackets "[]"
            replaced with your own identifying information. (Don't include
            the brackets!) The text should be enclosed in the appropriate
            comment syntax for the file format. We also recommend that a
            file or class name and description of purpose be included on the
            same "printed page" as the copyright notice for easier
            identification within third-party archives.

            Copyright [yyyy] [name of copyright owner]

            Licensed under the Apache License, Version 2.0 (the "License");
            you may not use this file except in compliance with the License.
            You may obtain a copy of the License at

            http://www.apache.org/licenses/LICENSE-2.0

            Unless required by applicable law or agreed to in writing, software
            distributed under the License is distributed on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
            See the License for the specific language governing permissions and
            limitations under the License.

            76e0e0
            -
            The following software may be
            76e0e0
            -included in this product: Jakarta Commons Lang 2.1; Use of any of this
            76e0e0
            -software is governed by the terms of the license below:
            76e0e0
            -

            The Apache Software

            76e0e0
            -Foundation
            76e0e0
            -
            76e0e0
            -

            Commons Lang

            76e0e0
            -
            76e0e0
            -
                                             Apache License
            Version 2.0, January 2004
            http://www.apache.org/licenses/

            TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

            1. Definitions.

            "License" shall mean the terms and conditions for use, reproduction,
            and distribution as defined by Sections 1 through 9 of this document.

            "Licensor" shall mean the copyright owner or entity authorized by
            the copyright owner that is granting the License.

            "Legal Entity" shall mean the union of the acting entity and all
            other entities that control, are controlled by, or are under common
            control with that entity. For the purposes of this definition,
            "control" means (i) the power, direct or indirect, to cause the
            direction or management of such entity, whether by contract or
            otherwise, or (ii) ownership of fifty percent (50%) or more of the
            outstanding shares, or (iii) beneficial ownership of such entity.

            "You" (or "Your") shall mean an individual or Legal Entity
            exercising permissions granted by this License.

            "Source" form shall mean the preferred form for making modifications,
            including but not limited to software source code, documentation
            source, and configuration files.

            "Object" form shall mean any form resulting from mechanical
            transformation or translation of a Source form, including but
            not limited to compiled object code, generated documentation,
            and conversions to other media types.

            "Work" shall mean the work of authorship, whether in Source or
            Object form, made available under the License, as indicated by a
            copyright notice that is included in or attached to the work
            (an example is provided in the Appendix below).

            "Derivative Works" shall mean any work, whether in Source or Object
            form, that is based on (or derived from) the Work and for which the
            editorial revisions, annotations, elaborations, or other modifications
            represent, as a whole, an original work of authorship. For the purposes
            of this License, Derivative Works shall not include works that remain
            separable from, or merely link (or bind by name) to the interfaces of,
            the Work and Derivative Works thereof.

            "Contribution" shall mean any work of authorship, including
            the original version of the Work and any modifications or additions
            to that Work or Derivative Works thereof, that is intentionally
            submitted to Licensor for inclusion in the Work by the copyright owner
            or by an individual or Legal Entity authorized to submit on behalf of
            the copyright owner. For the purposes of this definition, "submitted"
            means any form of electronic, verbal, or written communication sent
            to the Licensor or its representatives, including but not limited to
            communication on electronic mailing lists, source code control systems,
            and issue tracking systems that are managed by, or on behalf of, the
            Licensor for the purpose of discussing and improving the Work, but
            excluding communication that is conspicuously marked or otherwise
            designated in writing by the copyright owner as "Not a Contribution."

            "Contributor" shall mean Licensor and any individual or Legal Entity
            on behalf of whom a Contribution has been received by Licensor and
            subsequently incorporated within the Work.

            2. Grant of Copyright License. Subject to the terms and conditions of
            this License, each Contributor hereby grants to You a perpetual,
            worldwide, non-exclusive, no-charge, royalty-free, irrevocable
            copyright license to reproduce, prepare Derivative Works of,
            publicly display, publicly perform, sublicense, and distribute the
            Work and such Derivative Works in Source or Object form.

            3. Grant of Patent License. Subject to the terms and conditions of
            this License, each Contributor hereby grants to You a perpetual,
            worldwide, non-exclusive, no-charge, royalty-free, irrevocable
            (except as stated in this section) patent license to make, have made,
            use, offer to sell, sell, import, and otherwise transfer the Work,
            where such license applies only to those patent claims licensable
            by such Contributor that are necessarily infringed by their
            Contribution(s) alone or by combination of their Contribution(s)
            with the Work to which such Contribution(s) was submitted. If You
            institute patent litigation against any entity (including a
            cross-claim or counterclaim in a lawsuit) alleging that the Work
            or a Contribution incorporated within the Work constitutes direct
            or contributory patent infringement, then any patent licenses
            granted to You under this License for that Work shall terminate
            as of the date such litigation is filed.

            4. Redistribution. You may reproduce and distribute copies of the
            Work or Derivative Works thereof in any medium, with or without
            modifications, and in Source or Object form, provided that You
            meet the following conditions:

            (a) You must give any other recipients of the Work or
            Derivative Works a copy of this License; and

            (b) You must cause any modified files to carry prominent notices
            stating that You changed the files; and

            (c) You must retain, in the Source form of any Derivative Works
            that You distribute, all copyright, patent, trademark, and
            attribution notices from the Source form of the Work,
            excluding those notices that do not pertain to any part of
            the Derivative Works; and

            (d) If the Work includes a "NOTICE" text file as part of its
            distribution, then any Derivative Works that You distribute must
            include a readable copy of the attribution notices contained
            within such NOTICE file, excluding those notices that do not
            pertain to any part of the Derivative Works, in at least one
            of the following places: within a NOTICE text file distributed
            as part of the Derivative Works; within the Source form or
            documentation, if provided along with the Derivative Works; or,
            within a display generated by the Derivative Works, if and
            wherever such third-party notices normally appear. The contents
            of the NOTICE file are for informational purposes only and
            do not modify the License. You may add Your own attribution
            notices within Derivative Works that You distribute, alongside
            or as an addendum to the NOTICE text from the Work, provided
            that such additional attribution notices cannot be construed
            as modifying the License.

            You may add Your own copyright statement to Your modifications and
            may provide additional or different license terms and conditions
            for use, reproduction, or distribution of Your modifications, or
            for any such Derivative Works as a whole, provided Your use,
            reproduction, and distribution of the Work otherwise complies with
            the conditions stated in this License.

            5. Submission of Contributions. Unless You explicitly state otherwise,
            any Contribution intentionally submitted for inclusion in the Work
            by You to the Licensor shall be under the terms and conditions of
            this License, without any additional terms or conditions.
            Notwithstanding the above, nothing herein shall supersede or modify
            the terms of any separate license agreement you may have executed
            with Licensor regarding such Contributions.

            6. Trademarks. This License does not grant permission to use the trade
            names, trademarks, service marks, or product names of the Licensor,
            except as required for reasonable and customary use in describing the
            origin of the Work and reproducing the content of the NOTICE file.

            7. Disclaimer of Warranty. Unless required by applicable law or
            agreed to in writing, Licensor provides the Work (and each
            Contributor provides its Contributions) on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
            implied, including, without limitation, any warranties or conditions
            of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
            PARTICULAR PURPOSE. You are solely responsible for determining the
            appropriateness of using or redistributing the Work and assume any
            risks associated with Your exercise of permissions under this License.

            8. Limitation of Liability. In no event and under no legal theory,
            whether in tort (including negligence), contract, or otherwise,
            unless required by applicable law (such as deliberate and grossly
            negligent acts) or agreed to in writing, shall any Contributor be
            liable to You for damages, including any direct, indirect, special,
            incidental, or consequential damages of any character arising as a
            result of this License or out of the use or inability to use the
            Work (including but not limited to damages for loss of goodwill,
            work stoppage, computer failure or malfunction, or any and all
            other commercial damages or losses), even if such Contributor
            has been advised of the possibility of such damages.

            9. Accepting Warranty or Additional Liability. While redistributing
            the Work or Derivative Works thereof, You may choose to offer,
            and charge a fee for, acceptance of support, warranty, indemnity,
            or other liability obligations and/or rights consistent with this
            License. However, in accepting such obligations, You may act only
            on Your own behalf and on Your sole responsibility, not on behalf
            of any other Contributor, and only if You agree to indemnify,
            defend, and hold each Contributor harmless for any liability
            incurred by, or claims asserted against, such Contributor by reason
            of your accepting any such warranty or additional liability.

            END OF TERMS AND CONDITIONS

            APPENDIX: How to apply the Apache License to your work.

            To apply the Apache License to your work, attach the following
            boilerplate notice, with the fields enclosed by brackets "[]"
            replaced with your own identifying information. (Don't include
            the brackets!) The text should be enclosed in the appropriate
            comment syntax for the file format. We also recommend that a
            file or class name and description of purpose be included on the
            same "printed page" as the copyright notice for easier
            identification within third-party archives.

            Copyright [yyyy] [name of copyright owner]

            Licensed under the Apache License, Version 2.0 (the "License");
            you may not use this file except in compliance with the License.
            You may obtain a copy of the License at

            http://www.apache.org/licenses/LICENSE-2.0

            Unless required by applicable law or agreed to in writing, software
            distributed under the License is distributed on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
            See the License for the specific language governing permissions and
            limitations under the License.

            76e0e0
            -
            The following software may be
            76e0e0
            -included in this product: Jakarta Commons Codec; Use of any of this
            76e0e0
            -software is governed by the terms of the license below:
            76e0e0
             

            The Apache Software

            76e0e0
             Foundation
            76e0e0
             
            76e0e0
            -- 
            76e0e0
            2.30.2
            76e0e0