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;
     }