org.drools.planner.core.domain.solution.cloner
Class PlanningCloneableSolutionCloner<SolutionG extends Solution>
java.lang.Object
org.drools.planner.core.domain.solution.cloner.PlanningCloneableSolutionCloner<SolutionG>
- All Implemented Interfaces:
- SolutionCloner<SolutionG>
public class PlanningCloneableSolutionCloner<SolutionG extends Solution>
- extends Object
- implements SolutionCloner<SolutionG>
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PlanningCloneableSolutionCloner
public PlanningCloneableSolutionCloner()
cloneSolution
public SolutionG cloneSolution(SolutionG original)
- Description copied from interface:
SolutionCloner
- Does a planning clone. The returned
Solution
clone must fulfill these requirements:
- The clone must represent the same planning problem.
Usually it reuses the same instances of the problem facts and problem fact collections as the
original
.
- The clone must use different, cloned instances of the entities and entity collections.
If a cloned entity changes, the original must remain unchanged.
If an entity is added or removed in a cloned
Solution
,
the original Solution
must remain unchanged.
Note that a class might support more than 1 clone method: planning clone is just one of them.
- Specified by:
cloneSolution
in interface SolutionCloner<SolutionG extends Solution>
- Parameters:
original
- never null, the original Solution
- Returns:
- never null, the cloned
Solution
Copyright © 2001-2013 JBoss by Red Hat. All Rights Reserved.