Class Observable<T>

  • Direct Known Subclasses:
    DataSetObservable

    public abstract class Observable<T>
    extends Object
    Provides methods for registering or unregistering arbitrary observers in an ArrayList. This abstract class is intended to be subclassed and specialized to maintain a registry of observers of specific types and dispatch notifications to them.
    • Field Detail

      • mObservers

        protected final ArrayList<T> mObservers
        The list of observers. An observer can be in the list at most once and will never be null.
    • Constructor Detail

      • Observable

        public Observable()
    • Method Detail

      • registerObserver

        public void registerObserver​(T observer)
        Adds an observer to the list. The observer cannot be null and it must not already be registered.
        Parameters:
        observer - the observer to register
        Throws:
        IllegalArgumentException - the observer is null
        IllegalStateException - the observer is already registered
      • unregisterObserver

        public void unregisterObserver​(T observer)
        Removes a previously registered observer. The observer must not be null and it must already have been registered.
        Parameters:
        observer - the observer to unregister
        Throws:
        IllegalArgumentException - the observer is null
        IllegalStateException - the observer is not yet registered
      • unregisterAll

        public void unregisterAll()
        Remove all registered observers.