org.rosuda.ibase
Interface Dependent

All Known Implementing Classes:
AxisCatSequence, BarCanvas, BaseCanvas, CustomCanvas, DevCanvas, FCCCanvas, FluctCanvas, Framework, HamCanvas, HistCanvas, HistCanvasEx, KapMeCanvas, KapMeNodeCanvas, LineCanvas, MapCanvas, MapScatterCanvas, MCPCanvas, MosaicCanvas, ParallelAxesCanvas, PGSCanvas, ScatterCanvas, SectScatterCanvas, TreeCanvas, TreeFlowCanvas

public interface Dependent

Simple dependency interface. Any class that implements this interface can be notified upon changes.

Version:
$Id: Dependent.java 445 2003-07-29 21:54:22Z starsoft $

Method Summary
 void Notifying(NotifyMsg msg, java.lang.Object src, java.util.Vector path)
          This method will be called when an even occured.
 

Method Detail

Notifying

void Notifying(NotifyMsg msg,
               java.lang.Object src,
               java.util.Vector path)
This method will be called when an even occured. Currently SMarker and Axis use this method of notification. There's no generic class for implemention the notification-list yet.

Parameters:
src - Object that sent the notification. The actual content is implementation-dependent.
path - This parameter is null for non-cascaded notify - in that case further calls to NotifyAll are not allowed. Otherwise it contains a Vector with all objects notified so far during cascaded notify. To aviod cyclic notifications every instance must either reject cascaded notifications (i.e. no calls to NotifyAll at all) or check for occurence of itself in the chain before calling NotifyAll. The only valid recursive calls in Notifying are NotifyAll(path) and NotifyAll(..,path), because only these two pass the "path" parameter to avoid cyclic loops.