div = html.div(_INFO_WRAP);
+ TABLE> table =
+ div.h3("Total Outstanding Resource Requests: "
+ + getTotalResource(resourceRequests)).table(
+ "#ResourceRequests");
+
+ table.tr().
+ th(_TH, "Priority").
+ th(_TH, "ResourceName").
+ th(_TH, "Capability").
+ th(_TH, "NumContainers").
+ th(_TH, "RelaxLocality").
+ th(_TH, "NodeLabelExpression").
+ _();
+
+ for (ResourceRequest request : resourceRequests) {
+ if (request.getNumContainers() == 0) {
+ continue;
+ }
+ table.tr()
+ .td(String.valueOf(request.getPriority()))
+ .td(request.getResourceName())
+ .td(String.valueOf(request.getCapability()))
+ .td(String.valueOf(request.getNumContainers()))
+ .td(String.valueOf(request.getRelaxLocality()))
+ .td(request.getNodeLabelExpression() == null ? "N/A" : request
+ .getNodeLabelExpression())._();
+ }
+ table._();
+ div._();
+ }
+
+ private Resource getTotalResource(List requests) {
Resource totalResource = Resource.newInstance(0, 0);
- if (app.getResourceRequests() != null) {
- for (ResourceRequest request : app.getResourceRequests()) {
- if (request.getNumContainers() == 0) {
- continue;
- }
-
- tbody.tr()
- .td(String.valueOf(request.getPriority()))
- .td(request.getResourceName())
- .td(String.valueOf(request.getCapability()))
- .td(String.valueOf(request.getNumContainers()))
- .td(String.valueOf(request.getRelaxLocality()))
- .td(request.getNodeLabelExpression() == null ? "N/A" : request
- .getNodeLabelExpression())._();
- if (request.getResourceName().equals(ResourceRequest.ANY)) {
- Resources.addTo(totalResource,
- Resources.multiply(request.getCapability(),
- request.getNumContainers()));
- }
+ if (requests == null) {
+ return totalResource;
+ }
+ for (ResourceRequest request : requests) {
+ if (request.getNumContainers() == 0) {
+ continue;
+ }
+ if (request.getResourceName().equals(ResourceRequest.ANY)) {
+ Resources.addTo(
+ totalResource,
+ Resources.multiply(request.getCapability(),
+ request.getNumContainers()));
}
}
- html.div().$class("totalResourceRequests")
- .h3("Total Outstanding Resource Requests: " + totalResource)._();
- tbody._()._();
+ return totalResource;
}
private void createContainerLocalityTable(Block html) {
@@ -248,4 +262,10 @@ protected void generateOverview(ApplicationAttemptReport appAttemptReport,
}
return null;
}
+
+ @Override
+ protected void createTablesForAttemptMetrics(Block html) {
+ createContainerLocalityTable(html);
+ createResourceRequestsTable(html);
+ }
}