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);
}