Synch with SPD service changes
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/speciesdiscovery@74287 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
55bc2edf0e
commit
fdad47a790
|
@ -1,5 +1,5 @@
|
|||
eclipse.preferences.version=1
|
||||
jarsExcludedFromWebInfLib=
|
||||
lastWarOutDir=/home/francesco-mangiacrapa/wseclipse/speciesdiscovery(trunk)/target/species-discovery-3.0.0-SNAPSHOT
|
||||
lastWarOutDir=/home/fedy2/workspace/org.gcube.portlets.user.species-discovery/target/species-discovery-3.0.0-SNAPSHOT
|
||||
warSrcDir=src/main/webapp
|
||||
warSrcDirIsOutput=false
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
<wb-module deploy-name="${module}">
|
||||
<wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
|
||||
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
|
||||
|
|
23
pom.xml
23
pom.xml
|
@ -48,7 +48,14 @@
|
|||
<dependency>
|
||||
<groupId>org.gcube.data.spd</groupId>
|
||||
<artifactId>spd-client-library</artifactId>
|
||||
<version>[2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT)</version>
|
||||
<version>[3.0.0-SNAPSHOT, 4.0.0-SNAPSHOT)</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.gcube.data.spd</groupId>
|
||||
<artifactId>spd-model</artifactId>
|
||||
<version>[2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT)</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
|
@ -73,14 +80,6 @@
|
|||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.gcube.data.spd</groupId>
|
||||
<artifactId>spd-model</artifactId>
|
||||
<version>1.0.0-SNAPSHOT</version>
|
||||
<!-- <version>[1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT)</version> -->
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.gcube.resources.discovery</groupId>
|
||||
<artifactId>discovery-client</artifactId>
|
||||
|
@ -197,12 +196,6 @@
|
|||
<version>2.2.5</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.core</groupId>
|
||||
<artifactId>gcf</artifactId>
|
||||
<version>[1.4.0-SNAPSHOT, 2.0.0-SNAPSHOT)</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.portlets.user</groupId>
|
||||
<artifactId>gcube-widgets</artifactId>
|
||||
|
|
|
@ -25,9 +25,9 @@ import net.sf.csv4j.CSVWriter;
|
|||
import org.apache.log4j.Level;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.gcube.application.framework.core.session.ASLSession;
|
||||
import org.gcube.data.spd.model.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.ResultElement;
|
||||
import org.gcube.data.spd.model.TaxonomyItem;
|
||||
import org.gcube.data.spd.model.products.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.products.ResultElement;
|
||||
import org.gcube.data.spd.model.products.TaxonomyItem;
|
||||
import org.gcube.data.spd.stubs.types.Status;
|
||||
import org.gcube.portlets.user.homelibrary.home.HomeLibrary;
|
||||
import org.gcube.portlets.user.homelibrary.home.workspace.Workspace;
|
||||
|
|
|
@ -4,10 +4,10 @@
|
|||
package org.gcube.portlets.user.speciesdiscovery.server.service;
|
||||
|
||||
import org.gcube.application.framework.core.session.ASLSession;
|
||||
import org.gcube.data.spd.model.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.ResultElement;
|
||||
import org.gcube.data.spd.model.ResultItem;
|
||||
import org.gcube.data.spd.model.TaxonomyItem;
|
||||
import org.gcube.data.spd.model.products.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.products.ResultElement;
|
||||
import org.gcube.data.spd.model.products.ResultItem;
|
||||
import org.gcube.data.spd.model.products.TaxonomyItem;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.stream.CastConverter;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.stream.CloseableIterator;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.stream.ConversionIterator;
|
||||
|
|
|
@ -9,7 +9,7 @@ import java.util.List;
|
|||
|
||||
import org.apache.commons.lang.StringEscapeUtils;
|
||||
import org.gcube.data.spd.model.BasisOfRecord;
|
||||
import org.gcube.data.spd.model.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.products.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.util.ElementProperty;
|
||||
import org.gcube.portlets.user.speciesdiscovery.client.ConstantsSpeciesDiscovery;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.stream.Converter;
|
||||
|
|
|
@ -2,12 +2,11 @@ package org.gcube.portlets.user.speciesdiscovery.server.service;
|
|||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import org.gcube.data.spd.model.Properties;
|
||||
import org.gcube.data.spd.model.Property;
|
||||
import org.gcube.dataaccess.spql.ParserException;
|
||||
import org.gcube.dataaccess.spql.SPQLQueryParser;
|
||||
import org.gcube.portlets.user.speciesdiscovery.shared.Coordinate;
|
||||
import org.gcube.portlets.user.speciesdiscovery.shared.DataSourceModel;
|
||||
import org.gcube.portlets.user.speciesdiscovery.shared.SearchFilters;
|
||||
|
@ -51,21 +50,19 @@ public class QueryBuilder {
|
|||
}
|
||||
|
||||
|
||||
List<Property> properties = createFilterProperties(searchFilters);
|
||||
List<String> conditions = createFilterProperties(searchFilters);
|
||||
|
||||
//ADD filters
|
||||
if(properties.size()>0){
|
||||
if(conditions.size()>0){
|
||||
query.append("WHERE ");
|
||||
|
||||
Iterator<Property> pIterator = properties.iterator();
|
||||
while (pIterator.hasNext()) {
|
||||
Property property = pIterator.next();
|
||||
String statement = getQueryStatementFromProperty(property);
|
||||
query.append(statement);
|
||||
Iterator<String> conditionsIterator = conditions.iterator();
|
||||
while (conditionsIterator.hasNext()) {
|
||||
String condition = conditionsIterator.next();
|
||||
query.append(condition);
|
||||
|
||||
if (pIterator.hasNext()) query.append(" AND ");
|
||||
if (conditionsIterator.hasNext()) query.append(" AND ");
|
||||
else query.append(" ");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -73,67 +70,50 @@ public class QueryBuilder {
|
|||
query.append("RETURN ");
|
||||
if (searchFilters.getResultType()!=null) {
|
||||
switch (searchFilters.getResultType()) {
|
||||
case RESULTITEM: query.append("PRODUCT HAVING xpath(\"//product[type='OCCURRENCE' and counter>0]\")"); break;
|
||||
case TAXONOMYITEM: query.append("TAXON"); break;
|
||||
case RESULTITEM: query.append("Product HAVING xpath(\"//product[type='OCCURRENCE' and counter>0]\")"); break;
|
||||
case TAXONOMYITEM: query.append("Taxon"); break;
|
||||
}
|
||||
} else {
|
||||
query.append("PRODUCT HAVING xpath(\"//product[type='OCCURRENCE' and counter>0]\")");
|
||||
query.append("Product HAVING xpath(\"//product[type='OCCURRENCE' and counter>0]\")");
|
||||
}
|
||||
|
||||
return query.toString();
|
||||
|
||||
}
|
||||
|
||||
protected static String getQueryStatementFromProperty(Property property){
|
||||
|
||||
String statement = null;
|
||||
Properties prop = property.getProp();
|
||||
|
||||
switch (prop) {
|
||||
case CoordinateTo: {
|
||||
org.gcube.data.spd.model.Coordinate coordinate = (org.gcube.data.spd.model.Coordinate)property.getValue();
|
||||
statement= "coordinate <= " + coordinate.getLatitude() + " , "+coordinate.getLongitude();
|
||||
} break;
|
||||
case CoordinateFrom: {
|
||||
org.gcube.data.spd.model.Coordinate coordinate = (org.gcube.data.spd.model.Coordinate)property.getValue();
|
||||
statement= "coordinate >= " + coordinate.getLatitude() + " , "+coordinate.getLongitude();
|
||||
} break;
|
||||
case DateFrom: {
|
||||
Calendar calendar = (Calendar) property.getValue();
|
||||
statement= "eventDate >= '" + DATE_FORMAT.format(calendar.getTime())+"'";
|
||||
} break;
|
||||
case DateTo: {
|
||||
Calendar calendar = (Calendar) property.getValue();
|
||||
statement= "eventDate <= '" + DATE_FORMAT.format(calendar.getTime())+"'";
|
||||
}
|
||||
String builtQuery = query.toString();
|
||||
|
||||
System.out.println("built query: "+builtQuery);
|
||||
//FIXME TEST
|
||||
try {
|
||||
SPQLQueryParser.parse(builtQuery);
|
||||
} catch (ParserException e) {
|
||||
System.out.println("error parsing");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return statement;
|
||||
return builtQuery;
|
||||
|
||||
}
|
||||
|
||||
protected static List<Property> createFilterProperties(SearchFilters searchFilters)
|
||||
protected static List<String> createFilterProperties(SearchFilters searchFilters)
|
||||
{
|
||||
List<Property> properties = new ArrayList<Property>();
|
||||
if (searchFilters.getUpperBound()!=null) properties.add(new Property(Properties.CoordinateTo, convert(searchFilters.getUpperBound())));
|
||||
if (searchFilters.getLowerBound()!=null) properties.add(new Property(Properties.CoordinateFrom, convert(searchFilters.getLowerBound())));
|
||||
List<String> conditions = new ArrayList<String>();
|
||||
|
||||
if (searchFilters.getUpperBound()!=null) {
|
||||
Coordinate coordinate = searchFilters.getUpperBound();
|
||||
conditions.add("coordinate <= " + coordinate.getLatitude() + " , "+coordinate.getLongitude());
|
||||
}
|
||||
|
||||
if (searchFilters.getLowerBound()!=null) {
|
||||
Coordinate coordinate = searchFilters.getLowerBound();
|
||||
conditions.add("coordinate >= " + coordinate.getLatitude() + " , "+coordinate.getLongitude());
|
||||
}
|
||||
|
||||
if (searchFilters.getFromDate()!=null) {
|
||||
Calendar fromDate = Calendar.getInstance();
|
||||
fromDate.setTime(searchFilters.getFromDate());
|
||||
properties.add(new Property(Properties.DateFrom, fromDate));
|
||||
conditions.add("eventDate >= '" + DATE_FORMAT.format(searchFilters.getFromDate())+"'");
|
||||
}
|
||||
|
||||
if (searchFilters.getToDate()!=null) {
|
||||
Calendar toDate = Calendar.getInstance();
|
||||
toDate.setTime(searchFilters.getToDate());
|
||||
properties.add(new Property(Properties.DateTo, toDate));
|
||||
conditions.add("eventDate <= '" + DATE_FORMAT.format(searchFilters.getToDate())+"'");
|
||||
}
|
||||
|
||||
return properties;
|
||||
}
|
||||
|
||||
protected static org.gcube.data.spd.model.Coordinate convert(Coordinate coordinate)
|
||||
{
|
||||
return new org.gcube.data.spd.model.Coordinate(coordinate.getLatitude(), coordinate.getLongitude());
|
||||
return conditions;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,10 +8,11 @@ import java.util.List;
|
|||
|
||||
import org.gcube.application.framework.core.session.ASLSession;
|
||||
import org.gcube.common.core.utils.logging.GCUBEClientLog;
|
||||
import org.gcube.data.spd.model.DataProvider;
|
||||
import org.gcube.data.spd.model.DataSet;
|
||||
import org.gcube.data.spd.model.Product;
|
||||
import org.gcube.data.spd.model.ResultItem;
|
||||
import org.gcube.data.spd.model.products.DataProvider;
|
||||
import org.gcube.data.spd.model.products.DataSet;
|
||||
import org.gcube.data.spd.model.products.Product;
|
||||
import org.gcube.data.spd.model.products.ResultItem;
|
||||
import org.gcube.data.spd.model.products.TaxonomyInterface;
|
||||
import org.gcube.data.spd.model.util.ElementProperty;
|
||||
import org.gcube.portlets.user.speciesdiscovery.client.ConstantsSpeciesDiscovery;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.TaxonomySearchServiceImpl;
|
||||
|
@ -162,7 +163,7 @@ public class ResultItemConverter implements Converter<ResultItem, ResultRow> {
|
|||
return row;
|
||||
}
|
||||
|
||||
private String getBaseTaxonValue(String rank, org.gcube.data.spd.model.TaxonomyInterface taxon){
|
||||
private String getBaseTaxonValue(String rank, TaxonomyInterface taxon){
|
||||
|
||||
while(taxon!=null){
|
||||
|
||||
|
@ -176,7 +177,7 @@ public class ResultItemConverter implements Converter<ResultItem, ResultRow> {
|
|||
}
|
||||
|
||||
|
||||
protected List<Taxon> convertTaxon(org.gcube.data.spd.model.TaxonomyInterface taxon)
|
||||
protected List<Taxon> convertTaxon(TaxonomyInterface taxon)
|
||||
{
|
||||
List<Taxon> listTaxon = new ArrayList<Taxon>();
|
||||
int count=0;
|
||||
|
|
|
@ -8,10 +8,13 @@ import static org.gcube.data.streams.dsl.Streams.convert;
|
|||
|
||||
import java.io.InputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Calendar;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
@ -22,17 +25,17 @@ import org.gcube.data.spd.client.proxies.Classification;
|
|||
import org.gcube.data.spd.client.proxies.Executor;
|
||||
import org.gcube.data.spd.client.proxies.Manager;
|
||||
import org.gcube.data.spd.client.proxies.Occurrence;
|
||||
import org.gcube.data.spd.model.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.Properties;
|
||||
import org.gcube.data.spd.model.Property;
|
||||
import org.gcube.data.spd.model.ResultElement;
|
||||
import org.gcube.data.spd.model.TaxonomyItem;
|
||||
import org.gcube.data.spd.model.Condition;
|
||||
import org.gcube.data.spd.model.Conditions;
|
||||
import org.gcube.data.spd.model.PluginDescription;
|
||||
import org.gcube.data.spd.model.RepositoryInfo;
|
||||
import org.gcube.data.spd.model.products.OccurrencePoint;
|
||||
import org.gcube.data.spd.model.products.ResultElement;
|
||||
import org.gcube.data.spd.model.products.TaxonomyItem;
|
||||
import org.gcube.data.spd.model.util.Capabilities;
|
||||
import org.gcube.data.spd.stubs.exceptions.InvalidIdentifierException;
|
||||
import org.gcube.data.spd.stubs.types.CapabilityDescription;
|
||||
import org.gcube.data.spd.stubs.types.PluginDescription;
|
||||
import org.gcube.data.spd.stubs.types.PluginProperty;
|
||||
import org.gcube.data.spd.stubs.types.RepositoryInfo;
|
||||
import org.gcube.data.spd.stubs.types.Status;
|
||||
import org.gcube.data.streams.Stream;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.stream.CloseableIterator;
|
||||
|
@ -196,22 +199,23 @@ public class SpeciesService {
|
|||
for (int i = 0; i < plugin.size(); i++) {
|
||||
|
||||
PluginDescription pluginDescription = plugin.get(i);
|
||||
List<CapabilityDescription> listCapabilityDescription = pluginDescription.getCapabilities();
|
||||
|
||||
ArrayList<DataSourceCapability> listCapabilities = new ArrayList<DataSourceCapability>(); //new Array List DataSourceCapability
|
||||
ArrayList<DataSourceCapability> datasourceCapabilities = new ArrayList<DataSourceCapability>();
|
||||
|
||||
Map<Capabilities, List<Conditions>> pluginCapabilities = pluginDescription.getSupportedCapabilities();
|
||||
|
||||
logger.trace("getCapabilities for..." + pluginDescription.getName());
|
||||
for (CapabilityDescription capabilityDescription : listCapabilityDescription){
|
||||
List<String> properties = capabilityDescription.getProperties();
|
||||
ArrayList<String> listProperties = properties!=null?new ArrayList<String>(properties):new ArrayList<String>();
|
||||
ArrayList<SpeciesCapability> listPropertiesEnum = new ArrayList<SpeciesCapability>();
|
||||
|
||||
for (String property : listProperties)
|
||||
listPropertiesEnum.add(getFilterCapabilityFromProperties(property));
|
||||
|
||||
listCapabilities.add(new DataSourceCapability(getGxtCapabilityValueFromCapability(capabilityDescription.getName()), listPropertiesEnum));
|
||||
for (Entry<Capabilities, List<Conditions>> pluginCapability:pluginCapabilities.entrySet()) {
|
||||
|
||||
Capabilities capability = pluginCapability.getKey();
|
||||
|
||||
ArrayList<SpeciesCapability> datasourceProperties = new ArrayList<SpeciesCapability>();
|
||||
for (Conditions condition:pluginCapability.getValue()) datasourceProperties.addAll(getFilterCapabilityFromProperties(condition));
|
||||
|
||||
datasourceCapabilities.add(new DataSourceCapability(getGxtCapabilityValueFromCapability(capability), datasourceProperties));
|
||||
}
|
||||
|
||||
RepositoryInfo rep = pluginDescription.getRepositoryInfo();
|
||||
RepositoryInfo rep = pluginDescription.getInfo();
|
||||
|
||||
//CREATE DataSourceRepositoryInfo
|
||||
DataSourceRepositoryInfo dsInfo = new DataSourceRepositoryInfo();
|
||||
|
@ -219,7 +223,7 @@ public class SpeciesService {
|
|||
if(rep!=null){
|
||||
// System.out.println("DESCRIPTION REPOSITORY: " + rep.getDescription());
|
||||
dsInfo.setLogoUrl(rep.getLogoUrl());
|
||||
dsInfo.setPageUrl(rep.getReferencePageUrl());
|
||||
dsInfo.setPageUrl(rep.getPageReferenceUrl());
|
||||
dsInfo.setProperties(getPropertiesFromRepositoryInfoType(rep));
|
||||
dsInfo.setDescription(rep.getDescription());
|
||||
// dsInfo = new DataSourceRepositoryInfo(rep.getLogoUrl(), rep.getReferencePageUrl(),getPropertiesFromRepositoryInfoType(rep), rep.getDescription());
|
||||
|
@ -227,7 +231,7 @@ public class SpeciesService {
|
|||
// logger.trace("Repository description size: " + rep.getDescription().length());
|
||||
}
|
||||
|
||||
listDsModel.add(new DataSourceModel(pluginDescription.getName(), pluginDescription.getName(), pluginDescription.getDescription(), listCapabilities, dsInfo));
|
||||
listDsModel.add(new DataSourceModel(pluginDescription.getName(), pluginDescription.getName(), pluginDescription.getDescription(), datasourceCapabilities, dsInfo));
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -253,42 +257,34 @@ public class SpeciesService {
|
|||
return mapProperties;
|
||||
}
|
||||
|
||||
for (PluginProperty prop : rep.getProperties())
|
||||
|
||||
mapProperties.put(prop.getKey(), prop.getValue());
|
||||
|
||||
for (Entry<String, String> property : rep.getProperties().entrySet()) mapProperties.put(property.getKey(), property.getValue());
|
||||
|
||||
return mapProperties;
|
||||
}
|
||||
|
||||
private SpeciesCapability getFilterCapabilityFromProperties(String property){
|
||||
private List<SpeciesCapability> getFilterCapabilityFromProperties(Conditions property){
|
||||
|
||||
if(property.compareTo(Properties.DateFrom.name())==0)
|
||||
return SpeciesCapability.FROMDATE;
|
||||
else if(property.compareTo(Properties.DateTo.name())==0)
|
||||
return SpeciesCapability.TODATE;
|
||||
else if(property.compareTo(Properties.CoordinateTo.name())==0)
|
||||
return SpeciesCapability.UPPERBOUND;
|
||||
else if(property.compareTo(Properties.CoordinateFrom.name())==0)
|
||||
return SpeciesCapability.LOWERBOUND;
|
||||
switch (property) {
|
||||
case DATE: return Arrays.asList(SpeciesCapability.FROMDATE, SpeciesCapability.TODATE);
|
||||
case COORDINATE: return Arrays.asList(SpeciesCapability.UPPERBOUND, SpeciesCapability.LOWERBOUND);
|
||||
default: return Collections.singletonList(SpeciesCapability.UNKNOWN);
|
||||
|
||||
return SpeciesCapability.UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
private SpeciesCapability getGxtCapabilityValueFromCapability(String capability){
|
||||
private SpeciesCapability getGxtCapabilityValueFromCapability(Capabilities capability){
|
||||
|
||||
if(capability.compareTo(Capabilities.Classification.name())==0)
|
||||
return SpeciesCapability.TAXONOMYITEM;
|
||||
else if(capability.compareTo(Capabilities.Occurences.name())==0)
|
||||
return SpeciesCapability.RESULTITEM;
|
||||
else if(capability.compareTo(Capabilities.NamesMapping.name())==0)
|
||||
return SpeciesCapability.NAMESMAPPING;
|
||||
else if(capability.compareTo(Capabilities.Synonims.name())==0)
|
||||
return SpeciesCapability.SYNONYMS;
|
||||
|
||||
return SpeciesCapability.UNKNOWN;
|
||||
switch (capability) {
|
||||
case Classification: return SpeciesCapability.TAXONOMYITEM;
|
||||
case NamesMapping: return SpeciesCapability.NAMESMAPPING;
|
||||
case Occurences: return SpeciesCapability.RESULTITEM;
|
||||
case Synonims: return SpeciesCapability.SYNONYMS;
|
||||
default: return SpeciesCapability.UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
protected List<Property> createFilterProperties(SearchFilters searchFilters)
|
||||
/*protected List<Property> createFilterProperties(SearchFilters searchFilters)
|
||||
{
|
||||
List<Property> properties = new ArrayList<Property>();
|
||||
if (searchFilters.getUpperBound()!=null) properties.add(new Property(Properties.CoordinateTo, convertCoordinate(searchFilters.getUpperBound())));
|
||||
|
@ -306,7 +302,7 @@ public class SpeciesService {
|
|||
}
|
||||
|
||||
return properties;
|
||||
}
|
||||
}*/
|
||||
|
||||
protected org.gcube.data.spd.model.Coordinate convertCoordinate(Coordinate coordinate)
|
||||
{
|
||||
|
|
|
@ -5,7 +5,7 @@ import java.util.List;
|
|||
|
||||
import org.apache.log4j.Logger;
|
||||
import org.gcube.application.framework.core.session.ASLSession;
|
||||
import org.gcube.data.spd.model.TaxonomyItem;
|
||||
import org.gcube.data.spd.model.products.TaxonomyItem;
|
||||
import org.gcube.data.spd.model.util.ElementProperty;
|
||||
import org.gcube.portlets.user.speciesdiscovery.client.ConstantsSpeciesDiscovery;
|
||||
import org.gcube.portlets.user.speciesdiscovery.server.TaxonomySearchServiceImpl;
|
||||
|
|
Reference in New Issue