package eu.dnetlib.miscutils.observer;

/**
 * Implement the same interface as JDK java.util.Observer as java interface (not as a class) and introduce static type
 * safeness through generics.
 * 
 * @author marko
 * 
 * @param <T>
 *            obvserved type
 */
public interface Observer<T extends Observable<?>> {
	/**
	 * gets notified when an observed object is updated.
	 * 
	 * @param observed
	 *            observed object which modification triggered this call.
	 * @param arg
	 *            arg
	 */
	void update(T observed, Object arg);
}
