de.bsvrz.puk.config.main.simulation
Class Ready

java.lang.Object
  extended by de.bsvrz.puk.config.main.simulation.Ready
All Implemented Interfaces:
SimulationStates

public class Ready
extends Object
implements SimulationStates

Diese Klasse stellt den Zustand "Bereit" der Konfiguration für eine Simulation dar. Es sind alle Zustandsübergänge vorhanden um in die Zustände NichtBereit und Gelöscht zu wechseln.

Einige Zustandsübergänge, zu Beispiel das erneute Aufrufen von Start, führen zu keinem Zustandswechsel.

Author:
Achim Wullenkord (AW), Kappich Systemberatung

Nested Class Summary
private  class Ready.NoSourceEvent
          Wird ausgeführt, wenn eine parametrierbare Zeitspanne abgelaufen ist.
private  class Ready.TimeOutValueReceiver
          Empfängt einen Datenatz von der Parametrierung in dem die Zeit gespeichert ist.
 
Field Summary
private static Debug _debug
          DebugLogger für Debug-Ausgaben
private  Object _lockTimeOut
          Wird benutzt um die Variable _timeout zu sperren, wenn lesend oder schreibend auf den Wert zugegriffen werden soll.
private static Timer _noSourceTimer
          Sobald die Methode noSource() aufgerufen wird, wird ein Timer gestartet.
private  ConfigSimulationObject _simulationObject
           
private  long _timeout
          Bestimmt wie lang gewartet wird, sobald die Verbindung zur Simulationssteuerung nicht mehr zur Verfügung steht.
private  TimerTask _timer
           
private  boolean _timerIsRunning
           
private  Util _util
           
 
Constructor Summary
Ready(ConfigSimulationObject simulationObject, Util util, ClientDavInterface connection)
          Erzeugt das Objekt und meldet sich auf einen Parameter an.
 
Method Summary
 void delete()
          Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "gelöscht" überführt werden soll.
private  long getTimeout()
           
 void noSource()
          Wird aufgerufen, wenn es keine Quelle gibt, die Daten verschicken kann.
 void pause()
          Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "pause" überführt werden soll.
 void preStart()
          Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "vorstart" überführt werden soll.
 void removedFromSet()
          Diese Methode wird aufgerufen, wenn die Simulation aus der Menge der Simulationen entfernt wurde.
private  void setTimeout(long timeout)
           
 void start()
          Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "start" überführt werden soll.
 void stop()
          Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "stop" überführt werden soll.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_noSourceTimer

private static final Timer _noSourceTimer
Sobald die Methode noSource() aufgerufen wird, wird ein Timer gestartet. Dieser Timer läuft parametrierbare Zeitspanne, läuft der Timer ab, wird der Zustand "NotReady" gewechselt. Wird die Methode noSource() erneut aufgerufen, wird kein neuer Timer gestartet, da dies zum erneuten Wechsel führen könnte.


_timer

private TimerTask _timer

_timerIsRunning

private boolean _timerIsRunning

_debug

private static final Debug _debug
DebugLogger für Debug-Ausgaben


_timeout

private long _timeout
Bestimmt wie lang gewartet wird, sobald die Verbindung zur Simulationssteuerung nicht mehr zur Verfügung steht. Läuft die Zeit ab, wird in den Zustand "nicht bereit" gewechselt.


_lockTimeOut

private final Object _lockTimeOut
Wird benutzt um die Variable _timeout zu sperren, wenn lesend oder schreibend auf den Wert zugegriffen werden soll.


_simulationObject

private final ConfigSimulationObject _simulationObject

_util

private final Util _util
Constructor Detail

Ready

public Ready(ConfigSimulationObject simulationObject,
             Util util,
             ClientDavInterface connection)
Erzeugt das Objekt und meldet sich auf einen Parameter an.

Parameters:
simulationObject -
util -
connection -
Method Detail

preStart

public void preStart()
Description copied from interface: SimulationStates
Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "vorstart" überführt werden soll.

Specified by:
preStart in interface SimulationStates

start

public void start()
Description copied from interface: SimulationStates
Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "start" überführt werden soll.

Specified by:
start in interface SimulationStates

stop

public void stop()
Description copied from interface: SimulationStates
Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "stop" überführt werden soll.

Specified by:
stop in interface SimulationStates

pause

public void pause()
Description copied from interface: SimulationStates
Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "pause" überführt werden soll.

Specified by:
pause in interface SimulationStates

delete

public void delete()
Description copied from interface: SimulationStates
Diese Methode wird aufgerufen, wenn die Simulation in den Zustand "gelöscht" überführt werden soll.

Specified by:
delete in interface SimulationStates

noSource

public void noSource()
Description copied from interface: SimulationStates
Wird aufgerufen, wenn es keine Quelle gibt, die Daten verschicken kann.

Specified by:
noSource in interface SimulationStates

getTimeout

private long getTimeout()

setTimeout

private void setTimeout(long timeout)

removedFromSet

public void removedFromSet()
Description copied from interface: SimulationStates
Diese Methode wird aufgerufen, wenn die Simulation aus der Menge der Simulationen entfernt wurde.

Specified by:
removedFromSet in interface SimulationStates

toString

public String toString()
Overrides:
toString in class Object