alignment by GP between branch and trunk versions

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/data-analysis/EcologicalEngineExternalAlgorithms@98839 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Gianpaolo Coro 2014-07-21 14:56:31 +00:00
parent f6313e177e
commit f72b9dd732
11 changed files with 151 additions and 40 deletions

View File

@ -186,7 +186,7 @@ public class MapDwCA {
file.write("\t");
//scientificNameAuthorship
if (taxonomyItem.getScientificNameAuthorship()!= null)
if (taxonomyItem.getScientificNameAuthorship()!= null)
file.write(taxonomyItem.getScientificNameAuthorship());
file.write("\t");

View File

@ -128,48 +128,47 @@ public class ThreadExtractionOccFromSPD implements Runnable {
private ArrayList<String> crateRowTable(OccurrencePoint occurrence) {
ArrayList<String> infoOcc = new ArrayList<String>();
infoOcc.add(occurrence.getInstitutionCode().replace(",", " "));
infoOcc.add(occurrence.getCollectionCode().replace(",", " "));
infoOcc.add(occurrence.getCatalogueNumber().replace(",", " "));
infoOcc.add(occurrence.getDataSet().getName());
infoOcc.add(occurrence.getDataSet().getDataProvider().getName());
infoOcc.add(occurrence.getProvider());
try{infoOcc.add(occurrence.getInstitutionCode().replace(",", " "));}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getCollectionCode().replace(",", " "));}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getCatalogueNumber().replace(",", " "));}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getDataSet().getName());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getDataSet().getDataProvider().getName());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getProvider());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getScientificNameAuthorship());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getIdentifiedBy());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getCredits());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getRecordedBy());}catch(Exception e){infoOcc.add("");}
infoOcc.add(occurrence.getScientificNameAuthorship());
infoOcc.add(occurrence.getIdentifiedBy());
infoOcc.add(occurrence.getCredits());
infoOcc.add(occurrence.getRecordedBy());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
if (occurrence.getEventDate() == null
|| sdf.format(occurrence.getEventDate().getTime()).length() == 0)
infoOcc.add("");
else
infoOcc.add(sdf.format(occurrence.getEventDate().getTime()));
try{infoOcc.add(sdf.format(occurrence.getEventDate().getTime()));}catch(Exception e){infoOcc.add("");}
if (occurrence.getModified() == null
|| sdf.format(occurrence.getModified().getTime()).length() == 0)
infoOcc.add("");
else
infoOcc.add(sdf.format(occurrence.getModified().getTime()));
try{infoOcc.add(sdf.format(occurrence.getModified().getTime()));}catch(Exception e){infoOcc.add("");}
infoOcc.add(occurrence.getScientificName());
try{infoOcc.add(occurrence.getScientificName());}catch(Exception e){infoOcc.add("");}
infoOcc.add(occurrence.getKingdom());
infoOcc.add(occurrence.getFamily());
infoOcc.add(occurrence.getLocality());
infoOcc.add(occurrence.getCountry());
try{infoOcc.add(occurrence.getKingdom());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getFamily());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getLocality());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getCountry());}catch(Exception e){infoOcc.add("");}
infoOcc.add(occurrence.getCitation());
try{infoOcc.add(occurrence.getCitation());}catch(Exception e){infoOcc.add("");}
infoOcc.add(Double.toString(occurrence.getDecimalLatitude()));
try{infoOcc.add(Double.toString(occurrence.getDecimalLatitude()));}catch(Exception e){infoOcc.add("");}
infoOcc.add(Double.toString(occurrence.getDecimalLongitude()));
infoOcc.add(occurrence.getCoordinateUncertaintyInMeters());
infoOcc.add(Double.toString(occurrence.getMaxDepth()));
try{infoOcc.add(Double.toString(occurrence.getDecimalLongitude()));}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getCoordinateUncertaintyInMeters());}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(Double.toString(occurrence.getMaxDepth()));}catch(Exception e){infoOcc.add("");}
infoOcc.add(Double.toString(occurrence.getMinDepth()));
infoOcc.add(occurrence.getBasisOfRecord().toString());
try{infoOcc.add(Double.toString(occurrence.getMinDepth()));}catch(Exception e){infoOcc.add("");}
try{infoOcc.add(occurrence.getBasisOfRecord().toString());}catch(Exception e){infoOcc.add("");}
return infoOcc;

View File

@ -40,7 +40,6 @@ public class ThreadExtractionTaxaFromSPD implements Runnable {
this.scope=scope;
}
@ -72,7 +71,7 @@ public class ThreadExtractionTaxaFromSPD implements Runnable {
while (stream.hasNext()) {
i++;
TaxonomyItem ti = (TaxonomyItem) stream.next();
AnalysisLogger.getLogger().debug("Inside whiele: "+ti.toString());
// AnalysisLogger.getLogger().debug("Inside whiele: "+ti.toString());
taxaList.add(ti);
informations.add(crateRowTable(ti));

View File

@ -0,0 +1,115 @@
package org.gcube.dataanalysis;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.gcube.contentmanagement.lexicalmatcher.utils.AnalysisLogger;
import org.gcube.dataanalysis.ecoengine.configuration.AlgorithmConfiguration;
import org.gcube.dataanalysis.ecoengine.configuration.INFRASTRUCTURE;
import org.gcube.dataanalysis.ecoengine.datatypes.DatabaseType;
import org.gcube.dataanalysis.ecoengine.datatypes.PrimitiveType;
import org.gcube.dataanalysis.ecoengine.datatypes.StatisticalType;
import org.gcube.dataanalysis.ecoengine.datatypes.enumtypes.DatabaseParameters;
import org.gcube.dataanalysis.ecoengine.datatypes.enumtypes.PrimitiveTypes;
import org.gcube.dataanalysis.ecoengine.interfaces.Transducerer;
import org.gcube.dataanalysis.ecoengine.utils.ResourceFactory;
public abstract class StandardLocalExternalAlgorithm implements Transducerer {
protected AlgorithmConfiguration config;
protected float status = 0;
protected List<StatisticalType> inputs = new ArrayList<StatisticalType>();
protected ResourceFactory resourceManager;
protected LinkedHashMap<String, String> outputParameters = new LinkedHashMap<String, String>();
protected void addEnumerateInput(Object itemsList, String name, String description, String defaultvalue) {
inputs.add(new PrimitiveType(Enum.class.getName(), itemsList, PrimitiveTypes.ENUMERATED, name, description, defaultvalue));
}
protected void addRemoteDatabaseInput(String runtimeResourceName, String urlParameterName, String userParameterName, String passwordParameterName, String driverParameterName, String dialectParameterName) {
inputs.add(new DatabaseType(DatabaseParameters.REMOTEDATABASERRNAME,runtimeResourceName,"RR name"));
inputs.add(new DatabaseType(DatabaseParameters.REMOTEDATABASEURL,urlParameterName,""));
inputs.add(new DatabaseType(DatabaseParameters.REMOTEDATABASEUSERNAME,userParameterName,""));
inputs.add(new DatabaseType(DatabaseParameters.REMOTEDATABASEPASSWORD,passwordParameterName,""));
inputs.add(new DatabaseType(DatabaseParameters.REMOTEDATABASEDRIVER,driverParameterName,""));
inputs.add(new DatabaseType(DatabaseParameters.REMOTEDATABASEDIALECT,dialectParameterName,""));
}
protected void addStringInput(String name, String description, String defaultvalue) {
inputs.add(new PrimitiveType(String.class.getName(), null, PrimitiveTypes.STRING, name, description, defaultvalue));
}
protected void addOutputString(String name, String value) {
outputParameters.put(name, value);
}
@Override
public void compute() throws Exception {
AnalysisLogger.setLogger(config.getConfigPath() + AlgorithmConfiguration.defaultLoggerFile);
status = 0;
process();
status = 100;
}
protected void log(Object message){
AnalysisLogger.getLogger().trace(message);
}
@Override
public abstract void init() throws Exception;
@Override
public abstract String getDescription();
@Override
public INFRASTRUCTURE getInfrastructure() {
return INFRASTRUCTURE.LOCAL;
}
@Override
public List<StatisticalType> getInputParameters() {
setInputParameters();
return inputs;
}
protected String getInputParameter(String paramName) {
return config.getParam(paramName);
}
@Override
public StatisticalType getOutput() {
PrimitiveType p = new PrimitiveType(Map.class.getName(), PrimitiveType.stringMap2StatisticalMap(outputParameters), PrimitiveTypes.MAP, "Species Match","");
return p;
}
public String getResourceLoad() {
if (resourceManager == null)
resourceManager = new ResourceFactory();
return resourceManager.getResourceLoad(1);
}
@Override
public String getResources() {
return ResourceFactory.getResources(100f);
}
@Override
public float getStatus() {
return status;
}
protected abstract void process() throws Exception;
@Override
public void setConfiguration(AlgorithmConfiguration config) {
this.config = config;
}
protected abstract void setInputParameters();
@Override
public abstract void shutdown();
}

View File

@ -18,8 +18,7 @@ public class SimpleTest {
String[] matches = func.func_Taxamatch(genus, species, EQUAL, EQUAL, ip, user, password, db);
System.out.println("Match Number: "+matches[0]);
System.out.println("Match Names:"+matches[1]);
System.out.println("Match: "+matches[0]);
}
}

View File

@ -1,7 +1,7 @@
package org.gcube.dataanalysis.fin.taxamatch;
import org.gcube.contentmanagement.lexicalmatcher.utils.AnalysisLogger;
import org.gcube.dataanalysis.ecoengine.interfaces.StandardLocalExternalAlgorithm;
import org.gcube.dataanalysis.StandardLocalExternalAlgorithm;
import org.gcube.dataanalysis.taxamatch.fin.func_Taxamatch;
public class TaxaMatchTransducer extends StandardLocalExternalAlgorithm {
@ -21,7 +21,7 @@ public class TaxaMatchTransducer extends StandardLocalExternalAlgorithm {
@Override
public String getDescription() {
return "An algorithm for Taxa Names Matching with respect to the Fishbase database. Developed by the FishBase Information and Research Group.";
return "An algorithm for Taxa Matching with respect to the Fishbase database";
}
@Override
@ -55,8 +55,7 @@ public class TaxaMatchTransducer extends StandardLocalExternalAlgorithm {
String databaseUser = getInputParameter(userParameterName);
String databasePwd = getInputParameter(passwordParameterName);
log("Database Parameters to use: "+databaseIP+" "+databaseName+" "+databaseUser+" "+databasePwd);
log("Computing matching for " + genus + " " + species);
log("With operators: " + genusOperator + " " + speciesOperator);
if ((genus == null) || (species == null)) {

View File

@ -28,7 +28,7 @@ public static void main(String[] args) throws Exception {
config.setAgent("FIN_TAXA_MATCH");
config.setParam("Genus", "gadus");
config.setParam("Species", "");
config.setParam("ComparisonOperatorforGenus", "EQUAL");
config.setParam("ComparisonOperatorforSpecies", "EQUAL");

View File

@ -58,7 +58,7 @@ public class SpeciesObservationsAreaBarChart extends
"SpeciesObservationsAreaBarChart Initialization");
}
@Override
@Override
public String getDescription() {
return "An algorithm producing a bar chart for the distribution of a species along a certain type of marine area (e.g. LME or MEOW)";
}

View File

@ -62,7 +62,7 @@ public class SpeciesObservationsPerLMEAreaPerYearLineChart extends StandardLocal
String databaseUser=new String() ;
String databasePwd =new String();
@Override
@Override
protected void setInputParameters() {
addRemoteDatabaseInput("TrendyLyzerObis", urlParameterName,
@ -77,7 +77,6 @@ public class SpeciesObservationsPerLMEAreaPerYearLineChart extends StandardLocal
}
}
addEnumerateInput(LMEenumType.values(), area, "Choose the area name",
Util.formatAreaName("NORTH SEA"));

View File

@ -38,7 +38,7 @@ public class SpeciesObservationsPerMEOWAreaPerYearLineChart extends StandardLoca
static String userParameterName = "DatabaseUserName";
static String passwordParameterName = "DatabasePassword";
static String urlParameterName = "DatabaseURL";
private String yearStart = "Start_year";
private String yearStart = "Start_year";
private String yearEnd = "End_year";
private Hashtable areaTable= new Hashtable<String , String>();
private static String area = "Area_type";
@ -66,6 +66,7 @@ private String yearStart = "Start_year";
userParameterName, passwordParameterName, "driver", "dialect");
if(justcall==0)
{ justcall=1;
try {
queryArea(getStaticConnection());
} catch (Exception e) {

View File

@ -29,7 +29,7 @@ public class TaxaObservationsBarChartAlgorithm extends StandardLocalExternalAlg
static String userParameterName = "DatabaseUserName";
static String passwordParameterName = "DatabasePassword";
static String urlParameterName = "DatabaseURL";
private String yearStart = "Start_year";
private String yearStart = "Start_year";
private String yearEnd = "End_year";
private String taxa = "Level";
String tax;