OptaPlanner core 6.0.1.Final

org.optaplanner.core.api.domain.solution
Annotation Type PlanningSolution


@Target(value=TYPE)
@Retention(value=RUNTIME)
public @interface PlanningSolution

Specifies that the class is a planning solution. Each planning solution must have at least 1 PlanningEntityCollectionProperty or PlanningEntityProperty property.

The class should have a public no-arg constructor, so it can be cloned. TODO currently this violated DRY because the user needs to implement Solution too.


Optional Element Summary
 Class<? extends SolutionCloner> solutionCloner
          Overrides the default PlanningSolution.NullSolutionCloner to implement a custom Solution cloning implementation.
 

solutionCloner

public abstract Class<? extends SolutionCloner> solutionCloner
Overrides the default PlanningSolution.NullSolutionCloner to implement a custom Solution cloning implementation.

If this is not specified and the Solution does not implements PlanningCloneable, the default reflection-based PlanningSolution.NullSolutionCloner is used, so you don't have to worry about it.

Returns:
PlanningSolution.NullSolutionCloner when it is null (workaround for annotation limitation)
Default:
org.optaplanner.core.api.domain.solution.PlanningSolution.NullSolutionCloner.class

OptaPlanner core 6.0.1.Final

Copyright © 2006-2013 JBoss by Red Hat. All Rights Reserved.