Author: tpalsulich
Date: Wed Dec 24 09:05:29 2014
New Revision: 1647749

URL: http://svn.apache.org/r1647749
Log:
TIKA-1465. Reformat XHTML generation from NetCDFParser.

Modified:
    
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
    
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java

Modified: 
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
URL: 
http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java?rev=1647749&r1=1647748&r2=1647749&view=diff
==============================================================================
--- 
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
 (original)
+++ 
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
 Wed Dec 24 09:05:29 2014
@@ -26,6 +26,8 @@ import java.util.List;
 
 import org.apache.tika.exception.TikaException;
 import org.apache.tika.io.IOUtils;
+import org.apache.tika.io.TemporaryResources;
+import org.apache.tika.io.TikaInputStream;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.metadata.Property;
 import org.apache.tika.metadata.TikaCoreProperties;
@@ -78,16 +80,10 @@ public class NetCDFParser extends Abstra
     public void parse(InputStream stream, ContentHandler handler,
             Metadata metadata, ParseContext context) throws IOException,
             SAXException, TikaException {
-        ByteArrayOutputStream os = new ByteArrayOutputStream();
-        IOUtils.copy(stream, os);
-
-        String name = metadata.get(Metadata.RESOURCE_NAME_KEY);
-        if (name == null) {
-            name = "";
-        }
 
+        TikaInputStream tis = TikaInputStream.get(stream, new 
TemporaryResources());
         try {
-            NetcdfFile ncFile = NetcdfFile.openInMemory(name, 
os.toByteArray());
+            NetcdfFile ncFile = 
NetcdfFile.open(tis.getFile().getAbsolutePath());
 
             // first parse out the set of global attributes
             for (Attribute attr : ncFile.getGlobalAttributes()) {
@@ -103,40 +99,34 @@ public class NetCDFParser extends Abstra
             
            XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, 
metadata);
            xhtml.startDocument();
-
-                               xhtml.characters("dimensions:");
+                xhtml.newline();
+                xhtml.element("h1", "dimensions");
+                xhtml.startElement("ul");
                                xhtml.newline();
-                       
                                for (Dimension dim : ncFile.getDimensions()){
-                       xhtml.characters(dim.getName()); 
-                       xhtml.characters(" = ");
-                       xhtml.characters(String.valueOf(dim.getLength()));
-                       xhtml.characters(";");
-                       xhtml.newline();
+                    xhtml.element("li", dim.getName() + " = " + 
dim.getLength());
                        }
-                       
-                               xhtml.newline();
-                               xhtml.characters("variables:");
-                       
-                               for (Variable var : ncFile.getVariables()){
-                                       xhtml.newline();
-                                       
xhtml.characters(String.valueOf(var.getDataType())); // data type
-                                       xhtml.characters(" ");
-                                       
xhtml.characters(var.getNameAndDimensions()); //variable name and dimensions
-                                       xhtml.characters(";");
+                xhtml.endElement("ul");
 
+                           xhtml.element("h1", "variables");
+                xhtml.startElement("ul");
+                xhtml.newline();
+                               for (Variable var : ncFile.getVariables()){
+                    xhtml.startElement("li");
+                    xhtml.characters(var.getDataType() + " " + 
var.getNameAndDimensions());
                                        xhtml.newline();
-
-                    for(Attribute element : var.getAttributes()){
-                        String text = element.toString();
-
-                        xhtml.characters("     :");
-                        xhtml.characters(text);
-                        xhtml.characters(";");
-                        xhtml.newline();
+                    List<Attribute> attributes = var.getAttributes();
+                    if (!attributes.isEmpty()) {
+                        xhtml.startElement("ul");
+                        for(Attribute element : attributes){
+                            xhtml.element("li", element.toString());
+                        }
+                        xhtml.endElement("ul");
                     }
-               }   
-                       
+                    xhtml.endElement("li");
+               }
+                xhtml.endElement("ul");
+
           xhtml.endDocument();
          
         } catch (IOException e) {

Modified: 
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java
URL: 
http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java?rev=1647749&r1=1647748&r2=1647749&view=diff
==============================================================================
--- 
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java
 (original)
+++ 
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java
 Wed Dec 24 09:05:29 2014
@@ -38,10 +38,6 @@ public class NetCDFParserTest {
 
     @Test
     public void testParseGlobalMetadata() throws Exception {
-        if(System.getProperty("java.version").startsWith("1.5")) {
-            return;
-        }
-
         Parser parser = new NetCDFParser();
         ContentHandler handler = new BodyContentHandler();
         Metadata metadata = new Metadata();
@@ -63,13 +59,13 @@ public class NetCDFParserTest {
         assertEquals(metadata.get(Metadata.REALIZATION), "1");
         assertEquals(metadata.get(Metadata.EXPERIMENT_ID),
                 "720 ppm stabilization experiment (SRESA1B)");
-                
+
         String content = handler.toString();
-               assertTrue(content.contains(":long_name = \"Surface area\";"));
-               assertTrue(content.contains("float area(lat=128, lon=256);"));
-               assertTrue(content.contains("float lat(lat=128);"));
-               assertTrue(content.contains("double lat_bnds(lat=128, 
bnds=2);"));
-               assertTrue(content.contains("double lon_bnds(lon=256, 
bnds=2);"));
+               assertTrue(content.contains("long_name = \"Surface area\""));
+               assertTrue(content.contains("float area(lat=128, lon=256)"));
+               assertTrue(content.contains("float lat(lat=128)"));
+               assertTrue(content.contains("double lat_bnds(lat=128, 
bnds=2)"));
+               assertTrue(content.contains("double lon_bnds(lon=256, 
bnds=2)"));
                
                
     }


Reply via email to