diff --git a/pom.xml b/pom.xml
index c26a654..95ff77c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -147,9 +147,9 @@
gxt
${gxtVersion}
-
-
-
+
+
+
javax.portlet
portlet-api
@@ -297,6 +297,12 @@
[1.4.0-SNAPSHOT,2.0.0-SNAPSHOT)
+
+
+ org.gcube.portlets.widgets
+ openlayer-basic-widgets
+ [1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)
+
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 50fa86c..227b244 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
@@ -24,6 +24,7 @@ import org.gcube.portlets.user.dataminermanager.shared.exception.SessionExpiredS
import org.gcube.portlets.user.dataminermanager.shared.parameters.ColumnListParameter;
import org.gcube.portlets.user.dataminermanager.shared.parameters.ColumnParameter;
import org.gcube.portlets.user.dataminermanager.shared.parameters.Parameter;
+import org.gcube.portlets.user.dataminermanager.shared.parameters.Parameter.ParameterTypology;
import com.allen_sauer.gwt.log.client.Log;
import com.google.gwt.core.client.GWT;
@@ -104,9 +105,9 @@ public class ComputationParametersPanel extends SimpleContainer {
try {
String location = Location.getHref();
String[] locationData = location.split("\\?");
- locationRef=locationData[0];
+ locationRef = locationData[0];
} catch (Throwable e) {
- Log.error("Error retrieving location: "+e.getLocalizedMessage());
+ Log.error("Error retrieving location: " + e.getLocalizedMessage());
}
HtmlLayoutContainer title = new HtmlLayoutContainer("
");
+ descr.addStyleName("workflow-fieldDescription");
+
+ } else {
+ descr = new HtmlLayoutContainer(
+ ""
+ + wktParameter.getDescription() + "
");
+ descr.addStyleName("workflow-fieldDescription");
+ }
+
+ horiz.add(wktContainer, new BoxLayoutData(new Margins()));
+ horiz.add(descr, new BoxLayoutData(new Margins()));
+
+ fieldContainer.add(horiz);
+ showNoSelectionField();
+
+ }
+
+ private GeometryType getGeometryType() {
+ if (wktParameter.getWktGeometryType() == null) {
+ return GeometryType.Polygon;
+ }
+
+ switch (wktParameter.getWktGeometryType()) {
+ case Box:
+ return GeometryType.Box;
+ case Circle:
+ return GeometryType.Circle;
+ case Hexagon:
+ return GeometryType.Hexagon;
+ case LineString:
+ return GeometryType.LineString;
+ case Pentagon:
+ return GeometryType.Pentagon;
+ case Point:
+ return GeometryType.Point;
+ case Polygon:
+ return GeometryType.Polygon;
+ case Square:
+ return GeometryType.Square;
+ case Triangle:
+ return GeometryType.Triangle;
+ default:
+ return GeometryType.Polygon;
+
+ }
+ }
+
+ private void drawAGeometry() {
+ SelectAreaDialogEventHandler handler = new SelectAreaDialogEventHandler() {
+
+ @Override
+ public void onResponse(SelectAreaDialogEvent event) {
+ GWT.log("SelectAreaDialog Response: " + event);
+ switch (event.getSelectAreaDialogEventType()) {
+ case Aborted:
+ Log.debug("No area selected!");
+ break;
+ case Completed:
+ selectedArea = event.getArea();
+ Log.debug("SelectedFileItem: " + selectedArea);
+ showFieldWithSelection();
+ break;
+ case Failed:
+ Log.error("Error during area selection: "
+ + event.getException());
+ UtilsGXT3.alert("Error", event.getErrorMessage());
+ break;
+ default:
+ break;
+
+ }
+ }
+ };
+
+ areaSelectionDialog = new AreaSelectionDialog(getGeometryType());
+ areaSelectionDialog.setZIndex(XDOM.getTopZIndex());
+ areaSelectionDialog.addSelectAreaDialogEventHandler(handler);
+ areaSelectionDialog.show();
+
+ }
+
+ private void init() {
+ selectButton = new TextButton("Draw a "
+ + wktParameter.getWktGeometryType().getLabel());
+ selectButton.setIcon(DataMinerManager.resources.folderExplore());
+ selectButton.addSelectHandler(new SelectEvent.SelectHandler() {
+
+ @Override
+ public void onSelect(SelectEvent event) {
+ drawAGeometry();
+
+ }
+ });
+ //selectButton.setToolTip("Draw a "
+ // + wktParameter.getWktGeometryType().getLabel());
+
+ selectButton2 = new TextButton("");
+ selectButton2.setIcon(DataMinerManager.resources.folderExplore());
+ selectButton2.addSelectHandler(new SelectEvent.SelectHandler() {
+
+ @Override
+ public void onSelect(SelectEvent event) {
+ drawAGeometry();
+ }
+ });
+ //selectButton2.setToolTip("Select Another "
+ // + wktParameter.getWktGeometryType().getLabel());
+
+ cancelButton = new TextButton("");
+ cancelButton.setIcon(DataMinerManager.resources.cancel());
+ cancelButton.addSelectHandler(new SelectEvent.SelectHandler() {
+
+ @Override
+ public void onSelect(SelectEvent event) {
+ selectedArea = null;
+ showNoSelectionField();
+ }
+ });
+
+ }
+
+ private void showNoSelectionField() {
+ vp.clear();
+ vp.add(selectButton);
+ vp.forceLayout();
+ fieldContainer.forceLayout();
+ }
+
+ private void showFieldWithSelection() {
+ if (selectedArea == null || selectedArea.isEmpty()) {
+ selectedArea = "";
+ }
+
+ selectedAreaField = new TextField();
+ if (selectedArea != null && !selectedArea.isEmpty()) {
+ selectedAreaField.setValue(selectedArea);
+ }
+ selectedAreaField.setReadOnly(true);
+
+ HBoxLayoutContainer h = new HBoxLayoutContainer();
+ h.add(selectedAreaField, new BoxLayoutData(new Margins()));
+ h.add(selectButton2, new BoxLayoutData(new Margins()));
+ h.add(cancelButton, new BoxLayoutData(new Margins()));
+ vp.clear();
+ vp.add(h);
+ vp.forceLayout();
+ fieldContainer.forceLayout();
+
+ }
+
+ @Override
+ public String getValue() {
+ if (selectedAreaField != null) {
+ return selectedAreaField.getCurrentValue();
+ } else {
+ return wktParameter.getDefaultValue();
+ }
+ }
+
+ @Override
+ public boolean isValid() {
+ if (selectedAreaField != null) {
+ return selectedAreaField.isValid();
+ } else {
+ return true;
+ }
+ }
+
+ @Override
+ public Widget getWidget() {
+ return fieldContainer;
+ }
+
+}
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 13e0d6c..36e1280 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
@@ -2,29 +2,25 @@
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
- -->
-
+ name='org.gcube.portlets.widgets.openlayerbasicwidgets.olbasicwidgets' />
+
@@ -32,38 +28,22 @@
-
-
-
-
-
-
-
+
-
-
-
-
+
+
+
+
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/wps/WPS2SM.java b/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/wps/WPS2SM.java
index 81e3e00..290d0cc 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/wps/WPS2SM.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/server/smservice/wps/WPS2SM.java
@@ -27,6 +27,8 @@ import org.gcube.portlets.user.dataminermanager.shared.parameters.ObjectParamete
import org.gcube.portlets.user.dataminermanager.shared.parameters.Parameter;
import org.gcube.portlets.user.dataminermanager.shared.parameters.TabularListParameter;
import org.gcube.portlets.user.dataminermanager.shared.parameters.TabularParameter;
+import org.gcube.portlets.user.dataminermanager.shared.parameters.WKTGeometryType;
+import org.gcube.portlets.user.dataminermanager.shared.parameters.WKTParameter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -159,10 +161,17 @@ public class WPS2SM {
converted = new ListParameter(id, title,
guessedType, separator);
} else {
- converted = new ObjectParameter(id, title,
- guessPrimitiveType(guessedType),
- defaultValue);
+ if (title.contains("[WKT_")) {
+ logger.debug("WKT parameter: " + title);
+ converted = retrieveWKTParameter(id, title,
+ defaultValue);
+ } else {
+
+ converted = new ObjectParameter(id, title,
+ guessPrimitiveType(guessedType),
+ defaultValue);
+ }
}
}
}
@@ -178,6 +187,71 @@ public class WPS2SM {
return converted;
}
+ private static Parameter retrieveWKTParameter(String id, String title,
+ String defaultValue) {
+
+ if (title.contains("[WKT_POINT]")) {
+ //title.replace("[WKT_POINT]", "");
+ return new WKTParameter(id, title, WKTGeometryType.Point,
+ defaultValue);
+ } else {
+ if (title.contains("[WKT_LINESTRING]")) {
+ //title.replace("[WKT_LINESTRING]", "");
+ return new WKTParameter(id, title, WKTGeometryType.LineString,
+ defaultValue);
+ } else {
+ if (title.contains("[WKT_POLYGON]")) {
+ //title.replace("[WKT_POLYGON]", "");
+ return new WKTParameter(id, title, WKTGeometryType.Polygon,
+ defaultValue);
+ } else {
+ if (title.contains("[WKT_CIRCLE]")) {
+ //title.replace("[WKT_CIRCLE]", "");
+ return new WKTParameter(id, title,
+ WKTGeometryType.Circle, defaultValue);
+ } else {
+ if (title.contains("[WKT_TRIANGLE]")) {
+ //title.replace("[WKT_TRIANGLE]", "");
+ return new WKTParameter(id, title,
+ WKTGeometryType.Triangle, defaultValue);
+ } else {
+ if (title.contains("[WKT_SQUARE]")) {
+ //title.replace("[WKT_SQUARE]", "");
+ return new WKTParameter(id, title,
+ WKTGeometryType.Square, defaultValue);
+ } else {
+ if (title.contains("[WKT_PENTAGON]")) {
+ //title.replace("[WKT_PENTAGON]", "");
+ return new WKTParameter(id, title,
+ WKTGeometryType.Pentagon,
+ defaultValue);
+ } else {
+ if (title.contains("[WKT_HEXAGON]")) {
+ //title.replace("[WKT_HEXAGON]", "");
+ return new WKTParameter(id, title,
+ WKTGeometryType.Hexagon,
+ defaultValue);
+ } else {
+ if (title.contains("[WKT_BOX]")) {
+ //title.replace("[WKT_BOX]", "");
+ return new WKTParameter(id, title,
+ WKTGeometryType.Box,
+ defaultValue);
+ } else {
+ return new WKTParameter(id, title,
+ WKTGeometryType.Polygon,
+ defaultValue);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
/**
*
* @param maxMegaBytes
@@ -335,7 +409,7 @@ public class WPS2SM {
.getSupported().getFormatArray());
}
-
+
logger.debug("Conversion to SM Type->Name=" + id);
logger.debug("Conversion to SM Type->Title=" + title);
logger.debug("Conversion to SM Type->Number of Inputs to Manage="
@@ -403,29 +477,22 @@ public class WPS2SM {
String description = title;
/*
- String innerDescription = "";
-
- if (maxMegabytes != null && maxMegabytes.trim().length() > 0) {
- innerDescription += "Max MB Size:" + maxMegabytes.trim() + "; ";
- }
- if (UoM != null && UoM.trim().length() > 0) {
- innerDescription += "Unit of Measure:" + UoM.trim() + "; ";
- }
- if (minElements > 0) {
- innerDescription += "Min N. of Entries:" + minElements + "; ";
- }
- if (maxElements > 0) {
- innerDescription += "Max N. of Entries:" + maxElements + "; ";
- }
- if (defaultValue != null && defaultValue.trim().length() > 0) {
- innerDescription += "default:" + defaultValue.trim() + "; ";
- }
-
- if (innerDescription.length() > 0)
- description += " ["
- + innerDescription.substring(0,
- innerDescription.lastIndexOf(";")).trim() + "]";
- */
+ * String innerDescription = "";
+ *
+ * if (maxMegabytes != null && maxMegabytes.trim().length() > 0) {
+ * innerDescription += "Max MB Size:" + maxMegabytes.trim() + "; "; } if
+ * (UoM != null && UoM.trim().length() > 0) { innerDescription +=
+ * "Unit of Measure:" + UoM.trim() + "; "; } if (minElements > 0) {
+ * innerDescription += "Min N. of Entries:" + minElements + "; "; } if
+ * (maxElements > 0) { innerDescription += "Max N. of Entries:" +
+ * maxElements + "; "; } if (defaultValue != null &&
+ * defaultValue.trim().length() > 0) { innerDescription += "default:" +
+ * defaultValue.trim() + "; "; }
+ *
+ * if (innerDescription.length() > 0) description += " [" +
+ * innerDescription.substring(0,
+ * innerDescription.lastIndexOf(";")).trim() + "]";
+ */
return description;
}
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 cf95bfe..62a24db 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
@@ -19,9 +19,9 @@ public class Constants {
public static final String DEFAULT_USER = "giancarlo.panichi";
public static final String DEFAULT_ROLE = "OrganizationMember";
- public static final String DEFAULT_SCOPE = "/gcube/devsec/devVRE";
+ //public static final String DEFAULT_SCOPE = "/gcube/devsec/devVRE";
// public final static String DEFAULT_SCOPE = "/gcube/devNext";
- // public final static String DEFAULT_SCOPE = "/gcube/devNext/NextNext";
+ public final static String DEFAULT_SCOPE = "/gcube/devNext/NextNext";
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnListParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnListParameter.java
index c606b5a..cd806c8 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnListParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnListParameter.java
@@ -4,42 +4,42 @@
package org.gcube.portlets.user.dataminermanager.shared.parameters;
import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
/**
*
- * @author Giancarlo Panichi
- * email: g.panichi@isti.cnr.it
+ * @author Giancarlo Panichi email: g.panichi@isti.cnr.it
*
*/
public class ColumnListParameter extends Parameter implements Serializable {
private static final long serialVersionUID = -6743494426144267089L;
- String referredTabularParameterName;
- List columnNames = new ArrayList();
- String value;
+ private String referredTabularParameterName;
+ // private List columnNames = new ArrayList();
+ private String value;
private String separator;
-
+
public ColumnListParameter() {
super();
this.typology = ParameterTypology.COLUMN_LIST;
}
-
- public ColumnListParameter(String name, String description, String referredTabularParameterName, String separator) {
+
+ public ColumnListParameter(String name, String description,
+ String referredTabularParameterName, String separator) {
super(name, ParameterTypology.COLUMN_LIST, description);
this.referredTabularParameterName = referredTabularParameterName;
this.separator = separator;
}
/**
- * @param referredTabularParameterName the referredTabularParameterName to set
+ * @param referredTabularParameterName
+ * the referredTabularParameterName to set
*/
- public void setReferredTabularParameterName(String referredTabularParameterName) {
+ public void setReferredTabularParameterName(
+ String referredTabularParameterName) {
this.referredTabularParameterName = referredTabularParameterName;
}
-
+
/**
* @return the referredTabularParameterName
*/
@@ -53,13 +53,12 @@ public class ColumnListParameter extends Parameter implements Serializable {
public String getValue() {
return value;
}
-
-
+
@Override
public void setValue(String value) {
this.value = value;
}
-
+
/**
* @return the separator
*/
@@ -67,4 +66,17 @@ public class ColumnListParameter extends Parameter implements Serializable {
return separator;
}
+ public void setSeparator(String separator) {
+ this.separator = separator;
+ }
+
+ @Override
+ public String toString() {
+ return "ColumnListParameter [referredTabularParameterName="
+ + referredTabularParameterName + ", value=" + value
+ + ", separator=" + separator + ", name=" + name
+ + ", description=" + description + ", typology=" + typology
+ + "]";
+ }
+
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnParameter.java
index e6e3f1e..496968a 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ColumnParameter.java
@@ -5,11 +5,10 @@ package org.gcube.portlets.user.dataminermanager.shared.parameters;
import java.io.Serializable;
-
/**
*
- * @author Giancarlo Panichi
- * email: g.panichi@isti.cnr.it
+ * @author Giancarlo Panichi email: g.panichi@isti.cnr.it
*
*/
public class ColumnParameter extends Parameter implements Serializable {
@@ -18,9 +17,9 @@ public class ColumnParameter extends Parameter implements Serializable {
*
*/
private static final long serialVersionUID = -5084557326770554659L;
- String referredTabularParameterName;
- String defaultColumn;
- String value;
+ private String referredTabularParameterName;
+ private String defaultColumn;
+ private String value;
/**
*
@@ -33,20 +32,22 @@ public class ColumnParameter extends Parameter implements Serializable {
/**
*
*/
- public ColumnParameter(String name, String description, String referredTabularParameterName, String defaultColumn) {
+ public ColumnParameter(String name, String description,
+ String referredTabularParameterName, String defaultColumn) {
super(name, ParameterTypology.COLUMN, description);
this.referredTabularParameterName = referredTabularParameterName;
this.defaultColumn = defaultColumn;
}
/**
- * @param referredTabularParameterName the referredTabularParameterName to set
+ * @param referredTabularParameterName
+ * the referredTabularParameterName to set
*/
public void setReferredTabularParameterName(
String referredTabularParameterName) {
this.referredTabularParameterName = referredTabularParameterName;
}
-
+
/**
* @return the referredTabularParameterName
*/
@@ -60,25 +61,34 @@ public class ColumnParameter extends Parameter implements Serializable {
public String getDefaultColumn() {
return defaultColumn;
}
-
+
/**
- * @param defaultValue the defaultValue to set
+ * @param defaultValue
+ * the defaultValue to set
*/
public void setDefaultColumn(String defaultColumn) {
this.defaultColumn = defaultColumn;
}
-
+
/**
* @return the value
*/
public String getValue() {
return value;
}
-
-
+
@Override
public void setValue(String value) {
this.value = value;
}
+ @Override
+ public String toString() {
+ return "ColumnParameter [referredTabularParameterName="
+ + referredTabularParameterName + ", defaultColumn="
+ + defaultColumn + ", value=" + value + ", name=" + name
+ + ", description=" + description + ", typology=" + typology
+ + "]";
+ }
+
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/EnumParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/EnumParameter.java
index 98d144b..94574f9 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/EnumParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/EnumParameter.java
@@ -17,9 +17,9 @@ import com.google.gwt.user.client.rpc.IsSerializable;
public class EnumParameter extends Parameter implements IsSerializable {
private static final long serialVersionUID = 1673874854501249519L;
- List values = new ArrayList();
- String defaultValue;
- String value;
+ private List values = new ArrayList();
+ private String defaultValue;
+ private String value;
/**
@@ -74,6 +74,8 @@ public class EnumParameter extends Parameter implements IsSerializable {
this.values.add(value);
}
+
+
/**
* @return the value
*/
@@ -88,4 +90,15 @@ public class EnumParameter extends Parameter implements IsSerializable {
this.value = value;
}
+ @Override
+ public String toString() {
+ return "EnumParameter [values=" + values + ", defaultValue="
+ + defaultValue + ", value=" + value + ", name=" + name
+ + ", description=" + description + ", typology=" + typology
+ + "]";
+ }
+
+
+
+
}
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 322eb35..981c089 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
@@ -70,14 +70,18 @@ public class FileParameter extends Parameter implements IsSerializable {
public void setValue(String value) {
this.value=value;
}
+
+
@Override
public String toString() {
return "FileParameter [value=" + value + ", defaultMimeType="
+ defaultMimeType + ", supportedMimeTypes="
- + supportedMimeTypes + "]";
+ + supportedMimeTypes + ", name=" + name + ", description="
+ + description + ", typology=" + typology + "]";
}
+
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ListParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ListParameter.java
index 4be6000..4be57ee 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ListParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ListParameter.java
@@ -5,11 +5,10 @@ package org.gcube.portlets.user.dataminermanager.shared.parameters;
import com.google.gwt.user.client.rpc.IsSerializable;
-
/**
*
- * @author Giancarlo Panichi
- * email: g.panichi@isti.cnr.it
+ * @author Giancarlo Panichi email: g.panichi@isti.cnr.it
*
*/
public class ListParameter extends Parameter implements IsSerializable {
@@ -31,38 +30,38 @@ public class ListParameter extends Parameter implements IsSerializable {
* @param defaultValue
* @param value
*/
- public ListParameter(String name, String description, String type, String separator) {
+ public ListParameter(String name, String description, String type,
+ String separator) {
super(name, ParameterTypology.LIST, description);
this.type = type;
this.separator = separator;
}
-
+
/**
* @return the type
*/
public String getType() {
return type;
}
-
+
/**
- * @param type the type to set
+ * @param type
+ * the type to set
*/
public void setType(String type) {
this.type = type;
}
-
-
+
@Override
public void setValue(String value) {
this.value = value;
}
-
-
+
@Override
public String getValue() {
return value;
}
-
+
/**
* @return the separator
*/
@@ -70,6 +69,10 @@ public class ListParameter extends Parameter implements IsSerializable {
return separator;
}
+ public void setSeparator(String separator) {
+ this.separator = separator;
+ }
+
@Override
public String toString() {
return "ListParameter [type=" + type + ", value=" + value
@@ -77,7 +80,5 @@ public class ListParameter extends Parameter implements IsSerializable {
+ ", description=" + description + ", typology=" + typology
+ "]";
}
-
-
-
+
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ObjectParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ObjectParameter.java
index a8341b4..476c55f 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ObjectParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/ObjectParameter.java
@@ -86,5 +86,6 @@ public class ObjectParameter extends Parameter implements IsSerializable {
+
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/Parameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/Parameter.java
index d9c0cd8..f964187 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/Parameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/Parameter.java
@@ -19,7 +19,7 @@ public abstract class Parameter implements Serializable {
private static final long serialVersionUID = -555286289487491703L;
public enum ParameterTypology {
- OBJECT, TABULAR, FILE, ENUM, LIST, COLUMN, COLUMN_LIST, TABULAR_LIST
+ OBJECT, TABULAR, FILE, ENUM, LIST, COLUMN, COLUMN_LIST, TABULAR_LIST, WKT
};
protected String name;
@@ -89,38 +89,6 @@ public abstract class Parameter implements Serializable {
this.description = description;
}
- public boolean isObject() {
- return this.typology == ParameterTypology.OBJECT;
- }
-
- public boolean isTabular() {
- return this.typology == ParameterTypology.TABULAR;
- }
-
- public boolean isFile() {
- return this.typology == ParameterTypology.FILE;
- }
-
- public boolean isEnum() {
- return this.typology == ParameterTypology.ENUM;
- }
-
- public boolean isList() {
- return this.typology == ParameterTypology.LIST;
- }
-
- public boolean isColumn() {
- return this.typology == ParameterTypology.COLUMN;
- }
-
- public boolean isColumnList() {
- return this.typology == ParameterTypology.COLUMN_LIST;
- }
-
- public boolean isTabularList() {
- return this.typology == ParameterTypology.TABULAR_LIST;
- }
-
@Override
public String toString() {
return "Parameter [name=" + name + ", description=" + description
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/TabularListParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/TabularListParameter.java
index 56a2551..3faf92d 100644
--- a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/TabularListParameter.java
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/TabularListParameter.java
@@ -102,7 +102,10 @@ public class TabularListParameter extends Parameter implements Serializable {
return "TabularListParameter [value=" + value + ", separator="
+ separator + ", templates=" + templates + ", defaultMimeType="
+ defaultMimeType + ", supportedMimeTypes="
- + supportedMimeTypes + "]";
+ + supportedMimeTypes + ", name=" + name + ", description="
+ + description + ", typology=" + typology + "]";
}
+
+
}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/WKTGeometryType.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/WKTGeometryType.java
new file mode 100644
index 0000000..6fc61c9
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/WKTGeometryType.java
@@ -0,0 +1,60 @@
+package org.gcube.portlets.user.dataminermanager.shared.parameters;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ *
+ * @author Giancarlo Panichi
+ * email: g.panichi@isti.cnr.it
+ *
+ */
+public enum WKTGeometryType {
+ Point("Point"), LineString("LineString"), Polygon("Polygon"), Circle(
+ "Circle"), Triangle("Triangle"), Square("Square"), Pentagon(
+ "Pentagon"), Hexagon("Hexagon"), Box("Box");
+
+ /**
+ * @param text
+ */
+ private WKTGeometryType(final String label) {
+ this.label = label;
+ }
+
+ private final String label;
+
+ @Override
+ public String toString() {
+ return label;
+ }
+
+ public String getLabel() {
+ return label;
+ }
+
+ public String getId() {
+ return name();
+ }
+
+ /**
+ *
+ * @param label
+ * @return
+ */
+ public static WKTGeometryType getFromLabel(String label) {
+ if (label == null || label.isEmpty())
+ return null;
+
+ for (WKTGeometryType type : values()) {
+ if (type.label.compareToIgnoreCase(label) == 0) {
+ return type;
+ }
+ }
+ return null;
+ }
+
+ public static List asList() {
+ List list = Arrays.asList(values());
+ return list;
+ }
+}
diff --git a/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/WKTParameter.java b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/WKTParameter.java
new file mode 100644
index 0000000..d79314d
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/user/dataminermanager/shared/parameters/WKTParameter.java
@@ -0,0 +1,94 @@
+/**
+ *
+ */
+package org.gcube.portlets.user.dataminermanager.shared.parameters;
+
+import com.google.gwt.user.client.rpc.IsSerializable;
+
+/**
+ *
+ * @author Giancarlo Panichi email: g.panichi@isti.cnr.it
+ *
+ */
+public class WKTParameter extends Parameter implements IsSerializable {
+
+ private static final long serialVersionUID = 1673874854501249519L;
+ private WKTGeometryType wktGeometryType;
+ private String defaultValue;
+ private String value;
+
+ /**
+ *
+ */
+ public WKTParameter() {
+ super();
+ this.typology = ParameterTypology.WKT;
+ }
+
+ /**
+ * @param type
+ * @param defaultValue
+ * @param value
+ */
+ public WKTParameter(String name, String description,
+ WKTGeometryType wktGeometryType, String defaultValue) {
+ super(name, ParameterTypology.WKT, description);
+ this.wktGeometryType = wktGeometryType;
+ this.defaultValue = defaultValue;
+ }
+
+ /**
+ * @return the defaultValue
+ */
+ public String getDefaultValue() {
+ return defaultValue;
+ }
+
+ /**
+ * @param defaultValue
+ * the defaultValue to set
+ */
+ public void setDefaultValue(String defaultValue) {
+ this.defaultValue = defaultValue;
+ }
+
+ /**
+ *
+ * @return the WKT Geometry Type
+ */
+ public WKTGeometryType getWktGeometryType() {
+ return wktGeometryType;
+ }
+
+ /**
+ *
+ * @param wktGeometryType
+ * set the WKT Geometry Type
+ */
+ public void setWktGeometryType(WKTGeometryType wktGeometryType) {
+ this.wktGeometryType = wktGeometryType;
+ }
+
+ /**
+ * @return the value
+ */
+ @Override
+ public String getValue() {
+ return value;
+ }
+
+ @Override
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ @Override
+ public String toString() {
+ return "WKTParameter [wktGeometryType=" + wktGeometryType
+ + ", defaultValue=" + defaultValue + ", value=" + value
+ + ", name=" + name + ", description=" + description
+ + ", typology=" + typology + "]";
+ }
+
+}
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 56980e7..36e1280 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
@@ -14,12 +14,12 @@
-
+
-
+
+
+
@@ -29,32 +29,19 @@
name="org.gcube.portlets.widgets.workspaceuploader.WorkspaceUploader" />
-
-
-
-
-
-
-
-
-
+
+
-
-
+
+
diff --git a/src/main/webapp/DataMinerManager.css b/src/main/webapp/DataMinerManager.css
index 106f5a2..6faa4b1 100644
--- a/src/main/webapp/DataMinerManager.css
+++ b/src/main/webapp/DataMinerManager.css
@@ -1,4 +1,13 @@
/* FIX FOR Portal Theme */
+/* OpenLayer Form fix */
+#wkt-geometry-text-area {
+ width: 400px !important;
+}
+
+#combo-geometry-type {
+ width: 406px !important;
+}
+
.aui body {
color: #000;
font-weight: normal !important;
@@ -40,7 +49,7 @@
}
.aui ul, .aui ol {
- margin: 0px !important;
+ margin: 0px !important;
}
/* Data Miner */
diff --git a/src/main/webapp/DataMinerManager.html b/src/main/webapp/DataMinerManager.html
index d1223f7..b884eff 100644
--- a/src/main/webapp/DataMinerManager.html
+++ b/src/main/webapp/DataMinerManager.html
@@ -7,10 +7,15 @@
+
Data Miner Manager
+
+
+
+
+ src='<%=request.getContextPath()%>/dataminermanager/js/jquery-1.11.0.min.js'>
+
-