Class AbstractConcurrentModel

All Implemented Interfaces:
Direct Known Subclasses:

public abstract class AbstractConcurrentModel extends Object implements IConcurrentModel
Abstract base class for all IConcurrentModel implementations. Clients should subclass this class instead of implementing IConcurrentModel directly.
  • Constructor Details

    • AbstractConcurrentModel

      public AbstractConcurrentModel()
  • Method Details

    • addListener

      public void addListener(IConcurrentModelListener listener)
      Description copied from interface: IConcurrentModel
      Adds a listener to this model. The listener should be given the model's current contents (either through setContents or a sequence of adds) at the receiver's earliest convenience. The receiver will notify the listener about any changes in state until the listener is removed.

      Has no effect if an identical listener is already registered.

      Specified by:
      addListener in interface IConcurrentModel
      listener - listener to add
    • fireAdd

      protected final void fireAdd(Object[] added)
      Fires an add notification to all listeners
      added - objects added to the set
    • fireRemove

      protected final void fireRemove(Object[] removed)
      Fires a remove notification to all listeners
      removed - objects removed from the set
    • fireUpdate

      protected final void fireUpdate(Object[] updated)
      Fires an update notification to all listeners
      updated - objects that have changed
    • getListeners

      protected final IConcurrentModelListener[] getListeners()
      Returns the array of listeners for this model
      the array of listeners for this model
    • removeListener

      public void removeListener(IConcurrentModelListener listener)
      Description copied from interface: IConcurrentModel
      Removes a listener from this model. The receiver will stop sending notifications to the given listener as soon as possible (although some additional notifications may still if arrive if the receiver was in the process of sending notifications in another thread). Any pending updates for this listener will be cancelled.

      Has no effect if the given listener is not known to this model.

      Specified by:
      removeListener in interface IConcurrentModel
      listener - listener to remove