Class ExternalizedCollectionInverseVariableSupply
- java.lang.Object
-
- org.optaplanner.core.impl.domain.variable.inverserelation.ExternalizedCollectionInverseVariableSupply
-
- All Implemented Interfaces:
Closeable,AutoCloseable,VariableListener<Object>,CollectionInverseVariableSupply,SourcedVariableListener<Object>,StatefulVariableListener<Object>,VariableListener<Object>,Supply
public class ExternalizedCollectionInverseVariableSupply extends Object implements SourcedVariableListener<Object>, CollectionInverseVariableSupply
Alternative toCollectionInverseVariableListener.
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<Object,Set<Object>>inverseEntitySetMapprotected VariableDescriptorsourceVariableDescriptor
-
Constructor Summary
Constructors Constructor Description ExternalizedCollectionInverseVariableSupply(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)Collection<?>getInverseCollection(Object value)If entity1.varA = x then an 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
-
ExternalizedCollectionInverseVariableSupply
public ExternalizedCollectionInverseVariableSupply(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)
-
getInverseCollection
public Collection<?> getInverseCollection(Object value)
Description copied from interface:CollectionInverseVariableSupplyIf entity1.varA = x then an inverse of x is entity1.- Specified by:
getInverseCollectionin interfaceCollectionInverseVariableSupply- Parameters:
value- never null- Returns:
- never null, a
Collectionof entities for which the planning variable is the planningValue.
-
-