de.bsvrz.vew.engvew.engstelle
Class Unfall

java.lang.Object
  extended by de.bsvrz.vew.engvew.engstelle.Situation
      extended by de.bsvrz.vew.engvew.engstelle.Engstelle
          extended by de.bsvrz.vew.engvew.engstelle.Unfall
All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.sys.funclib.dambach.dav.daf.EmpfaengerMitAnAbmeldung, de.bsvrz.sys.funclib.dambach.dav.daf.EmpfaengerMitAnmeldung, VerwaltungStaus.BereinigungsListener

public class Unfall
extends Engstelle

Modelliert einen Unfall als spezielle Engstelle

Version:
$Revision: 1.3 $ / $Date: 2008/11/24 16:05:40 $ / ($Author: Sans $)
Author:
Dambach Werke GmbH, Stefan Sans

Nested Class Summary
 
Nested classes/interfaces inherited from class de.bsvrz.vew.engvew.engstelle.Engstelle
Engstelle.MeldungsBehandlung
 
Nested classes/interfaces inherited from class de.bsvrz.vew.engvew.engstelle.Situation
Situation.Gueltigkeit, Situation.Lage
 
Field Summary
 Engstelle.MeldungsBehandlung ablaufMeldungen
          Instanz von MeldungsBehandlung zur Behandlung von Betriebsmeldungen zur Ablaufprüfung dieses Unfalls
 
Fields inherited from class de.bsvrz.vew.engvew.engstelle.Engstelle
_verwaltung, kapazitaetsMeldungen, stauMeldungen
 
Constructor Summary
Unfall(VerwaltungEngstellen verwaltung, de.bsvrz.dav.daf.main.config.SystemObject davObjekt)
          Erzeugt eine neue Instanz vom Typ Unfall
 
Method Summary
 void abmelden()
           
 void anmelden()
           
 long getEngpassKapazitaet()
          Bestimmt die (Engpass-) Kapazität dieser Engstelle
 java.lang.String getIdAblaufMeldung()
          Bildet eine Id zur Verwaltung von Betriebsmeldungen bezgl. der Ablaufprüfung dieses Unfalls
 long getWarteZeitMeldungNachRaeumungUnfall()
          Bestimmt den Parameter WarteZeitMeldungNachRäumungUnfall der Engstellenverwaltung
 long pruefeAblauf()
          Führt die Ablaufprüfung für diesen Unfall durch.
 void update(de.bsvrz.dav.daf.main.ResultData[] resultData)
           
 
Methods inherited from class de.bsvrz.vew.engvew.engstelle.Engstelle
bereinige, bereinigeVerkehrsStaerke, getFaktorVerkehrsStaerkeStromAbwaerts, getIdKapazitaetsMeldung, getIdStauMeldung, getLetztesStrassenSegment, getMaxLaengeStauUeberBaustellenEnde, getMqStromAbwaerts, pruefeEngpass, pruefeStaus, pruefeStausAlt, setStauMeldungAktiv, setStauMeldungInaktiv
 
Methods inherited from class de.bsvrz.vew.engvew.engstelle.Situation
getConnection, getGueltigkeit, getLage, getObjekt, pruefeGueltigkeit, pruefeLage, setGueltigkeit, setLage, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ablaufMeldungen

public final Engstelle.MeldungsBehandlung ablaufMeldungen
Instanz von MeldungsBehandlung zur Behandlung von Betriebsmeldungen zur Ablaufprüfung dieses Unfalls

Constructor Detail

Unfall

public Unfall(VerwaltungEngstellen verwaltung,
              de.bsvrz.dav.daf.main.config.SystemObject davObjekt)
Erzeugt eine neue Instanz vom Typ Unfall

Parameters:
verwaltung - die Engstellenverwaltung, die für diese Instanz zuständig ist
davObjekt - das Unfall-Systemobjekt
Method Detail

getEngpassKapazitaet

public long getEngpassKapazitaet()
Description copied from class: Engstelle
Bestimmt die (Engpass-) Kapazität dieser Engstelle

Specified by:
getEngpassKapazitaet in class Engstelle
Returns:
Die Restkapazität dieses Unfalls oder -1, wenn die Restkapazität nicht bestimmt werden konnte

getWarteZeitMeldungNachRaeumungUnfall

public long getWarteZeitMeldungNachRaeumungUnfall()
Bestimmt den Parameter WarteZeitMeldungNachRäumungUnfall der Engstellenverwaltung

Returns:
den Wert des Parameters

anmelden

public void anmelden()
Specified by:
anmelden in interface de.bsvrz.sys.funclib.dambach.dav.daf.EmpfaengerMitAnmeldung
Overrides:
anmelden in class Situation

abmelden

public void abmelden()
Specified by:
abmelden in interface de.bsvrz.sys.funclib.dambach.dav.daf.EmpfaengerMitAnAbmeldung
Overrides:
abmelden in class Engstelle

update

public void update(de.bsvrz.dav.daf.main.ResultData[] resultData)
Specified by:
update in interface de.bsvrz.dav.daf.main.ClientReceiverInterface
Overrides:
update in class Engstelle

pruefeAblauf

public long pruefeAblauf()
                  throws java.lang.IllegalStateException
Führt die Ablaufprüfung für diesen Unfall durch. Die Zeit vom Ablauf der der (geschätzten) Dauer des Unfalls bis zum Prüfungszeitpunkt wirde mit dem Parameter WarteZeitMeldungNachRaeumungUnfall verglichen.

Returns:
die Zeit in Minuten, die der Unfall abgelaufen ist, wenn die Zeit nach Unfallender den Wert des Parmaters überschritten hat, 0 sonst. Rückgabe von 0 bedeutet also positives, ingleich 0 negatives Ergebnis der Prüfung.
Throws:
java.lang.IllegalStateException - wenn die Prüfung nicht durchgeführt werden kann, aufgrund etwa nichtversorgter Parameter, keine Gültigkeit spezifiziert etc.

getIdAblaufMeldung

public java.lang.String getIdAblaufMeldung()
Bildet eine Id zur Verwaltung von Betriebsmeldungen bezgl. der Ablaufprüfung dieses Unfalls

Returns:
die gebildete Id