diff --git a/src/main/java/org/gcube/portlets/user/databasesmanager/client/datamodel/SamplingResultWithFileFromServlet.java b/src/main/java/org/gcube/portlets/user/databasesmanager/client/datamodel/SamplingResultWithFileFromServlet.java index 55fc57d..31eb361 100644 --- a/src/main/java/org/gcube/portlets/user/databasesmanager/client/datamodel/SamplingResultWithFileFromServlet.java +++ b/src/main/java/org/gcube/portlets/user/databasesmanager/client/datamodel/SamplingResultWithFileFromServlet.java @@ -10,22 +10,31 @@ public class SamplingResultWithFileFromServlet extends BaseModelData implements private static final long serialVersionUID = 1L; private List output; - private String fileName; +// private String fileName; + private String urlFile; public SamplingResultWithFileFromServlet() { } - public SamplingResultWithFileFromServlet(List result, String fileName) { +// public SamplingResultWithFileFromServlet(List result, String fileName) { +// set("output", result); +// set("fileName", fileName); +// } + + public SamplingResultWithFileFromServlet(List result, String urlFile) { set("output", result); - set("fileName", fileName); + set("urlFile", urlFile); } public List getListOutput() { return get("output"); } - public String getFileName() { - return get("fileName"); - } +// public String getFileName() { +// return get("fileName"); +// } + public String getUrlFile(){ + return get("urlFile"); + } } diff --git a/src/main/java/org/gcube/portlets/user/databasesmanager/client/panels/GxtBorderLayoutPanel.java b/src/main/java/org/gcube/portlets/user/databasesmanager/client/panels/GxtBorderLayoutPanel.java index d1ce3c3..76cc28c 100644 --- a/src/main/java/org/gcube/portlets/user/databasesmanager/client/panels/GxtBorderLayoutPanel.java +++ b/src/main/java/org/gcube/portlets/user/databasesmanager/client/panels/GxtBorderLayoutPanel.java @@ -1401,10 +1401,11 @@ public class GxtBorderLayoutPanel extends ContentPanel { + result.size()); // get path - String fileName = samplingResult.getFileName(); +// String fileName = samplingResult.getFileName(); + String urlFile = samplingResult.getUrlFile(); // parse the result in order to obtain a // table - parseResult(result, listAttributes, fileName); + parseResult(result, listAttributes, urlFile); } else { MessageBox.alert("Error ", "
Message: " @@ -1520,10 +1521,11 @@ public class GxtBorderLayoutPanel extends ContentPanel { rootLogger.log(Level.SEVERE, "output size: " + result.size()); // get path - String fileName = samplingResult.getFileName(); +// String fileName = samplingResult.getFileName(); + String urlFile = samplingResult.getUrlFile(); // parse the result in order to obtain a // table - parseResult(result, listAttributes, fileName); + parseResult(result, listAttributes, urlFile); } else { MessageBox.alert("Error ", "
Message: " + "no data available", null); @@ -1641,10 +1643,11 @@ public class GxtBorderLayoutPanel extends ContentPanel { rootLogger.log(Level.SEVERE, "output size: " + result.size()); // get path - String fileName = samplingResult.getFileName(); +// String fileName = samplingResult.getFileName(); + String urlFile = samplingResult.getUrlFile(); // parse the result in order to obtain a // table - parseResult(result, listAttributes, fileName); + parseResult(result, listAttributes, urlFile); } else { MessageBox.alert("Error ", "
Message: " + "no data available", null); @@ -1660,7 +1663,7 @@ public class GxtBorderLayoutPanel extends ContentPanel { // start the parsing of the submit result in order to obtain a table private void parseResult(List result, - final List listAttributes, final String fileName) { + final List listAttributes, final String urlFile) { // to unmask the entire content panel final GxtBorderLayoutPanel obj = this; // final Dialog form = dialog; @@ -1778,10 +1781,10 @@ public class GxtBorderLayoutPanel extends ContentPanel { }); // add the button to download the result - final String urlFile = Window.Location - .getProtocol() - + "//" - + Window.Location.getHost() + fileName; +// final String urlFile = Window.Location +// .getProtocol() +// + "//" +// + Window.Location.getHost() + fileName; Button download = new Button("Download", new SelectionListener() { diff --git a/src/main/java/org/gcube/portlets/user/databasesmanager/server/GWTdbManagerServiceImpl.java b/src/main/java/org/gcube/portlets/user/databasesmanager/server/GWTdbManagerServiceImpl.java index 46157ff..2fc8780 100644 --- a/src/main/java/org/gcube/portlets/user/databasesmanager/server/GWTdbManagerServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/databasesmanager/server/GWTdbManagerServiceImpl.java @@ -714,7 +714,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements ComputationOutput outputData = new ComputationOutput(); //file name - String FileName = "QueryResult"+"_" + System.currentTimeMillis() + ".csv"; + String FileName = "QueryResult_" + System.currentTimeMillis() + ".csv"; // computation id String computationId = startComputation(algorithmId, @@ -865,6 +865,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements List inputParameters = new ArrayList(); // output sample result List output = new ArrayList(); +// List outputForFile = new ArrayList(); SamplingResultWithFileFromServlet result; String algorithmId = ConstantsPortlet.ALGID_SAMPLEONTABLE; @@ -954,9 +955,11 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements // start computation // create data structure ComputationOutput outputData = new ComputationOutput(); + //file name + String FileName = "Sampling_"+ System.currentTimeMillis() + ".csv"; // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, FileName); // print check on retrieving data // logger.info("output data retrieved"); @@ -972,20 +975,30 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements for (int i = 0; i < mapValues.size(); i++) { Result row = new Result(mapKeys.get(String.valueOf(i)), mapValues.get(String.valueOf(i))); - output.add(row); + + output.add(row); + //TODO ** COMMENTED + //row truncated +// Result rowForFile = new Result(mapKeys.get(String.valueOf(i)), +// mapValues.get(String.valueOf(i))); +// outputForFile.add(rowForFile); } - String name = "Sampling" + "_" + tab; - String fileName = storeResultIntoCSVFile(output, name); - - HttpServletRequest request = this.getThreadLocalRequest(); - String applicationPath = request.getContextPath(); - // logger.info("dbmanager-> Application Path: " + - // applicationPath); - String partialPathFile = applicationPath - + "/computationResult/" + fileName; - result = new SamplingResultWithFileFromServlet(output, - partialPathFile); + //TODO ** COMMENTED +// String name = "Sampling" + "_" + tab; +// String fileName = storeResultIntoCSVFile(outputForFile, name); +// +// HttpServletRequest request = this.getThreadLocalRequest(); +// String applicationPath = request.getContextPath(); +// // logger.info("dbmanager-> Application Path: " + +// // applicationPath); +// String partialPathFile = applicationPath +// + "/computationResult/" + fileName; +// result = new SamplingResultWithFileFromServlet(output, +// partialPathFile); + + String urlFile=outputData.getUrlFile(); + result = new SamplingResultWithFileFromServlet(output, urlFile); // put data in cache net.sf.ehcache.Element dataToCache = new net.sf.ehcache.Element( @@ -1110,9 +1123,12 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements smComputationQuerySamplingNumber++; // create data structure ComputationOutput outputData = new ComputationOutput(); + + //file name + String FileName = "SmartSampling_"+ System.currentTimeMillis() + ".csv"; // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, FileName); // print check on retrieving data // logger.info("dbmanager-> output data retrieved"); @@ -1131,17 +1147,21 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements output.add(row); } - String name = "SmartSampling" + "_" + tab; - String fileName = storeResultIntoCSVFile(output, name); - - HttpServletRequest request = this.getThreadLocalRequest(); - String applicationPath = request.getContextPath(); - // logger.info("dbmanager-> Application Path: " + - // applicationPath); - String partialPathFile = applicationPath - + "/computationResult/" + fileName; - result = new SamplingResultWithFileFromServlet(output, - partialPathFile); + //TODO ***COMMENTED +// String name = "SmartSampling" + "_" + tab; +// String fileName = storeResultIntoCSVFile(output, name); +// +// HttpServletRequest request = this.getThreadLocalRequest(); +// String applicationPath = request.getContextPath(); +// // logger.info("dbmanager-> Application Path: " + +// // applicationPath); +// String partialPathFile = applicationPath +// + "/computationResult/" + fileName; +// result = new SamplingResultWithFileFromServlet(output, +// partialPathFile); + + String urlFile=outputData.getUrlFile(); + result = new SamplingResultWithFileFromServlet(output, urlFile); // put data in cache net.sf.ehcache.Element dataToCache = new net.sf.ehcache.Element( @@ -1242,9 +1262,11 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements // create data structure ComputationOutput outputData = new ComputationOutput(); + //file name + String FileName = "RandomSampling_"+ System.currentTimeMillis() + ".csv"; // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, FileName); // print check on retrieving data // logger.info("dbmanager-> output data retrieved"); @@ -1263,16 +1285,20 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements output.add(row); } - String name = "RandomSampling" + "_" + tab; - String fileName = storeResultIntoCSVFile(output, name); - - HttpServletRequest request = this.getThreadLocalRequest(); - String applicationPath = request.getContextPath(); - // logger.info("dbmanager-> Application Path: " + applicationPath); - String partialPathFile = applicationPath + "/computationResult/" - + fileName; - SamplingResultWithFileFromServlet obj = new SamplingResultWithFileFromServlet( - output, partialPathFile); + //TODO ***COMMENTED +// String name = "RandomSampling" + "_" + tab; +// String fileName = storeResultIntoCSVFile(output, name); +// +// HttpServletRequest request = this.getThreadLocalRequest(); +// String applicationPath = request.getContextPath(); +// // logger.info("dbmanager-> Application Path: " + applicationPath); +// String partialPathFile = applicationPath + "/computationResult/" +// + fileName; +// SamplingResultWithFileFromServlet obj = new SamplingResultWithFileFromServlet( +// output, partialPathFile); + + String urlFile=outputData.getUrlFile(); + SamplingResultWithFileFromServlet obj = new SamplingResultWithFileFromServlet(output, urlFile); return obj; } catch (Exception e) { @@ -1339,7 +1365,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements ComputationOutput outputData = new ComputationOutput(); // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, null); // print check on retrieving data // logger.info("output data retrieved"); @@ -1781,9 +1807,9 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements private String startComputation(String algorithmName, List parameters, ComputationOutput outputData, - String scope) throws Exception { + String scope, String FileName) throws Exception { return startComputation(algorithmName, parameters, outputData, scope, - null, null); + null, FileName); } private String startComputation(String algorithmName, @@ -1991,8 +2017,8 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements if (smsubResType == SMResourceType.OBJECT) { SMObject obje = (SMObject) smres; String outstring = obje.url(); - // logger.info("key: " + smsubResType); - // logger.info("object: " + outstring); +// logger.info("key: " + smsubResType); +// logger.info("object: " + outstring); mapValues.put(String.valueOf(i), outstring); i++; } @@ -2277,7 +2303,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements } //check file name - if(elem.getFileName()==null){ + if(elem.getUrlFile()==null){ safe=false; logger.trace("dbmanager-> file name not safe"); // System.out.println("status variable safe: " + safe); @@ -2914,7 +2940,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements ComputationOutput outputData = new ComputationOutput(); // computationId String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, null); // print check // retrieve data @@ -2999,7 +3025,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements ComputationOutput outputData = new ComputationOutput(); // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, null); // print check // retrieve data @@ -3126,7 +3152,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements ComputationOutput outputData = new ComputationOutput(); // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, null); // print check // retrieve data @@ -3256,7 +3282,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements ComputationOutput outputData = new ComputationOutput(); // computation id String computationId = startComputation(algorithmId, - inputParameters, outputData, scope); + inputParameters, outputData, scope, null); // print check on retrieving data // logger.info("output data retrieved");