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'> + -