1 5 package org.exoplatform.portlets.monitor.portlet.renderer.html; 6 7 import java.io.IOException ; 8 import java.util.Date ; 9 import java.util.Iterator ; 10 import java.util.ResourceBundle ; 11 import javax.faces.component.UIComponent; 12 import javax.faces.context.FacesContext; 13 import javax.faces.context.ResponseWriter; 14 import org.exoplatform.faces.core.renderer.html.HtmlBasicRenderer; 15 import org.exoplatform.portlets.monitor.portlet.component.UIPortletApplicationMonitor; 16 import org.exoplatform.portlets.monitor.portlet.component.model.PortletApplicationData; 17 import org.exoplatform.services.portletcontainer.monitor.PortletRuntimeData; 18 24 public class PortletApplicationMonitorRenderer extends HtmlBasicRenderer { 25 26 public void encodeChildren( FacesContext context, UIComponent component ) throws IOException { 27 UIPortletApplicationMonitor uiMonitor = (UIPortletApplicationMonitor) component ; 28 ResourceBundle res = getApplicationResourceBundle(context.getExternalContext()) ; 29 ResponseWriter w = context.getResponseWriter() ; 30 PortletApplicationData appData = uiMonitor.getPortletApplicationData() ; 31 w.write("<table class='UIPortletApplicationMonitor'>") ; 32 w. write("<tr>") ; 33 w. write("<th>"); w.write(res.getString("UIPortletApplicationMonitor.header.portlet-name")) ; w.write("</th>") ; 34 w. write("<th>"); w.write(res.getString("UIPortletApplicationMonitor.header.initialized")) ; w.write("</th>") ; 35 w. write("<th>"); w.write(res.getString("UIPortletApplicationMonitor.header.initialization-time")); w.write("</th>") ; 36 w. write("<th>"); w.write(res.getString("UIPortletApplicationMonitor.header.last-access-time")); w.write("</th>") ; 37 w. write("<th>"); w.write(res.getString("UIPortletApplicationMonitor.header.last-failure-access-time")); w.write("</th>") ; 38 w. write("<th>"); w.write(res.getString("UIPortletApplicationMonitor.header.last-init-failure-access-time")); w.write("</th>") ; 39 w. write("</tr>") ; 40 Iterator portletDatasItr = appData.getPortletRuntimeDatas().iterator(); 41 int i = 0; 42 Date time = new Date (); 43 while(portletDatasItr.hasNext()) { 44 PortletRuntimeData rtd = (PortletRuntimeData)portletDatasItr.next() ; 45 String clazz = "odd"; 46 if (i % 2 == 0) 47 clazz = "even"; 48 w.write("<tr class='" + clazz + "'>") ; 49 w. write("<td>"); w.write(rtd.getPortletName()) ; w.write("</td>") ; 50 w. write("<td>"); w.write(Boolean.toString(rtd.isInitialized())) ; w.write("</td>") ; 51 w. write("<td>"); w.write(formatTime(rtd.getInitializationTime(), time)) ; w.write("</td>") ; 52 w. write("<td>"); w.write(formatTime(rtd.getLastAccessTime(), time)) ; w.write("</td>") ; 53 w. write("<td>"); w.write(formatTime(rtd.getLastFailureAccessTime(), time)) ; w.write("</td>") ; 54 w. write("<td>"); w.write(formatTime(rtd.getLastInitFailureAccessTime(), time)) ; w.write("</td>") ; 55 w.write("</tr>") ; 56 i++; 57 } 58 w.write("</table>") ; 59 } 60 61 private String formatTime(long t, Date time) { 62 if (t <= 0) return "-" ; 63 time.setTime(t) ; 64 return ft_.format(time) ; 65 } 66 } | Popular Tags |