de.bsvrz.sys.funclib.dambach.konfiguration.netz
Class Konfiguration

java.lang.Object
  extended by de.bsvrz.sys.funclib.dambach.konfiguration.netz.Konfiguration

public class Konfiguration
extends java.lang.Object

Klasse die Methoden zur Verfügung stellt, die die Objekte ermittelt die für die Ermittlung der Stauprognose benötigt werden.

Author:
Dambach Werke GmbH

Nested Class Summary
static class Konfiguration.Inner
          Innere Klasse zum Sicherstellen, dass wirklich nur eine Instanz der Klasse gebildet wird
 
Field Summary
private  boolean _debug
          DebugFilter Möglichkeiten
private  java.util.HashMap<java.lang.String,AeusseresStrassenSegment> m_aeusseresStrassenSegment
          Hashmap mit Instanzen der einzelnen äußeren Straßensegmente (Key = Pid, Value = Instanz)
private  de.bsvrz.dav.daf.main.ClientDavInterface m_connection
          Verbindung zum DaV
private  de.bsvrz.dav.daf.main.config.DataModel m_dataModel
          Datenmodell
private  de.bsvrz.sys.funclib.debug.Debug m_debug
          Comment for m_debug
private  java.util.HashMap<java.lang.String,InneresStrassenSegment> m_inneresStrassenSegment
          Hashmap mit Instanzen der einzelnen inneren Staßensegmente (Key = Pid, Value = Instanz)
private  java.util.HashMap<java.lang.String,MessQuerschnitt> m_messQuerschnitt
          Hashmap mit Instanzen der einzelnen Messquerschnitte (Key = Pid, Value = Instanz)
private  java.util.HashMap<java.lang.String,StrassenKnoten> m_strassenKnoten
          Hashmap mit Instanzen der einzelnen Staßenknoten (Key = Pid, Value = Instanz)
private static java.util.HashMap<java.lang.String,java.lang.String> m_zuordnungMqZuNbaMq
          Zuordnungstabelle MessQuerschnitt zu NBA MessQuerschnitt.
 
Constructor Summary
private Konfiguration()
          Konstruktor der Klasse
 
Method Summary
private  void ausgabeAeussereStrassenSegmente()
          Methode zur Ausgabe der äußeren Staßensegmente (für Testzwecke)
private  void ausgabeInnereStrassenSegmente()
          Methode zur Ausgabe der inneren Staßensegmente (für Testzwecke)
private  void ausgabeStrassenKnoten()
          Methode zum Ausgeben der StassenKnoten (für Testzwecke)
private  void bestimmeAeussereStrassenSegmente(java.lang.String netz)
          Methode zum Bestimmen aller Objekte com Typ "typ.äußeresStraßenSegment" im übergebenen Netz.
private  void bestimmeInnereStrassenSegmente()
          Methode zum Bestimmen aller Objekte com Typ "typ.inneresStraßenSegment".
private  void bestimmeMessQuerschnitte(java.lang.String kbMessQuerschnitte)
          Methode bestimmt die vorhandenen Messquerschnitte und weist den einzelnen Straßensegmente (innere und äußere) die Messquerschnitte zu, die auf den jeweiligen Strassensegmenten liegen (geordnet nach Offset).
private  void bestimmeNbaMessQuerschnitte()
          Methode ermittelt die NBA-Messquerschnitte
 void bestimmeObjekte(de.bsvrz.dav.daf.main.ClientDavInterface connection, java.lang.String netz, java.lang.String kbMessQuerschnitte)
          Methode die das eigentliche Bestimmen der Objekte auslöst.
private  java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> bestimmeObjekte(java.lang.String objPid)
          Methode zum Bestimmen der Objekte, die zu einer bestimmten PID gehören (z.B. typ.de)
 AeusseresStrassenSegment getAeusseresStrassenSegment(java.lang.String pid)
          Methode liefert ein äußeres Straßensegment
 java.util.Vector<AeusseresStrassenSegment> getAeussereStrassenSegmente()
          Methode liefert alle äußeren Straßensegmente
 InneresStrassenSegment getInneresStrassenSegment(java.lang.String pid)
          Methode liefert ein inneres Straßensegment
 java.util.Vector<InneresStrassenSegment> getInnereStrassenSegmente()
          Methode liefert alle inneren Straßensegmente
static Konfiguration getInstanz()
          Methode zum Lesen der einzigen Instanz der Klasse
 java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getMessQuerschnitte()
          Methode liefert alle Messquerschnitte (ty.messQuerschnitt)
 java.util.Vector<MessQuerschnitt> getMessQuerschnitteVonStrassenSegment(java.lang.String pidStrassenSegment)
          Methode liefert zu einem Strassensegment die dazugehörenden Messquerschnitte
 java.lang.String getMqVonNbaMq(java.lang.String pidNbaMq)
          Methode bestimmt zu einem Messquerschnitt der mit der Pid vom Typ "typ.nbaMessQuerschnitt" die dazugehörende Pid vom Typ "typ.messQuerschnitt"
 java.lang.String getNbaMqVonMq(java.lang.String pidMq)
          Methode bestimmt zu einem Messquerschnitt der mit der Pid vom Typ "typ.messQuerschnitt" die dazugehörende Pid vom Typ "typ.nbaMessQuerschnitt"
 StrassenKnoten getStrassenKnoten(java.lang.String pid)
          Methode liefert einen Straßenknoten zu einer Pid, existiert der Stasßenknoten noch nicht und handlet es sich bei dem Objekt das zu der Pid gehört um ein Objekt vom Typ 'typ.straßenKnoten', so wird ein neuer StraßenKnoten angelegt.
 StrassenSegment getStrassenSegment(java.lang.String pid)
          Methode liefert ein Strassensegment zurück.
 java.util.Vector<StrassenTeilSegment> getStrassenTeilSegmente()
          Methode liefert alle Straßenteilsegmente
private  boolean isAeusseresStrassenSegment(java.lang.String pid)
          Methode ermittelt, ob es sich bei der übergebenen Pid um die Pid eines äußeren Straßensegments handelt
private  boolean isInneresSrtassenSegment(java.lang.String pid)
          Methode ermittelt, ob es sich bei der übergebenen Pid um die Pid eines inneren Straßensegments handelt
 java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> objektListeErstellen(de.bsvrz.dav.daf.main.config.DataModel dataModel, java.lang.String pidObjektTyp, java.lang.String konfigurationsBereiche)
          Methode zur Erstellung einer Liste von Objekten bestimmter Konfigurationsbereiche.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_debug

private de.bsvrz.sys.funclib.debug.Debug m_debug
Comment for m_debug


_debug

private boolean _debug
DebugFilter Möglichkeiten


m_dataModel

private de.bsvrz.dav.daf.main.config.DataModel m_dataModel
Datenmodell


m_connection

private de.bsvrz.dav.daf.main.ClientDavInterface m_connection
Verbindung zum DaV


m_strassenKnoten

private java.util.HashMap<java.lang.String,StrassenKnoten> m_strassenKnoten
Hashmap mit Instanzen der einzelnen Staßenknoten (Key = Pid, Value = Instanz)


m_aeusseresStrassenSegment

private java.util.HashMap<java.lang.String,AeusseresStrassenSegment> m_aeusseresStrassenSegment
Hashmap mit Instanzen der einzelnen äußeren Straßensegmente (Key = Pid, Value = Instanz)


m_inneresStrassenSegment

private java.util.HashMap<java.lang.String,InneresStrassenSegment> m_inneresStrassenSegment
Hashmap mit Instanzen der einzelnen inneren Staßensegmente (Key = Pid, Value = Instanz)


m_messQuerschnitt

private java.util.HashMap<java.lang.String,MessQuerschnitt> m_messQuerschnitt
Hashmap mit Instanzen der einzelnen Messquerschnitte (Key = Pid, Value = Instanz)


m_zuordnungMqZuNbaMq

private static java.util.HashMap<java.lang.String,java.lang.String> m_zuordnungMqZuNbaMq
Zuordnungstabelle MessQuerschnitt zu NBA MessQuerschnitt. (Key = PID des MessQuerschnitt, Value = die Pid des NbaMessQuerschnitts)

Constructor Detail

Konfiguration

private Konfiguration()
Konstruktor der Klasse

Method Detail

getInstanz

public static Konfiguration getInstanz()
Methode zum Lesen der einzigen Instanz der Klasse

Returns:
einzige Instanz der Klasse

bestimmeObjekte

public void bestimmeObjekte(de.bsvrz.dav.daf.main.ClientDavInterface connection,
                            java.lang.String netz,
                            java.lang.String kbMessQuerschnitte)
Methode die das eigentliche Bestimmen der Objekte auslöst. Methode benötigt die Verbindung zum DaV

Parameters:
connection - Verbindung zum DaV
netz - zu betrachtendes Netz
kbMessQuerschnitte - Konfigurationsbereich(e) der zu betrachtenden Messquerschnitte

bestimmeAeussereStrassenSegmente

private void bestimmeAeussereStrassenSegmente(java.lang.String netz)
Methode zum Bestimmen aller Objekte com Typ "typ.äußeresStraßenSegment" im übergebenen Netz. Zusätzlich werden die dazugehörenden Strassenknoten angelegt und eine Zuordnung der Strassensegmente zu den Strassenknoten vorgenommen


bestimmeInnereStrassenSegmente

private void bestimmeInnereStrassenSegmente()
Methode zum Bestimmen aller Objekte com Typ "typ.inneresStraßenSegment". Zusätzlich wird eine Zuordnung der Strassensegmente zu den Strassenknoten vorgenommen


getStrassenKnoten

public StrassenKnoten getStrassenKnoten(java.lang.String pid)
Methode liefert einen Straßenknoten zu einer Pid, existiert der Stasßenknoten noch nicht und handlet es sich bei dem Objekt das zu der Pid gehört um ein Objekt vom Typ 'typ.straßenKnoten', so wird ein neuer StraßenKnoten angelegt.

Parameters:
pid - Pid des Straßenknotens
Returns:
Instanz des Straßenknotens, im Fehlerfall null

getAeusseresStrassenSegment

public AeusseresStrassenSegment getAeusseresStrassenSegment(java.lang.String pid)
Methode liefert ein äußeres Straßensegment

Parameters:
pid - Pid des Straßensegments
Returns:
Instanz des Straßensegments, im Fehlerfall null

getInneresStrassenSegment

public InneresStrassenSegment getInneresStrassenSegment(java.lang.String pid)
Methode liefert ein inneres Straßensegment

Parameters:
pid - Pid des Straßensegments
Returns:
Instanz des Straßensegments, im Fehlerfall null

bestimmeMessQuerschnitte

private void bestimmeMessQuerschnitte(java.lang.String kbMessQuerschnitte)
Methode bestimmt die vorhandenen Messquerschnitte und weist den einzelnen Straßensegmente (innere und äußere) die Messquerschnitte zu, die auf den jeweiligen Strassensegmenten liegen (geordnet nach Offset).

Parameters:
kbMessQuerschnitte - Konfigurationsbereiche der zu verwendenden Messquerschnitte mit ":" getrennt. Leerer String: alle Konfigurationsbereiche

isInneresSrtassenSegment

private boolean isInneresSrtassenSegment(java.lang.String pid)
Methode ermittelt, ob es sich bei der übergebenen Pid um die Pid eines inneren Straßensegments handelt

Parameters:
pid - zu prüfende Pid
Returns:
true: Pid gehört zu einem inneren Straßensegment, sonst false

isAeusseresStrassenSegment

private boolean isAeusseresStrassenSegment(java.lang.String pid)
Methode ermittelt, ob es sich bei der übergebenen Pid um die Pid eines äußeren Straßensegments handelt

Parameters:
pid - zu prüfende Pid
Returns:
true: Pid gehört zu einem äußeren Straßensegment, sonst false

getMessQuerschnitteVonStrassenSegment

public java.util.Vector<MessQuerschnitt> getMessQuerschnitteVonStrassenSegment(java.lang.String pidStrassenSegment)
Methode liefert zu einem Strassensegment die dazugehörenden Messquerschnitte

Parameters:
pidStrassenSegment - Pid des Strassensegments
Returns:
Vector mit Messquerschnitten

bestimmeObjekte

private java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> bestimmeObjekte(java.lang.String objPid)
Methode zum Bestimmen der Objekte, die zu einer bestimmten PID gehören (z.B. typ.de)

Parameters:
objPid - Pid der Objekttypen
Returns:
Liste mit den Systemobjekten

ausgabeAeussereStrassenSegmente

private void ausgabeAeussereStrassenSegmente()
Methode zur Ausgabe der äußeren Staßensegmente (für Testzwecke)


ausgabeInnereStrassenSegmente

private void ausgabeInnereStrassenSegmente()
Methode zur Ausgabe der inneren Staßensegmente (für Testzwecke)


ausgabeStrassenKnoten

private void ausgabeStrassenKnoten()
Methode zum Ausgeben der StassenKnoten (für Testzwecke)


getStrassenSegment

public StrassenSegment getStrassenSegment(java.lang.String pid)
Methode liefert ein Strassensegment zurück.

Parameters:
pid - Pid des Strassensegments
Returns:
Instanz des Strassensegments, im Fehlerfall null

bestimmeNbaMessQuerschnitte

private void bestimmeNbaMessQuerschnitte()
Methode ermittelt die NBA-Messquerschnitte


getNbaMqVonMq

public java.lang.String getNbaMqVonMq(java.lang.String pidMq)
Methode bestimmt zu einem Messquerschnitt der mit der Pid vom Typ "typ.messQuerschnitt" die dazugehörende Pid vom Typ "typ.nbaMessQuerschnitt"

Parameters:
pidMq - Pid vom Typ "typ.messQuerschnitt"
Returns:
Pid vom Typ "typ.nbaMessQuerschnitt"

getMqVonNbaMq

public java.lang.String getMqVonNbaMq(java.lang.String pidNbaMq)
Methode bestimmt zu einem Messquerschnitt der mit der Pid vom Typ "typ.nbaMessQuerschnitt" die dazugehörende Pid vom Typ "typ.messQuerschnitt"

Parameters:
pidNbaMq - Pid vom Typ "typ.nbaMessQuerschnitt"
Returns:
Pid vom Typ "typ.messQuerschnitt"

getMessQuerschnitte

public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> getMessQuerschnitte()
Methode liefert alle Messquerschnitte (ty.messQuerschnitt)

Returns:
Liste mit den Messquerschnitten

objektListeErstellen

public java.util.List<de.bsvrz.dav.daf.main.config.SystemObject> objektListeErstellen(de.bsvrz.dav.daf.main.config.DataModel dataModel,
                                                                                      java.lang.String pidObjektTyp,
                                                                                      java.lang.String konfigurationsBereiche)
                                                                               throws java.lang.IllegalArgumentException
Methode zur Erstellung einer Liste von Objekten bestimmter Konfigurationsbereiche. Es können die Pids der Konfigurationsbereichen getrennt durch ':' übergeben werden.

Parameters:
dataModel - Datenmodell
pidObjektTyp - Pid des gesuchten ObjektTyps
konfigurationsBereiche - Pids der Konfigurationsbereiche getrennt durch ';'.
Throws:
java.lang.IllegalArgumentException

getAeussereStrassenSegmente

public java.util.Vector<AeusseresStrassenSegment> getAeussereStrassenSegmente()
Methode liefert alle äußeren Straßensegmente

Returns:
Vektor mit äüßeren Straßensegmenten

getInnereStrassenSegmente

public java.util.Vector<InneresStrassenSegment> getInnereStrassenSegmente()
Methode liefert alle inneren Straßensegmente

Returns:
Vektor mit inneren Straßensegmenten

getStrassenTeilSegmente

public java.util.Vector<StrassenTeilSegment> getStrassenTeilSegmente()
Methode liefert alle Straßenteilsegmente

Returns:
Straßensegmente