From 7662a2dd1be774e18b77dffabba0dea716341006 Mon Sep 17 00:00:00 2001 From: Giancarlo Panichi Date: Fri, 5 Sep 2014 11:03:47 +0000 Subject: [PATCH] Minor Update git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-monitor-widget@99539 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../background/MonitorBackgroundDialog.java | 96 +++++++++++++++++++ .../client/details/MonitorDetailPanel.java | 2 +- .../tree/MonitorTreeDataGenerator.java | 63 ++++++++++-- 3 files changed, 151 insertions(+), 10 deletions(-) create mode 100644 src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundDialog.java diff --git a/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundDialog.java b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundDialog.java new file mode 100644 index 0000000..90384c1 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/monitorwidget/client/background/MonitorBackgroundDialog.java @@ -0,0 +1,96 @@ +package org.gcube.portlets.user.td.monitorwidget.client.background; + +import org.gcube.portlets.user.td.monitorwidget.client.details.MonitorDetailPanel; +import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId; + +import com.google.web.bindery.event.shared.EventBus; +import com.sencha.gxt.widget.core.client.Window; + +/** + * Background Operations Monitor + * + * @author "Giancarlo Panichi" g.panichi@isti.cnr.it + * + */ +public class MonitorBackgroundDialog extends Window { + + private static final String WIDTH = "640px"; + private static final String HEIGHT = "378px"; + 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 TRId trId; + + + + + private MonitorDetailPanel monitorDetailPanel; + + public MonitorBackgroundDialog(String taskId, EventBus eventBus) { + this.eventBus = eventBus; + this.taskId=taskId; + trId = null; + initWindow(); + create(); + + + } + + protected void initWindow(){ + setWidth(WIDTH); + setHeight(HEIGHT); + setBodyBorder(false); + setResizable(true); + setModal(true); + setClosable(true); + setHeadingText("Background Operations Monitor"); + } + + protected void create(){ + + } + + /** + * {@inheritDoc} + */ + @Override + protected void initTools() { + /*if (backgroundBtnEnabled) { + backgroundBtn = new ToolButton(ToolButton.CLOSE); + backgroundBtn.setToolTip("Put in the background"); + backgroundBtn.addSelectHandler(new SelectHandler() { + + @Override + public void onSelect(SelectEvent event) { + hide(); + } + }); + + header.addTool(backgroundBtn); + }*/ + + super.initTools(); + + closeBtn.setVisible(false); + /* + closeBtn.addSelectHandler(new SelectHandler() { + + public void onSelect(SelectEvent event) { + close(); + } + });*/ + + } + + protected void close() { + hide(); + + } + + +} 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 52c1d29..3f80872 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 @@ -364,7 +364,7 @@ public class MonitorDetailPanel extends FramedPanel { private void addChildrensToStore() { gen = new MonitorTreeDataGenerator(operationMonitor); - MonitorFolderDto root = gen.getRoot(); + MonitorFolderDto root = gen.getRootNoTask(); for (MonitorBaseDto base : root.getChildrens()) { store.add(base); if (base instanceof MonitorFolderDto) { 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 1f266be..4f9c1de 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 @@ -21,11 +21,16 @@ public class MonitorTreeDataGenerator { .getFormat("yyyy-MM-dd HH:mm:ss"); protected MonitorFolderDto root; + protected OperationMonitor operationMonitor; public MonitorTreeDataGenerator(OperationMonitor operationMonitor) { Log.debug("MonitorTreeDataGenerator"); + this.operationMonitor = operationMonitor; + } + + public MonitorFolderDto getRoot() { ArrayList childrens = new ArrayList(); - if (operationMonitor!=null && operationMonitor.getTask() != null) { + if (operationMonitor != null && operationMonitor.getTask() != null) { TaskS task = operationMonitor.getTask(); ArrayList jobs = new ArrayList(); for (JobS job : task.getJobs()) { @@ -42,35 +47,75 @@ public class MonitorTreeDataGenerator { } MonitorFolderDto foldJob = new MonitorFolderDto("job", task.getId() + "-" + job.getId(), job.getDescription(), - job.getWorkerState().toString(), job.getHumaReadableStatus(),job.getProgress(), + job.getWorkerState().toString(), + job.getHumaReadableStatus(), job.getProgress(), validations); jobs.add(foldJob); } MonitorFolderDto foldTask = new MonitorFolderDto("task", - task.getId(), task.getId()+" [Date:"+sdf.format(task.getStartTime())+"]", task - .getState().toString(), "",task.getProgress(), jobs); + task.getId(), task.getId() + " [Date:" + + sdf.format(task.getStartTime()) + "]", task + .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); + // printRecorsive(root); } else { root = new MonitorFolderDto("root", "-1", "root", "root", "", 0, childrens); Log.debug("Generated root without childrens"); } - } - public MonitorFolderDto getRoot() { return root; } + + public MonitorFolderDto getRootNoTask(){ + ArrayList jobs = new ArrayList(); + if (operationMonitor != null && operationMonitor.getTask() != null) { + TaskS task = operationMonitor.getTask(); + for (JobS job : task.getJobs()) { + ArrayList validations = new ArrayList(); + for (ValidationsJobS v : job.getValidationsJobS()) { + MonitorValidationJobSDto validationDto = new MonitorValidationJobSDto( + task.getId() + "-" + job.getId() + "-" + v.getId(), + v.getWorkerState(), v.getProgress(), + v.getDescription(), v.getErrorMessage(), + v.getHumanReadableStatus(), job.getInvocation()); + + validations.add(validationDto); + } + MonitorFolderDto foldJob = new MonitorFolderDto("job", + task.getId() + "-" + job.getId(), job.getDescription(), + job.getWorkerState().toString(), + job.getHumaReadableStatus(), job.getProgress(), + validations); + jobs.add(foldJob); + } + + root = new MonitorFolderDto("root", "-1", "root", "root", "", 0, + jobs); + Log.debug("Generated root"); + // printRecorsive(root); + + } else { + root = new MonitorFolderDto("root", "-1", "root", "root", "", 0, + jobs); + Log.debug("Generated root without childrens"); + } + + return root; + } + protected void printRecorsive(MonitorFolderDto root) { for (MonitorBaseDto base : root.getChildrens()) { Log.debug("+++"); - Log.debug("Children:[id=" +base.getId() +", toString="+base.toString()+"]"); + Log.debug("Children:[id=" + base.getId() + ", toString=" + + base.toString() + "]"); if (base instanceof MonitorFolderDto) { printRecorsive((MonitorFolderDto) base); }