package smartkv.client.workloads.ReportGenerator.htmlElements; import java.util.List; public abstract class TableGenerator extends SourceElement{ public TableGenerator(String title, String description) { super(title, description); // TODO Auto-generated constructor stub } List<double[]> tableContents; List<String> lines; List<String> columns; @Override public void renderBody() { String begin = "<table border=1>"; String end = "</table>"; out.append(begin); genValues(); out.append(end); } private String genValues() { out.append("<tr>"); for (String col : columns){ out.append("<th> " + col + "</th>"); } out.append("</tr>"); for (int i =0 ; i <lines.size() ; i ++){ out.append("<tr>\n"); out.append("<th>" + lines.get(i) + "</th>"); renderValueLine(i); out.append("</tr>\n"); } return out.toString(); } protected void renderValueLine(int line){ double[] values = tableContents.get(line); for (int i = 0 ; i < values.length ; i++){ startCellValue(); renderValue(values[i]); endCellValue(); } } protected void endCellValue() { out.append("</td>"); } protected void startCellValue() { out.append("<td>"); } protected void renderValue(double v){ out.append(v + ""); } }