diff --git a/src/main/java/eu/hbp/mip/controllers/VariablesApi.java b/src/main/java/eu/hbp/mip/controllers/VariablesApi.java index 99a4626678e01333ecf70365a1ced53202472a86..a08f7986c09caa9281b79ce79c888bfc1cbcaa68 100644 --- a/src/main/java/eu/hbp/mip/controllers/VariablesApi.java +++ b/src/main/java/eu/hbp/mip/controllers/VariablesApi.java @@ -156,8 +156,10 @@ public class VariablesApi { MiningQuery query = new MiningQuery(); query.addVariable(new Variable(code)); - List<String> groupings = Arrays.asList(histogramGroupings.split(",")); - query.getGrouping().addAll(groupings.stream().map(Variable::new).collect(Collectors.toList())); + List<String> newGroups = Arrays.asList(histogramGroupings.split(",")); + List<Variable> groupings = query.getGrouping(); + groupings.addAll(newGroups.stream().map(Variable::new).collect(Collectors.toList())); + query.setGrouping(groupings); query.setAlgorithm(new Algorithm("histograms", "Histograms", false)); return ResponseEntity.ok(histogramGroupings); diff --git a/src/main/java/eu/hbp/mip/model/MiningQuery.java b/src/main/java/eu/hbp/mip/model/MiningQuery.java index 3cec28ac8797cfdf7dbe8ef83c19f73db786846d..139652a12796c4e7f3c2ad4735ca21724c62f5a6 100644 --- a/src/main/java/eu/hbp/mip/model/MiningQuery.java +++ b/src/main/java/eu/hbp/mip/model/MiningQuery.java @@ -6,6 +6,7 @@ import eu.hbp.mip.utils.TypesConvert; import scala.collection.JavaConverters; import scala.collection.Seq; +import java.util.LinkedList; import java.util.List; /** @@ -19,6 +20,12 @@ public class MiningQuery { private String filters; private Algorithm algorithm; + public MiningQuery() { + this.variables = new LinkedList<>(); + this.covariables = new LinkedList<>(); + this.grouping = new LinkedList<>(); + } + public List<Variable> getVariables() { return variables; } @@ -37,6 +44,8 @@ public class MiningQuery { this.covariables = covariables; } + public void addCovariable(Variable variable) { this.covariables.add(variable); } + public List<Variable> getGrouping() { return grouping; } @@ -45,6 +54,8 @@ public class MiningQuery { this.grouping = grouping; } + public void addGrouping(Variable variable) { this.grouping.add(variable); } + public String getFilters() { return filters; }