diff options
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.java | 11 |
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 | ||
11 | import java.util.ArrayList; | 11 | import java.util.ArrayList; |
12 | import java.util.List; | 12 | import java.util.List; |
13 | import java.util.SortedSet; | 13 | import java.util.PriorityQueue; |
14 | import java.util.TreeSet; | 14 | |
15 | 15 | ||
16 | public class SolutionStoreImpl implements SolutionStore { | 16 | public 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; |