de.bsvrz.sys.startstopp.skriptvew
Class SkriptVerwaltung

java.lang.Object
  extended by de.bsvrz.sys.startstopp.skriptvew.SkriptVewEnums
      extended by de.bsvrz.sys.startstopp.skriptvew.SkriptVerwaltung

public class SkriptVerwaltung
extends SkriptVewEnums

Klasse zum Auswerten einer StartStopp Datei. Bevor die Datei ausgewertet wird, werden die Makros in der Datei ersetzt. Dabei fungiert die Klasse wie ein Precompiler.
Beispiel: bewirkt, das an allen nachfolgenden Stellen in der Datei an denen der Makroverweis %java% verwendet wird, der Text java" wert="C:/Programme/Java/jdk1.6.0_03/bin/java verwendet wird.

Author:
Dambach Werke GmbH

Nested Class Summary
 
Nested classes/interfaces inherited from class de.bsvrz.sys.startstopp.skriptvew.SkriptVewEnums
SkriptVewEnums.E_AUSGABE, SkriptVewEnums.E_FEHLER_STARTSTOPPBLOCK, SkriptVewEnums.E_NEUSTART, SkriptVewEnums.E_START_FEHLER_VERHALTEN, SkriptVewEnums.E_STARTART, SkriptVewEnums.E_STATUS_STARTSTOPPBLOCK, SkriptVewEnums.E_STOPP_FEHLER_VERHALTEN, SkriptVewEnums.E_WARTEART, SkriptVewEnums.E_ZUSTAND
 
Field Summary
private  boolean m_fehlerStartStopp
          Merker ob in der Datei startStopp.xml ein semantischer Fehler vorliegt
private  java.lang.String m_fehlerText
          Beschreibung des Fehlers in der XML Datei
private static GlobaleDaten m_globaleDaten
          Verweis auf Singleton Instanz der Klasse GlobaleDaten
private  java.util.HashMap<java.lang.String,java.lang.String> m_makros
          Hashmap mit den Makros die in diesem StartStopp Block definiert sind
private  java.lang.String m_startStoppBlockId
          ID des StartStopp Blocks der zu dieser Datei gehört
private  java.lang.String m_xmlDatei
          Name der XML-Datei die interpretiert werden soll
 
Constructor Summary
SkriptVerwaltung(java.lang.String datei, long absender, long simulationsVariante)
          Klasse zum Auswerten eines StartStopp Blocks
 
Method Summary
static java.util.HashMap<java.lang.String,java.lang.String> bestimmeMakros(java.lang.String datei)
          Methode bestimmt die eingestellten Makros im globalen Teil der StartStopp Datei
private  java.lang.String ersetzeMakros(java.lang.String datei)
          Methode zum Ersetzen der Makros in einer Datei.
 java.lang.String getFehlerText()
           
 java.lang.String getStartStoppBlockId()
           
private  void interpretation(java.lang.String datei, long absender, long simulationsVariante)
          Methode zum Auswerten einer StartStopp Datei
 boolean isFehlerStartStopp()
           
static java.lang.String leseDateiInString(java.io.File datei)
          Methode zum Einlesen einer kompletten Datei in einen String
static void schreibeStringInDatei(java.io.File datei, java.lang.String inhalt)
          Schreibt einen String in eine Datei.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_globaleDaten

private static GlobaleDaten m_globaleDaten
Verweis auf Singleton Instanz der Klasse GlobaleDaten


m_xmlDatei

private java.lang.String m_xmlDatei
Name der XML-Datei die interpretiert werden soll


m_startStoppBlockId

private java.lang.String m_startStoppBlockId
ID des StartStopp Blocks der zu dieser Datei gehört


m_makros

private java.util.HashMap<java.lang.String,java.lang.String> m_makros
Hashmap mit den Makros die in diesem StartStopp Block definiert sind


m_fehlerStartStopp

private boolean m_fehlerStartStopp
Merker ob in der Datei startStopp.xml ein semantischer Fehler vorliegt


m_fehlerText

private java.lang.String m_fehlerText
Beschreibung des Fehlers in der XML Datei

Constructor Detail

SkriptVerwaltung

public SkriptVerwaltung(java.lang.String datei,
                        long absender,
                        long simulationsVariante)
Klasse zum Auswerten eines StartStopp Blocks

Parameters:
datei - Datei mit dem StartStopp Block
absender - Auslöser des Einlesen: 0 - StartStopp selbst, -1 - Handeingriff (Telnet), > 0 - ApplikationsID der Applikation
simulationsVariante - Simulationsvariante
Method Detail

interpretation

private void interpretation(java.lang.String datei,
                            long absender,
                            long simulationsVariante)
Methode zum Auswerten einer StartStopp Datei

Parameters:
datei - Datei mit dem StartStopp Block
absender - Auslöser des Einlesen: 0 - StartStopp selbst, -1 - Handeingriff (Telnet), > 0 - ApplikationsID der Applikation
simulationsVariante - Simulationsvariante

leseDateiInString

public static java.lang.String leseDateiInString(java.io.File datei)
                                          throws java.io.FileNotFoundException,
                                                 java.io.IOException
Methode zum Einlesen einer kompletten Datei in einen String

Parameters:
datei - Die einzulesenden Datei.
Returns:
Der Inhalt der Datei.
Throws:
java.io.FileNotFoundException - Die Datei wurde nicht gefunden.
java.io.IOException - Es gab eine Input-Output Fehler.

schreibeStringInDatei

public static void schreibeStringInDatei(java.io.File datei,
                                         java.lang.String inhalt)
                                  throws java.io.IOException
Schreibt einen String in eine Datei.

Parameters:
datei - Die Datei, in der hinein geschreiben werden soll.
inhalt - Der zu schreibende Inhalt.
Throws:
java.io.IOException - Input-Output-Fehler.

bestimmeMakros

public static java.util.HashMap<java.lang.String,java.lang.String> bestimmeMakros(java.lang.String datei)
Methode bestimmt die eingestellten Makros im globalen Teil der StartStopp Datei

Parameters:
datei - Name der StartStopp Datei
Returns:
Hahmap mit den Makros, als Key wird der Makroname, als Wert die Makrodefinition eingetragen

ersetzeMakros

private java.lang.String ersetzeMakros(java.lang.String datei)
Methode zum Ersetzen der Makros in einer Datei. Methode fungiert dabei als Precompiler. Die Makros müssen vorher über die Methode bestimmeMakros bestimmt worden sein. Beispiel: bewirkt, das an allen nachfolgenden Stellen in der Datei an denen der Makroverweis %java% verwendet wird, der Text java" wert="C:/Programme/Java/jdk1.6.0_03/bin/java eingetragen wird. Die modifizierter Daten werden in einer temporären Datei abgespeichert.

Parameters:
datei - Name der ursprünglichen Datei
Returns:
Name der modifizierten Datei oder null im Fehlerfall

getStartStoppBlockId

public java.lang.String getStartStoppBlockId()
Returns:
liefert die Klassenvariable m_startStoppBlockId zurück

isFehlerStartStopp

public boolean isFehlerStartStopp()
Returns:
liefert die Klassenvariable m_fehlerStartStopp zurück

getFehlerText

public java.lang.String getFehlerText()
Returns:
liefert die Variable fehlerText zurück