From 8f755e5d129d3e0ddfa7f20219b7d5058fc9ad5c Mon Sep 17 00:00:00 2001
From: Mirco Nasuti <mirco.nasuti@chuv.ch>
Date: Fri, 15 Jul 2016 10:53:12 +0200
Subject: [PATCH] bugfix dupplications in models datasets

---
 .../org/hbp/mip/controllers/ModelsApi.java    | 30 +++++++++++++------
 1 file changed, 21 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/hbp/mip/controllers/ModelsApi.java b/src/main/java/org/hbp/mip/controllers/ModelsApi.java
index 81a2d9890..a55cdd950 100644
--- a/src/main/java/org/hbp/mip/controllers/ModelsApi.java
+++ b/src/main/java/org/hbp/mip/controllers/ModelsApi.java
@@ -183,21 +183,33 @@ public class ModelsApi {
             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> varsQuery = queryRepository.findOne(model.getQuery().getId()).getVariables();
+            Collection<Variable> varsQueryColl = new LinkedHashSet<>(varsQuery);
+            model.getQuery().setVariables(new LinkedList<>(varsQueryColl));
 
-            List<Variable> grpgs = queryRepository.findOne(model.getQuery().getId()).getGrouping();
-            Collection<Variable> grpgsColl = new LinkedHashSet<>(grpgs);
-            model.getQuery().setGrouping(new LinkedList<>(grpgsColl));
+            List<Variable> grpgsQuery = queryRepository.findOne(model.getQuery().getId()).getGrouping();
+            Collection<Variable> grpgsQueryColl = new LinkedHashSet<>(grpgsQuery);
+            model.getQuery().setGrouping(new LinkedList<>(grpgsQueryColl));
 
-            List<Variable> covars = queryRepository.findOne(model.getQuery().getId()).getCovariables();
-            Collection<Variable> covarsColl = new LinkedHashSet<>(covars);
-            model.getQuery().setCovariables(new LinkedList<>(covarsColl));
+            List<Variable> covarsQuery = queryRepository.findOne(model.getQuery().getId()).getCovariables();
+            Collection<Variable> covarsQueryColl = new LinkedHashSet<>(covarsQuery);
+            model.getQuery().setCovariables(new LinkedList<>(covarsQueryColl));
 
             List<Filter> fltrs = queryRepository.findOne(model.getQuery().getId()).getFilters();
             Collection<Filter> fltrsColl = new LinkedHashSet<>(fltrs);
             model.getQuery().setFilters(new LinkedList<>(fltrsColl));
+
+            List<String> varsDS = datasetRepository.findOne(model.getDataset().getCode()).getVariable();
+            Collection<String> varsDSColl = new LinkedHashSet<>(varsDS);
+            model.getDataset().setVariable(new LinkedList<>(varsDSColl));
+
+            List<String> grpgsDS = datasetRepository.findOne(model.getDataset().getCode()).getGrouping();
+            Collection<String> grpgsDSColl = new LinkedHashSet<>(grpgsDS);
+            model.getDataset().setGrouping(new LinkedList<>(grpgsDSColl));
+
+            List<String> headersDS = datasetRepository.findOne(model.getDataset().getCode()).getHeader();
+            Collection<String> headersDSColl = new LinkedHashSet<>(headersDS);
+            model.getDataset().setHeader(new LinkedList<>(headersDSColl));
         }
 
         return new ResponseEntity<>(HttpStatus.OK).ok(model);
-- 
GitLab