diff --git a/pom.xml b/pom.xml
index 9aae97d..72d334b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -200,11 +200,8 @@
-
+
@@ -279,6 +276,7 @@
org.gcube.portlets.widgets
workspace-explorer
[1.4.0-SNAPSHOT, 2.0.0-SNAPSHOT)
+
@@ -295,6 +293,13 @@
[1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)
+
+
+ org.gcube.portlets.widgets
+ netcdf-basic-widgets
+ [1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)
+
+
com.allen-sauer.gwt.log
@@ -312,7 +317,7 @@
slf4j-log4j12
provided
-
+
junit
junit
@@ -387,7 +392,7 @@
- -Xss512m -Xmx3072m -XX:MaxPermSize=2048m
+
compile
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/parametersfield/FileFld.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/parametersfield/FileFld.java
index 37175e7..e07509f 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/parametersfield/FileFld.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/parametersfield/FileFld.java
@@ -16,12 +16,16 @@ import org.gcube.portlets.user.dataminermanager.shared.exception.SessionExpiredS
import org.gcube.portlets.user.dataminermanager.shared.parameters.FileParameter;
import org.gcube.portlets.user.dataminermanager.shared.parameters.Parameter;
import org.gcube.portlets.user.dataminermanager.shared.workspace.ItemDescription;
+import org.gcube.portlets.widgets.netcdfbasicwidgets.client.event.SelectVariableEvent;
+import org.gcube.portlets.widgets.netcdfbasicwidgets.client.event.SelectVariableEvent.SelectVariableEventHandler;
+import org.gcube.portlets.widgets.netcdfbasicwidgets.client.widgets.NetCDFPreviewDialog;
import org.gcube.portlets.widgets.wsexplorer.client.notification.WorkspaceExplorerSelectNotification.WorskpaceExplorerSelectNotificationListener;
import org.gcube.portlets.widgets.wsexplorer.client.select.WorkspaceExplorerSelectDialog;
import org.gcube.portlets.widgets.wsexplorer.shared.Item;
import org.gcube.portlets.widgets.wsexplorer.shared.ItemType;
import com.allen_sauer.gwt.log.client.Log;
+import com.google.gwt.core.shared.GWT;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Widget;
@@ -60,6 +64,7 @@ public class FileFld extends AbstractFld {
private HBoxLayoutContainer horiz;
private TextButton downloadButton;
+ private TextButton netcdfButton;
/**
* @param parameter parameter
@@ -187,6 +192,16 @@ public class FileFld extends AbstractFld {
downloadFile();
}
});
+
+ netcdfButton = new TextButton("");
+ netcdfButton.setIcon(DataMinerManager.resources.netcdf());
+ netcdfButton.addSelectHandler(new SelectEvent.SelectHandler() {
+
+ @Override
+ public void onSelect(SelectEvent event) {
+ showNetCDFFile();
+ }
+ });
}
@@ -259,6 +274,27 @@ public class FileFld extends AbstractFld {
}
}
+
+ private void showNetCDFFile() {
+ if (selectedFileItem != null) {
+ GWT.log("NetcdfBasicWidgetsManager");
+
+ // Example
+ SelectVariableEventHandler handler=new SelectVariableEventHandler() {
+
+ @Override
+ public void onResponse(SelectVariableEvent event) {
+ GWT.log("SelectVariable Response: "+event);
+
+ }
+ };
+
+ NetCDFPreviewDialog netcdfDialog=new NetCDFPreviewDialog(selectedFileItem.getPublicLink());
+ netcdfDialog.addSelectVariableEventHandler(handler);
+ netcdfDialog.setZIndex(XDOM.getTopZIndex());
+
+ }
+ }
private void showNoSelectionField() {
vp.clear();
@@ -282,6 +318,9 @@ public class FileFld extends AbstractFld {
h.add(tableDescription, new BoxLayoutData(new Margins()));
h.add(selectButton2, new BoxLayoutData(new Margins()));
h.add(downloadButton, new BoxLayoutData(new Margins()));
+ if(fileParameter.isNetcdf()){
+ h.add(netcdfButton, new BoxLayoutData(new Margins()));
+ }
h.add(cancelButton, new BoxLayoutData(new Margins()));
vp.clear();
vp.add(h);
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/client/resources/Resources.java b/src/main/java/org/gcube/portlets/user/dataminermanager/client/resources/Resources.java
index d01a85e..b8e0fe1 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/client/resources/Resources.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/client/resources/Resources.java
@@ -87,6 +87,9 @@ public interface Resources extends ClientBundle {
@Source("download.png")
ImageResource download();
+ @Source("show.png")
+ ImageResource netcdf();
+
@Source("cancel_circle.png")
ImageResource cancelCircle();
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml b/src/main/java/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml
index b47ccd4..efdfc60 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml
@@ -20,7 +20,12 @@
-
+
+
+
+
+
@@ -31,17 +36,17 @@
-
+
-
+
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/server/dmservice/wps/WPS2DM.java b/src/main/java/org/gcube/portlets/user/dataminermanager/server/dmservice/wps/WPS2DM.java
index f426a39..484186c 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/server/dmservice/wps/WPS2DM.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/server/dmservice/wps/WPS2DM.java
@@ -291,7 +291,11 @@ public class WPS2DM {
supportedMimeTypes);
} else {
if (title.contains("[a http link to a file")) {
- converted = new FileParameter(id, title, mimeType, supportedMimeTypes);
+ if (title.contains("[NETCDF]")) {
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes, true);
+ } else {
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes, false);
+ }
} else {
if (title.contains("[a sequence of http links")) {
Pattern pattern = Pattern.compile(
@@ -311,18 +315,26 @@ public class WPS2DM {
converted = new TabularListParameter(id, title, separator, mimeType,
supportedMimeTypes);
} else {
- converted = new FileParameter(id, title, mimeType, supportedMimeTypes);
+ if (title.contains("[NETCDF]")) {
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes, true);
+ } else {
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes, false);
+ }
}
} else {
- converted = new FileParameter(id, title, mimeType, supportedMimeTypes);
+ if (title.contains("[NETCDF]")) {
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes, true);
+ } else {
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes,false);
+ }
}
}
}
} else {
- converted = new FileParameter(id, title, mimeType, supportedMimeTypes);
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes,false);
}
} else {
- converted = new FileParameter(id, title, mimeType, supportedMimeTypes);
+ converted = new FileParameter(id, title, mimeType, supportedMimeTypes,false);
}
return converted;
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/Constants.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/Constants.java
index 804f630..f302762 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/Constants.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/Constants.java
@@ -7,7 +7,7 @@ package org.gcube.portlets.user.dataminermanager.shared;
*
*/
public class Constants {
- public static final boolean DEBUG_MODE = true;
+ public static final boolean DEBUG_MODE = false;
public static final boolean TEST_ENABLE = false;
public static final String APPLICATION_ID = "org.gcube.portlets.user.dataminermanager.portlet.DataMinerManager";
@@ -17,12 +17,11 @@ public class Constants {
public static final String DATA_MINER_OPERATOR_ID = "OperatorId";
public static final String DEFAULT_USER = "giancarlo.panichi";
- public final static String DEFAULT_SCOPE = "/gcube/devNext";
- public final static String DEFAULT_TOKEN = "16e65d4f-11e0-4e4a-84b9-351688fccc12-98187548";
+ public final static String DEFAULT_SCOPE = "/gcube/devNext/NextNext";
+ public final static String DEFAULT_TOKEN = "ae1208f0-210d-47c9-9b24-d3f2dfcce05f-98187548";
public static final String DEFAULT_ROLE = "OrganizationMember";
// public final static String DEFAULT_SCOPE = "/gcube/devNext";
- //public final static String DEFAULT_SCOPE = "/gcube/devNext/NextNext";
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/FileParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/FileParameter.java
index e020474..a27a603 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/FileParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/FileParameter.java
@@ -16,6 +16,7 @@ public class FileParameter extends Parameter {
private static final long serialVersionUID = -2967577990287112937L;
private String defaultMimeType;
private ArrayList supportedMimeTypes;
+ private boolean netcdf;
/**
*
@@ -23,6 +24,7 @@ public class FileParameter extends Parameter {
public FileParameter() {
super();
this.typology = ParameterType.FILE;
+ netcdf=false;
}
/**
@@ -37,10 +39,11 @@ public class FileParameter extends Parameter {
* supported mime types
*/
public FileParameter(String name, String description, String defaultMimeType,
- ArrayList supportedMimeTypes) {
+ ArrayList supportedMimeTypes, boolean netcdf) {
super(name, ParameterType.FILE, description);
this.defaultMimeType = defaultMimeType;
this.supportedMimeTypes = supportedMimeTypes;
+ this.netcdf=netcdf;
}
public String getDefaultMimeType() {
@@ -59,11 +62,21 @@ public class FileParameter extends Parameter {
this.supportedMimeTypes = supportedMimeTypes;
}
- @Override
- public String toString() {
- return "FileParameter [value=" + value + ", defaultMimeType=" + defaultMimeType + ", supportedMimeTypes="
- + supportedMimeTypes + ", name=" + name + ", description=" + description + ", typology=" + typology
- + "]";
+
+ public boolean isNetcdf() {
+ return netcdf;
}
+ public void setNetcdf(boolean netcdf) {
+ this.netcdf = netcdf;
+ }
+
+ @Override
+ public String toString() {
+ return "FileParameter [defaultMimeType=" + defaultMimeType + ", supportedMimeTypes=" + supportedMimeTypes
+ + ", netcdf=" + netcdf + ", name=" + name + ", description=" + description + ", typology=" + typology
+ + ", value=" + value + "]";
+ }
+
+
}
diff --git a/src/main/resources/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml b/src/main/resources/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml
index 95b9dc6..4a233e2 100644
--- a/src/main/resources/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml
+++ b/src/main/resources/org/gcube/portlets/user/dataminermanager/dataminermanager.gwt.xml
@@ -20,7 +20,12 @@
-
+
+
+
+
+
@@ -32,17 +37,18 @@
+
-
+
+
diff --git a/src/main/webapp/DataMinerManager.css b/src/main/webapp/DataMinerManager.css
index 6faa4b1..e565aa9 100644
--- a/src/main/webapp/DataMinerManager.css
+++ b/src/main/webapp/DataMinerManager.css
@@ -462,4 +462,12 @@
.computation-output-fileName {
margin-top: 2px;
margin-bottom: 2px;
-}
\ No newline at end of file
+}
+
+
+
+#netcdfSampleTextArea {
+ height: 318px;
+ width: 616px !important;
+ resize: none;
+}
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
index 510771f..4e6ab4a 100644
--- a/src/main/webapp/WEB-INF/web.xml
+++ b/src/main/webapp/WEB-INF/web.xml
@@ -28,6 +28,10 @@
workspaceUploadServletStream
org.gcube.portlets.widgets.workspaceuploader.server.WorkspaceUploadServletStream
+
+ NetCDFBasicWidgetService
+ org.gcube.portlets.widgets.netcdfbasicwidgets.server.NetCDFBasicWidgetServiceImpl
+
@@ -53,8 +57,14 @@
workspaceUploadServletStream
/dataminermanager/workspaceUploadServletStream
+
+
+ NetCDFBasicWidgetService
+ /dataminermanager/netcdfservice
+
+
DataMinerManager.html