You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ma...@apache.org on 2012/01/31 15:38:43 UTC
svn commit: r1238621 - in /tika/trunk/tika-parsers/src:
main/java/org/apache/tika/parser/pkg/ZipContainerDetector.java
test/java/org/apache/tika/detect/TestContainerAwareDetector.java
test/resources/test-documents/testDOTM.dotm
Author: maxcom
Date: Tue Jan 31 14:38:43 2012
New Revision: 1238621
URL: http://svn.apache.org/viewvc?rev=1238621&view=rev
Log:
TIKA-854: No text extraction for Word macroenabled template
Added:
tika/trunk/tika-parsers/src/test/resources/test-documents/testDOTM.dotm (with props)
Modified:
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pkg/ZipContainerDetector.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/detect/TestContainerAwareDetector.java
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pkg/ZipContainerDetector.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pkg/ZipContainerDetector.java?rev=1238621&r1=1238620&r2=1238621&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pkg/ZipContainerDetector.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pkg/ZipContainerDetector.java Tue Jan 31 14:38:43 2012
@@ -18,6 +18,7 @@ package org.apache.tika.parser.pkg;
import java.io.IOException;
import java.io.InputStream;
+import java.util.regex.Pattern;
import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
import org.apache.commons.compress.archivers.zip.ZipFile;
@@ -40,6 +41,7 @@ import org.apache.tika.parser.iwork.IWor
* to figure out exactly what the file is
*/
public class ZipContainerDetector implements Detector {
+ private static final Pattern MACRO_TEMPLATE_PATTERN = Pattern.compile("macroenabledtemplate$", Pattern.CASE_INSENSITIVE);
/** Serial version UID */
private static final long serialVersionUID = 2891763938430295453L;
@@ -163,6 +165,10 @@ public class ZipContainerDetector implem
docType = docType.toLowerCase() + ".12";
}
+ if(docType.toLowerCase().endsWith("macroenabledtemplate")) {
+ docType = MACRO_TEMPLATE_PATTERN.matcher(docType).replaceAll("macroenabled.12");
+ }
+
// Build the MediaType object and return
return MediaType.parse(docType);
}
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/detect/TestContainerAwareDetector.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/detect/TestContainerAwareDetector.java?rev=1238621&r1=1238620&r2=1238621&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/detect/TestContainerAwareDetector.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/detect/TestContainerAwareDetector.java Tue Jan 31 14:38:43 2012
@@ -178,7 +178,8 @@ public class TestContainerAwareDetector
assertTypeByData("testPPT.pptm", "application/vnd.ms-powerpoint.presentation.macroenabled.12");
assertTypeByData("testPPT.ppsx", "application/vnd.openxmlformats-officedocument.presentationml.slideshow");
assertTypeByData("testPPT.ppsm", "application/vnd.ms-powerpoint.slideshow.macroEnabled.12");
-
+ assertTypeByData("testDOTM.dotm", "application/vnd.ms-word.template.macroEnabled.12");
+
// .xlsb is an OOXML file containing the binary parts, and not
// an OLE2 file as you might initially expect!
assertTypeByData("testEXCEL.xlsb", "application/vnd.ms-excel.sheet.binary.macroEnabled.12");
Added: tika/trunk/tika-parsers/src/test/resources/test-documents/testDOTM.dotm
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/resources/test-documents/testDOTM.dotm?rev=1238621&view=auto
==============================================================================
Binary file - no diff available.
Propchange: tika/trunk/tika-parsers/src/test/resources/test-documents/testDOTM.dotm
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream