Class ExternalizedSingletonInverseVariableSupply<Solution_>
java.lang.Object
org.optaplanner.core.impl.domain.variable.inverserelation.ExternalizedSingletonInverseVariableSupply<Solution_>
- All Implemented Interfaces:
Closeable,AutoCloseable,AbstractVariableListener<Solution_,,Object> VariableListener<Solution_,,Object> SingletonInverseVariableSupply,SourcedVariableListener<Solution_>,Supply
public class ExternalizedSingletonInverseVariableSupply<Solution_>
extends Object
implements SourcedVariableListener<Solution_>, VariableListener<Solution_,Object>, SingletonInverseVariableSupply
Alternative to
SingletonInverseVariableListener.-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionExternalizedSingletonInverseVariableSupply(VariableDescriptor<Solution_> sourceVariableDescriptor) -
Method Summary
Modifier and TypeMethodDescriptionvoidafterEntityAdded(ScoreDirector<Solution_> scoreDirector, Object entity) voidafterEntityRemoved(ScoreDirector<Solution_> scoreDirector, Object entity) voidafterVariableChanged(ScoreDirector<Solution_> scoreDirector, Object entity) voidbeforeEntityAdded(ScoreDirector<Solution_> scoreDirector, Object entity) voidbeforeEntityRemoved(ScoreDirector<Solution_> scoreDirector, Object entity) voidbeforeVariableChanged(ScoreDirector<Solution_> scoreDirector, Object entity) voidclose()Called before thisAbstractVariableListeneris thrown away and not used anymore.getInverseSingleton(Object value) If entity1.varA = x then the inverse of x is entity1.protected voidvoidresetWorkingSolution(ScoreDirector<Solution_> scoreDirector) Called when the entire working solution changes.protected voidtoString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.optaplanner.core.api.domain.variable.VariableListener
requiresUniqueEntityEvents
-
Field Details
-
sourceVariableDescriptor
-
inverseEntityMap
-
-
Constructor Details
-
ExternalizedSingletonInverseVariableSupply
public ExternalizedSingletonInverseVariableSupply(VariableDescriptor<Solution_> sourceVariableDescriptor)
-
-
Method Details
-
getSourceVariableDescriptor
- Specified by:
getSourceVariableDescriptorin interfaceSourcedVariableListener<Solution_>
-
resetWorkingSolution
Description copied from interface:AbstractVariableListenerCalled when the entire working solution changes. In this event, the other before..()/after...() methods will not be called. At this point, implementations should clear state, if any.- Specified by:
resetWorkingSolutionin interfaceAbstractVariableListener<Solution_,Object> - Parameters:
scoreDirector- never null
-
close
public void close()Description copied from interface:AbstractVariableListenerCalled before thisAbstractVariableListeneris thrown away and not used anymore.- Specified by:
closein interfaceAbstractVariableListener<Solution_,Object> - Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
beforeEntityAdded
- Specified by:
beforeEntityAddedin interfaceAbstractVariableListener<Solution_,Object> - Parameters:
scoreDirector- never nullentity- never null
-
afterEntityAdded
- Specified by:
afterEntityAddedin interfaceAbstractVariableListener<Solution_,Object> - Parameters:
scoreDirector- never nullentity- never null
-
beforeVariableChanged
- Specified by:
beforeVariableChangedin interfaceVariableListener<Solution_,Object> - Parameters:
scoreDirector- never nullentity- never null
-
afterVariableChanged
- Specified by:
afterVariableChangedin interfaceVariableListener<Solution_,Object> - Parameters:
scoreDirector- never nullentity- never null
-
beforeEntityRemoved
- Specified by:
beforeEntityRemovedin interfaceAbstractVariableListener<Solution_,Object> - Parameters:
scoreDirector- never nullentity- never null
-
afterEntityRemoved
- Specified by:
afterEntityRemovedin interfaceAbstractVariableListener<Solution_,Object> - Parameters:
scoreDirector- never nullentity- never null
-
insert
-
retract
-
getInverseSingleton
Description copied from interface:SingletonInverseVariableSupplyIf entity1.varA = x then the inverse of x is entity1.- Specified by:
getInverseSingletonin interfaceSingletonInverseVariableSupply- Parameters:
value- never null- Returns:
- sometimes null, an entity for which the planning variable is the planningValue.
-
toString
-