This commit is contained in:
Gianpaolo Coro 2015-11-01 19:44:36 +00:00
parent b3103d155f
commit 7cb9b55c8f
3 changed files with 15 additions and 11 deletions

View File

@ -5,12 +5,12 @@ public class DivaAnalysisGetResponse {
String identifier; String identifier;
Double vmin; Double vmin;
Double vmax; Double vmax;
Double stat_obs_count_used; Integer stat_obs_count_used;
Double stat_posteriori_stn; Double stat_posteriori_stn;
public DivaAnalysisGetResponse(String identifier, Double vmin, public DivaAnalysisGetResponse(String identifier, Double vmin,
Double vmax, Double vmax,
Double stat_obs_count_used, Integer stat_obs_count_used,
Double stat_posteriori_stn){ Double stat_posteriori_stn){
super(); super();
@ -48,11 +48,11 @@ public class DivaAnalysisGetResponse {
this.vmax = vmax; this.vmax = vmax;
} }
public Double getStat_obs_count_used() { public Integer getStat_obs_count_used() {
return stat_obs_count_used; return stat_obs_count_used;
} }
public void setStat_obs_count_used(Double stat_obs_count_used) { public void setStat_obs_count_used(Integer stat_obs_count_used) {
this.stat_obs_count_used = stat_obs_count_used; this.stat_obs_count_used = stat_obs_count_used;
} }

View File

@ -166,7 +166,7 @@ public class DivaHTTPClient {
String identifier = idNode.getAttributes().item(0).getNodeValue(); String identifier = idNode.getAttributes().item(0).getNodeValue();
Double vmin = Double.parseDouble(doc.getElementsByTagName("stat").item(0).getTextContent()); Double vmin = Double.parseDouble(doc.getElementsByTagName("stat").item(0).getTextContent());
Double vmax = Double.parseDouble(doc.getElementsByTagName("stat").item(1).getTextContent()); Double vmax = Double.parseDouble(doc.getElementsByTagName("stat").item(1).getTextContent());
Double stat_obs_count_used = Double.parseDouble(doc.getElementsByTagName("stat").item(2).getTextContent()); Integer stat_obs_count_used = Integer.parseInt(doc.getElementsByTagName("stat").item(2).getTextContent());
Double stat_posteriori_stn = Double.parseDouble(doc.getElementsByTagName("stat").item(3).getTextContent()); Double stat_posteriori_stn = Double.parseDouble(doc.getElementsByTagName("stat").item(3).getTextContent());
responseStream.close(); responseStream.close();

View File

@ -128,6 +128,7 @@ public class SeaDataNetConnector extends StandardLocalExternalAlgorithm {
+ config.getParam("Longitude") + "," + config.getParam("Latitude") + "," + config.getParam("Quantity") + " From " + getInputParameter("InputTable") + + config.getParam("Longitude") + "," + config.getParam("Latitude") + "," + config.getParam("Quantity") + " From " + getInputParameter("InputTable") +
" ORDER BY RANDOM() limit 100000"; " ORDER BY RANDOM() limit 100000";
status = 10;
AnalysisLogger.getLogger().debug("Query for extracting data from the DB: " + query); AnalysisLogger.getLogger().debug("Query for extracting data from the DB: " + query);
List<Object> dataList = DatabaseFactory.executeSQLQuery(query, dbconnection); List<Object> dataList = DatabaseFactory.executeSQLQuery(query, dbconnection);
int ndata = dataList.size(); int ndata = dataList.size();
@ -145,22 +146,24 @@ public class SeaDataNetConnector extends StandardLocalExternalAlgorithm {
// UPLOADFILE for DIVA // UPLOADFILE for DIVA
DivaFilePostResponse response = DivaHTTPClient.uploadFile(fileForDiva); DivaFilePostResponse response = DivaHTTPClient.uploadFile(fileForDiva);
AnalysisLogger.getLogger().debug("DIVA Server Response for the Upload:\n" + response.getSessionid()); AnalysisLogger.getLogger().debug("DIVA Server Response for the Upload:\n" + response.getSessionid());
status = 50;
AnalysisLogger.getLogger().debug("Requesting analysis to DIVA..."); AnalysisLogger.getLogger().debug("Requesting analysis to DIVA...");
long t0 = System.currentTimeMillis(); long t0 = System.currentTimeMillis();
DivaAnalysisGetResponse respAnalysis = DivaHTTPClient.getAnalysis(response.getSessionid(), correlationVal, signalNoiseVal, longMinVal, longMaxVal, longResolutionVal, latMinVal, latMaxVal, latResolutionVal, depthLevelVal); DivaAnalysisGetResponse respAnalysis = DivaHTTPClient.getAnalysis(response.getSessionid(), correlationVal, signalNoiseVal, longMinVal, longMaxVal, longResolutionVal, latMinVal, latMaxVal, latResolutionVal, depthLevelVal);
long t1 = System.currentTimeMillis(); long t1 = System.currentTimeMillis();
AnalysisLogger.getLogger().debug("Analysis finished in "+(t1-t0)+" ms"); AnalysisLogger.getLogger().debug("Analysis finished in "+(t1-t0)+" ms");
status = 80;
statResultMap.put("Minimum value of the analysis", "" + respAnalysis.getVmin()); statResultMap.put("Minimum value estimated by the model", "" + respAnalysis.getVmin());
statResultMap.put("Maximum value of the analysis", "" + respAnalysis.getVmax()); statResultMap.put("Maximum value estimated by the model", "" + respAnalysis.getVmax());
statResultMap.put("Number of observations used", "" + respAnalysis.getStat_obs_count_used()); statResultMap.put("Number of observations used", "" + respAnalysis.getStat_obs_count_used());
statResultMap.put("Posterior probability of the model", "" + respAnalysis.getStat_posteriori_stn()); statResultMap.put("A posteriori estimate of signal-to-noise ratio", "" + respAnalysis.getStat_posteriori_stn());
AnalysisLogger.getLogger().debug("Map of results to be returned: "+statResultMap); AnalysisLogger.getLogger().debug("Map of results to be returned: "+statResultMap);
AnalysisLogger.getLogger().debug("Downloading result file in "+neofile.getAbsolutePath()); AnalysisLogger.getLogger().debug("Downloading result file in "+neofile.getAbsolutePath());
// DOWNLOAD FILE // DOWNLOAD FILE
DivaHTTPClient.downloadFileDiva(respAnalysis.getIdentifier(), neofile.getAbsolutePath()); DivaHTTPClient.downloadFileDiva(respAnalysis.getIdentifier(), neofile.getAbsolutePath());
//put the output file in the output object
outputfile=neofile;
AnalysisLogger.getLogger().debug("Downloading finished"); AnalysisLogger.getLogger().debug("Downloading finished");
} catch (Exception e) { } catch (Exception e) {
if (neofile.exists()){ if (neofile.exists()){
@ -173,6 +176,7 @@ public class SeaDataNetConnector extends StandardLocalExternalAlgorithm {
fileForDiva.delete(); fileForDiva.delete();
AnalysisLogger.getLogger().debug("Input file "+fileForDiva.getAbsolutePath()+" deleted!"); AnalysisLogger.getLogger().debug("Input file "+fileForDiva.getAbsolutePath()+" deleted!");
} }
AnalysisLogger.getLogger().debug("DIVA process finished");
} }
} }