Class SingletonInverseVariableListener
- java.lang.Object
-
- org.optaplanner.core.impl.domain.variable.inverserelation.SingletonInverseVariableListener
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,VariableListener<Object>
,SingletonInverseVariableSupply
,VariableListener<Object>
,Supply
public class SingletonInverseVariableListener extends Object implements VariableListener<Object>, SingletonInverseVariableSupply
-
-
Field Summary
Fields Modifier and Type Field Description protected InverseRelationShadowVariableDescriptor
shadowVariableDescriptor
protected VariableDescriptor
sourceVariableDescriptor
-
Constructor Summary
Constructors Constructor Description SingletonInverseVariableListener(InverseRelationShadowVariableDescriptor shadowVariableDescriptor, VariableDescriptor sourceVariableDescriptor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterEntityAdded(ScoreDirector scoreDirector, Object entity)
void
afterEntityRemoved(ScoreDirector scoreDirector, Object entity)
void
afterVariableChanged(ScoreDirector scoreDirector, Object entity)
void
beforeEntityAdded(ScoreDirector scoreDirector, Object entity)
void
beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)
void
beforeVariableChanged(ScoreDirector scoreDirector, Object entity)
Object
getInverseSingleton(Object planningValue)
If entity1.varA = x then the inverse of x is entity1.protected void
insert(ScoreDirector scoreDirector, Object entity)
protected void
retract(ScoreDirector scoreDirector, Object entity)
-
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.VariableListener
close, resetWorkingSolution
-
Methods inherited from interface org.optaplanner.core.impl.domain.variable.listener.VariableListener
requiresUniqueEntityEvents
-
-
-
-
Field Detail
-
shadowVariableDescriptor
protected final InverseRelationShadowVariableDescriptor shadowVariableDescriptor
-
sourceVariableDescriptor
protected final VariableDescriptor sourceVariableDescriptor
-
-
Constructor Detail
-
SingletonInverseVariableListener
public SingletonInverseVariableListener(InverseRelationShadowVariableDescriptor shadowVariableDescriptor, VariableDescriptor sourceVariableDescriptor)
-
-
Method Detail
-
beforeEntityAdded
public void beforeEntityAdded(ScoreDirector scoreDirector, Object entity)
- Specified by:
beforeEntityAdded
in interfaceVariableListener<Object>
- Specified by:
beforeEntityAdded
in interfaceVariableListener<Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
afterEntityAdded
public void afterEntityAdded(ScoreDirector scoreDirector, Object entity)
- Specified by:
afterEntityAdded
in interfaceVariableListener<Object>
- Specified by:
afterEntityAdded
in interfaceVariableListener<Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
beforeVariableChanged
public void beforeVariableChanged(ScoreDirector scoreDirector, Object entity)
- Specified by:
beforeVariableChanged
in interfaceVariableListener<Object>
- Specified by:
beforeVariableChanged
in interfaceVariableListener<Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
afterVariableChanged
public void afterVariableChanged(ScoreDirector scoreDirector, Object entity)
- Specified by:
afterVariableChanged
in interfaceVariableListener<Object>
- Specified by:
afterVariableChanged
in interfaceVariableListener<Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
beforeEntityRemoved
public void beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)
- Specified by:
beforeEntityRemoved
in interfaceVariableListener<Object>
- Specified by:
beforeEntityRemoved
in interfaceVariableListener<Object>
- Parameters:
scoreDirector
- never nullentity
- never null
-
afterEntityRemoved
public void afterEntityRemoved(ScoreDirector scoreDirector, Object entity)
- Specified by:
afterEntityRemoved
in interfaceVariableListener<Object>
- Specified by:
afterEntityRemoved
in 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 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.
-
-