package vroom.common.utilities; import java.util.Observer; /** * <code>IObservable</code> is an interface for classes that will observe implementations of {@link IObserver}. * <p> * Creation date: Apr 23, 2010 - 11:06:35 AM * * @author Victor Pillac, <a href="http://uniandes.edu.co">Universidad de Los Andes</a>-<a * href="http://copa.uniandes.edu.co">Copa</a> <a href="http://www.emn.fr">Ecole des Mines de Nantes</a>-<a * href="http://www.irccyn.ec-nantes.fr/irccyn/d/en/equipes/Slp">SLP</a> * @version 1.0 * @see Observer */ public interface IObservable { /** * Adds an observer to the set of observers for this object, provided that it is not the same as some observer * already in the set. The order in which notifications will be delivered to multiple observers is not specified. * * @param o * an observer to be added. * @throws IllegalArgumentException * if the parameter o is null. */ public void addObserver(IObserver o); /** * Deletes an observer from the set of observers of this object. Passing <CODE>null</CODE> to this method will have * no effect. * * @param o * the observer to be deleted. */ public void removeObserver(IObserver o); /** * Remove all observers from the set of observers of this object. */ public void removeAllObservers(); }