diff --git a/pom.xml b/pom.xml index b267d40..52e2121 100644 --- a/pom.xml +++ b/pom.xml @@ -471,7 +471,7 @@ org.gcube.distribution maven-portal-bom - LATEST + 2.6.0-SNAPSHOT pom import diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/DataMinerManagerController.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/DataMinerManagerController.java index 817b286..fc50e77 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/DataMinerManagerController.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/DataMinerManagerController.java @@ -252,7 +252,7 @@ public class DataMinerManagerController { UtilsGXT3.alert("Error", "Failed to start computation " + event.getOp().getName() - + ", the computation id is null"); + + ", the computation id is null!"); else { startComputation(computationId, event.getComputationStatusPanelIndex()); @@ -263,9 +263,8 @@ public class DataMinerManagerController { public void onFailure(Throwable caught) { UtilsGXT3.alert("Error", "Failed to start computation " - + event.getOp().getName() - + "
Cause:" + caught.getCause() - + "
Message:" + caught.getMessage()); + + event.getOp().getName() + "! " + + caught.getLocalizedMessage()); caught.printStackTrace(); } }); diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBar.css b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBar.css deleted file mode 100644 index 05773c0..0000000 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBar.css +++ /dev/null @@ -1,47 +0,0 @@ -/** -* -*/ - -.progressWrap { - border:1px solid; - overflow:hidden; - border-color:#65cf6d; -} - -.progressInner { - height:18px; - background:repeat-x; - position:relative; -} - -.progressBar { - height:18px; - width:0; - border-top:1px solid; - border-bottom:1px solid; - border-right:1px solid; -} - -.progressText { - padding:1px 5px; - overflow:hidden; - position:absolute; - left:0; - text-align:center; - font-size:11px; - font-weight:bold; -} - -.progressBar .progressText { - z-index: 99; -} - -.progressTextBack { - z-index: 9 !important; -} - -@if user.agent ie6 ie8 ie9 { - .progressTextBack { - line-height:15px; - } -} diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBarAppaearance.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBarAppaearance.java deleted file mode 100644 index 47c80b0..0000000 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBarAppaearance.java +++ /dev/null @@ -1,41 +0,0 @@ -package org.gcube.portlets.user.dataminermanager.client.custom; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.resources.client.ClientBundle; -import com.google.gwt.resources.client.ImageResource; -import com.google.gwt.resources.client.ImageResource.ImageOptions; -import com.google.gwt.resources.client.ImageResource.RepeatStyle; -import com.sencha.gxt.theme.base.client.progress.ProgressBarDefaultAppearance; - -/** - * - * @author Giancarlo Panichi email: g.panichi@isti.cnr.it - * - */ -public class GreenProgressBarAppaearance extends ProgressBarDefaultAppearance { - - public interface GreenProgressBarResources extends ProgressBarResources, - ClientBundle { - - @Source({ "GreenProgressBar.css" }) - @Override - ProgressBarStyle style(); - - @Source("green-progress-bg.gif") - @Override - @ImageOptions(repeatStyle = RepeatStyle.Horizontal) - ImageResource bar(); - - @Source("green-bg.gif") - @ImageOptions(repeatStyle = RepeatStyle.Horizontal) - ImageResource innerBar(); - } - - public GreenProgressBarAppaearance() { - super( - GWT. create(GreenProgressBarResources.class), - GWT. create(ProgressBarTemplate.class)); - } - -} diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBar.css b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBar.css deleted file mode 100644 index 164ef00..0000000 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBar.css +++ /dev/null @@ -1,47 +0,0 @@ -/** -* -*/ - -.progressWrap { - border:1px solid; - overflow:hidden; - border-color:#cf6572; -} - -.progressInner { - height:18px; - background:repeat-x; - position:relative; -} - -.progressBar { - height:18px; - width:0; - border-top:1px solid; - border-bottom:1px solid; - border-right:1px solid; -} - -.progressText { - padding:1px 5px; - overflow:hidden; - position:absolute; - left:0; - text-align:center; - font-size:11px; - font-weight:bold; -} - -.progressBar .progressText { - z-index: 99; -} - -.progressTextBack { - z-index: 9 !important; -} - -@if user.agent ie6 ie8 ie9 { - .progressTextBack { - line-height:15px; - } -} diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBarAppaearance.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBarAppaearance.java deleted file mode 100644 index dd87fea..0000000 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBarAppaearance.java +++ /dev/null @@ -1,44 +0,0 @@ -package org.gcube.portlets.user.dataminermanager.client.custom; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.resources.client.ClientBundle; -import com.google.gwt.resources.client.ImageResource; -import com.google.gwt.resources.client.ImageResource.ImageOptions; -import com.google.gwt.resources.client.ImageResource.RepeatStyle; -import com.sencha.gxt.theme.base.client.progress.ProgressBarDefaultAppearance; - -/** - * - * @author Giancarlo Panichi email: g.panichi@isti.cnr.it - * - */ -public class RedProgressBarAppaearance extends ProgressBarDefaultAppearance { - - public interface RedProgressBarResources extends ProgressBarResources, - ClientBundle { - - @Source({"RedProgressBar.css" }) - @Override - ProgressBarStyle style(); - - @Source("red-progress-bg.gif") - @Override - @ImageOptions(repeatStyle = RepeatStyle.Horizontal) - ImageResource bar(); - - @Source("red-bg.gif") - @ImageOptions(repeatStyle = RepeatStyle.Horizontal) - ImageResource innerBar(); - } - - public RedProgressBarAppaearance() { - super( - GWT. create(RedProgressBarResources.class), - GWT. create(ProgressBarTemplate.class)); - - } - - - -} diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.css b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.css new file mode 100644 index 0000000..5934b15 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.css @@ -0,0 +1,40 @@ +/** +* +*/ +.progressWrapGreen { + border: 1px solid #65cf81; +} + +@sprite .progressInnerGreen { + background-color: #e0f3e5; + gwt-image: 'innerBarGreen'; + height: auto; +} + +@sprite .progressBarGreen { + background-color: #9ceeb0; + gwt-image: 'barGreen'; + background-repeat: repeat-x; + background-position: left center; + height: 18px; + border-top-color: #d1fdd9; + border-bottom-color: #7fe498; + border-right-color: #7fe498; +} + +.progressTextGreen { + color: #fff; + text-align: center; + font-size: 11px; + font-weight: bold; + font-family: sans-serif; + padding: 1px 5px; + overflow: hidden; + position: absolute; + z-index: 99; +} + +.progressTextBackGreen { + color: #399544 !important; + z-index: 9 !important; +} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.html b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.html new file mode 100644 index 0000000..84e6165 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.html @@ -0,0 +1,12 @@ +
+
+
+
+
{text}
+
+
+
{text}
+
+
+
+
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBar.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.java similarity index 70% rename from src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBar.java rename to src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.java index 6f1e250..124b89a 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/GreenProgressBar.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBar.java @@ -1,4 +1,4 @@ -package org.gcube.portlets.user.dataminermanager.client.custom; +package org.gcube.portlets.user.dataminermanager.client.custom.progress; import com.sencha.gxt.cell.core.client.ProgressBarCell; import com.sencha.gxt.widget.core.client.ProgressBar; @@ -12,7 +12,7 @@ import com.sencha.gxt.widget.core.client.ProgressBar; public class GreenProgressBar extends ProgressBar { public GreenProgressBar() { - super(new ProgressBarCell(new GreenProgressBarAppaearance())); + super(new ProgressBarCell(new GreenProgressBarAppearance())); } } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBarAppearance.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBarAppearance.java new file mode 100644 index 0000000..c9552ae --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/GreenProgressBarAppearance.java @@ -0,0 +1,132 @@ +package org.gcube.portlets.user.dataminermanager.client.custom.progress; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; +import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.resources.client.ImageResource.ImageOptions; +import com.google.gwt.resources.client.ImageResource.RepeatStyle; +import com.google.gwt.safecss.shared.SafeStyles; +import com.google.gwt.safecss.shared.SafeStylesUtils; +import com.google.gwt.safehtml.shared.SafeHtml; +import com.google.gwt.safehtml.shared.SafeHtmlBuilder; +import com.google.gwt.safehtml.shared.SafeHtmlUtils; +import com.sencha.gxt.cell.core.client.ProgressBarCell.ProgressBarAppearance; +import com.sencha.gxt.cell.core.client.ProgressBarCell.ProgressBarAppearanceOptions; +import com.sencha.gxt.core.client.GXT; +import com.sencha.gxt.core.client.XTemplates; +import com.sencha.gxt.core.client.util.Format; + +/** + * + * @author Giancarlo Panichi email: g.panichi@isti.cnr.it + * + */ +public class GreenProgressBarAppearance implements ProgressBarAppearance { + + public interface GreenProgressBarResources { + + ImageResource barGreen(); + + ImageResource innerBarGreen(); + + GreenProgressBarStyle style(); + + } + + public interface GreenProgressBarStyle extends CssResource { + + String progressBarGreen(); + + String progressInnerGreen(); + + String progressTextGreen(); + + String progressTextBackGreen(); + + String progressWrapGreen(); + + } + + public interface GreenProgressBarTemplate extends XTemplates { + + @XTemplate(source = "GreenProgressBar.html") + SafeHtml render(SafeHtml text, GreenProgressBarStyle style, + SafeStyles wrapStyles, SafeStyles progressBarStyles, + SafeStyles progressTextStyles, SafeStyles widthStyles); + + } + + public interface GreenProgressBarDefaultResources extends + GreenProgressBarResources, ClientBundle { + + @Source({ "GreenProgressBar.css" }) + @Override + GreenProgressBarStyle style(); + + @Source("green-progress-bg.gif") + @ImageOptions(repeatStyle = RepeatStyle.Horizontal) + @Override + ImageResource barGreen(); + + @Source("green-bg.gif") + @ImageOptions(repeatStyle = RepeatStyle.Horizontal) + @Override + ImageResource innerBarGreen(); + } + + private final GreenProgressBarStyle style; + private GreenProgressBarTemplate template; + + + public GreenProgressBarAppearance() { + this( + GWT. create(GreenProgressBarDefaultResources.class), + GWT. create(GreenProgressBarTemplate.class)); + } + + public GreenProgressBarAppearance(GreenProgressBarResources resources, + GreenProgressBarTemplate template) { + this.style = resources.style(); + this.style.ensureInjected(); + this.template = template; + } + + @Override + public void render(SafeHtmlBuilder sb, Double value, + ProgressBarAppearanceOptions options) { + value = value == null ? 0 : value; + double valueWidth = value * options.getWidth(); + + int vw = new Double(valueWidth).intValue(); + + String text = options.getProgressText(); + + if (text != null) { + int v = (int) Math.round(value * 100); + text = Format.substitute(text, v); + } + + SafeHtml txt; + if (text == null) { + txt = SafeHtmlUtils.fromSafeConstant(" "); + } else { + txt = SafeHtmlUtils.fromString(text); + } + + int adj = GXT.isIE() ? 4 : 2; + + SafeStyles wrapStyles = SafeStylesUtils.fromTrustedString("width:" + + (options.getWidth() - adj) + "px;"); + SafeStyles progressBarStyles = SafeStylesUtils + .fromTrustedString("width:" + vw + "px;"); + SafeStyles progressTextStyles = SafeStylesUtils + .fromTrustedString("width:" + Math.max(vw - 8, 0) + "px;"); + SafeStyles widthStyles = SafeStylesUtils.fromTrustedString("width:" + + (Math.max(0, options.getWidth() - adj)) + "px;"); + sb.append(template.render(txt, style, wrapStyles, progressBarStyles, + progressTextStyles, widthStyles)); + } + +} diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.css b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.css new file mode 100644 index 0000000..fd36b70 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.css @@ -0,0 +1,40 @@ +/** +* +*/ +.progressWrapRed { + border: 1px solid #cf656f; +} + +@sprite .progressInnerRed { + background-color: #f3e0e2; + gwt-image: 'innerBarRed'; + height: auto; +} + +@sprite .progressBarRed { + background-color: #ee9ca4; + gwt-image: 'barRed'; + background-repeat: repeat-x; + background-position: left center; + height: 18px; + border-top-color: #fdd1d5; + border-bottom-color: #e47f88; + border-right-color: #e47f88; +} + +.progressTextRed { + color: #fff; + text-align: center; + font-size: 11px; + font-weight: bold; + font-family: sans-serif; + padding: 1px 5px; + overflow: hidden; + position: absolute; + z-index: 99; +} + +.progressTextBackRed { + color: #953941 !important; + z-index: 9 !important; +} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.html b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.html new file mode 100644 index 0000000..918b724 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.html @@ -0,0 +1,12 @@ +
+
+
+
+
{text}
+
+
+
{text}
+
+
+
+
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBar.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.java similarity index 70% rename from src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBar.java rename to src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.java index d4c7d50..9de57a6 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/RedProgressBar.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBar.java @@ -1,4 +1,4 @@ -package org.gcube.portlets.user.dataminermanager.client.custom; +package org.gcube.portlets.user.dataminermanager.client.custom.progress; import com.sencha.gxt.cell.core.client.ProgressBarCell; import com.sencha.gxt.widget.core.client.ProgressBar; @@ -12,7 +12,7 @@ import com.sencha.gxt.widget.core.client.ProgressBar; public class RedProgressBar extends ProgressBar { public RedProgressBar() { - super(new ProgressBarCell(new RedProgressBarAppaearance())); + super(new ProgressBarCell(new RedProgressBarAppearance())); } } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBarAppearance.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBarAppearance.java new file mode 100644 index 0000000..44795fb --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/RedProgressBarAppearance.java @@ -0,0 +1,132 @@ +package org.gcube.portlets.user.dataminermanager.client.custom.progress; + +import com.google.gwt.core.client.GWT; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; +import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.resources.client.ImageResource.ImageOptions; +import com.google.gwt.resources.client.ImageResource.RepeatStyle; +import com.google.gwt.safecss.shared.SafeStyles; +import com.google.gwt.safecss.shared.SafeStylesUtils; +import com.google.gwt.safehtml.shared.SafeHtml; +import com.google.gwt.safehtml.shared.SafeHtmlBuilder; +import com.google.gwt.safehtml.shared.SafeHtmlUtils; +import com.sencha.gxt.cell.core.client.ProgressBarCell.ProgressBarAppearance; +import com.sencha.gxt.cell.core.client.ProgressBarCell.ProgressBarAppearanceOptions; +import com.sencha.gxt.core.client.GXT; +import com.sencha.gxt.core.client.XTemplates; +import com.sencha.gxt.core.client.util.Format; + +/** + * + * @author Giancarlo Panichi email: g.panichi@isti.cnr.it + * + */ +public class RedProgressBarAppearance implements ProgressBarAppearance { + + public interface RedProgressBarResources { + + ImageResource barRed(); + + ImageResource innerBarRed(); + + RedProgressBarStyle style(); + + } + + public interface RedProgressBarStyle extends CssResource { + + String progressBarRed(); + + String progressInnerRed(); + + String progressTextRed(); + + String progressTextBackRed(); + + String progressWrapRed(); + + } + + public interface RedProgressBarTemplate extends XTemplates { + + @XTemplate(source = "RedProgressBar.html") + SafeHtml render(SafeHtml text, RedProgressBarStyle style, + SafeStyles wrapStyles, SafeStyles progressBarStyles, + SafeStyles progressTextStyles, SafeStyles widthStyles); + + } + + public interface RedProgressBarDefaultResources extends + RedProgressBarResources, ClientBundle { + + @Source({ "RedProgressBar.css" }) + @Override + RedProgressBarStyle style(); + + @Source("red-progress-bg.gif") + @ImageOptions(repeatStyle = RepeatStyle.Horizontal) + @Override + ImageResource barRed(); + + @Source("red-bg.gif") + @ImageOptions(repeatStyle = RepeatStyle.Horizontal) + @Override + ImageResource innerBarRed(); + } + + private final RedProgressBarStyle style; + private RedProgressBarTemplate template; + + + public RedProgressBarAppearance() { + this( + GWT. create(RedProgressBarDefaultResources.class), + GWT. create(RedProgressBarTemplate.class)); + } + + public RedProgressBarAppearance(RedProgressBarResources resources, + RedProgressBarTemplate template) { + this.style = resources.style(); + this.style.ensureInjected(); + this.template = template; + } + + @Override + public void render(SafeHtmlBuilder sb, Double value, + ProgressBarAppearanceOptions options) { + value = value == null ? 0 : value; + double valueWidth = value * options.getWidth(); + + int vw = new Double(valueWidth).intValue(); + + String text = options.getProgressText(); + + if (text != null) { + int v = (int) Math.round(value * 100); + text = Format.substitute(text, v); + } + + SafeHtml txt; + if (text == null) { + txt = SafeHtmlUtils.fromSafeConstant(" "); + } else { + txt = SafeHtmlUtils.fromString(text); + } + + int adj = GXT.isIE() ? 4 : 2; + + SafeStyles wrapStyles = SafeStylesUtils.fromTrustedString("width:" + + (options.getWidth() - adj) + "px;"); + SafeStyles progressBarStyles = SafeStylesUtils + .fromTrustedString("width:" + vw + "px;"); + SafeStyles progressTextStyles = SafeStylesUtils + .fromTrustedString("width:" + Math.max(vw - 8, 0) + "px;"); + SafeStyles widthStyles = SafeStylesUtils.fromTrustedString("width:" + + (Math.max(0, options.getWidth() - adj)) + "px;"); + sb.append(template.render(txt, style, wrapStyles, progressBarStyles, + progressTextStyles, widthStyles)); + } + +} diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/green-bg.gif b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/green-bg.gif similarity index 100% rename from src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/green-bg.gif rename to src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/green-bg.gif diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/green-progress-bg.gif b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/green-progress-bg.gif similarity index 100% rename from src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/green-progress-bg.gif rename to src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/green-progress-bg.gif diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/red-bg.gif b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/red-bg.gif similarity index 100% rename from src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/red-bg.gif rename to src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/red-bg.gif diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/red-progress-bg.gif b/src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/red-progress-bg.gif similarity index 100% rename from src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/red-progress-bg.gif rename to src/main/java/org/gcube/portlets/user/dataminermanager/client/custom/progress/red-progress-bg.gif diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationOutputPanel.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationOutputPanel.java index 09fea7e..6b16aa2 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationOutputPanel.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationOutputPanel.java @@ -56,12 +56,11 @@ public class ComputationOutputPanel extends SimpleContainer { v = new VerticalLayoutContainer(); add(v); - // request for a jobItem linked with the computationId (or jobId) + // request resource by ComputationId DataMinerPortletServiceAsync.INSTANCE.getResourceByComputationId(computationId, new AsyncCallback() { @Override public void onSuccess(Resource result) { - // unmask(); showOutputInfo(result); } @@ -76,12 +75,11 @@ public class ComputationOutputPanel extends SimpleContainer { } }); - - // this.mask("Loading Result Info..."); } /** - * @param jobOutput + * + * @param resource */ private void showOutputInfo(Resource resource) { try { diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationParametersPanel.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationParametersPanel.java index e13b966..47a4a56 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationParametersPanel.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationParametersPanel.java @@ -260,7 +260,7 @@ public class ComputationParametersPanel extends SimpleContainer { "Column parameter \"" + p.getName() + " refers to a tabular parameter that doesn't exists (" - + tabParamName + ")\"", null); + + tabParamName + ")\""); } } } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationStatusPanel.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationStatusPanel.java index b96ca6d..df9816d 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationStatusPanel.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/experiments/ComputationStatusPanel.java @@ -9,8 +9,8 @@ import org.gcube.portlets.user.dataminermanager.client.bean.ComputationStatus; import org.gcube.portlets.user.dataminermanager.client.bean.ComputationStatus.Status; import org.gcube.portlets.user.dataminermanager.client.bean.Operator; import org.gcube.portlets.user.dataminermanager.client.common.EventBusProvider; -import org.gcube.portlets.user.dataminermanager.client.custom.GreenProgressBar; -import org.gcube.portlets.user.dataminermanager.client.custom.RedProgressBar; +import org.gcube.portlets.user.dataminermanager.client.custom.progress.GreenProgressBar; +import org.gcube.portlets.user.dataminermanager.client.custom.progress.RedProgressBar; import org.gcube.portlets.user.dataminermanager.client.events.CancelComputationExecutionRequestEvent; import org.gcube.portlets.user.dataminermanager.client.rpc.DataMinerPortletServiceAsync; import org.gcube.portlets.user.dataminermanager.client.util.UtilsGXT3; @@ -135,7 +135,6 @@ public class ComputationStatusPanel extends SimpleContainer { //TODO progressBar =new GreenProgressBar(); progressBar.updateProgress(1, "Computation Complete"); - progressBar.addStyleName("progressBar-complete"); vert.insert(progressBar, index, new VerticalLayoutData(1, -1, new Margins(20))); showOutput(); @@ -156,7 +155,6 @@ public class ComputationStatusPanel extends SimpleContainer { progressBar =new RedProgressBar(); progressBar.updateProgress(1, "Computation Fail"); progressBar.getElement().getStyle().setMarginBottom(36, Unit.PX); - progressBar.addStyleName("progressBar-failed"); vert.insert(progressBar, index, new VerticalLayoutData(1, -1, new Margins(20))); } @@ -207,7 +205,6 @@ public class ComputationStatusPanel extends SimpleContainer { progressBar =new RedProgressBar(); progressBar.updateProgress(1, "Failed to get the status"); progressBar.getElement().getStyle().setMarginBottom(36, Unit.PX); - progressBar.addStyleName("progressBar-failed"); vert.insert(progressBar, index, new VerticalLayoutData(1, -1, new Margins(20))); } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletService.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletService.java index ff434b5..1d4f4d0 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletService.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletService.java @@ -1,13 +1,10 @@ package org.gcube.portlets.user.dataminermanager.client.rpc; import java.util.List; -import java.util.Map; import org.gcube.portlets.user.dataminermanager.client.bean.ComputationStatus; import org.gcube.portlets.user.dataminermanager.client.bean.Operator; import org.gcube.portlets.user.dataminermanager.client.bean.OperatorsClassification; -import org.gcube.portlets.user.dataminermanager.client.bean.output.ImagesResource; -import org.gcube.portlets.user.dataminermanager.client.bean.output.MapResource; import org.gcube.portlets.user.dataminermanager.client.bean.output.Resource; import org.gcube.portlets.user.dataminermanager.client.bean.parameters.Parameter; import org.gcube.portlets.user.dataminermanager.shared.data.ComputationId; @@ -27,44 +24,17 @@ import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; @RemoteServiceRelativePath("dataminerman") public interface DataMinerPortletService extends RemoteService { - /* - // get tables info belongs to a given templates set (for relative user) - public List getTableItems(List templates) - throws Exception; - */ - public List getFileItems(List templates) - throws Exception; - - public Resource getResourceByComputationId(ComputationId computationId); - - public Map getParametersMapByComputationId(ComputationId computationId) throws ServiceException; - - - public Map getMapFromMapResource(MapResource mapResource) - throws Exception; - - // Map getImagesInfoFromImagesResource(ImagesResource - // imgsRes) throws Exception; - - public String saveImage(ComputationId computationId, ImagesResource imageResource) - throws Exception; - - - /** - * Dataminer - * - */ public UserInfo hello() throws ServiceException; public List getOperatorsClassifications() - throws Exception; + throws ServiceException; - public List getParameters(Operator operator) throws Exception; + public List getParameters(Operator operator) throws ServiceException; - public ComputationId startComputation(Operator op) throws Exception; + public ComputationId startComputation(Operator op) throws ServiceException; public ComputationStatus getComputationStatus(ComputationId computationId) - throws Exception; + throws ServiceException; public ComputationId resubmit(ComputationId computationId) throws ServiceException; @@ -83,4 +53,6 @@ public interface DataMinerPortletService extends RemoteService { public void deleteItem(ItemDescription itemDescription) throws ServiceException; + public Resource getResourceByComputationId(ComputationId computationId) throws ServiceException; + } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletServiceAsync.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletServiceAsync.java index 2309496..f33cf57 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletServiceAsync.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/rpc/DataMinerPortletServiceAsync.java @@ -1,13 +1,10 @@ package org.gcube.portlets.user.dataminermanager.client.rpc; import java.util.List; -import java.util.Map; import org.gcube.portlets.user.dataminermanager.client.bean.ComputationStatus; import org.gcube.portlets.user.dataminermanager.client.bean.Operator; import org.gcube.portlets.user.dataminermanager.client.bean.OperatorsClassification; -import org.gcube.portlets.user.dataminermanager.client.bean.output.ImagesResource; -import org.gcube.portlets.user.dataminermanager.client.bean.output.MapResource; import org.gcube.portlets.user.dataminermanager.client.bean.output.Resource; import org.gcube.portlets.user.dataminermanager.client.bean.parameters.Parameter; import org.gcube.portlets.user.dataminermanager.shared.data.ComputationId; @@ -22,59 +19,34 @@ import com.google.gwt.user.client.rpc.AsyncCallback; /** * - * @author Giancarlo Panichi - * email: g.panichi@isti.cnr.it + * @author Giancarlo Panichi email: g.panichi@isti.cnr.it * */ public interface DataMinerPortletServiceAsync { - + public static DataMinerPortletServiceAsync INSTANCE = (DataMinerPortletServiceAsync) GWT .create(DataMinerPortletService.class); - /* - void getTableItems(List templates, - AsyncCallback> callback); - */ - void getFileItems(List templates, - AsyncCallback> callback); - - - void getResourceByComputationId(ComputationId computationId, - AsyncCallback callback); - - void getMapFromMapResource(MapResource mapResource, - AsyncCallback> callback); - - void getParametersMapByComputationId(ComputationId computationId, - AsyncCallback> callback); - - void saveImage(ComputationId computationId, ImagesResource imageResource, - AsyncCallback callback); - - - - - - /** - * DataMiner - * - */ void hello(AsyncCallback callback); void getOperatorsClassifications( AsyncCallback> callback); void getParameters(Operator operator, - AsyncCallback> callback); - - void startComputation(Operator op, AsyncCallback asyncCallback); + AsyncCallback> callback); + + void startComputation(Operator op, + AsyncCallback asyncCallback); void getComputationStatus(ComputationId computationId, AsyncCallback asyncCallback); - - void resubmit(ComputationId computationId, AsyncCallback callback); - void retrieveTableInformation(Item item, AsyncCallback callback); + void resubmit(ComputationId computationId, + AsyncCallback callback); + + void retrieveTableInformation(Item item, + AsyncCallback callback); void getDataMinerWorkArea(AsyncCallback asyncCallback); @@ -84,9 +56,10 @@ public interface DataMinerPortletServiceAsync { void cancelComputation(ComputationId computationId, AsyncCallback asyncCallback); - void deleteItem(ItemDescription itemDescription, AsyncCallback callback); - + void getResourceByComputationId(ComputationId computationId, + AsyncCallback callback); + } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/util/UtilsGXT3.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/util/UtilsGXT3.java index 82d23eb..1b8a222 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/util/UtilsGXT3.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/util/UtilsGXT3.java @@ -1,6 +1,5 @@ package org.gcube.portlets.user.dataminermanager.client.util; - import com.google.gwt.core.client.Callback; import com.google.gwt.dom.client.Element; import com.sencha.gxt.core.client.dom.XElement; @@ -11,8 +10,8 @@ import com.sencha.gxt.widget.core.client.event.HideEvent.HideHandler; /** * - * @author "Giancarlo Panichi" - * g.panichi@isti.cnr.it + * @author "Giancarlo Panichi" g.panichi@isti.cnr.it * */ public class UtilsGXT3 { @@ -24,8 +23,7 @@ public class UtilsGXT3 { public static void umask(Element element) { element. cast().unmask(); } - - + public static void alert(String title, String message) { final AlertMessageBox d = new AlertMessageBox(title, message); d.addHideHandler(new HideHandler() { @@ -37,20 +35,20 @@ public class UtilsGXT3 { d.show(); } - - public static void alert(String title, String message, final Callback callback) { + + public static void alert(String title, String message, + final Callback callback) { final AlertMessageBox d = new AlertMessageBox(title, message); d.addHideHandler(new HideHandler() { - public void onHide(HideEvent event) { - Component comp=event.getSource(); + public void onHide(HideEvent event) { + Component comp = event.getSource(); callback.onSuccess(comp); } }); d.show(); } - - + public static void info(String title, String message) { final InfoMessageBox d = new InfoMessageBox(title, message); d.addHideHandler(new HideHandler() { @@ -62,18 +60,19 @@ public class UtilsGXT3 { d.show(); } - - public static void info(String title, String message, final Callback callback) { + + public static void info(String title, String message, + final Callback callback) { final InfoMessageBox d = new InfoMessageBox(title, message); d.addHideHandler(new HideHandler() { public void onHide(HideEvent event) { - Component comp=event.getSource(); + Component comp = event.getSource(); callback.onSuccess(comp); } }); d.show(); } - + } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/server/DataMinerManagerServiceImpl.java b/src/main/java/org/gcube/portlets/user/dataminermanager/server/DataMinerManagerServiceImpl.java index 1d839e9..4a3ac60 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/server/DataMinerManagerServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/server/DataMinerManagerServiceImpl.java @@ -1,28 +1,15 @@ package org.gcube.portlets.user.dataminermanager.server; -import java.io.InputStream; -import java.net.URL; -import java.util.ArrayList; -import java.util.LinkedHashMap; import java.util.List; -import java.util.Map; import javax.servlet.ServletException; import javax.servlet.http.HttpSession; import org.gcube.application.framework.accesslogger.library.impl.AccessLogger; import org.gcube.application.framework.core.session.ASLSession; -import org.gcube.common.homelibrary.home.HomeLibrary; -import org.gcube.common.homelibrary.home.workspace.Workspace; -import org.gcube.common.homelibrary.home.workspace.WorkspaceFolder; -import org.gcube.common.homelibrary.home.workspace.WorkspaceItem; -import org.gcube.common.homelibrary.home.workspace.exceptions.ItemAlreadyExistException; -import org.gcube.common.homelibrary.util.WorkspaceUtil; import org.gcube.portlets.user.dataminermanager.client.bean.ComputationStatus; import org.gcube.portlets.user.dataminermanager.client.bean.Operator; import org.gcube.portlets.user.dataminermanager.client.bean.OperatorsClassification; -import org.gcube.portlets.user.dataminermanager.client.bean.output.ImagesResource; -import org.gcube.portlets.user.dataminermanager.client.bean.output.MapResource; import org.gcube.portlets.user.dataminermanager.client.bean.output.Resource; import org.gcube.portlets.user.dataminermanager.client.bean.parameters.Parameter; import org.gcube.portlets.user.dataminermanager.client.rpc.DataMinerPortletService; @@ -54,11 +41,6 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements DataMinerPortletService { public static AccessLogger accountinglog = AccessLogger.getAccessLogger(); - // private static final long CACHE_REFRESH_TIME = 30 * 60 * 1000; // 30 - // minutes - - // private final static String SEPARATOR = AlgorithmConfiguration - // .getListSeparator(); private static Logger logger = LoggerFactory .getLogger(DataMinerManagerServiceImpl.class); @@ -95,35 +77,36 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements } catch (Throwable e) { e.printStackTrace(); logger.error("Hello(): " + e.getLocalizedMessage(), e); - throw new ServiceException(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @Override public List getOperatorsClassifications() - throws Exception { + throws ServiceException { try { HttpSession session = this.getThreadLocalRequest().getSession(); ASLSession aslSession = SessionUtil.getASLSession(session); SClient smClient = SessionUtil.getSClient(session, aslSession); return smClient.getOperatorsClassifications(); - + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; } catch (Throwable e) { logger.error( - "An error occurred getting the OperatorsClassifications list", - e); - System.out - .println("An error occurred getting the OperatorsClassifications list"); + "An error occurred getting the OperatorsClassifications list: " + + e.getLocalizedMessage(), e); e.printStackTrace(); // return null; - throw new Exception(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @Override - public List getParameters(Operator operator) throws Exception { + public List getParameters(Operator operator) + throws ServiceException { try { HttpSession session = this.getThreadLocalRequest().getSession(); ASLSession aslSession = SessionUtil.getASLSession(session); @@ -131,29 +114,34 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements SClient smClient = SessionUtil.getSClient(session, aslSession); return smClient.getInputParameters(operator); + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; } catch (Throwable e) { logger.error("Error retrieving parameters: " + e.getLocalizedMessage()); e.printStackTrace(); - throw new Exception(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @Override public ComputationId startComputation(Operator operator) - throws Exception { + throws ServiceException { try { HttpSession session = this.getThreadLocalRequest().getSession(); ASLSession aslSession = SessionUtil.getASLSession(session); logger.debug("StartComputation(): [ operator=" + operator + "]"); SClient smClient = SessionUtil.getSClient(session, aslSession); return smClient.startComputation(operator); - + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; } catch (Throwable e) { logger.error("Error in start computation: " + e.getLocalizedMessage()); e.printStackTrace(); - throw new Exception(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @@ -167,6 +155,9 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements SClient smClient = SessionUtil.getSClient(session, aslSession); return smClient.resubmitComputation(computationId); + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; } catch (Throwable e) { logger.error("Error in resubmit computation: " + e.getLocalizedMessage()); @@ -177,7 +168,7 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements @Override public ComputationStatus getComputationStatus(ComputationId computationId) - throws Exception { + throws ServiceException { try { HttpSession session = this.getThreadLocalRequest().getSession(); ASLSession aslSession = SessionUtil.getASLSession(session); @@ -185,48 +176,20 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements SClient smClient = SessionUtil.getSClient(session, aslSession); return smClient.getComputationStatus(computationId); + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; } catch (Throwable e) { - // logger.error("Error in getComputationStatus: " - // + e.getLocalizedMessage()); - // e.printStackTrace(); - throw new Exception(e.getLocalizedMessage()); - } - } - - /* - * @Override public List getTableItems(List - * templates) throws Exception { try { HttpSession session = - * this.getThreadLocalRequest().getSession(); ASLSession aslSession = - * SessionUtil.getASLSession(session); - * - * List list = new ArrayList(); - * - * return list; } catch (Throwable e) { - * logger.error("Error in getTableItems:" + e.getLocalizedMessage()); - * e.printStackTrace(); throw new Exception(e.getLocalizedMessage()); } - * - * } - */ - - @Override - public List getFileItems(List templates) - throws Exception { - try { - HttpSession session = this.getThreadLocalRequest().getSession(); - ASLSession aslSession = SessionUtil.getASLSession(session); - - List list = new ArrayList(); - - return list; - } catch (Throwable e) { - logger.error("Error in getFileItems:" + e.getLocalizedMessage()); + logger.error("Error in getComputationStatus: " + + e.getLocalizedMessage()); e.printStackTrace(); - throw new Exception(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @Override - public Resource getResourceByComputationId(ComputationId computationId) { + public Resource getResourceByComputationId(ComputationId computationId) + throws ServiceException { try { Log.debug("getResourceByComputationId: " + computationId); HttpSession session = this.getThreadLocalRequest().getSession(); @@ -237,122 +200,31 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements .getResourceByComputationId(computationId); Log.debug("Resoure: " + resource); return resource; - - } catch (Exception e) { + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; + } catch (Throwable e) { logger.error("Error in getResourceByComputationId: " + e.getLocalizedMessage()); e.printStackTrace(); - return null; - } - - } - - @Override - public Map getParametersMapByComputationId( - ComputationId jobId) throws ServiceException { - - try { - HttpSession session = this.getThreadLocalRequest().getSession(); - ASLSession aslSession = SessionUtil.getASLSession(session); - - SClient smClient = SessionUtil.getSClient(session, aslSession); - - // SMComputation computation = wpsClient.getComputation(jobId); - - Map parametersMap = new LinkedHashMap(); - - // for (SMEntry entry : computation.parameters()) { - // String value = entry.value(); - // if (value != null) - // value = value.replaceAll("#", ", "); - // parametersMap.put(entry.key(), value); - // } - - return parametersMap; - - } catch (Throwable e) { - logger.error(e.getLocalizedMessage(), e); - e.printStackTrace(); throw new ServiceException(e.getLocalizedMessage(), e); } } - @Override - public Map getMapFromMapResource(MapResource mapRes) - throws Exception { - try { - HttpSession session = this.getThreadLocalRequest().getSession(); - ASLSession aslSession = SessionUtil.getASLSession(session); - - return mapRes.getMap(); - } catch (Exception e) { - logger.error(e.getLocalizedMessage(), e); - // e.printStackTrace(); - throw e; - } - } - - @Override - public String saveImage(ComputationId computationId, - ImagesResource imagesResource) throws Exception { - - try { - HttpSession session = this.getThreadLocalRequest().getSession(); - ASLSession aslSession = SessionUtil.getASLSession(session); - // SClient smClient = SessionUtil.getSClient(session, aslSession); - // SMComputation computation = - // factory.gegetComputation(computationId); - // String computationName = computation.title() == null ? - // computationId - // : computation.title(); - // computationName = - // FileSystemNameUtil.cleanFileName(computationName); - - Workspace workspace = HomeLibrary.getUserWorkspace(aslSession - .getUsername()); - WorkspaceFolder rootFolder = workspace.getRoot(); - // computationName = WorkspaceUtil.getUniqueName(computationName, - // rootFolder); - - // create the folder - - WorkspaceFolder folder; - try { - folder = rootFolder - .createFolder(computationId.getId(), - "This folder contains images obtained from Data Miner Manager"); - - } catch (ItemAlreadyExistException e) { - folder = (WorkspaceFolder) rootFolder.find(computationId - .getId()); - } - InputStream inputStream = new URL(imagesResource.getLink()) - .openStream(); - - WorkspaceItem wi = WorkspaceUtil.createExternalFile(folder, - imagesResource.getResourceId(), - imagesResource.getDescription(), - imagesResource.getMimeType(), inputStream); - - return wi.getId(); - } catch (Throwable e) { - logger.error("Error in save images: " + e.getLocalizedMessage()); - e.printStackTrace(); - throw (e); - } - } - @Override public void deleteItem(ItemDescription itemDescription) throws ServiceException { try { HttpSession session = this.getThreadLocalRequest().getSession(); ASLSession aslSession = SessionUtil.getASLSession(session); - logger.debug("DeleteItem(): "+itemDescription); + logger.debug("DeleteItem(): " + itemDescription); StorageUtil.deleteItem(aslSession.getUsername(), itemDescription.getId()); return; + } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); + throw e; } catch (Throwable e) { logger.error(e.getLocalizedMessage(), e); e.printStackTrace(); @@ -371,11 +243,12 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements TableItemSimple tableItemSimple = tableReader.getTableItemSimple(); return tableItemSimple; } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); throw e; } catch (Throwable e) { logger.error(e.getLocalizedMessage(), e); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @@ -390,11 +263,12 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements return dataMinerWorkAreaManager.getDataMinerWorkArea(); } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); throw e; } catch (Throwable e) { logger.error(e.getLocalizedMessage(), e); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @@ -410,11 +284,12 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements return link; } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); throw e; } catch (Throwable e) { logger.error(e.getLocalizedMessage(), e); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } @@ -430,11 +305,12 @@ public class DataMinerManagerServiceImpl extends RemoteServiceServlet implements return result; } catch (ServiceException e) { + logger.error(e.getLocalizedMessage()); throw e; } catch (Throwable e) { logger.error(e.getLocalizedMessage(), e); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new ServiceException(e.getLocalizedMessage(), e); } } diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/SClient4WPS.java b/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/SClient4WPS.java index 7df1fcf..7759fa2 100644 --- a/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/SClient4WPS.java +++ b/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/SClient4WPS.java @@ -47,7 +47,6 @@ import org.gcube.portlets.user.dataminermanager.server.smservice.wps.WPS2SM; import org.gcube.portlets.user.dataminermanager.server.util.ServiceCredential; import org.gcube.portlets.user.dataminermanager.shared.Constants; import org.gcube.portlets.user.dataminermanager.shared.data.ComputationId; -import org.gcube.portlets.user.dataminermanager.shared.exception.ServiceException; import org.n52.wps.client.ExecuteRequestBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -161,7 +160,7 @@ public class SClient4WPS extends SClient { requestCapability(); if (processesBriefs == null || processesDescriptionType == null) { - throw new ServiceException("Algorithms WPS not available!"); + throw new Exception("Algorithms WPS not available!"); } for (ProcessBriefType processBrief : processesBriefs) { @@ -313,15 +312,16 @@ public class SClient4WPS extends SClient { process.put(processId, processInformations); return processInformations; - } catch (Exception e) { + } catch (Throwable e) { + logger.error(e.getLocalizedMessage()); e.printStackTrace(); - throw e; + throw new Exception(e.getLocalizedMessage(),e); } finally { wpsClient.disconnect(wpsProcessingServlet); } } - private void requestCapability() throws ServiceException { + private void requestCapability() throws Exception { StatWPSClientSession wpsClient = null; processesDescriptionType = null; processesBriefs = null; @@ -343,7 +343,7 @@ public class SClient4WPS extends SClient { } catch (Throwable e) { e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new Exception(e.getLocalizedMessage(),e); } finally { if (wpsClient != null) { wpsClient.disconnect(wpsProcessingServlet); @@ -395,24 +395,32 @@ public class SClient4WPS extends SClient { execute); String processLocation = null; if (responseObject != null) { - processLocation = ((ExecuteResponseDocumentImpl) responseObject) - .getExecuteResponse().getStatusLocation(); - } else - throw new Exception("Invalid Response from service: " + if (responseObject instanceof ExecuteResponseDocumentImpl) { + processLocation = ((ExecuteResponseDocumentImpl) responseObject) + .getExecuteResponse().getStatusLocation(); + } else { + throw new Exception( + "Invalid response from service, " + + "response isn't instance of ExecuteResponseDocumentImpl, class is " + + responseObject.getClass()); + } + } else { + throw new Exception("Invalid Response from service, " + responseObject); + } logger.debug("Retrieved ProcessLocation: " + processLocation); return processLocation; - } catch (Exception e) { - logger.debug("ExecuteProcessAsync: " + e.getLocalizedMessage()); + } catch (Throwable e) { + logger.error("ExecuteProcessAsync: " + e.getLocalizedMessage()); e.printStackTrace(); - throw e; + throw new Exception(e.getLocalizedMessage(), e); } finally { try { if (wpsClient != null) wpsClient.disconnect(wpsProcessingServlet); } catch (Exception e) { - + logger.debug("Problems in wps disconnect! "+e.getLocalizedMessage()); } } } @@ -435,10 +443,10 @@ public class SClient4WPS extends SClient { return ((ExecuteResponseDocument) responseObject) .getExecuteResponse().getProcessOutputs(); - } catch (Exception e) { + } catch (Throwable e) { logger.debug("RetrieveProcessResult: " + e.getLocalizedMessage()); e.printStackTrace(); - throw e; + throw new Exception(e.getLocalizedMessage(), e); } finally { wpsClient.disconnect(wpsProcessingServlet); } @@ -504,7 +512,7 @@ public class SClient4WPS extends SClient { } return urls; } - + /* private static String getExceptionText(String exceptionText) { try { String excText = "ExceptionText>"; @@ -531,7 +539,7 @@ public class SClient4WPS extends SClient { e.printStackTrace(); return "Backend error in WPS Execution"; } - } + }*/ private static void getURLFromXML(org.w3c.dom.Node node, ResponseWPS responseWPS) { @@ -640,7 +648,7 @@ public class SClient4WPS extends SClient { } catch (Throwable e) { logger.error("GetParameters: " + e.getLocalizedMessage()); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new Exception(e.getLocalizedMessage()); } List parameters = new ArrayList<>(); @@ -657,10 +665,9 @@ public class SClient4WPS extends SClient { return parameters; } catch (Throwable e) { - logger.error(e.getLocalizedMessage()); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new Exception(e.getLocalizedMessage()); } } @@ -673,7 +680,7 @@ public class SClient4WPS extends SClient { } catch (Throwable e) { logger.error("GetParameters: " + e.getLocalizedMessage()); e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new Exception(e.getLocalizedMessage(),e); } LinkedHashMap inputParameters = new LinkedHashMap<>(); @@ -703,7 +710,7 @@ public class SClient4WPS extends SClient { id = processUrl.substring(idIndex + 4, processUrl.length()); } else { logger.error("Invalid processLocation: " + processUrl); - throw new ServiceException("Invalid processLocation: " + processUrl); + throw new Exception("Invalid processLocation: " + processUrl); } ComputationId computationId = new ComputationId(id, processUrl); logger.debug("ComputationId: " + computationId); @@ -773,12 +780,10 @@ public class SClient4WPS extends SClient { logger.debug("Starting Process: " + statusLocation); return statusLocation; - } catch (Exception e) { + } catch (Throwable e) { + logger.error(e.getLocalizedMessage()); e.printStackTrace(); - String exceptiontext = getExceptionText(e.getLocalizedMessage()); - logger.debug("WPSProcess->Returning Exception to the SM:" - + exceptiontext); - throw new Exception(exceptiontext); + throw new Exception(e.getLocalizedMessage(), e); } } @@ -905,10 +910,10 @@ public class SClient4WPS extends SClient { } } - } catch (Exception e) { + } catch (Throwable e) { logger.error("MonitorProcess: " + e.getLocalizedMessage()); e.printStackTrace(); - throw e; + throw new Exception(e.getLocalizedMessage(), e); } finally { wpsClient.disconnect(wpsProcessingServlet); } @@ -1121,7 +1126,7 @@ public class SClient4WPS extends SClient { } catch (Throwable e) { e.printStackTrace(); - throw new ServiceException(e.getLocalizedMessage()); + throw new Exception(e.getLocalizedMessage(),e); } finally { if (wpsClient != null) { wpsClient.disconnect(wpsProcessingServlet); diff --git a/src/main/webapp/DataMinerManager.css b/src/main/webapp/DataMinerManager.css index eb06912..5c2afa5 100644 --- a/src/main/webapp/DataMinerManager.css +++ b/src/main/webapp/DataMinerManager.css @@ -372,59 +372,7 @@ } -/** -* ProgressBar -*/ -.progressBar-pending { - border: 1px solid #AAAAAA; -} -.progressBar-pending .x-progress-bar { - border: medium none; - background-image: url("images/progress-gray.gif"); -} - -.progressBar-failed { - border: 1px solid #AA0000; -} - -.progressBar-failed .x-progress-bar { - border: medium none; - background-image: url("images/progress-red.gif"); -} - -.progressBar-complete .progressWrap { - border-color: #00AA00; -} - -.progressBar-complete .progressInner { - background-color: #bdefbd; - background-image: url("images/bg-progress.gif"); - height: auto; -} - -.progressBar-complete .progressBar { - background-color: #4ec14e; - background-image: url("images/green-progress.gif"); - background-repeat: repeat-x; - background-position: left center; - height: 18px; - border-top-color: #d1fdda; - border-bottom-color: #7fe48a; - border-right-color: #7fe48a; -} - -/* -* -*.progressBar-complete { -* border: 1px solid #00AA00; -*} -* -*.progressBar-complete .x-progress-bar { -* border: medium none; -* background-image: url("images/progress-green.gif"); -*} -*/ /** * Computation Output */ diff --git a/src/main/webapp/images/bg-progress.gif b/src/main/webapp/images/bg-progress.gif deleted file mode 100644 index 43488af..0000000 Binary files a/src/main/webapp/images/bg-progress.gif and /dev/null differ diff --git a/src/main/webapp/images/blue-progress-bg.gif b/src/main/webapp/images/blue-progress-bg.gif deleted file mode 100644 index 1c1abeb..0000000 Binary files a/src/main/webapp/images/blue-progress-bg.gif and /dev/null differ diff --git a/src/main/webapp/images/green-progress-bg.gif b/src/main/webapp/images/green-progress-bg.gif deleted file mode 100644 index 34cf4bc..0000000 Binary files a/src/main/webapp/images/green-progress-bg.gif and /dev/null differ diff --git a/src/main/webapp/images/progress-gray.gif b/src/main/webapp/images/progress-gray.gif deleted file mode 100644 index efeee9e..0000000 Binary files a/src/main/webapp/images/progress-gray.gif and /dev/null differ diff --git a/src/main/webapp/images/progress-green.gif b/src/main/webapp/images/progress-green.gif deleted file mode 100644 index 4c2ee0b..0000000 Binary files a/src/main/webapp/images/progress-green.gif and /dev/null differ diff --git a/src/main/webapp/images/progress-red.gif b/src/main/webapp/images/progress-red.gif deleted file mode 100644 index 854f666..0000000 Binary files a/src/main/webapp/images/progress-red.gif and /dev/null differ diff --git a/src/main/webapp/images/red-progress-bg.gif b/src/main/webapp/images/red-progress-bg.gif deleted file mode 100644 index 5575481..0000000 Binary files a/src/main/webapp/images/red-progress-bg.gif and /dev/null differ