diff --git a/MonitorWidgetTD.launch b/MonitorWidgetTD.launch
new file mode 100644
index 0000000..fc49153
--- /dev/null
+++ b/MonitorWidgetTD.launch
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 43f17dd..b627b99 100644
--- a/pom.xml
+++ b/pom.xml
@@ -289,4 +289,5 @@
+ war
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorDialog.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorDialog.java
index 4cfc698..a1c50e4 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorDialog.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorDialog.java
@@ -6,23 +6,31 @@ import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTSessionExpire
import org.gcube.portlets.user.td.gwtservice.shared.monitor.OperationMonitor;
import org.gcube.portlets.user.td.gwtservice.shared.monitor.OperationMonitorSession;
import org.gcube.portlets.user.td.monitorwidget.client.details.MonitorDetailPanel;
+import org.gcube.portlets.user.td.monitorwidget.client.resources.ResourceBundle;
import org.gcube.portlets.user.td.widgetcommonevent.client.event.SessionExpiredEvent;
import org.gcube.portlets.user.td.widgetcommonevent.client.type.SessionExpiredType;
import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId;
import com.allen_sauer.gwt.log.client.Log;
import com.google.web.bindery.event.shared.EventBus;
+import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign;
+import com.sencha.gxt.core.client.dom.ScrollSupport.ScrollMode;
import com.sencha.gxt.core.client.util.Margins;
import com.sencha.gxt.widget.core.client.FramedPanel;
import com.sencha.gxt.widget.core.client.ProgressBar;
import com.sencha.gxt.widget.core.client.Window;
import com.sencha.gxt.widget.core.client.button.TextButton;
import com.sencha.gxt.widget.core.client.button.ToolButton;
+import com.sencha.gxt.widget.core.client.container.FlowLayoutContainer;
+import com.sencha.gxt.widget.core.client.container.HBoxLayoutContainer;
+import com.sencha.gxt.widget.core.client.container.MarginData;
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer;
+import com.sencha.gxt.widget.core.client.container.BoxLayoutContainer.BoxLayoutData;
+import com.sencha.gxt.widget.core.client.container.BoxLayoutContainer.BoxLayoutPack;
+import com.sencha.gxt.widget.core.client.container.HBoxLayoutContainer.HBoxLayoutAlign;
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData;
import com.sencha.gxt.widget.core.client.event.SelectEvent;
import com.sencha.gxt.widget.core.client.event.SelectEvent.SelectHandler;
-import com.sencha.gxt.widget.core.client.form.FieldSet;
/**
* AddColumnProgressDialog is a Dialog that show progress of AddColumn
@@ -34,12 +42,16 @@ import com.sencha.gxt.widget.core.client.form.FieldSet;
public class MonitorDialog extends Window implements MonitorUpdaterListener {
public static final int STATUS_POLLING_DELAY = 1000;
- private static final String WIDTH = "400px";
- private static final String HEIGHT = "120px";
+ private static final String WIDTH = "520px";
+ private static final String HEIGHT = "378px";
+ private static final String PANELWIDTH = "500px";
+ private static final String PANELHEIGHT = "308px";
private EventBus eventBus;
private String taskId;
private MonitorUpdater progressUpdater;
- private TextButton ok;
+ private TextButton btnOk;
+ private TextButton btnBackground;
+ private TextButton btnAbort;
private TRId trId;
private String reason;
private String details;
@@ -69,24 +81,32 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
setBodyBorder(false);
setResizable(true);
setModal(true);
+ setClosable(false);
setHeadingText("Progress");
}
protected void create(){
FramedPanel panel = new FramedPanel();
+ panel.setWidth(PANELWIDTH);
+ panel.setHeight(PANELHEIGHT);
panel.setHeaderVisible(false);
panel.setBodyBorder(false);
VerticalLayoutContainer v = new VerticalLayoutContainer();
-
- ProgressBar progressBar = new ProgressBar();
+ /*FlowLayoutContainer progressDetailContainer = new FlowLayoutContainer();
+ progressDetailContainer.setScrollMode(ScrollMode.AUTO);
+ MarginData layoutData = new MarginData(new Margins(5, 5, 5, 5));*/
- FieldSet detailsSet = new FieldSet();
+
+ ProgressBar progressBar = new ProgressBar();
+ progressBar.setWidth("498px");
+
+ /*FieldSet detailsSet = new FieldSet();
detailsSet.setHeadingText("Details");
- detailsSet.setCollapsible(true);
+ detailsSet.setCollapsible(true);*/
monitorDetailPanel=new MonitorDetailPanel(eventBus);
- detailsSet.add(monitorDetailPanel);
+ //detailsSet.add(monitorDetailPanel);
/*TextField
@@ -101,33 +121,107 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
RootPanel.get().add(v);
*/
- ok = new TextButton("OK");
- ok.addSelectHandler(new SelectHandler() {
+ btnOk = new TextButton("Ok");
+ btnOk.setWidth("70px");
+ //btnOk.setIcon(ResourceBundle.INSTANCE.ok());
+ //btnOk.setIconAlign(IconAlign.RIGHT);
+ btnOk.setTitle("Ok");
+
+
+ btnOk.addSelectHandler(new SelectHandler() {
public void onSelect(SelectEvent event) {
updateInvocation();
}
});
-
- v.add(progressBar,
- new VerticalLayoutData(1, 1, new Margins(5, 5, 5, 5)));
- v.add(detailsSet,new VerticalLayoutData(1, 1, new Margins(5, 5, 5, 5)));
+ btnBackground = new TextButton("Background");
+ btnBackground.setWidth("70px");
+ //btnOk.setIcon(ResourceBundle.INSTANCE.ok());
+ //btnOk.setIconAlign(IconAlign.RIGHT);
+ btnBackground.setTitle("Background");
+
+
+ btnBackground.addSelectHandler(new SelectHandler() {
+
+ public void onSelect(SelectEvent event) {
+ startBackground();
+
+ }
+
+
+ });
+
+
+ btnAbort = new TextButton("Abort");
+ btnAbort.setWidth("70px");
+ //btnOk.setIcon(ResourceBundle.INSTANCE.ok());
+ //btnOk.setIconAlign(IconAlign.RIGHT);
+ btnAbort.setTitle("Abort");
+
+
+ btnAbort.addSelectHandler(new SelectHandler() {
+
+ public void onSelect(SelectEvent event) {
+ startAbort();
+
+ }
+ });
+
+
+ HBoxLayoutContainer flowButton = new HBoxLayoutContainer();
+ flowButton.setHBoxLayoutAlign(HBoxLayoutAlign.MIDDLE);
+ flowButton.setPack(BoxLayoutPack.CENTER);
+
+ flowButton.add(btnOk, new BoxLayoutData(new Margins(0, 4, 0, 4)));
+ flowButton.add(btnBackground, new BoxLayoutData(new Margins(0, 4, 0, 4)));
+ flowButton.add(btnAbort, new BoxLayoutData(new Margins(0, 4, 0, 4)));
+
+
+ v.add(progressBar,
+ new VerticalLayoutData(1, -1, new Margins(5, 5, 5, 5)));
+
+ v.add(monitorDetailPanel,new VerticalLayoutData(1, -1, new Margins(5, 5, 5, 5)));
+
+ v.add(flowButton, new VerticalLayoutData(1, 36,
+ new Margins(5, 5, 5, 5)));
+
+ /*progressDetailContainer.add(progressBar, layoutData);
+ progressDetailContainer.add(monitorDetailPanel, layoutData);*/
panel.add(v);
- panel.addButton(ok);
add(panel);
-
+
+
+
+
+
+ //panel.addButton(btnOk);
+
+
+ /*
OperationMonitorSession operationMonitorSession = new OperationMonitorSession(
taskId);
progressUpdater = new MonitorUpdater(operationMonitorSession);
progressUpdater.addListener(new MonitorBarUpdater(progressBar));
progressUpdater.addListener(this);
- progressUpdater.scheduleRepeating(STATUS_POLLING_DELAY);
+ progressUpdater.scheduleRepeating(STATUS_POLLING_DELAY);*/
show();
- ok.setVisible(false);
+ //ok.setVisible(false);
+ }
+
+ protected void startAbort() {
+ // TODO Auto-generated method stub
+ close();
+
+ }
+
+ protected void startBackground() {
+ // TODO Auto-generated method stub
+ close();
+
}
public void addProgressDialogListener(MonitorDialogListener listener) {
@@ -143,6 +237,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
if(monitorDetailPanel!=null){
monitorDetailPanel.update(operationMonitor);
}
+ forceLayout();
}
@@ -151,7 +246,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
if(monitorDetailPanel!=null){
monitorDetailPanel.update(operationMonitor);
}
-
+ forceLayout();
}
@Override
@@ -169,15 +264,17 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
public void monitorFailed(Throwable caught, String reason, String details, OperationMonitor operationMonitor) {
if(monitorDetailPanel!=null){
monitorDetailPanel.update(operationMonitor);
+
}
+ forceLayout();
if (caught instanceof TDGWTSessionExpiredException) {
eventBus.fireEvent(new SessionExpiredEvent(
SessionExpiredType.EXPIREDONSERVER));
} else {
fireOperationFailed(caught,reason,details);
hide();
-
}
+
}
public void updateInvocation() {
@@ -198,8 +295,8 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
this.trId = trId;
this.reason = reason;
this.details = details;
- ok.setVisible(true);
-
+ btnOk.setVisible(true);
+ forceLayout();
}
@Override
@@ -207,6 +304,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
if(monitorDetailPanel!=null){
monitorDetailPanel.update(operationMonitor);
}
+ forceLayout();
}
@@ -215,7 +313,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
if(monitorDetailPanel!=null){
monitorDetailPanel.update(operationMonitor);
}
-
+ forceLayout();
}
@@ -263,7 +361,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
*/
@Override
protected void initTools() {
- if (backgroundBtnEnabled) {
+ /*if (backgroundBtnEnabled) {
backgroundBtn = new ToolButton(ToolButton.CLOSE);
backgroundBtn.setToolTip("Put in the background");
backgroundBtn.addSelectHandler(new SelectHandler() {
@@ -275,16 +373,17 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
});
header.addTool(backgroundBtn);
- }
+ }*/
super.initTools();
+ /*
closeBtn.addSelectHandler(new SelectHandler() {
public void onSelect(SelectEvent event) {
close();
}
- });
+ });*/
}
@@ -293,6 +392,11 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
}
-
+ public void updateOperationMonitor(OperationMonitor operationMonitor){
+ if(monitorDetailPanel!=null){
+ monitorDetailPanel.update(operationMonitor);
+ }
+ forceLayout();
+ }
}
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorWidgetEntry.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorWidgetEntry.java
index 506afb2..47023ae 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorWidgetEntry.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorWidgetEntry.java
@@ -1,19 +1,64 @@
package org.gcube.portlets.user.td.monitorwidget.client;
+import java.util.ArrayList;
+import java.util.Date;
+
+import org.gcube.portlets.user.td.gwtservice.shared.UIOperationsId;
+import org.gcube.portlets.user.td.gwtservice.shared.monitor.OperationMonitor;
+import org.gcube.portlets.user.td.gwtservice.shared.task.JobS;
+import org.gcube.portlets.user.td.gwtservice.shared.task.State;
+import org.gcube.portlets.user.td.gwtservice.shared.task.TaskS;
+import org.gcube.portlets.user.td.gwtservice.shared.task.ValidationsJobS;
+import org.gcube.portlets.user.td.gwtservice.shared.task.WorkerState;
+
+import com.allen_sauer.gwt.log.client.Log;
import com.google.gwt.core.client.EntryPoint;
import com.google.web.bindery.event.shared.SimpleEventBus;
/**
*
- * @author "Giancarlo Panichi"
- * email: g.panichi@isti.cnr.it
- *
+ * @author "Giancarlo Panichi" email: g.panichi@isti.cnr.it
+ *
*/
-public class MonitorWidgetEntry implements EntryPoint {
+public class MonitorWidgetEntry implements EntryPoint {
public void onModuleLoad() {
- SimpleEventBus eventBus=new SimpleEventBus();
- MonitorDialog monitorWidget= new MonitorDialog("taskId",eventBus);
+ Log.debug("Test MonitorWidget");
+ SimpleEventBus eventBus = new SimpleEventBus();
+ MonitorDialog monitorWidget = new MonitorDialog("1", eventBus);
monitorWidget.show();
+ OperationMonitor operationMonitor = new OperationMonitor("1",
+ UIOperationsId.EditRow);
+ operationMonitor.setTask(createTaskForTest());
+ monitorWidget.updateOperationMonitor(operationMonitor);
+
+ }
+
+ private TaskS createTaskForTest() {
+ ArrayList validationsJobs = new ArrayList();
+ ValidationsJobS validationJobS = new ValidationsJobS("1",
+ WorkerState.IN_PROGRESS, 0.5f, "Row Validate", null,
+ "Validation in progress");
+ validationsJobs.add(validationJobS);
+
+ ArrayList jobs = new ArrayList();
+ JobS job1 = new JobS("1", 0.8f, "Edit Row Job for Human",
+ "Edit Row Job", WorkerState.IN_PROGRESS, null, validationsJobs);
+ jobs.add(job1);
+
+ JobS job2 = new JobS("2", 0.3f, "Add Row Job for Human",
+ "Add Row Job", WorkerState.IN_PROGRESS, null, validationsJobs);
+ jobs.add(job2);
+
+ JobS job3 = new JobS("3", 0.72f, "Delete Job for Human",
+ "Delete Row Job", WorkerState.IN_PROGRESS, null, validationsJobs);
+ jobs.add(job3);
+
+ TaskS task = new TaskS("1", 0.3f, State.IN_PROGRESS, null, "default",
+ new Date(), null, jobs);
+
+ return task;
+
}
}
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/MonitorDetailPanel.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/MonitorDetailPanel.java
index 500aafb..dc29e4d 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/MonitorDetailPanel.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/MonitorDetailPanel.java
@@ -5,6 +5,8 @@ import java.util.List;
import org.gcube.portlets.user.td.gwtservice.shared.monitor.OperationMonitor;
import org.gcube.portlets.user.td.gwtservice.shared.task.ValidationsTasksMetadata;
+import org.gcube.portlets.user.td.gwtservice.shared.task.WorkerState;
+import org.gcube.portlets.user.td.gwtservice.shared.task.WorkerStateParser;
import org.gcube.portlets.user.td.monitorwidget.client.details.tree.MonitorBaseDto;
import org.gcube.portlets.user.td.monitorwidget.client.details.tree.MonitorFolderDto;
import org.gcube.portlets.user.td.monitorwidget.client.details.tree.MonitorTreeDataGenerator;
@@ -22,7 +24,7 @@ import com.google.web.bindery.event.shared.EventBus;
import com.sencha.gxt.cell.core.client.ProgressBarCell;
import com.sencha.gxt.core.client.ToStringValueProvider;
import com.sencha.gxt.core.client.ValueProvider;
-import com.sencha.gxt.core.client.dom.ScrollSupport.ScrollMode;
+import com.sencha.gxt.core.client.util.Margins;
import com.sencha.gxt.data.shared.IconProvider;
import com.sencha.gxt.data.shared.ModelKeyProvider;
import com.sencha.gxt.data.shared.TreeStore;
@@ -45,8 +47,10 @@ import com.sencha.gxt.widget.core.client.toolbar.ToolBar;
import com.sencha.gxt.widget.core.client.treegrid.TreeGrid;
public class MonitorDetailPanel extends FramedPanel {
- protected String WIDTH = "380px";
- protected String HEIGHT = "200px";
+ protected static final String WIDTH = "498px";
+ protected static final String HEIGHT = "256px";
+ protected static final String GRIDHEIGHT = "212px";
+
protected MonitorDetailPanel thisPanel;
protected Menu contextMenu;
@@ -90,9 +94,9 @@ public class MonitorDetailPanel extends FramedPanel {
if (tree != null) {
remove(tree);
}
- if(operationMonitor!=null){
- createTreeData();
- }
+
+ createTreeData();
+
}
protected void init() {
@@ -110,7 +114,7 @@ public class MonitorDetailPanel extends FramedPanel {
protected void create() {
con = new VerticalLayoutContainer();
- con.setScrollMode(ScrollMode.AUTO);
+ //con.setScrollMode(ScrollMode.AUTO);
store = new TreeStore(new KeyProvider());
@@ -136,34 +140,42 @@ public class MonitorDetailPanel extends FramedPanel {
}
});
- ColumnConfig cc2 = new ColumnConfig(
- new ValueProvider() {
+ ColumnConfig cc2 = new ColumnConfig(
+ new ValueProvider() {
@Override
- public Double getValue(MonitorBaseDto object) {
- Double d = null;
+ public String getValue(MonitorBaseDto object) {
+ String state = null;
if (object instanceof MonitorValidationJobSDto) {
- Float f = ((MonitorValidationJobSDto) object).getProgress();
- d = new Double(f);
+ state = ((MonitorValidationJobSDto) object).getWorkerState().toString();
}
- return d;
+ if (object instanceof MonitorFolderDto) {
+ state = ((MonitorFolderDto) object).getState();
+ }
+ return state;
}
@Override
- public void setValue(MonitorBaseDto object, Double value) {
+ public void setValue(MonitorBaseDto object, String value) {
if (object instanceof MonitorValidationJobSDto) {
+ WorkerState workerState=WorkerStateParser.parse(value);
((MonitorValidationJobSDto) object)
- .setProgress(value.floatValue());
+ .setWorkerState(workerState);
+
+ }
+ if (object instanceof MonitorFolderDto) {
+ ((MonitorFolderDto) object)
+ .setState(value);
}
}
@Override
public String getPath() {
- return "progress";
+ return "status";
}
- }, 140, "Progress");
- cc2.setHeader("Progress");
-
+ }, 100, "Status");
+ cc2.setHeader("Status");
+ /*
ProgressBarCell progress = new ProgressBarCell() {
@Override
public boolean handlesSelection() {
@@ -173,10 +185,60 @@ public class MonitorDetailPanel extends FramedPanel {
progress.setProgressText("{0}% Complete");
progress.setWidth(140);
cc2.setCell(progress);
+ */
+ ColumnConfig cc3 = new ColumnConfig(
+ new ValueProvider() {
+ @Override
+ public Double getValue(MonitorBaseDto object) {
+ Double d = null;
+ if (object instanceof MonitorValidationJobSDto) {
+ Float f = ((MonitorValidationJobSDto) object).getProgress();
+ d = new Double(f);
+ }
+ if (object instanceof MonitorFolderDto) {
+ Float f = ((MonitorFolderDto) object).getProgress();
+ d = new Double(f);
+ }
+
+ return d;
+ }
+
+ @Override
+ public void setValue(MonitorBaseDto object, Double value) {
+ if (object instanceof MonitorValidationJobSDto) {
+ ((MonitorValidationJobSDto) object)
+ .setProgress(value.floatValue());
+ }
+ if (object instanceof MonitorFolderDto) {
+ ((MonitorFolderDto) object)
+ .setProgress(value.floatValue());
+ }
+ }
+
+ @Override
+ public String getPath() {
+ return "progress";
+ }
+ }, 100, "Progress");
+ cc3.setHeader("Progress");
+
+ ProgressBarCell progress = new ProgressBarCell() {
+ @Override
+ public boolean handlesSelection() {
+ return true;
+ }
+ };
+ progress.setProgressText("{0}% Complete");
+ progress.setWidth(110);
+ cc3.setCell(progress);
+
+
+
List> l = new ArrayList>();
l.add(cc1);
l.add(cc2);
+ l.add(cc3);
ColumnModel cm = new ColumnModel(l);
tree = new TreeGrid(store, cm, cc1);
@@ -185,6 +247,8 @@ public class MonitorDetailPanel extends FramedPanel {
tree.setLoadMask(true);
tree.setColumnResize(true);
tree.getView().setAutoExpandColumn(cc1);
+ tree.setHeight(GRIDHEIGHT);
+
IconProvider iconProvider = new IconProvider() {
@@ -258,11 +322,11 @@ public class MonitorDetailPanel extends FramedPanel {
});
toolBar.add(btnCollapseAll);
- con.add(toolBar, new VerticalLayoutData(1, -1));
- con.add(tree, new VerticalLayoutData(1, -1));
+ con.add(toolBar, new VerticalLayoutData(1, -1,new Margins(0)));
+ con.add(tree, new VerticalLayoutData(1, -1, new Margins(0)));
add(con, new MarginData(0));
-
+
forceLayout();
}
@@ -279,6 +343,7 @@ public class MonitorDetailPanel extends FramedPanel {
public void update(OperationMonitor operationMonitor) {
this.operationMonitor = operationMonitor;
draw();
+
}
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorFolderDto.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorFolderDto.java
index 6831c14..ea084d6 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorFolderDto.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorFolderDto.java
@@ -14,16 +14,21 @@ public class MonitorFolderDto extends MonitorBaseDto {
protected String description;
protected ArrayList childrens;
protected String type;
+ protected String state;
+ protected float progress;
public MonitorFolderDto(){
}
- public MonitorFolderDto(String type,String id,String description, ArrayList childrens){
+ public MonitorFolderDto(String type,String id,String description, String state, float progress, ArrayList childrens){
super(id);
this.type=type;
this.description=description;
+ this.state=state;
+ this.progress=progress;
this.childrens=childrens;
+
}
@@ -52,6 +57,22 @@ public class MonitorFolderDto extends MonitorBaseDto {
this.description = description;
}
+ public float getProgress() {
+ return progress;
+ }
+
+ public void setProgress(float progress) {
+ this.progress = progress;
+ }
+
+
+ public String getState() {
+ return state;
+ }
+
+ public void setState(String state) {
+ this.state = state;
+ }
@Override
public String toString() {
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorTreeDataGenerator.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorTreeDataGenerator.java
index 3e33bc4..564a77b 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorTreeDataGenerator.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/details/tree/MonitorTreeDataGenerator.java
@@ -25,7 +25,7 @@ public class MonitorTreeDataGenerator {
public MonitorTreeDataGenerator(OperationMonitor operationMonitor) {
Log.debug("MonitorTreeDataGenerator");
ArrayList childrens = new ArrayList();
- if (operationMonitor.getTask() != null) {
+ if (operationMonitor!=null && operationMonitor.getTask() != null) {
TaskS task = operationMonitor.getTask();
ArrayList jobs = new ArrayList();
for (JobS job : task.getJobs()) {
@@ -42,19 +42,23 @@ public class MonitorTreeDataGenerator {
}
MonitorFolderDto foldJob = new MonitorFolderDto("job",
task.getId() + "-" + job.getId(), job.getDescription(),
+ job.getWorkerState().toString(), job.getProgress(),
validations);
jobs.add(foldJob);
}
MonitorFolderDto foldTask = new MonitorFolderDto("task",
- task.getId(), sdf.format(task.getStartTime()), jobs);
+ task.getId(), sdf.format(task.getStartTime()), task
+ .getState().toString(), task.getProgress(), jobs);
childrens.add(foldTask);
- root = new MonitorFolderDto("root", "-1", "root", childrens);
+ root = new MonitorFolderDto("root", "-1", "root", "root", 0,
+ childrens);
Log.debug("Generated root");
- // printRecorsive(root);
+ printRecorsive(root);
} else {
- root = new MonitorFolderDto("root", "-1", "root", childrens);
+ root = new MonitorFolderDto("root", "-1", "root", "root", 0,
+ childrens);
Log.debug("Generated root without childrens");
}
}
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/MonitorWidgetTD.css b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/MonitorWidgetTD.css
new file mode 100644
index 0000000..d44d232
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/MonitorWidgetTD.css
@@ -0,0 +1,3 @@
+@CHARSET "UTF-8";
+
+
diff --git a/src/main/resources/org/gcube/portlets/user/td/monitorwidget/MonitorWidgetTD.gwt.xml b/src/main/resources/org/gcube/portlets/user/td/monitorwidget/MonitorWidgetTD.gwt.xml
index a3ee09e..179a03d 100644
--- a/src/main/resources/org/gcube/portlets/user/td/monitorwidget/MonitorWidgetTD.gwt.xml
+++ b/src/main/resources/org/gcube/portlets/user/td/monitorwidget/MonitorWidgetTD.gwt.xml
@@ -1,31 +1,44 @@
-
-
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
index 9aa6ade..d587c16 100644
--- a/src/main/webapp/WEB-INF/web.xml
+++ b/src/main/webapp/WEB-INF/web.xml
@@ -26,7 +26,7 @@
jUnitHostImpl
- UnionWizardWidgets/junithost/*
+ /MonitorWidgetTD/junithost/*