Class SingletonListInverseVariableListener<Solution_>
- java.lang.Object
-
- org.optaplanner.core.impl.domain.variable.inverserelation.SingletonListInverseVariableListener<Solution_>
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,AbstractVariableListener<Solution_,Object>
,SingletonInverseVariableSupply
,ListVariableListener<Solution_,Object>
,Supply
public class SingletonListInverseVariableListener<Solution_> extends Object implements ListVariableListener<Solution_,Object>, SingletonInverseVariableSupply
-
-
Field Summary
Fields Modifier and Type Field Description protected InverseRelationShadowVariableDescriptor<Solution_>
shadowVariableDescriptor
protected ListVariableDescriptor<Solution_>
sourceVariableDescriptor
-
Constructor Summary
Constructors Constructor Description SingletonListInverseVariableListener(InverseRelationShadowVariableDescriptor<Solution_> shadowVariableDescriptor, ListVariableDescriptor<Solution_> sourceVariableDescriptor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterElementAdded(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
void
afterElementMoved(ScoreDirector<Solution_> scoreDirector, Object sourceEntity, int sourceIndex, Object destinationEntity, int destinationIndex)
void
afterElementRemoved(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
void
afterEntityAdded(ScoreDirector<Solution_> scoreDirector, Object entity)
void
afterEntityRemoved(ScoreDirector<Solution_> scoreDirector, Object entity)
void
beforeElementAdded(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
void
beforeElementMoved(ScoreDirector<Solution_> scoreDirector, Object sourceEntity, int sourceIndex, Object destinationEntity, int destinationIndex)
void
beforeElementRemoved(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
void
beforeEntityAdded(ScoreDirector<Solution_> scoreDirector, Object entity)
void
beforeEntityRemoved(ScoreDirector<Solution_> scoreDirector, Object entity)
Object
getInverseSingleton(Object planningValue)
If entity1.varA = x then the inverse of x is entity1.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.optaplanner.core.api.domain.variable.AbstractVariableListener
close, requiresUniqueEntityEvents, resetWorkingSolution
-
-
-
-
Field Detail
-
shadowVariableDescriptor
protected final InverseRelationShadowVariableDescriptor<Solution_> shadowVariableDescriptor
-
sourceVariableDescriptor
protected final ListVariableDescriptor<Solution_> sourceVariableDescriptor
-
-
Constructor Detail
-
SingletonListInverseVariableListener
public SingletonListInverseVariableListener(InverseRelationShadowVariableDescriptor<Solution_> shadowVariableDescriptor, ListVariableDescriptor<Solution_> sourceVariableDescriptor)
-
-
Method Detail
-
beforeEntityAdded
public void beforeEntityAdded(ScoreDirector<Solution_> scoreDirector, Object entity)
- Specified by:
beforeEntityAdded
in interfaceAbstractVariableListener<Solution_,Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
afterEntityAdded
public void afterEntityAdded(ScoreDirector<Solution_> scoreDirector, Object entity)
- Specified by:
afterEntityAdded
in interfaceAbstractVariableListener<Solution_,Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
beforeEntityRemoved
public void beforeEntityRemoved(ScoreDirector<Solution_> scoreDirector, Object entity)
- Specified by:
beforeEntityRemoved
in interfaceAbstractVariableListener<Solution_,Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
afterEntityRemoved
public void afterEntityRemoved(ScoreDirector<Solution_> scoreDirector, Object entity)
- Specified by:
afterEntityRemoved
in interfaceAbstractVariableListener<Solution_,Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
beforeElementAdded
public void beforeElementAdded(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
- Specified by:
beforeElementAdded
in interfaceListVariableListener<Solution_,Object>
-
afterElementAdded
public void afterElementAdded(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
- Specified by:
afterElementAdded
in interfaceListVariableListener<Solution_,Object>
-
beforeElementRemoved
public void beforeElementRemoved(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
- Specified by:
beforeElementRemoved
in interfaceListVariableListener<Solution_,Object>
-
afterElementRemoved
public void afterElementRemoved(ScoreDirector<Solution_> scoreDirector, Object entity, int index)
- Specified by:
afterElementRemoved
in interfaceListVariableListener<Solution_,Object>
-
beforeElementMoved
public void beforeElementMoved(ScoreDirector<Solution_> scoreDirector, Object sourceEntity, int sourceIndex, Object destinationEntity, int destinationIndex)
- Specified by:
beforeElementMoved
in interfaceListVariableListener<Solution_,Object>
-
afterElementMoved
public void afterElementMoved(ScoreDirector<Solution_> scoreDirector, Object sourceEntity, int sourceIndex, Object destinationEntity, int destinationIndex)
- Specified by:
afterElementMoved
in interfaceListVariableListener<Solution_,Object>
-
getInverseSingleton
public Object getInverseSingleton(Object planningValue)
Description copied from interface:SingletonInverseVariableSupply
If entity1.varA = x then the inverse of x is entity1.- Specified by:
getInverseSingleton
in interfaceSingletonInverseVariableSupply
- Parameters:
planningValue
- never null- Returns:
- sometimes null, an entity for which the planning variable is the planningValue.
-
-