diff --git a/src/main/java/org/hbp/mip/controllers/ExperimentApi.java b/src/main/java/org/hbp/mip/controllers/ExperimentApi.java index 69fd8c26b60b60369893a575f44b35f71d7e4464..99275314da2f0fdd068157e99e927b57aa949ca8 100644 --- a/src/main/java/org/hbp/mip/controllers/ExperimentApi.java +++ b/src/main/java/org/hbp/mip/controllers/ExperimentApi.java @@ -22,6 +22,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; +import java.util.Date; import java.util.List; import java.util.UUID; @@ -267,10 +268,10 @@ public class ExperimentApi { new Thread() { @Override public void run() { - String url = experimentUrl; - String query = experiment.computeQuery(); + String url = experimentUrl; + String query = experiment.computeQuery(); - // Results are stored in the experiment object + // Results are stored in the experiment object try { executeExperiment(url, query, experiment); } catch (IOException e) { @@ -278,8 +279,7 @@ public class ExperimentApi { LOGGER.warn("Experiment failed to run properly !"); setExperimentError(e, experiment); } - - experiment.finish(); + finishExpermient(experiment); } }.start(); } @@ -305,12 +305,17 @@ public class ExperimentApi { { experiment.setResult("Unsupported variables !"); } - - experiment.finish(); + finishExpermient(experiment); } }.start(); } + private void finishExpermient(Experiment experiment) + { + experiment.setFinished(new Date()); + experimentRepository.save(experiment); + } + private static void executeExperiment(String url, String query, Experiment experiment) throws IOException { StringBuilder results = new StringBuilder(); int code = HTTPUtil.sendPost(url, query, results); diff --git a/src/main/java/org/hbp/mip/model/Experiment.java b/src/main/java/org/hbp/mip/model/Experiment.java index 8194151b0831928367e1cbd11e376d9010a3a126..f42ffbd6cbc11aa6e297bde4adfdc383b23ea5dd 100644 --- a/src/main/java/org/hbp/mip/model/Experiment.java +++ b/src/main/java/org/hbp/mip/model/Experiment.java @@ -6,9 +6,7 @@ import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.annotations.Expose; import org.apache.log4j.Logger; -import org.hbp.mip.repositories.ExperimentRepository; import org.hibernate.annotations.Cascade; -import org.springframework.beans.factory.annotation.Autowired; import javax.persistence.*; import java.util.Date; @@ -31,10 +29,6 @@ public class Experiment { .excludeFieldsWithoutExposeAnnotation() .create(); - @Autowired - @Transient - ExperimentRepository experimentRepository; - @Id @Column(columnDefinition = "uuid") @org.hibernate.annotations.Type(type="pg-uuid") @@ -145,11 +139,6 @@ public class Experiment { return new Gson().toJson(queryElements); } - public void finish() { - this.setFinished(new Date()); - experimentRepository.save(this); - } - public String getValidations() { return validations; }