|
[HepData-svn] r1590 - trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/componentsblackhole at projects.hepforge.org blackhole at projects.hepforge.orgTue 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 |