@PlanningSolution(autoDiscoverMemberType = AutoDiscoverMemberType.FIELD) public class TestdataUnknownFactTypeSolution extends TestdataObject {
@PlanningSolution public class TestdataExtendedConstraintConfigurationSolution extends TestdataSolution {
@PlanningSolution public class TestdataExtendedAbstractSolution extends AbstractSolution<HardSoftScore> {
@PlanningSolution public class TestdataNoProblemFactPropertySolution extends TestdataObject {
@PlanningSolution public class TestdataAnnotatedExtendedSolution extends TestdataSolution {
@PlanningSolution public class TestdataNullableSolution extends TestdataObject {
@PlanningSolution public class TestdataEntityProvidingSolution extends TestdataObject {
@PlanningSolution public class TestdataExtendedShadowedSolution extends TestdataObject {
@PlanningSolution public class TestdataSetBasedSolution extends TestdataObject {
@PlanningSolution public class TestdataSolution extends TestdataObject {
@PlanningSolution public class TestdataProblemFactIsPlanningEntityCollectionPropertySolution extends TestdataObject {
@PlanningSolution public class TestdataDuplicatePlanningScorePropertySolution extends TestdataObject {
@PlanningSolution(autoDiscoverMemberType = AutoDiscoverMemberType.FIELD) public class TestdataAutoDiscoverFieldSolution extends TestdataObject {
@PlanningSolution public class TestdataDuplicatePlanningEntityCollectionPropertySolution extends TestdataObject {
@PlanningSolution public class TestdataDuplicateProblemFactCollectionPropertySolution extends TestdataObject {
@PlanningSolution(solutionCloner = TestdataScoreNotClonedSolution.class) public class TestdataScoreNotClonedSolution implements SolutionCloner<TestdataScoreNotClonedSolution> { @PlanningScore private SimpleScore score; @PlanningEntityProperty private TestdataEntity entity = new TestdataEntity("A"); @ValueRangeProvider(id = "valueRange") @ProblemFactCollectionProperty public List<TestdataValue> valueRange() { return Collections.singletonList(new TestdataValue("1")); } @Override public TestdataScoreNotClonedSolution cloneSolution(TestdataScoreNotClonedSolution original) { TestdataScoreNotClonedSolution clone = new TestdataScoreNotClonedSolution(); clone.entity.setValue(original.entity.getValue()); return clone; } }
@PlanningSolution(solutionCloner = TestdataEntitiesNotClonedSolution.class) public class TestdataEntitiesNotClonedSolution implements SolutionCloner<TestdataEntitiesNotClonedSolution> { @PlanningScore private SimpleScore score; @PlanningEntityProperty private TestdataEntity entity = new TestdataEntity(); @ValueRangeProvider(id = "valueRange") @ProblemFactCollectionProperty public List<TestdataValue> valueRange() { // solver will never get to this point due to cloning corruption throw new UnsupportedOperationException("Not supported yet."); } @Override public TestdataEntitiesNotClonedSolution cloneSolution(TestdataEntitiesNotClonedSolution original) { TestdataEntitiesNotClonedSolution clone = new TestdataEntitiesNotClonedSolution(); clone.entity = original.entity; clone.score = original.score; return clone; } }
@PlanningSolution(solutionCloner = TestdataScoreNotEqualSolution.class) public class TestdataScoreNotEqualSolution implements SolutionCloner<TestdataScoreNotEqualSolution> {
@PlanningSolution(solutionCloner = TestdataCorrectlyClonedSolution.class) public class TestdataCorrectlyClonedSolution implements SolutionCloner<TestdataCorrectlyClonedSolution> {
@PlanningSolution(autoDiscoverMemberType = AutoDiscoverMemberType.FIELD) public class TestdataAutoDiscoverFieldOverrideSolution extends TestdataObject {