Interface EObjectIndex
- All Known Implementing Classes:
ByTypeIndex,ProximityIndex
public interface EObjectIndex
An EObjectIndex has for responsability to store/remove EObjects and return the closest EObject from another
one (each one being registered with a different Side.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enumAn enumeration used in the API to specify sides. -
Method Summary
Modifier and TypeMethodDescriptionfindClosests(Comparison inProgress, EObject eObj, EObjectIndex.Side side) Return the closest EObjects found in other sides than the one given.return the list of EObjects of a given side still available in the index.voidindex(EObject eObj, EObjectIndex.Side side) Register an Object in the index with the given side.voidremove(EObject eObj, EObjectIndex.Side side) Remove an object from the index.
-
Method Details
-
getValuesStillThere
return the list of EObjects of a given side still available in the index.- Parameters:
side- the side we are looking for.- Returns:
- the list of EObjects of a given side still available in the index.
-
findClosests
Map<EObjectIndex.Side,EObject> findClosests(Comparison inProgress, EObject eObj, EObjectIndex.Side side) Return the closest EObjects found in other sides than the one given.- Parameters:
inProgress- the comparison currently being computed. It will not be changed directly but only queried to know if some element has already been matched or not.eObj- the base EObject used to lookup similar ones.side- the side of the passed EObject.- Returns:
- a map of Side, EObjects, returning all the found objects (and the passed one) which are the closests.
-
remove
Remove an object from the index.- Parameters:
eObj- object to remove.side- Side in which this object was.
-
index
Register an Object in the index with the given side.- Parameters:
eObj- theEObjectto register.side- the side in which it should be registered.
-