Author: jukka
Date: Tue Feb 19 15:19:20 2008
New Revision: 629269

URL: http://svn.apache.org/viewvc?rev=629269&view=rev
Log:
TIKA-122: Use Commons IO 1.4
    - Introduced Commons IO 1.4 dependency
    - Use the new dependency in the obvious places

Removed:
    
incubator/tika/trunk/src/main/java/org/apache/tika/exception/CauseIOException.java
    incubator/tika/trunk/src/test/java/org/apache/tika/exception/
Modified:
    incubator/tika/trunk/CHANGES.txt
    incubator/tika/trunk/pom.xml
    
incubator/tika/trunk/src/main/java/org/apache/tika/mime/MimeTypesFactory.java
    
incubator/tika/trunk/src/main/java/org/apache/tika/parser/opendocument/OpenOfficeParser.java
    incubator/tika/trunk/src/main/java/org/apache/tika/parser/pdf/PDF2XHTML.java
    incubator/tika/trunk/src/main/java/org/apache/tika/parser/xml/XMLParser.java
    
incubator/tika/trunk/src/main/java/org/apache/tika/sax/AppendableAdaptor.java

Modified: incubator/tika/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/CHANGES.txt?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- incubator/tika/trunk/CHANGES.txt (original)
+++ incubator/tika/trunk/CHANGES.txt Tue Feb 19 15:19:20 2008
@@ -17,6 +17,8 @@
 
 7. TIKA-96  - Tika CLI (Jukka Zitting)
 
+8. TIKA-112 - Use Commons IO 1.4 (Jukka Zitting)
+
 
 Release 0.1-incubating - 12/27/2007
 

Modified: incubator/tika/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/pom.xml?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- incubator/tika/trunk/pom.xml (original)
+++ incubator/tika/trunk/pom.xml Tue Feb 19 15:19:20 2008
@@ -174,6 +174,11 @@
       <version>1.3</version>
     </dependency>
     <dependency>
+      <groupId>commons-io</groupId>
+      <artifactId>commons-io</artifactId>
+      <version>1.4</version>
+    </dependency>
+    <dependency>
       <groupId>pdfbox</groupId>
       <artifactId>pdfbox</artifactId>
       <version>0.7.3</version>

Modified: 
incubator/tika/trunk/src/main/java/org/apache/tika/mime/MimeTypesFactory.java
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/src/main/java/org/apache/tika/mime/MimeTypesFactory.java?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- 
incubator/tika/trunk/src/main/java/org/apache/tika/mime/MimeTypesFactory.java 
(original)
+++ 
incubator/tika/trunk/src/main/java/org/apache/tika/mime/MimeTypesFactory.java 
Tue Feb 19 15:19:20 2008
@@ -63,15 +63,11 @@
      * InputStream from the URL.
      */
     public static MimeTypes create(URL url) throws IOException {
-        InputStream inputStream = null;
-
+        InputStream stream = url.openStream();
         try {
-            inputStream = url.openStream();
-            return create(inputStream);
+            return create(stream);
         } finally {
-            if (inputStream != null) {
-                inputStream.close();
-            }
+            stream.close();
         }
     }
 

Modified: 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/opendocument/OpenOfficeParser.java
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/src/main/java/org/apache/tika/parser/opendocument/OpenOfficeParser.java?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/opendocument/OpenOfficeParser.java
 (original)
+++ 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/opendocument/OpenOfficeParser.java
 Tue Feb 19 15:19:20 2008
@@ -19,11 +19,10 @@
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipInputStream;
 
+import org.apache.commons.io.IOUtils;
 import org.apache.tika.exception.TikaException;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.parser.Parser;
@@ -63,12 +62,8 @@
         ZipEntry entry = zip.getNextEntry();
         while (entry != null) {
             if (entry.getName().equals("mimetype")) {
-                StringBuilder buffer = new StringBuilder();
-                Reader reader = new InputStreamReader(zip, "UTF-8");
-                for (int ch = reader.read(); ch != -1; ch = reader.read()) {
-                    buffer.append((char) ch);
-                }
-                metadata.set(Metadata.CONTENT_TYPE, buffer.toString());
+                String type = IOUtils.toString(zip, "UTF-8");
+                metadata.set(Metadata.CONTENT_TYPE, type);
             } else if (entry.getName().equals("meta.xml")) {
                 meta.parse(zip, new DefaultHandler(), metadata);
             } else if (entry.getName().equals("content.xml")) {

Modified: 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/pdf/PDF2XHTML.java
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/src/main/java/org/apache/tika/parser/pdf/PDF2XHTML.java?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/pdf/PDF2XHTML.java 
(original)
+++ 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/pdf/PDF2XHTML.java 
Tue Feb 19 15:19:20 2008
@@ -18,7 +18,7 @@
 
 import java.io.IOException;
 
-import org.apache.tika.exception.CauseIOException;
+import org.apache.commons.io.IOExceptionWithCause;
 import org.apache.tika.exception.TikaException;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.sax.XHTMLContentHandler;
@@ -71,7 +71,7 @@
         try {
             handler.startDocument();
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to start a document", e);
+            throw new IOExceptionWithCause("Unable to start a document", e);
         }
     }
 
@@ -79,7 +79,7 @@
         try {
             handler.endDocument();
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to end a document", e);
+            throw new IOExceptionWithCause("Unable to end a document", e);
         }
     }
 
@@ -87,7 +87,7 @@
         try {
             handler.startElement("div");
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to start a page", e);
+            throw new IOExceptionWithCause("Unable to start a page", e);
         }
     }
 
@@ -95,7 +95,7 @@
         try {
             handler.endElement("div");
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to end a page", e);
+            throw new IOExceptionWithCause("Unable to end a page", e);
         }
     }
 
@@ -103,7 +103,7 @@
         try {
             handler.startElement("p");
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to start a paragraph", e);
+            throw new IOExceptionWithCause("Unable to start a paragraph", e);
         }
     }
 
@@ -111,7 +111,7 @@
         try {
             handler.endElement("p");
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to end a paragraph", e);
+            throw new IOExceptionWithCause("Unable to end a paragraph", e);
         }
     }
 
@@ -119,7 +119,7 @@
         try {
             handler.characters(text.getCharacter());
         } catch (SAXException e) {
-            throw new CauseIOException(
+            throw new IOExceptionWithCause(
                     "Unable to write a character: " + text.getCharacter(), e);
         }
     }
@@ -128,7 +128,7 @@
         try {
             handler.characters("\n");
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to write a newline", e);
+            throw new IOExceptionWithCause("Unable to write a newline", e);
         }
     }
 
@@ -137,7 +137,7 @@
         try {
             handler.characters(" ");
         } catch (SAXException e) {
-            throw new CauseIOException("Unable to write a space", e);
+            throw new IOExceptionWithCause("Unable to write a space", e);
         }
     }
 

Modified: 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/xml/XMLParser.java
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/src/main/java/org/apache/tika/parser/xml/XMLParser.java?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/xml/XMLParser.java 
(original)
+++ 
incubator/tika/trunk/src/main/java/org/apache/tika/parser/xml/XMLParser.java 
Tue Feb 19 15:19:20 2008
@@ -16,7 +16,6 @@
  */
 package org.apache.tika.parser.xml;
 
-import java.io.BufferedInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 
@@ -24,6 +23,7 @@
 import javax.xml.parsers.SAXParser;
 import javax.xml.parsers.SAXParserFactory;
 
+import org.apache.commons.io.input.CloseShieldInputStream;
 import org.apache.tika.exception.TikaException;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.parser.Parser;
@@ -54,10 +54,9 @@
             SAXParserFactory factory = SAXParserFactory.newInstance();
             factory.setNamespaceAware(true);
             SAXParser parser = factory.newSAXParser();
-            stream = new BufferedInputStream(stream) {
-                public void close() {}
-            };
-            parser.parse(stream, getDefaultHandler(handler, metadata));
+            parser.parse(
+                    new CloseShieldInputStream(stream),
+                    getDefaultHandler(handler, metadata));
         } catch (ParserConfigurationException e) {
             throw new TikaException("XML parser configuration error", e);
         }

Modified: 
incubator/tika/trunk/src/main/java/org/apache/tika/sax/AppendableAdaptor.java
URL: 
http://svn.apache.org/viewvc/incubator/tika/trunk/src/main/java/org/apache/tika/sax/AppendableAdaptor.java?rev=629269&r1=629268&r2=629269&view=diff
==============================================================================
--- 
incubator/tika/trunk/src/main/java/org/apache/tika/sax/AppendableAdaptor.java 
(original)
+++ 
incubator/tika/trunk/src/main/java/org/apache/tika/sax/AppendableAdaptor.java 
Tue Feb 19 15:19:20 2008
@@ -18,7 +18,7 @@
 
 import java.io.IOException;
 
-import org.apache.tika.exception.CauseIOException;
+import org.apache.commons.io.IOExceptionWithCause;
 import org.xml.sax.ContentHandler;
 import org.xml.sax.SAXException;
 
@@ -99,7 +99,7 @@
                 char[] chars = charSeq.toString().toCharArray();
                 handler.characters(chars, start, (end - start));
             } catch (SAXException e) {
-                throw new CauseIOException(
+                throw new IOExceptionWithCause(
                         "Error processing character content: "
                         + charSeq.subSequence(start, end), e);
             }


Reply via email to