[jboss-svn-commits] JBL Code SVN: r32732 - in labs/jbossrules/trunk/drools-planner: drools-planner-examples/src/main/resources/org/drools/planner/examples/pas/solver and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed May 5 04:30:23 EDT 2010
Author: ge0ffrey
Date: 2010-05-05 04:30:21 -0400 (Wed, 05 May 2010)
New Revision: 32732
Modified:
labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/move/CompositeMove.java
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/pas/solver/patientAdmissionScheduleSolverConfig.xml
Log:
CompositeMove should be TabuPropertyEnabled
Modified: labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/move/CompositeMove.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/move/CompositeMove.java 2010-05-05 08:14:17 UTC (rev 32731)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/move/CompositeMove.java 2010-05-05 08:30:21 UTC (rev 32732)
@@ -1,20 +1,25 @@
package org.drools.planner.core.move;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
import java.util.List;
import java.util.Collections;
import java.util.ArrayList;
+import java.util.Set;
import org.drools.WorkingMemory;
+import org.drools.planner.core.localsearch.decider.acceptor.tabu.TabuPropertyEnabled;
/**
- * A CompositeMove is composided out of multiple other moves.
+ * A CompositeMove is composed out of multiple other moves.
* <p/>
* Warning: one of the moveList moves should not rely on the effect on of a previous moveList move
* to create an uncorrupted undoMove. In other words,
* @see Move
* @author Geoffrey De Smet
*/
-public class CompositeMove implements Move {
+public class CompositeMove implements Move, TabuPropertyEnabled {
protected List<Move> moveList;
@@ -56,6 +61,14 @@
}
}
+ public Collection<? extends Object> getTabuProperties() {
+ Set<Object> tabuProperties = new HashSet<Object>(moveList.size() * 2);
+ for (Move move : moveList) {
+ tabuProperties.addAll(((TabuPropertyEnabled) move).getTabuProperties());
+ }
+ return tabuProperties;
+ }
+
public boolean equals(Object o) {
if (this == o) {
return true;
Modified: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/pas/solver/patientAdmissionScheduleSolverConfig.xml
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/pas/solver/patientAdmissionScheduleSolverConfig.xml 2010-05-05 08:14:17 UTC (rev 32731)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/pas/solver/patientAdmissionScheduleSolverConfig.xml 2010-05-05 08:30:21 UTC (rev 32732)
@@ -34,4 +34,3 @@
<foragerType>MAX_SCORE_OF_ALL</foragerType>
</forager>
</localSearchSolver>
-
\ No newline at end of file
More information about the jboss-svn-commits
mailing list