diff --git a/pom.xml b/pom.xml
index f90cd6c..88f8115 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 99802f6..64dcb72 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,7 +6,9 @@ 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.widgetcommonevent.client.event.BackgroundRequestEvent;
import org.gcube.portlets.user.td.widgetcommonevent.client.event.SessionExpiredEvent;
+import org.gcube.portlets.user.td.widgetcommonevent.client.type.BackgroundRequestType;
import org.gcube.portlets.user.td.widgetcommonevent.client.type.SessionExpiredType;
import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId;
@@ -215,7 +217,6 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
btnBackground.setEnabled(false);
btnAbort.setEnabled(false);
fireRequestPutInBackground();
- close();
}
public boolean isAbortBtnEnabled() {
@@ -369,6 +370,10 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
public void monitorPutInBackground() {
fireOperationPutInBackground();
close();
+ Log.debug("Request Background");
+ BackgroundRequestEvent e = new BackgroundRequestEvent(
+ BackgroundRequestType.BACKGROUND);
+ eventBus.fireEvent(e);
}
@@ -396,8 +401,11 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
protected void fireOperationPutInBackground() {
for (MonitorDialogListener listener : listeners)
listener.operationPutInBackground();
+
}
-
+
+
+ //UI event Fire
protected void fireRequestAborted() {
for (MonitorDialogEventUIListener listener : monitorDialogEventUIListeners) {
listener.requestAborted();
@@ -408,6 +416,8 @@ public class MonitorDialog extends Window implements MonitorUpdaterListener {
for (MonitorDialogEventUIListener listener : monitorDialogEventUIListeners) {
listener.requestPutInBackground();
}
+
+
}
/**
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorUpdater.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorUpdater.java
index c9a0fba..d75e510 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorUpdater.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/MonitorUpdater.java
@@ -238,7 +238,7 @@ public class MonitorUpdater extends Timer implements MonitorDialogEventUIListene
@Override
public void requestPutInBackground() {
- // TODO Auto-generated method stub
+ operationMonitorSession.setInBackground(true);
}
}
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundEventUIListener.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundEventUIListener.java
index 815c3e2..f025dcf 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundEventUIListener.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundEventUIListener.java
@@ -8,6 +8,13 @@ public interface MonitorBackgroundEventUIListener {
public void requestAborted(String taskId);
+ /**
+ * Called when the task is hidden
+ *
+ */
+ public void requestHidden(String taskId);
+
+
/**
* Called when the task is resumed
*
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoDialog.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoDialog.java
index 962e38e..45dea51 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoDialog.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoDialog.java
@@ -19,7 +19,7 @@ import com.sencha.gxt.widget.core.client.event.SelectEvent.SelectHandler;
public class MonitorBackgroundInfoDialog extends Window {
private static final String WIDTH = "640px";
- private static final String HEIGHT = "378px";
+ private static final String HEIGHT = "408px";
protected EventBus eventBus;
protected MonitorBackgroundInfoPanel monitorBackgroundInfoPanel;
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoPanel.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoPanel.java
index b50dc83..730a7d8 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoPanel.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundInfoPanel.java
@@ -29,8 +29,12 @@ import com.sencha.gxt.data.shared.ModelKeyProvider;
import com.sencha.gxt.data.shared.TreeStore;
import com.sencha.gxt.widget.core.client.FramedPanel;
import com.sencha.gxt.widget.core.client.button.TextButton;
+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.CollapseItemEvent;
import com.sencha.gxt.widget.core.client.event.CollapseItemEvent.CollapseItemHandler;
@@ -51,8 +55,8 @@ import com.sencha.gxt.widget.core.client.treegrid.TreeGrid;
*/
public class MonitorBackgroundInfoPanel extends FramedPanel {
protected static final String WIDTH = "618px";
- protected static final String HEIGHT = "370px";
- protected static final String HEIGHTGRID ="300px";
+ protected static final String HEIGHT = "400px";
+ protected static final String HEIGHTGRID ="290px";
protected static final int CC1WIDTH = 168;
protected static final int CC2WIDTH = 100;
@@ -75,6 +79,7 @@ public class MonitorBackgroundInfoPanel extends FramedPanel {
protected EventBus eventBus;
protected MonitorBackgroundUpdater monitorBackgroundUpdater;
+ private TextButton btnClose;
class KeyProvider implements ModelKeyProvider {
@Override
@@ -336,9 +341,33 @@ public class MonitorBackgroundInfoPanel extends FramedPanel {
}
});
toolBar.add(btnCollapseAll);
+
+ //
+ btnClose = new TextButton("Close");
+ btnClose.setWidth("70px");
+ // btnAbort.setIcon(ResourceBundle.INSTANCE.abort());
+ // btnAbort.setIconAlign(IconAlign.RIGHT);
+ btnClose.setTitle("Close");
+ btnClose.addSelectHandler(new SelectHandler() {
+
+ public void onSelect(SelectEvent event) {
+ close();
+
+ }
+ });
+
+ HBoxLayoutContainer flowButton = new HBoxLayoutContainer();
+ flowButton.setHBoxLayoutAlign(HBoxLayoutAlign.MIDDLE);
+ flowButton.setPack(BoxLayoutPack.CENTER);
+
+ flowButton.add(btnClose, new BoxLayoutData(new Margins(0, 4, 0, 4)));
+
+ //
con.add(toolBar, new VerticalLayoutData(1, -1, new Margins(0)));
con.add(tree, new VerticalLayoutData(1, -1, new Margins(0)));
+ con.add(flowButton,
+ new VerticalLayoutData(1, 36, new Margins(5, 5, 5, 5)));
add(con, new MarginData(0));
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundPanel.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundPanel.java
index 9568589..f8e78d4 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundPanel.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundPanel.java
@@ -5,6 +5,7 @@ import java.util.List;
import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTSessionExpiredException;
import org.gcube.portlets.user.td.gwtservice.shared.monitor.OperationMonitor;
+import org.gcube.portlets.user.td.gwtservice.shared.task.State;
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;
@@ -58,11 +59,11 @@ import com.sencha.gxt.widget.core.client.treegrid.TreeGrid;
*/
public class MonitorBackgroundPanel extends FramedPanel implements
MonitorBackgroundUpdaterListener {
- protected static final int STATUS_POLLING_DELAY = 4000;
+ protected static final int STATUS_POLLING_DELAY = 5000;
protected static final String WIDTH = "298px";
protected static final String HEIGHT = "520px";
- protected static final int CC1WIDTH = 110;
- protected static final int CC2WIDTH = 70;
+ protected static final int CC1WIDTH = 100;
+ protected static final int CC2WIDTH = 60;
protected static final int CC3WIDTH = 100;
protected MonitorBackgroundDialog parent;
@@ -73,6 +74,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
protected Menu contextMenu;
protected MenuItem infoItem;
protected MenuItem abortItem;
+ protected MenuItem hiddenItem;
protected TRId trId;
protected VerticalLayoutContainer con;
@@ -123,7 +125,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
protected void create() {
con = new VerticalLayoutContainer();
- con.setScrollMode(ScrollMode.AUTO);
+ con.setScrollMode(ScrollMode.AUTO);
store = new TreeStore(new KeyProvider());
@@ -225,7 +227,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
}
};
progress.setProgressText("{0}% Complete");
- progress.setWidth(110);
+ progress.setWidth(100);
cc3.setCell(progress);
@@ -242,7 +244,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
tree.setColumnResize(true);
tree.getView().setAutoExpandColumn(cc1);
tree.getElement().setAttribute("height", "auto");
-
+
IconProvider iconProvider = new IconProvider() {
@Override
@@ -291,7 +293,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
add(con, new MarginData(0));
- // addMonitor();
+ addMonitor();
forceLayout();
@@ -301,10 +303,10 @@ public class MonitorBackgroundPanel extends FramedPanel implements
monitorBackgroundUpdater = new MonitorBackgroundUpdater();
monitorBackgroundUpdater.addListener(this);
- monitorBackgroundUpdater.scheduleRepeating(STATUS_POLLING_DELAY);
addMonitorBackgroundEventUIListener(monitorBackgroundUpdater);
-
+ monitorBackgroundUpdater.scheduleRepeating(STATUS_POLLING_DELAY);
+ monitorBackgroundUpdater.run();
}
public void addMonitorBackgroundEventUIListener(
@@ -321,10 +323,11 @@ public class MonitorBackgroundPanel extends FramedPanel implements
forceLayout();
}
- protected void close() {
+ public void close() {
if (parent != null) {
parent.close();
}
+ monitorBackgroundUpdater.cancel();
}
@@ -358,7 +361,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
infoItem = new MenuItem();
infoItem.setText("Info");
- infoItem.setIcon(ResourceBundle.INSTANCE.ok());
+ infoItem.setIcon(ResourceBundle.INSTANCE.information());
infoItem.addSelectionHandler(new SelectionHandler- () {
@Override
@@ -372,7 +375,7 @@ public class MonitorBackgroundPanel extends FramedPanel implements
abortItem = new MenuItem();
abortItem.setText("Abort");
- abortItem.setIcon(ResourceBundle.INSTANCE.basket());
+ abortItem.setIcon(ResourceBundle.INSTANCE.basketDelete());
abortItem.addSelectionHandler(new SelectionHandler
- () {
@Override
@@ -386,8 +389,26 @@ public class MonitorBackgroundPanel extends FramedPanel implements
});
+ hiddenItem = new MenuItem();
+ hiddenItem.setText("Hidden");
+ hiddenItem.setIcon(ResourceBundle.INSTANCE.basketRemove());
+ hiddenItem.addSelectionHandler(new SelectionHandler
- () {
+
+ @Override
+ public void onSelection(SelectionEvent
- event) {
+ MonitorBaseDto selected = tree.getSelectionModel()
+ .getSelectedItem();
+ Log.debug(selected.toString());
+ requestBacgroundHidden(selected);
+
+ }
+
+ });
+
contextMenu.add(infoItem);
contextMenu.add(abortItem);
+ contextMenu.add(hiddenItem);
+
tree.setContextMenu(contextMenu);
}
@@ -406,7 +427,27 @@ public class MonitorBackgroundPanel extends FramedPanel implements
}
protected void requestBacgroundAbort(MonitorBaseDto selected) {
+ for (OperationMonitor operationMonitor : operationMonitorList) {
+ if (operationMonitor.getTaskId().compareTo(selected.getId()) == 0) {
+ Log.debug("Found Task Id: " + operationMonitor.getTaskId());
+ if (operationMonitor.getTask().getState() == State.IN_PROGRESS
+ || operationMonitor.getTask().getState() == State.INITIALIZING
+ || operationMonitor.getTask().getState() == State.VALIDATING_RULES) {
+ fireRequestAborted(operationMonitor.getTaskId());
+ }
+ return;
+ }
+ }
+ }
+ protected void requestBacgroundHidden(MonitorBaseDto selected) {
+ for (OperationMonitor operationMonitor : operationMonitorList) {
+ if (operationMonitor.getTaskId().compareTo(selected.getId()) == 0) {
+ Log.debug("Found Task Id: " + operationMonitor.getTaskId());
+ fireRequestHidden(operationMonitor.getTaskId());
+ return;
+ }
+ }
}
@Override
@@ -435,4 +476,26 @@ public class MonitorBackgroundPanel extends FramedPanel implements
}
+ // UI event Fire
+ protected void fireRequestAborted(String taskId) {
+ for (MonitorBackgroundEventUIListener listener : monitorBackgroundEventUIListeners) {
+ listener.requestAborted(taskId);
+
+ }
+ }
+
+ protected void fireRequestHidden(String taskId) {
+ for (MonitorBackgroundEventUIListener listener : monitorBackgroundEventUIListeners) {
+ listener.requestHidden(taskId);
+
+ }
+ }
+
+ protected void fireRequestResume(String taskId) {
+ for (MonitorBackgroundEventUIListener listener : monitorBackgroundEventUIListeners) {
+ listener.requestResume(taskId);
+
+ }
+ }
+
}
\ No newline at end of file
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundUpdater.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundUpdater.java
index 2cba223..ec85298 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundUpdater.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundUpdater.java
@@ -100,7 +100,16 @@ public class MonitorBackgroundUpdater extends Timer implements MonitorBackground
backgroundOperationMonitorSession.addToOperationMonitorSessionList(operationMonitorSession);
}
+ @Override
+ public void requestHidden(String taskId) {
+ OperationMonitorSession operationMonitorSession=new OperationMonitorSession(taskId);
+ operationMonitorSession.setHidden(true);
+ backgroundOperationMonitorSession.addToOperationMonitorSessionList(operationMonitorSession);
+ }
+
+
+
@Override
public void requestResume(String taskId) {
// TODO Auto-generated method stub
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/ResourceBundle.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/ResourceBundle.java
index 866179a..adbeb8d 100644
--- a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/ResourceBundle.java
+++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/ResourceBundle.java
@@ -53,5 +53,23 @@ public interface ResourceBundle extends ClientBundle {
@Source("magnifier-zoom-out.png")
ImageResource magnifierZoomOut();
+
+ @Source("basket-delete.png")
+ ImageResource basketDelete();
+ @Source("basket-delete_32.png")
+ ImageResource basketDelete32();
+
+ @Source("basket-remove.png")
+ ImageResource basketRemove();
+
+ @Source("basket-remove_32.png")
+ ImageResource basketRemove32();
+
+ @Source("information.png")
+ ImageResource information();
+
+ @Source("information_32.png")
+ ImageResource information32();
+
}
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-delete.png b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-delete.png
new file mode 100644
index 0000000..dac5ddf
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-delete.png differ
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-delete_32.png b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-delete_32.png
new file mode 100644
index 0000000..d17d6e1
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-delete_32.png differ
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-remove.png b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-remove.png
new file mode 100644
index 0000000..5b8288d
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-remove.png differ
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-remove_32.png b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-remove_32.png
new file mode 100644
index 0000000..ba87ab0
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/basket-remove_32.png differ
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/information.png b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/information.png
new file mode 100644
index 0000000..fd2adea
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/information.png differ
diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/information_32.png b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/information_32.png
new file mode 100644
index 0000000..95e0dd3
Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/resources/information_32.png differ
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 57a7c5f..0638c5e 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,10 +23,10 @@
-
+
-
+