You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ta...@apache.org on 2022/05/04 19:32:00 UTC
[tika] 02/02: TIKA-3750 - Fixed bug in ordering of Parsers during service loading.
This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git
commit 42da02ef1b8d1641b7bef3a3aa016fbcc6f40b9d
Author: tallison <ta...@apache.org>
AuthorDate: Wed May 4 15:31:36 2022 -0400
TIKA-3750 - Fixed bug in ordering of Parsers during service loading.
---
CHANGES.txt | 2 ++
tika-core/src/main/java/org/apache/tika/parser/DefaultParser.java | 3 +++
.../src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java | 4 ++--
3 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/CHANGES.txt b/CHANGES.txt
index e815c5557..39acd5973 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,5 +1,7 @@
Release 2.4.1 - ???
+ * Fixed bug in ordering of Parsers during service loading (TIKA-3750).
+
* Users can expand system properties from the forking
process into forked tika-server processes (TIKA-3748).
diff --git a/tika-core/src/main/java/org/apache/tika/parser/DefaultParser.java b/tika-core/src/main/java/org/apache/tika/parser/DefaultParser.java
index 336adee93..3205ea81d 100644
--- a/tika-core/src/main/java/org/apache/tika/parser/DefaultParser.java
+++ b/tika-core/src/main/java/org/apache/tika/parser/DefaultParser.java
@@ -115,6 +115,9 @@ public class DefaultParser extends CompositeParser {
}
}
ServiceLoaderUtils.sortLoadedClasses(parsers);
+ //reverse the order of parsers so that custom ones come last
+ //this will prevent them from being overwritten in getParsers(ParseContext ..)
+ Collections.reverse(parsers);
return parsers;
}
diff --git a/tika-parsers/tika-parsers-standard/tika-parsers-standard-package/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java b/tika-parsers/tika-parsers-standard/tika-parsers-standard-package/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java
index a2e00d464..31ec21ce0 100644
--- a/tika-parsers/tika-parsers-standard/tika-parsers-standard-package/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java
+++ b/tika-parsers/tika-parsers-standard/tika-parsers-standard-package/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java
@@ -54,7 +54,7 @@ public class ServiceLoaderUtilsTest extends TikaTest {
assertNotEquals(vorbisIndex, fictIndex);
assertNotEquals(fictIndex, dcxmlIndex);
- assertTrue(vorbisIndex < fictIndex);
- assertTrue(fictIndex > dcxmlIndex);
+ assertTrue(vorbisIndex > fictIndex);
+ assertTrue(fictIndex < dcxmlIndex);
}
}