1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.gwe.app.client.web.view;
18
19 import org.gwe.app.client.web.request.Operation;
20 import org.gwe.app.client.web.request.Param;
21 import org.gwe.persistence.model.HeadResourceInfo;
22 import org.gwe.persistence.model.OrderInfo;
23 import org.gwe.utils.web.HtmlLink;
24 import org.gwe.utils.web.HtmlTable;
25 import org.gwe.utils.web.HtmlTableCell;
26
27
28
29
30
31 public class HtmlOrdersTable extends HtmlTable {
32
33 public HtmlOrdersTable(HeadResourceInfo daemonInfo) {
34 super("Id", "", "Submitted at", "Completed at", "Progress (completed / total)", "");
35 if (daemonInfo == null) return;
36 for (OrderInfo order : daemonInfo.getOrdersList()) {
37 String clusterId = daemonInfo.getName();
38 HtmlTableCell id = new HtmlTableCell("[ " + order.getId() + " ]", "", new HtmlOrderLink(clusterId, order)) ;
39 HtmlTableCell pause = getOperationLink(clusterId, order, order.isPaused() ? Operation.RESUME : Operation.PAUSE);
40 String progress = order.getCompletedJobsCount() + " / " + order.getTotalJobsCount();
41
42
43 HtmlTableCell delete = getOperationLink(clusterId, order, Operation.DELETE);
44
45 addRow(id, pause, order.getWhenCreated(), order.getWhenCompleted(), progress, delete);
46 }
47 return;
48 }
49
50 private HtmlTableCell getOperationLink(String clusterId, OrderInfo order, Operation oper) {
51 return new HtmlTableCell(order.getId() + "", "", new HtmlOperLink(clusterId, order, oper), oper.getImage());
52 }
53 }
54
55 class HtmlOrderLink extends HtmlLink {
56
57 public HtmlOrderLink(String clusterId, OrderInfo order) {
58 super(false, "order");
59 addParam(Param.CLUSTER_ID, clusterId);
60 addParam(Param.ORDER_ID, order.getId());
61 }
62 }
63
64 class HtmlOperLink extends HtmlLink {
65
66 public HtmlOperLink(String clusterId, OrderInfo order, Operation oper) {
67 super(false, "cluster");
68 addParam(Param.CLUSTER_ID, clusterId);
69 addParam(Param.ORDER_ID, order.getId());
70 addParam(Param.OPER, oper.toString());
71 }
72 }