Class ExternalizedSingletonInverseVariableSupply
- java.lang.Object
-
- org.optaplanner.core.impl.domain.variable.inverserelation.ExternalizedSingletonInverseVariableSupply
-
- All Implemented Interfaces:
Closeable,AutoCloseable,VariableListener<Object>,SingletonInverseVariableSupply,SourcedVariableListener<Object>,StatefulVariableListener<Object>,VariableListener<Object>,Supply
public class ExternalizedSingletonInverseVariableSupply extends Object implements SourcedVariableListener<Object>, SingletonInverseVariableSupply
Alternative toSingletonInverseVariableListener.
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<Object,Object>inverseEntityMapprotected VariableDescriptorsourceVariableDescriptor
-
Constructor Summary
Constructors Constructor Description ExternalizedSingletonInverseVariableSupply(VariableDescriptor sourceVariableDescriptor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidafterEntityAdded(ScoreDirector scoreDirector, Object entity)voidafterEntityRemoved(ScoreDirector scoreDirector, Object entity)voidafterVariableChanged(ScoreDirector scoreDirector, Object entity)voidbeforeEntityAdded(ScoreDirector scoreDirector, Object entity)voidbeforeEntityRemoved(ScoreDirector scoreDirector, Object entity)voidbeforeVariableChanged(ScoreDirector scoreDirector, Object entity)voidclearWorkingSolution(ScoreDirector scoreDirector)ObjectgetInverseSingleton(Object value)If entity1.varA = x then the inverse of x is entity1.VariableDescriptorgetSourceVariableDescriptor()protected voidinsert(ScoreDirector scoreDirector, Object entity)voidresetWorkingSolution(ScoreDirector scoreDirector)Called when the entire working solution changes.protected voidretract(ScoreDirector scoreDirector, Object entity)StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.optaplanner.core.api.domain.variable.VariableListener
close
-
Methods inherited from interface org.optaplanner.core.impl.domain.variable.listener.VariableListener
requiresUniqueEntityEvents
-
-
-
-
Field Detail
-
sourceVariableDescriptor
protected final VariableDescriptor sourceVariableDescriptor
-
-
Constructor Detail
-
ExternalizedSingletonInverseVariableSupply
public ExternalizedSingletonInverseVariableSupply(VariableDescriptor sourceVariableDescriptor)
-
-
Method Detail
-
getSourceVariableDescriptor
public VariableDescriptor getSourceVariableDescriptor()
- Specified by:
getSourceVariableDescriptorin interfaceSourcedVariableListener<Object>- Specified by:
getSourceVariableDescriptorin interfaceStatefulVariableListener<Object>
-
resetWorkingSolution
public void resetWorkingSolution(ScoreDirector scoreDirector)
Description copied from interface:VariableListenerCalled 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 interfaceStatefulVariableListener<Object>- Specified by:
resetWorkingSolutionin interfaceVariableListener<Object>- Parameters:
scoreDirector- never null
-
clearWorkingSolution
public void clearWorkingSolution(ScoreDirector scoreDirector)
- Specified by:
clearWorkingSolutionin interfaceStatefulVariableListener<Object>
-
beforeEntityAdded
public void beforeEntityAdded(ScoreDirector scoreDirector, Object entity)
- Specified by:
beforeEntityAddedin interfaceVariableListener<Object>- Specified by:
beforeEntityAddedin interfaceVariableListener<Object>- Parameters:
scoreDirector- never nullentity- never null
-
afterEntityAdded
public void afterEntityAdded(ScoreDirector scoreDirector, Object entity)
- Specified by:
afterEntityAddedin interfaceVariableListener<Object>- Specified by:
afterEntityAddedin interfaceVariableListener<Object>- Parameters:
scoreDirector- never nullentity- never null
-
beforeVariableChanged
public void beforeVariableChanged(ScoreDirector scoreDirector, Object entity)
- Specified by:
beforeVariableChangedin interfaceVariableListener<Object>- Specified by:
beforeVariableChangedin interfaceVariableListener<Object>- Parameters:
scoreDirector- never nullentity- never null
-
afterVariableChanged
public void afterVariableChanged(ScoreDirector scoreDirector, Object entity)
- Specified by:
afterVariableChangedin interfaceVariableListener<Object>- Specified by:
afterVariableChangedin interfaceVariableListener<Object>- Parameters:
scoreDirector- never nullentity- never null
-
beforeEntityRemoved
public void beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)
- Specified by:
beforeEntityRemovedin interfaceVariableListener<Object>- Specified by:
beforeEntityRemovedin interfaceVariableListener<Object>- Parameters:
scoreDirector- never nullentity- never null
-
afterEntityRemoved
public void afterEntityRemoved(ScoreDirector scoreDirector, Object entity)
- Specified by:
afterEntityRemovedin interfaceVariableListener<Object>- Specified by:
afterEntityRemovedin interfaceVariableListener<Object>- Parameters:
scoreDirector- never nullentity- never null
-
insert
protected void insert(ScoreDirector scoreDirector, Object entity)
-
retract
protected void retract(ScoreDirector scoreDirector, Object entity)
-
getInverseSingleton
public Object getInverseSingleton(Object value)
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.
-
-