From 8e15c0418454d22ce0433aedb34df47f8d2e0c4e Mon Sep 17 00:00:00 2001 From: Manuel Spuhler <manuel.spuhler@chuv.ch> Date: Fri, 27 Apr 2018 16:12:17 +0200 Subject: [PATCH] Parsing for exareme algorithm --- .../eu/hbp/mip/controllers/ExperimentApi.java | 4 ---- .../java/eu/hbp/mip/model/Experiment.java | 19 ++++++++++++++----- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java b/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java index 43c806378..8ffd66a77 100644 --- a/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java +++ b/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java @@ -308,10 +308,6 @@ public class ExperimentApi extends WokenClientController { experiment.setHasServerError(true); experiment.setResult(e.getMessage()); } - if(!JSONUtil.isJSONValid(experiment.getResult())) - { - experiment.setResult("Unsupported variables !"); - } finishExperiment(experiment); }).start(); // << Temporary diff --git a/src/main/java/eu/hbp/mip/model/Experiment.java b/src/main/java/eu/hbp/mip/model/Experiment.java index 727f26ddb..2ffe3196f 100644 --- a/src/main/java/eu/hbp/mip/model/Experiment.java +++ b/src/main/java/eu/hbp/mip/model/Experiment.java @@ -270,6 +270,7 @@ public class Experiment { ExaremeQueryElement datasetsEl = new ExaremeQueryElement(); datasetsEl.setName("dataset"); datasetsEl.setDesc(""); + //datasetsEl.setValue("adni,ppmi,edsd,fbf,clm"); datasetsEl.setValue(datasets.toString()); queryElements.add(datasetsEl); @@ -304,15 +305,23 @@ public class Experiment { } else { JsonArray jsonArrayResult = new JsonArray(); JsonObject jsonObjectResult = new JsonObject(); - exp.remove("result"); - - JsonObject jsonData = parser.parse(this.result).getAsJsonArray().get(0).getAsJsonObject(); - jsonObjectResult.add("data", jsonData); JsonObject algoObject = parser.parse(this.algorithms).getAsJsonArray().get(0).getAsJsonObject(); jsonObjectResult.add("algorithm", algoObject.get("name")); jsonObjectResult.add("code", algoObject.get("code")); + exp.remove("result"); + JsonObject tryJson; + try { + tryJson = parser.parse(this.result).getAsJsonArray().get(0).getAsJsonObject(); + } catch(JsonParseException e) { + tryJson = new JsonObject(); + tryJson.add("result", new JsonPrimitive(this.result)); + } + + JsonObject jsonData = tryJson; + jsonObjectResult.add("data", jsonData); + // add mime-type String algo = isExaremeAlgorithm._2; if (jsonData.get("Error") != null) { @@ -461,6 +470,6 @@ public class Experiment { algorithm = WP_MODEL_TREE; } - return new Tuple2(isExareme, algorithm); + return new Tuple2<Boolean, String>(isExareme, algorithm); } } -- GitLab