[HepData-svn] r1590 - trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/components

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Tue Oct 23 13:55:54 BST 2012


Author: whalley
Date: Tue Oct 23 13:55:53 2012
New Revision: 1590

Log:
adding component to display generic html table

Added:
   trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/components/DisplayHtmlInsert.java

Added: trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/components/DisplayHtmlInsert.java
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/components/DisplayHtmlInsert.java	Tue Oct 23 13:55:53 2012	(r1590)
@@ -0,0 +1,72 @@
+package cedar.hepdata.webapp.components;
+
+import org.apache.tapestry5.MarkupWriter;
+import org.apache.tapestry5.annotations.*;
+import org.apache.tapestry5.ioc.annotations.*;
+import cedar.hepdata.model.*;
+
+import java.util.*;
+import java.io.*;
+
+public class DisplayHtmlInsert {
+
+    @BeginRender
+    void renderMessage(MarkupWriter writer) {
+
+        if(_paper != null){
+            Long irn = null;
+            if(_paper.getSpiresId() != null){
+                irn = _paper.getSpiresId();
+            }
+            else{
+                irn = _paper.getHepdataId();
+            }
+
+	        String filename = "/home/whalley/resource/" + irn + "/insert.html";
+// 	    writer.write("Systematics from " + filename + " are:");
+            try{
+	            BufferedReader in = new BufferedReader(new FileReader(filename));
+	            String line;
+                List <String> inlist = new ArrayList();
+                int nlist = -1;
+	            while((line = in.readLine()) != null) {
+                  System.out.println("line: "+line);
+                    String[] part = line.split(">");
+                    for(int i=0; i<part.length; i++){
+                        System.out.println("part[i]: "+part[i]);
+                        String[] bits = part[i].split("<");
+                        for(int n=0; n<bits.length; n++){
+                            System.out.println("bits[n]: "+bits[n]);
+                            if(bits[n].equals("table")) { writer.element("table"); writer.attributes("border","1");} 
+                            else if(bits[n].equals("/table")){ writer.end(); } 
+                            else if(bits[n].equals("tr")){ writer.element("tr"); } 
+                            else if(bits[n].equals("/tr")) { writer.end();  }
+                            else if(bits[n].equals("td")) { writer.element("td"); } 
+                            else if(bits[n].equals("/td")){ writer.end(); } 
+                            else if(bits[n].startsWith("td align")) { writer.element(bits[n]); } 
+                            else if(bits[n].equals("th")) { writer.element("th"); } 
+                            else if(bits[n].startsWith("th align")) { writer.element(bits[n]); } 
+                            else if(bits[n].equals("/th")) { writer.end(); }
+                            else if(bits[n].equals("br")) { writer.element("br"); } 
+                            else if(bits[n].equals("/br")) { writer.end(); }
+                            else if(bits[n].equals("br/")) { writer.element("br");  writer.end();} 
+                            else if(bits[n].equals("p")) { writer.element("p"); } 
+                            else if(bits[n].equals("/p")) { writer.end(); }
+                            else if(bits[n].equals("b")) { writer.element("b"); } 
+                            else if(bits[n].equals("/b")) { writer.end(); }
+                            else if(bits[n].equals("p/")) { writer.element("p");  writer.end();} 
+                            else if(bits[n].startsWith("a href")) { writer.element(bits[n]); }
+                            else if(bits[n].equals("/a")) { writer.end(); }
+                           else{ writer.write(bits[n]);}
+ 	                    }
+ 	                } 
+ 	            } // end while 
+ 	        } // end try
+	        catch (IOException e) {
+	       // Handle FileNotFoundException here....
+	        } // end catch
+        } // if(_paper....
+    } //end rendermassage...
+    @Parameter(name="p")
+    private Paper _paper;
+} // end public class


More information about the HepData-svn mailing list