// Copyright 2008 Google Inc. All Rights Reserved. package autotest.common; import com.google.gwt.json.client.JSONObject; import java.util.Arrays; public class StatusSummary extends AbstractStatusSummary { public int passed = 0; public int complete = 0; public int incomplete = 0; public int total = 0; // TEST_NA is included here, but not in any other private String[] contents = null; public static StatusSummary getStatusSummary(JSONObject group, String passCountField, String completeCountField, String incompleteCountField, String groupCountField) { StatusSummary summary = new StatusSummary(); summary.passed = getField(group, passCountField); summary.complete = getField(group, completeCountField); summary.incomplete = getField(group, incompleteCountField); summary.total = getField(group, groupCountField); if (group.containsKey("extra_info")) { summary.contents = Utils.JSONtoStrings(group.get("extra_info").isArray()); } return summary; } private static int getField(JSONObject group, String field) { return (int) group.get(field).isNumber().doubleValue(); } /** * Force construction to go through getStatusSummary() factory method. */ private StatusSummary() {} public int getTotal() { return total; } public String formatContents() { String result = formatStatusCounts(); if (contents != null) { result += "
"; result += Utils.joinStrings("
", Arrays.asList(contents), true); } return result; } @Override protected int getComplete() { return complete; } @Override protected int getIncomplete() { return incomplete; } @Override protected int getPassed() { return passed; } }