package hudson.plugins.cobertura.targets; import java.io.Serializable; import java.util.Map; import java.util.Map.Entry; import hudson.plugins.cobertura.Ratio; import org.kohsuke.stapler.export.Exported; import org.kohsuke.stapler.export.ExportedBean; @ExportedBean public class CoverageTree implements Serializable { /** * Generated */ private static final long serialVersionUID = 5112467356061418891L; private Map<CoverageMetric, Ratio> aggregateResults; private Map<String, CoverageResult> children; private String name; public CoverageTree(String name, Map<CoverageMetric, Ratio> aggregateResults, Map<String, CoverageResult> children) { this.name=name; this.aggregateResults=aggregateResults; this.children=children; } @Exported public String getName(){ return name; } @Exported public CoverageTreeElement[] getElements(){ CoverageTreeElement[] cte=new CoverageTreeElement[aggregateResults.size()]; int current=0; for (Entry<CoverageMetric, Ratio> e: aggregateResults.entrySet()){ cte[current]=new CoverageTreeElement(e.getKey(), e.getValue()); current++; } return cte; } @Exported public CoverageTree[] getChildren(){ CoverageTree[] ct=new CoverageTree[children.size()]; int current=0; for (Entry<String, CoverageResult> e: children.entrySet()){ ct[current]=new CoverageTree(e.getKey(), e.getValue().getResults(), e.getValue().getChildrenReal()); current++; } return ct; } }