Author: nick
Date: Thu Jul 29 13:20:57 2010
New Revision: 980442

URL: http://svn.apache.org/viewvc?rev=980442&view=rev
Log:
Container aware detection for Jars, and add stub TODOs for iWork files 
(TIKA-447)

Added:
    tika/trunk/tika-parsers/src/test/resources/test-documents/testJAR.jar   
(with props)
Modified:
    
tika/trunk/tika-parsers/src/main/java/org/apache/tika/detect/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/detect/ZipContainerDetector.java
URL: 
http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/detect/ZipContainerDetector.java?rev=980442&r1=980441&r2=980442&view=diff
==============================================================================
--- 
tika/trunk/tika-parsers/src/main/java/org/apache/tika/detect/ZipContainerDetector.java
 (original)
+++ 
tika/trunk/tika-parsers/src/main/java/org/apache/tika/detect/ZipContainerDetector.java
 Thu Jul 29 13:20:57 2010
@@ -79,7 +79,13 @@ public class ZipContainerDetector implem
                 } catch(InvalidFormatException e) {
                     throw new IOException("Office Open XML File detected, but 
corrupted", e);
                 }
+            } else if(entry.getName().equals("buildVersionHistory.plist")) {
+                // TODO - iWork
+            } else if(entry.getName().equals("META-INF/")) {
+               // Java Jar
+               return MediaType.application("java-archive");
             }
+            
             entry = zip.getNextEntry();
         }
         

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=980442&r1=980441&r2=980442&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
 Thu Jul 29 13:20:57 2010
@@ -42,7 +42,7 @@ public class TestContainerAwareDetector 
     private InputStream getTestDoc(String filename) {
         InputStream input = 
TestContainerAwareDetector.class.getResourceAsStream(
             "/test-documents/" + filename);
-        assertNotNull(input);
+        assertNotNull("Test file not found - " + filename, input);
         return input;
     }
     
@@ -135,7 +135,23 @@ public class TestContainerAwareDetector 
         );
     }
     
+    public void testDetectIWork() throws Exception {
+       // TODO
+    }
+    
     public void testDetectZip() throws Exception {
+       TikaInputStream tis;
        
+       tis = TikaInputStream.get(getTestDoc("test-documents.zip"));
+        assertEquals(
+                MediaType.application("zip"),
+                d.detect(tis, new Metadata())
+        );
+       
+        tis = TikaInputStream.get(getTestDoc("testJAR.jar"));
+        assertEquals(
+                MediaType.application("java-archive"),
+                d.detect(tis, new Metadata())
+        );
     }
 }

Added: tika/trunk/tika-parsers/src/test/resources/test-documents/testJAR.jar
URL: 
http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/resources/test-documents/testJAR.jar?rev=980442&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
tika/trunk/tika-parsers/src/test/resources/test-documents/testJAR.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream


Reply via email to