Author: nick
Date: Sat May 2 15:27:51 2015
New Revision: 1677326
URL: http://svn.apache.org/r1677326
Log:
Add some javadocs explaining what this does, and use a proper version UID to
avoid serialisation problems (eg with Forked mode TIKA-1517
Modified:
tika/trunk/tika-core/src/main/java/org/apache/tika/detect/DefaultProbDetector.java
tika/trunk/tika-core/src/main/java/org/apache/tika/mime/ProbabilisticMimeDetectionSelector.java
Modified:
tika/trunk/tika-core/src/main/java/org/apache/tika/detect/DefaultProbDetector.java
URL:
http://svn.apache.org/viewvc/tika/trunk/tika-core/src/main/java/org/apache/tika/detect/DefaultProbDetector.java?rev=1677326&r1=1677325&r2=1677326&view=diff
==============================================================================
---
tika/trunk/tika-core/src/main/java/org/apache/tika/detect/DefaultProbDetector.java
(original)
+++
tika/trunk/tika-core/src/main/java/org/apache/tika/detect/DefaultProbDetector.java
Sat May 2 15:27:51 2015
@@ -35,63 +35,62 @@ public class DefaultProbDetector extends
private static final long serialVersionUID = -8836240060532323352L;
private static List<Detector> getDefaultDetectors(
- ProbabilisticMimeDetectionSelector sel, ServiceLoader
loader) {
- List<Detector> detectors = loader
- .loadStaticServiceProviders(Detector.class);
- Collections.sort(detectors, new Comparator<Detector>() {
- public int compare(Detector d1, Detector d2) {
- String n1 = d1.getClass().getName();
- String n2 = d2.getClass().getName();
- boolean t1 = n1.startsWith("org.apache.tika.");
- boolean t2 = n2.startsWith("org.apache.tika.");
- if (t1 == t2) {
- return n1.compareTo(n2);
- } else if (t1) {
- return 1;
- } else {
- return -1;
- }
- }
- });
-
- detectors.add(sel);
- return detectors;
- }
-
- private transient final ServiceLoader loader;
-
- public DefaultProbDetector(ProbabilisticMimeDetectionSelector sel,
- ServiceLoader loader) {
- super(sel.getMediaTypeRegistry(), getDefaultDetectors(sel,
loader));
- this.loader = loader;
- }
-
- public DefaultProbDetector(ProbabilisticMimeDetectionSelector sel,
- ClassLoader loader) {
- this(sel, new ServiceLoader(loader));
- }
-
- public DefaultProbDetector(ClassLoader loader) {
- this(new ProbabilisticMimeDetectionSelector(), loader);
- }
-
- public DefaultProbDetector(MimeTypes types) {
- this(new ProbabilisticMimeDetectionSelector(types), new
ServiceLoader());
- }
-
- public DefaultProbDetector() {
- this(MimeTypes.getDefaultMimeTypes());
- }
-
- @Override
- public List<Detector> getDetectors() {
- if (loader != null) {
- List<Detector> detectors = loader
-
.loadDynamicServiceProviders(Detector.class);
- detectors.addAll(super.getDetectors());
- return detectors;
- } else {
- return super.getDetectors();
- }
- }
+ ProbabilisticMimeDetectionSelector sel, ServiceLoader loader) {
+ List<Detector> detectors =
loader.loadStaticServiceProviders(Detector.class);
+ Collections.sort(detectors, new Comparator<Detector>() {
+ public int compare(Detector d1, Detector d2) {
+ String n1 = d1.getClass().getName();
+ String n2 = d2.getClass().getName();
+ boolean t1 = n1.startsWith("org.apache.tika.");
+ boolean t2 = n2.startsWith("org.apache.tika.");
+ if (t1 == t2) {
+ return n1.compareTo(n2);
+ } else if (t1) {
+ return 1;
+ } else {
+ return -1;
+ }
+ }
+ });
+
+ detectors.add(sel);
+ return detectors;
+ }
+
+ private transient final ServiceLoader loader;
+
+ public DefaultProbDetector(ProbabilisticMimeDetectionSelector sel,
+ ServiceLoader loader) {
+ super(sel.getMediaTypeRegistry(), getDefaultDetectors(sel, loader));
+ this.loader = loader;
+ }
+
+ public DefaultProbDetector(ProbabilisticMimeDetectionSelector sel,
+ ClassLoader loader) {
+ this(sel, new ServiceLoader(loader));
+ }
+
+ public DefaultProbDetector(ClassLoader loader) {
+ this(new ProbabilisticMimeDetectionSelector(), loader);
+ }
+
+ public DefaultProbDetector(MimeTypes types) {
+ this(new ProbabilisticMimeDetectionSelector(types), new
ServiceLoader());
+ }
+
+ public DefaultProbDetector() {
+ this(MimeTypes.getDefaultMimeTypes());
+ }
+
+ @Override
+ public List<Detector> getDetectors() {
+ if (loader != null) {
+ List<Detector> detectors = loader
+ .loadDynamicServiceProviders(Detector.class);
+ detectors.addAll(super.getDetectors());
+ return detectors;
+ } else {
+ return super.getDetectors();
+ }
+ }
}
Modified:
tika/trunk/tika-core/src/main/java/org/apache/tika/mime/ProbabilisticMimeDetectionSelector.java
URL:
http://svn.apache.org/viewvc/tika/trunk/tika-core/src/main/java/org/apache/tika/mime/ProbabilisticMimeDetectionSelector.java?rev=1677326&r1=1677325&r2=1677326&view=diff
==============================================================================
---
tika/trunk/tika-core/src/main/java/org/apache/tika/mime/ProbabilisticMimeDetectionSelector.java
(original)
+++
tika/trunk/tika-core/src/main/java/org/apache/tika/mime/ProbabilisticMimeDetectionSelector.java
Sat May 2 15:27:51 2015
@@ -30,12 +30,14 @@ import org.apache.tika.mime.MimeType;
import org.apache.tika.mime.MimeTypeException;
import org.apache.tika.mime.MimeTypes;
+/**
+ * Selector for combining different mime detection results
+ * based on probability
+ */
public class ProbabilisticMimeDetectionSelector implements Detector {
- /**
- *
- */
- private static final long serialVersionUID = 1L;
- private MimeTypes mimeTypes;
+ private static final long serialVersionUID = 224589862960269260L;
+
+ private MimeTypes mimeTypes;
private final MediaType rootMediaType;