package data;

import data.events.*;

/**
  * A Stock that will fire events to inform about changes to its contents.
  *
  * @author Steffen Zschaler
  * @version 2.0 18/08/1999
  * @since v2.0
  */
public interface ListenableStock extends Stock {

  /**
    * Add a listener that will be informed about changes to the Stock's contents.
    *
    * @override Always
    *
    * @param scl the listener
    */
  public void addStockChangeListener (StockChangeListener scl);

  /**
    * Remove a listener that was being informed about changes to the Stock's contents.
    *
    * @override Always
    *
    * @param scl the listener
    */
  public void removeStockChangeListener (StockChangeListener scl);
}