001 /* 002 @license.text@ 003 */ 004 package biz.hammurapi.metrics; 005 006 import java.util.Collections; 007 import java.util.Iterator; 008 import java.util.LinkedList; 009 010 import org.w3c.dom.Document; 011 import org.w3c.dom.Element; 012 013 import biz.hammurapi.render.RenderRequest; 014 import biz.hammurapi.render.RenderingException; 015 import biz.hammurapi.render.dom.AbstractRenderer; 016 import biz.hammurapi.render.dom.DomRenderer; 017 018 019 /** 020 * @author Pavel Vlasov 021 * @version $Revision: 1.4 $ 022 */ 023 public class MetricSourceRenderer extends AbstractRenderer implements DomRenderer { 024 025 public MetricSourceRenderer(RenderRequest request) { 026 super(request); 027 } 028 029 public MetricSourceRenderer(RenderRequest request, String profile) { 030 super(request, profile); 031 } 032 033 public Element render(Document document) throws RenderingException { 034 Element ret=document.createElement("metrics"); 035 MetricSource m=(MetricSource) request.getRenderee(); 036 037 LinkedList list = new LinkedList(m.getMetrics().values()); 038 Collections.sort(list); 039 Iterator it=list.iterator(); 040 while (it.hasNext()) { 041 ret.appendChild(new MetricRenderer(new RenderRequest(it.next())).render(document)); 042 } 043 return ret; 044 } 045 }