Fixed Algorithms to support DataMiner
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/databases-manager-portlet@133940 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
de3eca7c72
commit
8edb54d341
|
@ -16,17 +16,20 @@ public class Row extends BaseModelData implements Serializable {
|
||||||
public Row() {
|
public Row() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Row(List<String> attributes, List<String> values, int index) throws Exception{
|
public Row(List<String> attributes, List<String> values, int index)
|
||||||
|
throws Exception {
|
||||||
set("index", index);
|
set("index", index);
|
||||||
for (int i = 0; i < attributes.size(); i++) {
|
if (attributes != null && !attributes.isEmpty() && values != null
|
||||||
set(attributes.get(i), values.get(i));
|
&& !values.isEmpty()){
|
||||||
// print check
|
int limit;
|
||||||
// System.out.println("attribute: " + attributes.get(i) + " value: "
|
if(attributes.size()>=values.size()){
|
||||||
// + values.get(i));
|
limit=values.size();
|
||||||
|
} else {
|
||||||
// print check
|
limit=attributes.size();
|
||||||
// rootLogger.log(Level.INFO, "Row-> attribute: "
|
}
|
||||||
// +attributes.get(i)+ "value: " + values.get(i));
|
for (int i = 0; i < limit; i++) {
|
||||||
|
set(attributes.get(i), values.get(i));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -56,5 +56,14 @@ public class SubmitQueryResultWithFileFromServlet extends BaseModelData
|
||||||
public int getSubmitQueryTotalRows(){
|
public int getSubmitQueryTotalRows(){
|
||||||
return get("submitQueryTotalRows");
|
return get("submitQueryTotalRows");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "SubmitQueryResultWithFileFromServlet [attributes=" + attributes
|
||||||
|
+ ", convertedQuery=" + convertedQuery + ", urlFile=" + urlFile
|
||||||
|
+ ", submitQueryTotalRows=" + submitQueryTotalRows + "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -83,7 +83,12 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||||
|
|
||||||
//class that represents the container of all components
|
//class that represents the container of all components
|
||||||
public class GxtBorderLayoutPanel extends ContentPanel {
|
public class GxtBorderLayoutPanel extends ContentPanel {
|
||||||
|
private static final String CREATE_TABLE_STATEMENT = "Create Table Statement";
|
||||||
|
private static final String NAME_OF_COLUMNS = "Name Of Columns";
|
||||||
|
private static final String ROWS_NUMBER = "Rows Number";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Create Root Logger */
|
/* Create Root Logger */
|
||||||
private static Logger rootLogger = Logger.getLogger("GxtBorderLayoutPanel");
|
private static Logger rootLogger = Logger.getLogger("GxtBorderLayoutPanel");
|
||||||
private ContentPanel north;
|
private ContentPanel north;
|
||||||
|
@ -868,20 +873,6 @@ public class GxtBorderLayoutPanel extends ContentPanel {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Listener<MessageBoxEvent> l = new
|
|
||||||
// Listener<MessageBoxEvent>() {
|
|
||||||
// public void handleEvent(MessageBoxEvent ce) {
|
|
||||||
// // Button btn = ce.getButtonClicked();
|
|
||||||
// // Info.display("MessageBox",
|
|
||||||
// // "The '{0}' button was pressed",
|
|
||||||
// // btn.getHtml());
|
|
||||||
// // Button btn = ce.getButtonClicked();
|
|
||||||
//
|
|
||||||
// if (form.getBody().isMasked())
|
|
||||||
// form.getBody().unmask();
|
|
||||||
// }
|
|
||||||
// };
|
|
||||||
|
|
||||||
if (!(caught.getMessage().equals("ServerException"))) {
|
if (!(caught.getMessage().equals("ServerException"))) {
|
||||||
if (caught.getMessage().contains(
|
if (caught.getMessage().contains(
|
||||||
"Result not available")) {
|
"Result not available")) {
|
||||||
|
@ -893,12 +884,6 @@ public class GxtBorderLayoutPanel extends ContentPanel {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// if (!(caught instanceof
|
|
||||||
// javax.xml.ws.soap.SOAPFaultException)){
|
|
||||||
// MessageBox.alert("Error ",
|
|
||||||
// "<br/>Message:" + caught.getMessage(), l);
|
|
||||||
// }
|
|
||||||
|
|
||||||
if (form.getBody().isMasked())
|
if (form.getBody().isMasked())
|
||||||
form.getBody().unmask();
|
form.getBody().unmask();
|
||||||
|
|
||||||
|
@ -947,52 +932,14 @@ public class GxtBorderLayoutPanel extends ContentPanel {
|
||||||
} else {
|
} else {
|
||||||
query = obj.getConvertedQuery();
|
query = obj.getConvertedQuery();
|
||||||
}
|
}
|
||||||
// if ((listAttributes == null)
|
|
||||||
// || (listAttributes.size() == 0)) {
|
|
||||||
//
|
|
||||||
// // if (form.getBody().isMasked())
|
|
||||||
// // form.getBody().unmask();
|
|
||||||
//
|
|
||||||
// rootLogger.log(Level.SEVERE,
|
|
||||||
// "No results have been returned");
|
|
||||||
//
|
|
||||||
// MessageBox.alert("Error ", "<br/>Message:"
|
|
||||||
// + "Result not available", null);
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
|
|
||||||
rootLogger.log(Level.SEVERE,
|
rootLogger.log(Level.SEVERE,
|
||||||
"SUCCESS RPC submitQuery");
|
"SUCCESS RPC submitQuery");
|
||||||
rootLogger.log(Level.SEVERE, "output size: "
|
rootLogger.log(Level.SEVERE, "output size: "
|
||||||
+ listAttributes.size());
|
+ listAttributes.size());
|
||||||
|
|
||||||
// recover query
|
|
||||||
// Result query = result.remove(0);
|
|
||||||
// recover converted query
|
|
||||||
// Result convertedQuery;
|
|
||||||
|
|
||||||
// if (dataQuery.getSmartCorrection() == true) {
|
|
||||||
// result.remove(0);
|
|
||||||
// // convertedQuery = result.get(1);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// get the attributes list for the result table
|
|
||||||
// List<String> listAttributes = new
|
|
||||||
// ArrayList<String>();
|
|
||||||
// listAttributes = getListAttributes(result.get(0)
|
|
||||||
// .getValue());
|
|
||||||
// // remove the header in order to parse only the
|
|
||||||
// result
|
|
||||||
// result.remove(0);
|
|
||||||
|
|
||||||
// parse the result in order to obtain a table
|
|
||||||
// boolean submitQueryEventManaged = true;
|
|
||||||
// parseResult(result, form, dialogID,
|
|
||||||
// submitQueryEventManaged);
|
|
||||||
|
|
||||||
// parseSubmitQueryResult(result, form, dialogID,
|
|
||||||
// listAttributes, dataQuery.getQuery());
|
|
||||||
|
|
||||||
// get path
|
// get path
|
||||||
// String fileName = obj.getFileName();
|
// String fileName = obj.getFileName();
|
||||||
String urlFile = obj.getUrlFile();
|
String urlFile = obj.getUrlFile();
|
||||||
|
@ -2067,39 +2014,41 @@ public class GxtBorderLayoutPanel extends ContentPanel {
|
||||||
|
|
||||||
for (int i = 0; i < result.size(); i++) {
|
for (int i = 0; i < result.size(); i++) {
|
||||||
if (array[i].toString().contains(
|
if (array[i].toString().contains(
|
||||||
"CreateTable")) {
|
CREATE_TABLE_STATEMENT)) {
|
||||||
// recover the
|
// recover the
|
||||||
// showCreateTable
|
// showCreateTable
|
||||||
// statement
|
// statement
|
||||||
Result row = new Result(
|
Result row = new Result(
|
||||||
"Create statement", result.get(
|
CREATE_TABLE_STATEMENT, result.get(
|
||||||
array[i].toString())
|
array[i].toString())
|
||||||
.getName());
|
.getName());
|
||||||
TableDetails.add(row);
|
TableDetails.add(row);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (array[i].toString().contains(
|
if (array[i].toString().contains(
|
||||||
"Column Names")) {
|
NAME_OF_COLUMNS)) {
|
||||||
// recover the
|
// recover the
|
||||||
// column names
|
// column names
|
||||||
Result row = new Result("Column names",
|
Result row = new Result(NAME_OF_COLUMNS,
|
||||||
result.get(array[i].toString())
|
result.get(array[i].toString())
|
||||||
.getName());
|
.getName());
|
||||||
TableDetails.add(row);
|
TableDetails.add(row);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (array[i].toString().contains(
|
if (array[i].toString().contains(
|
||||||
"NumberRows")) {
|
ROWS_NUMBER)) {
|
||||||
// recover the
|
// recover the
|
||||||
// column names
|
// column names
|
||||||
Result row = new Result(
|
Result row = new Result(
|
||||||
"Number of rows", result.get(
|
ROWS_NUMBER, result.get(
|
||||||
array[i].toString())
|
array[i].toString())
|
||||||
.getName());
|
.getName());
|
||||||
TableDetails.add(row);
|
TableDetails.add(row);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
rootLogger.log(Level.INFO, "Table Details: "+TableDetails);
|
||||||
Table.setTableDetails(TableDetails);
|
Table.setTableDetails(TableDetails);
|
||||||
|
rootLogger.log(Level.INFO, "File Model: "+Table);
|
||||||
displayTableDetails(Table);
|
displayTableDetails(Table);
|
||||||
Table.setTableDetailsDisplayed(true);
|
Table.setTableDetailsDisplayed(true);
|
||||||
}
|
}
|
||||||
|
|
|
@ -632,7 +632,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
mapValues = outputData.getMapValues();
|
mapValues = outputData.getMapValues();
|
||||||
mapKeys = outputData.getmapKeys();
|
mapKeys = outputData.getmapKeys();
|
||||||
|
|
||||||
if (mapValues.size() != 0) {
|
if (mapValues != null && !mapValues.isEmpty()) {
|
||||||
output = new ArrayList<Result>();
|
output = new ArrayList<Result>();
|
||||||
|
|
||||||
// logger.info("build the result - started");
|
// logger.info("build the result - started");
|
||||||
|
@ -643,10 +643,6 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
output.add(row);
|
output.add(row);
|
||||||
}
|
}
|
||||||
|
|
||||||
// System.out.println("output size submit: " +
|
|
||||||
// output.size());
|
|
||||||
// logger.info("build the result - finished");
|
|
||||||
|
|
||||||
// get the converted query
|
// get the converted query
|
||||||
if (smartCorrectionQuery == true) {
|
if (smartCorrectionQuery == true) {
|
||||||
convertedQuery = output.get(0).getValue();
|
convertedQuery = output.get(0).getValue();
|
||||||
|
@ -697,6 +693,8 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
logger.debug("SubmitQuery Result: " + result);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
// e.printStackTrace();
|
// e.printStackTrace();
|
||||||
|
@ -1213,7 +1211,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
return outputParameters;
|
return outputParameters;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("dbmanager-> ", e);
|
logger.error("dbmanager getTableDetails-> ", e);
|
||||||
if (!(e instanceof StatisticalManagerException)) {
|
if (!(e instanceof StatisticalManagerException)) {
|
||||||
// GWT can't serialize all exceptions
|
// GWT can't serialize all exceptions
|
||||||
throw new Exception(
|
throw new Exception(
|
||||||
|
@ -1242,7 +1240,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
// get the key to retrieve the submitQuery result
|
// get the key to retrieve the submitQuery result
|
||||||
String key = getKeySubmitQueryResult(UID);
|
String key = getKeySubmitQueryResult(UID);
|
||||||
|
|
||||||
if ((key != null) && (!key.equals(""))) {
|
if ((key != null) && (!key.isEmpty())) {
|
||||||
// load data
|
// load data
|
||||||
|
|
||||||
// get data from cache
|
// get data from cache
|
||||||
|
@ -1275,6 +1273,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
int totalNumber = data.size();
|
int totalNumber = data.size();
|
||||||
sublist = new ArrayList<Row>(data.subList(start, limit));
|
sublist = new ArrayList<Row>(data.subList(start, limit));
|
||||||
|
|
||||||
loadResult = new BasePagingLoadResult<Row>(sublist,
|
loadResult = new BasePagingLoadResult<Row>(sublist,
|
||||||
config.getOffset(), totalNumber);
|
config.getOffset(), totalNumber);
|
||||||
|
|
||||||
|
@ -1333,23 +1332,25 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
// parse a csv row in a list of values
|
// parse a csv row in a list of values
|
||||||
@Override
|
@Override
|
||||||
public List<Row> parseCVSString(List<Result> result, List<String> attrNames)
|
public List<Row> parseCVSString(List<Result> results, List<String> attrNames)
|
||||||
throws Exception {
|
throws Exception {
|
||||||
|
|
||||||
List<Row> rows = null;
|
List<Row> rows = new ArrayList<Row>();
|
||||||
try {
|
try {
|
||||||
if (result != null) {
|
if (results != null && !results.isEmpty()) {
|
||||||
rows = new ArrayList<Row>();
|
for (int i = 0; i < results.size(); i++) {
|
||||||
for (int i = 0; i < result.size(); i++) {
|
Result res = results.get(i);
|
||||||
List<String> attrValues = parse(result.get(i).getValue());
|
if (res != null && res.getValue() != null) {
|
||||||
Row element = new Row(attrNames, attrValues, i);
|
List<String> attrValues = parse(res.getValue());
|
||||||
rows.add(element);
|
Row element = new Row(attrNames, attrValues, i);
|
||||||
|
rows.add(element);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return rows;
|
return rows;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("dbmanager-> ", e);
|
logger.error("dbmanager parse csv string-> ", e);
|
||||||
throw new Exception(e);
|
throw new Exception(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1407,7 +1408,7 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
// logger.info("server token: " + phrase);
|
// logger.info("server token: " + phrase);
|
||||||
// logger.info("size: " + elements.size());
|
// logger.info("size: " + elements.size());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("dbmanager-> ", e);
|
logger.error("dbmanager parse string-> ", e);
|
||||||
throw e;
|
throw e;
|
||||||
}
|
}
|
||||||
return elements;
|
return elements;
|
||||||
|
@ -1636,12 +1637,12 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
pars.add(par);
|
pars.add(par);
|
||||||
|
|
||||||
}
|
}
|
||||||
logger.debug("Parameters: "+pars);
|
logger.debug("Parameters: " + pars);
|
||||||
operator.setOperatorParameters(pars);
|
operator.setOperatorParameters(pars);
|
||||||
ComputationId computationId = sClient.startComputation(operator);
|
ComputationId computationId = sClient.startComputation(operator);
|
||||||
|
|
||||||
//float percentage = 0;
|
// float percentage = 0;
|
||||||
//String scope = scopeValue;
|
// String scope = scopeValue;
|
||||||
// String username = getUsername();
|
// String username = getUsername();
|
||||||
|
|
||||||
updateJobStatus(jobID, "computation started");
|
updateJobStatus(jobID, "computation started");
|
||||||
|
@ -1736,18 +1737,19 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
logger.info("dbmanager-> Http link of the generated File: "
|
logger.info("dbmanager-> Http link of the generated File: "
|
||||||
+ fileResource.getUrl());
|
+ fileResource.getUrl());
|
||||||
} else {
|
} else {
|
||||||
if (key.compareToIgnoreCase("Total Rows") == 0) {
|
ObjectResource objectResource = (ObjectResource) value;
|
||||||
ObjectResource objectResource = (ObjectResource) value;
|
if (objectResource.getName().compareToIgnoreCase(
|
||||||
|
"Total Rows") == 0) {
|
||||||
outputData.setSubmitQueryTotalRows(Integer
|
outputData.setSubmitQueryTotalRows(Integer
|
||||||
.parseInt(objectResource.getValue()));
|
.parseInt(objectResource.getValue()));
|
||||||
} else {
|
} else {
|
||||||
ObjectResource objectResource = (ObjectResource) value;
|
logger.debug("ObjectResource: " + value);
|
||||||
logger.debug("ObjectResource: "+value);
|
|
||||||
mapKeys.put(String.valueOf(i), value.getName());
|
mapKeys.put(String.valueOf(i), value.getName());
|
||||||
mapValues.put(String.valueOf(i),
|
mapValues.put(String.valueOf(i),
|
||||||
objectResource.getValue());
|
objectResource.getValue());
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2784,8 +2786,8 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
resource.setValue(resourceName);
|
resource.setValue(resourceName);
|
||||||
List<Parameter> inputParameters = new ArrayList<Parameter>();
|
List<Parameter> inputParameters = new ArrayList<Parameter>();
|
||||||
inputParameters.add(resource);
|
inputParameters.add(resource);
|
||||||
logger.debug("InputParameters: "+inputParameters);
|
logger.debug("InputParameters: " + inputParameters);
|
||||||
|
|
||||||
ComputationOutput outputData = new ComputationOutput();
|
ComputationOutput outputData = new ComputationOutput();
|
||||||
// computation id
|
// computation id
|
||||||
ComputationId computationId = startComputation(algorithmId,
|
ComputationId computationId = startComputation(algorithmId,
|
||||||
|
@ -2827,8 +2829,8 @@ public class GWTdbManagerServiceImpl extends RemoteServiceServlet implements
|
||||||
// + key);
|
// + key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.debug("dbmanager outputParameters-> "+outputParameters);
|
logger.debug("dbmanager outputParameters-> " + outputParameters);
|
||||||
|
|
||||||
return outputParameters;
|
return outputParameters;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
// e.printStackTrace();
|
// e.printStackTrace();
|
||||||
|
|
Loading…
Reference in New Issue