You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by tp...@apache.org on 2014/07/21 17:32:24 UTC
svn commit: r1612314 - in /tika/trunk/tika-parsers/src:
main/java/org/apache/tika/parser/envi/EnviHeaderParser.java
test/java/org/apache/tika/parser/envi/EnviHeaderParserTest.java
Author: tpalsulich
Date: Mon Jul 21 15:32:23 2014
New Revision: 1612314
URL: http://svn.apache.org/r1612314
Log:
Fix for TIKA-1357: Use BufferedReader to parse ENVI files (from Ann Burgess).
Modified:
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/envi/EnviHeaderParser.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/envi/EnviHeaderParserTest.java
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/envi/EnviHeaderParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/envi/EnviHeaderParser.java?rev=1612314&r1=1612313&r2=1612314&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/envi/EnviHeaderParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/envi/EnviHeaderParser.java Mon Jul 21 15:32:23 2014
@@ -73,14 +73,12 @@ public class EnviHeaderParser extends Ab
xhtml.startDocument();
// text contents of the xhtml
- xhtml.startElement("p");
- char[] buffer = new char[4096];
- int n = reader.read(buffer);
- while (n != -1) {
- xhtml.characters(buffer, 0, n);
- n = reader.read(buffer);
- }
- xhtml.endElement("p");
+ String line;
+ while ((line = reader.readLine()) != null) {
+ xhtml.startElement("p");
+ xhtml.characters(line);
+ xhtml.endElement("p");
+ }
xhtml.endDocument();
} finally {
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/envi/EnviHeaderParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/envi/EnviHeaderParserTest.java?rev=1612314&r1=1612313&r2=1612314&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/envi/EnviHeaderParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/envi/EnviHeaderParserTest.java Mon Jul 21 15:32:23 2014
@@ -20,6 +20,8 @@ package org.apache.tika.parser.envi;
//Junit imports
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
+
+import org.apache.tika.sax.ToXMLContentHandler;
import org.junit.Test;
import org.apache.tika.metadata.Metadata;
@@ -41,7 +43,7 @@ public class EnviHeaderParserTest {
}
Parser parser = new EnviHeaderParser();
- ContentHandler handler = new BodyContentHandler();
+ ToXMLContentHandler handler = new ToXMLContentHandler();
Metadata metadata = new Metadata();
InputStream stream = EnviHeaderParser.class
@@ -55,12 +57,12 @@ public class EnviHeaderParserTest {
// Check content of test file
String content = handler.toString();
- assertTrue(content.contains("ENVI"));
- assertTrue(content.contains("samples = 2400"));
- assertTrue(content.contains("lines = 2400"));
- assertTrue(content.contains("bands = 7"));
- assertTrue(content.contains("header offset = 0"));
- assertTrue(content.contains("file type = ENVI Standard"));
+ System.err.println(content);
+ assertTrue(content.contains("<body><p>ENVI</p>"));
+ assertTrue(content.contains("<p>samples = 2400</p>"));
+ assertTrue(content.contains("<p>lines = 2400</p>"));
+ assertTrue(content.contains("<p>map info = {Sinusoidal, 1.5000, 1.5000, -10007091.3643, 5559289.2856, 4.6331271653e+02, 4.6331271653e+02, , units=Meters}</p>"));
+ assertTrue(content.contains("content=\"application/envi.hdr\""));
assertTrue(content
.contains("projection info = {16, 6371007.2, 0.000000, 0.0, 0.0, Sinusoidal, units=Meters}"));
}