You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ni...@apache.org on 2011/03/24 00:26:00 UTC
svn commit: r1084805 -
/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageParser.java
Author: nick
Date: Wed Mar 23 23:25:59 2011
New Revision: 1084805
URL: http://svn.apache.org/viewvc?rev=1084805&view=rev
Log:
TIKA-555 fallout - While image/bmp isn't the official mimetype, it is what Java thinks it is. So, switch from the official to the un-offial one before asking Java to give us image processors
Modified:
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageParser.java
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageParser.java?rev=1084805&r1=1084804&r2=1084805&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageParser.java Wed Mar 23 23:25:59 2011
@@ -43,10 +43,13 @@ import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
public class ImageParser implements Parser {
-
+ private static final MediaType CANONICAL_BMP_TYPE = MediaType.image("x-ms-bmp");
+ private static final MediaType JAVA_BMP_TYPE = MediaType.image("bmp");
+
private static final Set<MediaType> SUPPORTED_TYPES =
Collections.unmodifiableSet(new HashSet<MediaType>(Arrays.asList(
- MediaType.image("bmp"),
+ CANONICAL_BMP_TYPE,
+ JAVA_BMP_TYPE,
MediaType.image("gif"),
MediaType.image("png"),
MediaType.image("vnd.wap.wbmp"),
@@ -64,6 +67,12 @@ public class ImageParser implements Pars
throws IOException, SAXException, TikaException {
String type = metadata.get(Metadata.CONTENT_TYPE);
if (type != null) {
+ // Java has a different idea of the BMP mime type to
+ // what the canonical one is, fix this up.
+ if (CANONICAL_BMP_TYPE.toString().equals(type)) {
+ type = JAVA_BMP_TYPE.toString();
+ }
+
try {
Iterator<ImageReader> iterator =
ImageIO.getImageReadersByMIMEType(type);