diff --git a/pom.xml b/pom.xml
index b627b99..43f17dd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -289,5 +289,4 @@
- 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 a1c50e4..d776667 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,28 +6,23 @@ 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;
import com.sencha.gxt.widget.core.client.container.HBoxLayoutContainer.HBoxLayoutAlign;
+import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer;
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;
@@ -42,10 +37,12 @@ import com.sencha.gxt.widget.core.client.event.SelectEvent.SelectHandler;
public class MonitorDialog extends Window implements MonitorUpdaterListener {
public static final int STATUS_POLLING_DELAY = 1000;
- private static final String WIDTH = "520px";
+ private static final String WIDTH = "640px";
private static final String HEIGHT = "378px";
- private static final String PANELWIDTH = "500px";
+ private static final String PANELWIDTH = "620px";
private static final String PANELHEIGHT = "308px";
+ private static final String PROGRESSWIDTH = "618px";
+
private EventBus eventBus;
private String taskId;
private MonitorUpdater progressUpdater;
@@ -81,7 +78,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
setBodyBorder(false);
setResizable(true);
setModal(true);
- setClosable(false);
+ setClosable(true);
setHeadingText("Progress");
}
@@ -99,7 +96,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
ProgressBar progressBar = new ProgressBar();
- progressBar.setWidth("498px");
+ progressBar.setWidth(PROGRESSWIDTH);
/*FieldSet detailsSet = new FieldSet();
detailsSet.setHeadingText("Details");
@@ -138,8 +135,8 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
btnBackground = new TextButton("Background");
btnBackground.setWidth("70px");
- //btnOk.setIcon(ResourceBundle.INSTANCE.ok());
- //btnOk.setIconAlign(IconAlign.RIGHT);
+ //btnBackground.setIcon(ResourceBundle.INSTANCE.background());
+ //btnBackground.setIconAlign(IconAlign.RIGHT);
btnBackground.setTitle("Background");
@@ -156,8 +153,8 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
btnAbort = new TextButton("Abort");
btnAbort.setWidth("70px");
- //btnOk.setIcon(ResourceBundle.INSTANCE.ok());
- //btnOk.setIconAlign(IconAlign.RIGHT);
+ //btnAbort.setIcon(ResourceBundle.INSTANCE.abort());
+ //btnAbort.setIconAlign(IconAlign.RIGHT);
btnAbort.setTitle("Abort");
@@ -194,34 +191,34 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
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);
+ btnOk.setVisible(false);
+
}
protected void startAbort() {
// TODO Auto-generated method stub
+ btnOk.setEnabled(false);
+ btnBackground.setEnabled(false);
+ btnAbort.setEnabled(false);
close();
}
protected void startBackground() {
// TODO Auto-generated method stub
+ btnOk.setEnabled(false);
+ btnBackground.setEnabled(false);
+ btnAbort.setEnabled(false);
close();
-
}
public void addProgressDialogListener(MonitorDialogListener listener) {
@@ -256,8 +253,11 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
}
Log.debug("Operation Complete return: " + trId.toString());
this.trId = trId;
+ btnBackground.setVisible(false);
+ btnAbort.setVisible(false);
+ forceLayout();
fireOperationComplete(trId);
- hide();
+ close();
}
@Override
@@ -272,7 +272,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
SessionExpiredType.EXPIREDONSERVER));
} else {
fireOperationFailed(caught,reason,details);
- hide();
+ close();
}
}
@@ -281,7 +281,7 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
if (trId != null) {
fireOperationStopped(trId, reason, details);
}
- hide();
+ close();
}
@@ -296,6 +296,8 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
this.reason = reason;
this.details = details;
btnOk.setVisible(true);
+ btnBackground.setVisible(false);
+ btnAbort.setVisible(false);
forceLayout();
}
@@ -321,12 +323,13 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
@Override
public void monitorAborted() {
fireOperationAborted();
-
+ close();
}
@Override
public void monitorPutInBackground() {
fireOperationPutInBackground();
+ close();
}
@@ -376,7 +379,8 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
}*/
super.initTools();
-
+
+ closeBtn.setVisible(false);
/*
closeBtn.addSelectHandler(new SelectHandler() {
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 51afd92..52c1d29 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
@@ -47,10 +47,17 @@ import com.sencha.gxt.widget.core.client.toolbar.ToolBar;
import com.sencha.gxt.widget.core.client.treegrid.TreeGrid;
public class MonitorDetailPanel extends FramedPanel {
- protected static final String WIDTH = "498px";
+ protected static final String WIDTH = "618px";
protected static final String HEIGHT = "256px";
- protected static final String GRIDHEIGHT = "212px";
+ protected static final String GRIDHEIGHT = "332px";
+
+ protected static final int CC1WIDTH = 168;
+ protected static final int CC2WIDTH = 100;
+ protected static final int CC3WIDTH = 140;
+ protected static final int CC4WIDTH = 100;
+
+
protected MonitorDetailPanel thisPanel;
protected Menu contextMenu;
@@ -90,8 +97,6 @@ public class MonitorDetailPanel extends FramedPanel {
}
-
-
protected void init() {
setWidth(WIDTH);
setHeight(HEIGHT);
@@ -100,18 +105,16 @@ public class MonitorDetailPanel extends FramedPanel {
forceLayoutOnResize = true;
}
-
-
protected void create() {
con = new VerticalLayoutContainer();
- //con.setScrollMode(ScrollMode.AUTO);
+ // con.setScrollMode(ScrollMode.AUTO);
store = new TreeStore(new KeyProvider());
-
+
addChildrensToStore();
-
+
ColumnConfig cc1 = new ColumnConfig(
- new ToStringValueProvider("task"), 168, "Task");
+ new ToStringValueProvider("task"), CC1WIDTH, "Task");
cc1.setHeader("Task");
cc1.setCell(new AbstractCell() {
@@ -131,25 +134,26 @@ public class MonitorDetailPanel extends FramedPanel {
public String getValue(MonitorBaseDto object) {
String state = null;
if (object instanceof MonitorValidationJobSDto) {
- state = ((MonitorValidationJobSDto) object).getWorkerState().toString();
+ state = ((MonitorValidationJobSDto) object)
+ .getWorkerState().toString();
+
}
if (object instanceof MonitorFolderDto) {
state = ((MonitorFolderDto) object).getState();
- }
+ }
return state;
}
@Override
public void setValue(MonitorBaseDto object, String value) {
if (object instanceof MonitorValidationJobSDto) {
- WorkerState workerState=WorkerStateParser.parse(value);
+ WorkerState workerState = WorkerStateParser.parse(value);
((MonitorValidationJobSDto) object)
.setWorkerState(workerState);
-
+
}
if (object instanceof MonitorFolderDto) {
- ((MonitorFolderDto) object)
- .setState(value);
+ ((MonitorFolderDto) object).setState(value);
}
}
@@ -157,10 +161,44 @@ public class MonitorDetailPanel extends FramedPanel {
public String getPath() {
return "status";
}
- }, 100, "Status");
+ }, CC2WIDTH, "Status");
cc2.setHeader("Status");
-
- ColumnConfig cc3 = new ColumnConfig(
+
+ ColumnConfig cc3 = new ColumnConfig(
+ new ValueProvider() {
+
+ @Override
+ public String getValue(MonitorBaseDto object) {
+ String state = null;
+ if (object instanceof MonitorValidationJobSDto) {
+ state = ((MonitorValidationJobSDto) object).getHumanReadableStatus();
+ }
+ if (object instanceof MonitorFolderDto) {
+ state = ((MonitorFolderDto) object).getHumanReadableStatus();
+ }
+ return state;
+ }
+
+ @Override
+ public void setValue(MonitorBaseDto object, String value) {
+ if (object instanceof MonitorValidationJobSDto) {
+ ((MonitorValidationJobSDto) object)
+ .setHumanReadableStatus(value);
+
+ }
+ if (object instanceof MonitorFolderDto) {
+ ((MonitorFolderDto) object).setHumanReadableStatus(value);
+ }
+ }
+
+ @Override
+ public String getPath() {
+ return "humanreadablestatus";
+ }
+ }, CC3WIDTH, "Human Readble");
+ cc3.setHeader("Human Readble");
+
+ ColumnConfig cc4 = new ColumnConfig(
new ValueProvider() {
@Override
@@ -174,7 +212,7 @@ public class MonitorDetailPanel extends FramedPanel {
Float f = ((MonitorFolderDto) object).getProgress();
d = new Double(f);
}
-
+
return d;
}
@@ -185,8 +223,8 @@ public class MonitorDetailPanel extends FramedPanel {
.setProgress(value.floatValue());
}
if (object instanceof MonitorFolderDto) {
- ((MonitorFolderDto) object)
- .setProgress(value.floatValue());
+ ((MonitorFolderDto) object).setProgress(value
+ .floatValue());
}
}
@@ -194,8 +232,8 @@ public class MonitorDetailPanel extends FramedPanel {
public String getPath() {
return "progress";
}
- }, 100, "Progress");
- cc3.setHeader("Progress");
+ }, CC4WIDTH, "Progress");
+ cc4.setHeader("Progress");
ProgressBarCell progress = new ProgressBarCell() {
@Override
@@ -205,15 +243,14 @@ public class MonitorDetailPanel extends FramedPanel {
};
progress.setProgressText("{0}% Complete");
progress.setWidth(110);
-
- cc3.setCell(progress);
-
-
+ cc4.setCell(progress);
+
List> l = new ArrayList>();
l.add(cc1);
l.add(cc2);
l.add(cc3);
+ l.add(cc4);
ColumnModel cm = new ColumnModel(l);
tree = new TreeGrid(store, cm, cc1);
@@ -223,7 +260,6 @@ public class MonitorDetailPanel extends FramedPanel {
tree.setColumnResize(true);
tree.getView().setAutoExpandColumn(cc1);
tree.setHeight(GRIDHEIGHT);
-
IconProvider iconProvider = new IconProvider() {
@@ -267,7 +303,7 @@ public class MonitorDetailPanel extends FramedPanel {
}
});
- //createContextMenu();
+ // createContextMenu();
ToolBar toolBar = new ToolBar();
@@ -297,11 +333,11 @@ public class MonitorDetailPanel extends FramedPanel {
});
toolBar.add(btnCollapseAll);
- con.add(toolBar, new VerticalLayoutData(1, -1,new Margins(0)));
+ 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));
-
+
tree.expandAll();
forceLayout();
@@ -317,17 +353,17 @@ public class MonitorDetailPanel extends FramedPanel {
public void update(OperationMonitor operationMonitor) {
this.operationMonitor = operationMonitor;
store.clear();
+ store.commitChanges();
addChildrensToStore();
store.commitChanges();
tree.expandAll();
forceLayout();
-
}
private void addChildrensToStore() {
gen = new MonitorTreeDataGenerator(operationMonitor);
-
+
MonitorFolderDto root = gen.getRoot();
for (MonitorBaseDto base : root.getChildrens()) {
store.add(base);
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 ea084d6..2194b88 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
@@ -15,17 +15,20 @@ public class MonitorFolderDto extends MonitorBaseDto {
protected ArrayList childrens;
protected String type;
protected String state;
+ protected String humanReadableStatus;
protected float progress;
public MonitorFolderDto(){
}
- public MonitorFolderDto(String type,String id,String description, String state, float progress, ArrayList childrens){
+ public MonitorFolderDto(String type,String id,String description, String state,
+ String humanReadableStatus, float progress, ArrayList childrens){
super(id);
this.type=type;
this.description=description;
this.state=state;
+ this.humanReadableStatus=humanReadableStatus;
this.progress=progress;
this.childrens=childrens;
@@ -73,6 +76,16 @@ public class MonitorFolderDto extends MonitorBaseDto {
public void setState(String state) {
this.state = state;
}
+
+
+
+ public String getHumanReadableStatus() {
+ return humanReadableStatus;
+ }
+
+ public void setHumanReadableStatus(String humanReadableStatus) {
+ this.humanReadableStatus = humanReadableStatus;
+ }
@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 f43354e..cea4768 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
@@ -42,22 +42,22 @@ public class MonitorTreeDataGenerator {
}
MonitorFolderDto foldJob = new MonitorFolderDto("job",
task.getId() + "-" + job.getId(), job.getDescription(),
- job.getWorkerState().toString(), job.getProgress(),
+ job.getWorkerState().toString(), job.getHumaReadableStatus(),job.getProgress(),
validations);
jobs.add(foldJob);
}
MonitorFolderDto foldTask = new MonitorFolderDto("task",
task.getId(), sdf.format(task.getStartTime()), task
- .getState().toString(), task.getProgress(), jobs);
+ .getState().toString(), "",task.getProgress(), jobs);
childrens.add(foldTask);
- root = new MonitorFolderDto("root", "-1", "root", "root", 0,
+ root = new MonitorFolderDto("root", "-1", "root", "root", "",0,
childrens);
Log.debug("Generated root");
//printRecorsive(root);
} else {
- root = new MonitorFolderDto("root", "-1", "root", "root", 0,
+ root = new MonitorFolderDto("root", "-1", "root", "root", "", 0,
childrens);
Log.debug("Generated root without childrens");
}
@@ -70,7 +70,7 @@ public class MonitorTreeDataGenerator {
protected void printRecorsive(MonitorFolderDto root) {
for (MonitorBaseDto base : root.getChildrens()) {
Log.debug("+++");
- Log.debug("Children:" + base.toString());
+ Log.debug("Children:[id=" +base.getId() +", toString="+base.toString()+"]");
if (base instanceof MonitorFolderDto) {
printRecorsive((MonitorFolderDto) base);
}
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 179a03d..b10d50a 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
@@ -23,15 +23,14 @@
-
+
-
+