aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java')
-rw-r--r--subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java11
1 files changed, 5 insertions, 6 deletions
diff --git a/subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java
index cc48864f..43548eaa 100644
--- a/subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java
+++ b/subprojects/store-dse/src/main/java/tools/refinery/store/dse/transition/statespace/internal/SolutionStoreImpl.java
@@ -10,17 +10,17 @@ import tools.refinery.store.dse.transition.statespace.SolutionStore;
10 10
11import java.util.ArrayList; 11import java.util.ArrayList;
12import java.util.List; 12import java.util.List;
13import java.util.SortedSet; 13import java.util.PriorityQueue;
14import java.util.TreeSet; 14
15 15
16public class SolutionStoreImpl implements SolutionStore { 16public class SolutionStoreImpl implements SolutionStore {
17 final int maxNumberSolutions; 17 final int maxNumberSolutions;
18 public static final int UNLIMITED = -1; 18 public static final int UNLIMITED = -1;
19 final SortedSet<VersionWithObjectiveValue> solutions; 19 final PriorityQueue<VersionWithObjectiveValue> solutions;
20 20
21 public SolutionStoreImpl(int maxNumberSolutions) { 21 public SolutionStoreImpl(int maxNumberSolutions) {
22 this.maxNumberSolutions = maxNumberSolutions; 22 this.maxNumberSolutions = maxNumberSolutions;
23 solutions = new TreeSet<>(ObjectivePriorityQueueImpl.c1); 23 solutions = new PriorityQueue<>(ObjectivePriorityQueueImpl.c1.reversed());
24 } 24 }
25 25
26 26
@@ -29,8 +29,7 @@ public class SolutionStoreImpl implements SolutionStore {
29 boolean removeLast = hasEnoughSolution(); 29 boolean removeLast = hasEnoughSolution();
30 solutions.add(version); 30 solutions.add(version);
31 if(removeLast) { 31 if(removeLast) {
32 var last = solutions.last(); 32 var last = solutions.poll();
33 solutions.remove(last);
34 return last != version; 33 return last != version;
35 } else { 34 } else {
36 return true; 35 return true;