Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,10 @@
* variable.
* <p>
* It is specified on a getter of a java bean property (or a field) of a {@link PlanningEntity} class.
*
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
@Target({ METHOD, FIELD })
@Retention(RUNTIME)
public @interface AnchorShadowVariable {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,9 @@
* as specified by {@link PlanningVariableGraphType}.
*
* @return never null, defaults to {@link PlanningVariableGraphType#NONE}
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
PlanningVariableGraphType graphType() default PlanningVariableGraphType.NONE;

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
package ai.timefold.solver.core.api.domain.variable;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public enum PlanningVariableGraphType {
/**
* This is the default.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.entity.EntitySelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.move.MoveSelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.value.ValueSelectorConfig;
Expand All @@ -17,11 +18,12 @@
* THIS CLASS IS EXPERIMENTAL AND UNSUPPORTED.
* Backward compatibility is not guaranteed.
* It's NOT DOCUMENTED because we'll only document it when it actually works in more than 1 use case.
*
* Do not use.
*
* @see TailChainSwapMoveSelectorConfig
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
@XmlType(propOrder = {
"entitySelectorConfig",
"valueSelectorConfig"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.move.MoveSelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.value.ValueSelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.value.chained.SubChainSelectorConfig;
Expand All @@ -13,6 +14,10 @@
import org.jspecify.annotations.NonNull;
import org.jspecify.annotations.Nullable;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
@XmlType(propOrder = {
"entityClass",
"subChainSelectorConfig",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,18 @@
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.move.MoveSelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.value.chained.SubChainSelectorConfig;
import ai.timefold.solver.core.config.util.ConfigUtils;

import org.jspecify.annotations.NonNull;
import org.jspecify.annotations.Nullable;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
@XmlType(propOrder = {
"entityClass",
"subChainSelectorConfig",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.entity.EntitySelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.move.MoveSelectorConfig;
import ai.timefold.solver.core.config.heuristic.selector.move.NearbyAutoConfigurationEnabled;
Expand All @@ -19,7 +20,10 @@

/**
* Also known as a 2-opt move selector config.
*
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
@XmlType(propOrder = {
"entitySelectorConfig",
"valueSelectorConfig"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
/**
* @deprecated Chained variable is deprecated. Use {@link ai.timefold.solver.core.api.domain.variable.PlanningListVariable list
* variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
@XmlSchema(
namespace = SolverConfig.XML_NAMESPACE,
elementFormDefault = XmlNsForm.QUALIFIED)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply;
Expand All @@ -11,7 +12,9 @@

/**
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class ChainedChangeMove<Solution_> extends ChangeMove<Solution_> {

protected final Object oldTrailingEntity;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.descriptor.BasicVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
Expand All @@ -14,7 +15,9 @@

/**
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class ChainedSwapMove<Solution_> extends SwapMove<Solution_> {

protected final List<Object> oldLeftTrailingEntityList;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.anchor.AnchorVariableSupply;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
Expand All @@ -17,7 +18,9 @@

/**
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class KOptMove<Solution_> extends AbstractMove<Solution_> {

protected final GenuineVariableDescriptor<Solution_> variableDescriptor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import java.util.Arrays;
import java.util.Iterator;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.impl.domain.variable.anchor.AnchorVariableDemand;
import ai.timefold.solver.core.impl.domain.variable.anchor.AnchorVariableSupply;
import ai.timefold.solver.core.impl.domain.variable.descriptor.BasicVariableDescriptor;
Expand All @@ -17,6 +18,10 @@
import ai.timefold.solver.core.impl.heuristic.selector.value.ValueSelector;
import ai.timefold.solver.core.impl.solver.scope.SolverScope;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class KOptMoveSelector<Solution_> extends GenericMoveSelector<Solution_> {

protected final EntitySelector<Solution_> entitySelector;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.Objects;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.common.SelectionCacheType;
import ai.timefold.solver.core.config.heuristic.selector.common.SelectionOrder;
import ai.timefold.solver.core.config.heuristic.selector.entity.EntitySelectorConfig;
Expand All @@ -15,6 +16,10 @@
import ai.timefold.solver.core.impl.heuristic.selector.value.ValueSelector;
import ai.timefold.solver.core.impl.heuristic.selector.value.ValueSelectorFactory;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class KOptMoveSelectorFactory<Solution_>
extends AbstractMoveSelectorFactory<Solution_, KOptMoveSelectorConfig> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply;
Expand All @@ -13,8 +13,9 @@
import ai.timefold.solver.core.impl.score.director.VariableDescriptorAwareScoreDirector;

/**
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainChangeMove<Solution_> extends AbstractMove<Solution_> {

protected final SubChain subChain;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import java.util.Collections;
import java.util.Iterator;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableDemand;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply;
import ai.timefold.solver.core.impl.domain.variable.supply.SupplyManager;
Expand All @@ -14,6 +15,10 @@
import ai.timefold.solver.core.impl.heuristic.selector.value.chained.SubChainSelector;
import ai.timefold.solver.core.impl.solver.scope.SolverScope;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainChangeMoveSelector<Solution_> extends GenericMoveSelector<Solution_> {

protected final SubChainSelector<Solution_> subChainSelector;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.Objects;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.common.SelectionCacheType;
import ai.timefold.solver.core.config.heuristic.selector.common.SelectionOrder;
import ai.timefold.solver.core.config.heuristic.selector.move.generic.chained.SubChainChangeMoveSelectorConfig;
Expand All @@ -17,6 +18,10 @@
import ai.timefold.solver.core.impl.heuristic.selector.value.chained.SubChainSelector;
import ai.timefold.solver.core.impl.heuristic.selector.value.chained.SubChainSelectorFactory;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainChangeMoveSelectorFactory<Solution_>
extends AbstractMoveSelectorFactory<Solution_, SubChainChangeMoveSelectorConfig> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import java.util.Collections;
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.descriptor.VariableDescriptor;
Expand All @@ -14,8 +14,9 @@
import ai.timefold.solver.core.impl.score.director.VariableDescriptorAwareScoreDirector;

/**
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainReversingChangeMove<Solution_> extends AbstractMove<Solution_> {

protected final SubChain subChain;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply;
Expand All @@ -21,7 +22,9 @@
* This {@link Move} is not cacheable.
*
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainReversingSwapMove<Solution_> extends AbstractMove<Solution_> {

private final GenuineVariableDescriptor<Solution_> variableDescriptor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import java.util.Set;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply;
Expand All @@ -20,7 +21,9 @@
* This {@link Move} is not cacheable.
*
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainSwapMove<Solution_> extends AbstractMove<Solution_> {

protected final GenuineVariableDescriptor<Solution_> variableDescriptor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.Iterator;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableDemand;
import ai.timefold.solver.core.impl.domain.variable.inverserelation.SingletonInverseVariableSupply;
Expand All @@ -14,6 +15,10 @@
import ai.timefold.solver.core.impl.heuristic.selector.value.chained.SubChainSelector;
import ai.timefold.solver.core.impl.solver.scope.SolverScope;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainSwapMoveSelector<Solution_> extends GenericMoveSelector<Solution_> {

protected final SubChainSelector<Solution_> leftSubChainSelector;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.Objects;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.config.heuristic.selector.common.SelectionCacheType;
import ai.timefold.solver.core.config.heuristic.selector.common.SelectionOrder;
import ai.timefold.solver.core.config.heuristic.selector.move.generic.chained.SubChainSwapMoveSelectorConfig;
Expand All @@ -13,6 +14,10 @@
import ai.timefold.solver.core.impl.heuristic.selector.value.chained.SubChainSelector;
import ai.timefold.solver.core.impl.heuristic.selector.value.chained.SubChainSelectorFactory;

/**
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class SubChainSwapMoveSelectorFactory<Solution_>
extends AbstractMoveSelectorFactory<Solution_, SubChainSwapMoveSelectorConfig> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import java.util.Objects;

import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.api.score.director.ScoreDirector;
import ai.timefold.solver.core.impl.domain.variable.anchor.AnchorVariableSupply;
import ai.timefold.solver.core.impl.domain.variable.descriptor.GenuineVariableDescriptor;
Expand All @@ -17,7 +18,9 @@
* Also known as a 2-opt move.
*
* @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class TailChainSwapMove<Solution_> extends AbstractMove<Solution_> {

protected final GenuineVariableDescriptor<Solution_> variableDescriptor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.Iterator;

import ai.timefold.solver.core.api.domain.variable.PlanningListVariable;
import ai.timefold.solver.core.impl.domain.variable.anchor.AnchorVariableDemand;
import ai.timefold.solver.core.impl.domain.variable.anchor.AnchorVariableSupply;
import ai.timefold.solver.core.impl.domain.variable.descriptor.BasicVariableDescriptor;
Expand All @@ -20,7 +21,10 @@

/**
* Also known as a 2-opt move selector.
*
* @deprecated Chained variable is deprecated. Use {@link PlanningListVariable list variable} instead.
*/
@Deprecated(forRemoval = true, since = "1.31.0")
public class TailChainSwapMoveSelector<Solution_> extends GenericMoveSelector<Solution_> {

protected final EntitySelector<Solution_> entitySelector;
Expand Down
Loading
Loading