jasi.sim.basic
Class SimProxy

java.lang.Object
  extended by jasi.sim.basic.SimProxy
All Implemented Interfaces:
ElementsListener, CalendarListener

public final class SimProxy
extends java.lang.Object
implements ElementsListener, CalendarListener

Proxy manager for observers/listeners of simulation state changes. This proxy distributes the relevant events to all registered observers.

See Also:
SimListener

Method Summary
 void add(SimListener listener)
          Add an observer to the proxy manager.
 void advancedTime(Time time, double speed)
          A time advance has been granted.
<T> void
changedElement(Element element, java.lang.String name, T value)
          A simulation element has changed its state.
 void createdElement(Element element)
          A simulation element has been created.
 void deletedElement(Element element)
          A simulation element has been deleted.
 void gotException(java.lang.Exception e)
          An exception occurred during simulation.
 void gotMessage(java.lang.String m)
          An message was created by the simulation.
 void poppedEvent(Event event)
          An event has been popped from the calendar and executed by an simulation model.
 void pushedEvent(Event event)
          An event has been added to the simulation calendar.
 void remove(SimListener listener)
          Remove an observer from the proxy manager.
 void removedEvent(Event event)
          An event has been removed from the simulation calendar.
<T> void
requestedElement(Element element, java.lang.String name, T value)
          The attribute value of a simulation element has been read.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

add

public void add(SimListener listener)
Add an observer to the proxy manager.

Parameters:
listener - The observer of simulation state changes.

remove

public void remove(SimListener listener)
Remove an observer from the proxy manager.

Parameters:
listener - The observer of simulation state changes.

pushedEvent

public void pushedEvent(Event event)
An event has been added to the simulation calendar.

Specified by:
pushedEvent in interface CalendarListener
Parameters:
event - The added event.

poppedEvent

public void poppedEvent(Event event)
An event has been popped from the calendar and executed by an simulation model.

Specified by:
poppedEvent in interface CalendarListener
Parameters:
event - The popped event.

removedEvent

public void removedEvent(Event event)
An event has been removed from the simulation calendar.

Specified by:
removedEvent in interface CalendarListener
Parameters:
event - The removed event.

createdElement

public void createdElement(Element element)
A simulation element has been created.

Specified by:
createdElement in interface ElementsListener
Parameters:
element - The newly created element.

changedElement

public <T> void changedElement(Element element,
                               java.lang.String name,
                               T value)
A simulation element has changed its state.

Specified by:
changedElement in interface ElementsListener
Type Parameters:
T - The type of the value.
Parameters:
element - The newly created element.
name - The attribute's name.
value - The new value of the attribute.

requestedElement

public <T> void requestedElement(Element element,
                                 java.lang.String name,
                                 T value)
The attribute value of a simulation element has been read.

Specified by:
requestedElement in interface ElementsListener
Type Parameters:
T - The type of the value.
Parameters:
element - The simulation element.
name - The attribute's name.
value - The value of the attribute.

deletedElement

public void deletedElement(Element element)
A simulation element has been deleted.

Specified by:
deletedElement in interface ElementsListener
Parameters:
element - The deleted element.

advancedTime

public void advancedTime(Time time,
                         double speed)
A time advance has been granted.

Parameters:
time - The granted time advance.
speed - The simulation speed in factors of real time.

gotException

public void gotException(java.lang.Exception e)
An exception occurred during simulation.

Parameters:
e - The exception.

gotMessage

public void gotMessage(java.lang.String m)
An message was created by the simulation.

Parameters:
m - The message.