Interface IBaseIndex


public interface IBaseIndex
Represents the index maintained on the model.
Since:
0.9
  • Method Details

    • coalesceTraversals

      <V> V coalesceTraversals(Callable<V> callable) throws InvocationTargetException
      The given callback will be executed, and all model traversals and index registrations will be delayed until the execution is done. If there are any outstanding feature, class or datatype registrations, a single coalesced model traversal will initialize the caches and deliver the notifications.
      Parameters:
      callable -
      Throws:
      InvocationTargetException
    • addBaseIndexChangeListener

      void addBaseIndexChangeListener(InterpreterBaseIndexChangeListener listener)
      Adds a coarse-grained listener that will be invoked after the NavigationHelper index or the underlying model is changed. Can be used e.g. to check model contents. Not intended for general use.

      See removeBaseIndexChangeListener(InterpreterBaseIndexChangeListener)

      Parameters:
      listener -
    • removeBaseIndexChangeListener

      void removeBaseIndexChangeListener(InterpreterBaseIndexChangeListener listener)
      Parameters:
      listener -
    • resampleDerivedFeatures

      void resampleDerivedFeatures()
      Updates the value of indexed derived features that are not well-behaving.
    • addIndexingErrorListener

      boolean addIndexingErrorListener(IIndexingErrorListener listener)
      Adds a listener for internal errors in the index. A listener can only be added once.
      Parameters:
      listener -
      Since:
      0.8.0
    • removeIndexingErrorListener

      boolean removeIndexingErrorListener(IIndexingErrorListener listener)
      Removes a listener for internal errors in the index
      Parameters:
      listener -
      Since:
      0.8.0
    • addInstanceObserver

      boolean addInstanceObserver(IInstanceObserver observer, Object observedObject)
      Register a lightweight observer that is notified if any edge starting at the given Object changes.
      Parameters:
      observer - the listener instance
      observedObject - the observed instance object
      Returns:
      false if no observer can be registered for the given instance (e.g. it is a primitive), or observer was already registered (call has no effect)
    • removeInstanceObserver

      boolean removeInstanceObserver(IInstanceObserver observer, Object observedObject)
      Unregisters a lightweight observer for the given Object.
      Parameters:
      observer - the listener instance
      observedObject - the observed instance object
      Returns:
      false if no observer can be registered for the given instance (e.g. it is a primitive), or no observer was registered previously (call has no effect)