From 9bfeeee364648ac82b10010643ee1ec4eee28c39 Mon Sep 17 00:00:00 2001
From: Mirco Nasuti <mirco.nasuti@chuv.ch>
Date: Fri, 15 Jul 2016 10:39:56 +0200
Subject: [PATCH] bugfix dupplications in config variables when returning
 models

---
 .../org/hbp/mip/controllers/ModelsApi.java    | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/src/main/java/org/hbp/mip/controllers/ModelsApi.java b/src/main/java/org/hbp/mip/controllers/ModelsApi.java
index 7d7bee270..81a2d9890 100644
--- a/src/main/java/org/hbp/mip/controllers/ModelsApi.java
+++ b/src/main/java/org/hbp/mip/controllers/ModelsApi.java
@@ -177,6 +177,29 @@ public class ModelsApi {
             return new ResponseEntity<>(HttpStatus.FORBIDDEN);
         }
 
+        if(model != null)
+        {
+            List<String> yAxisVars = configRepository.findOne(model.getConfig().getId()).getyAxisVariables();
+            Collection<String> yAxisVarsColl = new LinkedHashSet<>(yAxisVars);
+            model.getConfig().setyAxisVariables(new LinkedList<>(yAxisVarsColl));
+
+            List<Variable> vars = queryRepository.findOne(model.getQuery().getId()).getVariables();
+            Collection<Variable> varsColl = new LinkedHashSet<>(vars);
+            model.getQuery().setVariables(new LinkedList<>(varsColl));
+
+            List<Variable> grpgs = queryRepository.findOne(model.getQuery().getId()).getGrouping();
+            Collection<Variable> grpgsColl = new LinkedHashSet<>(grpgs);
+            model.getQuery().setGrouping(new LinkedList<>(grpgsColl));
+
+            List<Variable> covars = queryRepository.findOne(model.getQuery().getId()).getCovariables();
+            Collection<Variable> covarsColl = new LinkedHashSet<>(covars);
+            model.getQuery().setCovariables(new LinkedList<>(covarsColl));
+
+            List<Filter> fltrs = queryRepository.findOne(model.getQuery().getId()).getFilters();
+            Collection<Filter> fltrsColl = new LinkedHashSet<>(fltrs);
+            model.getQuery().setFilters(new LinkedList<>(fltrsColl));
+        }
+
         return new ResponseEntity<>(HttpStatus.OK).ok(model);
     }
 
-- 
GitLab