}
pw.print("</p>");
String rt = null;
for(final ResourceGroup group : state.getActiveResources()) {
final Resource toActivate = group.getResources().get(0);
if ( !toActivate.getType().equals(rt) ) {
if ( rt != null ) {
pw.println("</tbody></table>");
}
pw.println("<div class='ui-widget-header ui-corner-top buttonGroup' style='height: 15px;'>");
pw.printf("<span style='float: left; margin-left: 1em;'>Active Resources - %s</span>", getType(toActivate));
pw.println("</div>");
pw.println("<table class='nicetable'><tbody>");
pw.printf("<tr><th>Entity ID</th><th>Digest/Priority</th><th>URL (Version)</th><th>State</th></tr>");
rt = toActivate.getType();
}
pw.printf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>",
getEntityId(toActivate, group.getAlias()),
getInfo(toActivate),
getURL(toActivate),
toActivate.getState());
}
if ( rt != null ) {
pw.println("</tbody></table>");
}
rt = null;
for(final ResourceGroup group : state.getInstalledResources()) {
final Collection<Resource> resources = group.getResources();
if (resources.size() > 0) {
final Iterator<Resource> iter = resources.iterator();
final Resource first = iter.next();
if ( !first.getType().equals(rt) ) {
if ( rt != null ) {
pw.println("</tbody></table>");
}
pw.println("<div class='ui-widget-header ui-corner-top buttonGroup' style='height: 15px;'>");
pw.printf("<span style='float: left; margin-left: 1em;'>Processed Resources - %s</span>", getType(first));
pw.println("</div>");
pw.println("<table class='nicetable'><tbody>");
pw.printf("<tr><th>Entity ID</th><th>Digest/Priority</th><th>URL (Version)</th><th>State</th></tr>");
rt = first.getType();
}
pw.print("<tr><td>");
pw.print(getEntityId(first, group.getAlias()));
pw.print("</td><td>");
pw.print(getInfo(first));
pw.print("</td><td>");
pw.print(getURL(first));
pw.print("</td><td>");
pw.print(getState(first));
if ( first.getState() == ResourceState.INSTALLED ) {
final long lastChange = first.getLastChange();
if ( lastChange > 0 ) {
pw.print("<br/>");
pw.print(formatDate(lastChange));
}
}
pw.print("</td></tr>");
if ( first.getAttribute(TaskResource.ATTR_INSTALL_EXCLUDED) != null ) {
pw.printf("<tr><td></td><td colspan='2'>%s</td><td></td></tr>",
first.getAttribute(TaskResource.ATTR_INSTALL_EXCLUDED));
}
if ( first.getAttribute(TaskResource.ATTR_INSTALL_INFO) != null ) {
pw.printf("<tr><td></td><td colspan='2'>%s</td><td></td></tr>",
first.getAttribute(TaskResource.ATTR_INSTALL_INFO));
}
while ( iter.hasNext() ) {
final Resource resource = iter.next();
pw.printf("<tr><td></td><td>%s</td><td>%s</td><td>%s</td></tr>",
getInfo(resource),
getURL(resource),
resource.getState());
}
}
}
if ( rt != null ) {
pw.println("</tbody></table>");