External Algorithms Integration

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/data-analysis/EcologicalEngine@91866 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Gianpaolo Coro 2014-02-18 16:26:06 +00:00
parent 5b62f59761
commit a5e6187f3e
2 changed files with 12 additions and 1 deletions

View File

@ -22,6 +22,7 @@ public class DynamicTransducerersFactory {
public static Transducerer getTransducerer(AlgorithmConfiguration config) throws Exception {
String agent = config.getAgent();
Map<String,Transducerer> subTransducerers = getAllSubTransducerers(config);
AnalysisLogger.getLogger().debug("DynamicTransducerFactory: Getting the following Agent:"+agent+" From the list of N Transducers: "+subTransducerers.size());
Transducerer trans = subTransducerers.get(agent);
return trans;
}
@ -38,10 +39,12 @@ public class DynamicTransducerersFactory {
public static List<String> getAllDynamicTransducerers(AlgorithmConfiguration config) throws Exception {
List<String> trans = ProcessorsFactory.getClasses(config.getConfigPath() + AlgorithmConfiguration.dynamicTransducerersFile);
/*
if (trans!=null && trans.size()>0)
AnalysisLogger.getLogger().debug("Dynamic Transducerers Factory: Found "+trans.size()+" external connectors");
else
AnalysisLogger.getLogger().debug("Dynamic Transducerers Factory: No external connectors found!");
*/
return trans;
}
@ -56,6 +59,7 @@ public class DynamicTransducerersFactory {
for (String stransK:subtrans.keySet()){
Transducerer t = subtrans.get(stransK);
t.setConfiguration(config);
t.init();
transducerList.put(stransK,t);
}
}
@ -71,8 +75,10 @@ public class DynamicTransducerersFactory {
public static String getDescription(AlgorithmConfiguration config, String algorithmName) throws Exception{
Map<String,Transducerer> subTransducerers = getAllSubTransducerers(config);
Transducerer tr = subTransducerers.get(algorithmName);
if (tr != null)
if (tr != null){
tr.init();
return tr.getDescription();
}
else
return "";
}

View File

@ -3,6 +3,7 @@ package org.gcube.dataanalysis.ecoengine.processing.factories;
import java.util.ArrayList;
import java.util.List;
import org.gcube.contentmanagement.lexicalmatcher.utils.AnalysisLogger;
import org.gcube.dataanalysis.ecoengine.configuration.AlgorithmConfiguration;
import org.gcube.dataanalysis.ecoengine.datatypes.StatisticalType;
import org.gcube.dataanalysis.ecoengine.interfaces.ComputationalAgent;
@ -36,7 +37,9 @@ public class TransducerersFactory {
if (inputs != null)
return inputs;
else {
config.setAgent(algorithmName);
inputs = DynamicTransducerersFactory.getTransducerer(config).getInputParameters();
AnalysisLogger.getLogger().debug("Dynamic INPUTS:"+inputs);
return inputs;
}
}
@ -46,7 +49,9 @@ public class TransducerersFactory {
if (input!=null)
return input;
else{
config.setAgent(algorithmName);
input = DynamicTransducerersFactory.getTransducerer(config).getDescription();
AnalysisLogger.getLogger().debug("Dynamic DESCRIPTION:"+input);
return input;
}
}