de.bsvrz.sys.startstopp.prozessvew
Class StartStoppAnfrage

java.lang.Object
  extended by java.lang.Thread
      extended by de.bsvrz.sys.startstopp.prozessvew.StartStoppAnfrage
All Implemented Interfaces:
java.lang.Runnable

public class StartStoppAnfrage
extends java.lang.Thread

Klasse zum Auswerten einer StartStopp Anfrage, die über die Attributgruppe att.startStoppAnfrage empfangen wurde. Die Auswertung erfolgt in einem Thread. Der Thread wird automatisch durch den Konstruktor gestartet.

Author:
Dambach Werke GmbH

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
private static java.lang.String _AKTION_LOESCHEN
          Definierter Text zum Löschen einer Applikation / eines StartStopp Blocks
private static java.lang.String _AKTION_NEUSTART
          Definierter Text zum Neustarten einer Applikation / eines StartStopp Blocks
private static java.lang.String _AKTION_START
          Definierter Text zum Starten einer Applikation / eines StartStopp Blocks
private static java.lang.String _AKTION_STOPP
          Definierter Text zum Stoppen einer Applikation / eines StartStopp Blocks
private  boolean _debug
          Debug Einstellungen
private static de.bsvrz.sys.funclib.debug.Debug logger
          Debug
private  long m_absenderId
          Id des Absenderprozesses
private  java.lang.String m_absenderZeichen
          Absender Zeichen, Kennung innerhalb des Absenderprozesses, mit dem der Absender die Antwort zu der Anfrage zuordnen kann
private  de.bsvrz.dav.daf.main.ResultData m_data
          Auszuwertende Daten vom Typ "atg.startStoppAnfrage"
private  DaVKommunikation m_daVKommunikation
          Verweis auf Singelton Instanz der Klasse DaVKommunikation
private  Logbuch m_logbuch
          Verweis auf Singelton Instanz der Klasse Logbuch
private  ProzessVerwaltung m_prozessVerwaltung
          Verweis auf Singelton Instanz der Klasse ProzessVerwaltung
private  boolean m_threadGestartet
          Merker ob der Thread zum Auswerten der Attributgruppe bereits gestartet wurde
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
StartStoppAnfrage(de.bsvrz.dav.daf.main.ResultData data)
          Konstruktor der Klasse.
 
Method Summary
private  void auswerteVariante2und3(long absenderId, java.lang.String datei, java.lang.String aktion, java.lang.String startStoppBlockId, long simuVariante)
          Methode realisiert den gemeinsamen Teil von Variante 2 und 3
private  boolean pruefeAktionV1PlusV4(long absender, java.lang.String prozessId, java.lang.String name, java.lang.String aktion)
          Methode prüft, ob als Aktion ein zulässiges Schlüsselwort übergeben wurde.
private  boolean pruefeAktionV2PlusV3(long absender, java.lang.String startStoppId, java.lang.String aktion, long simuVariante)
          Methode prüft, ob als Aktion ein zulässiges Schlüsselwort übergeben wurde.
 void run()
          Run Methode des Threads
private  void sendeStartStoppAntwort(SkriptVewEnums.E_FEHLER_STARTSTOPPBLOCK fehler, java.lang.String fehlerText)
          Methode erzeugt die StartStopp Antwort (att.startStoppAntwort) und sendet diese an den DaV.
private  void sendeStartStoppAntwort(java.lang.String id, SkriptVewEnums.E_ZUSTAND zustand)
          Methode erzeugt die StartStopp Antwort (att.startStoppAntwort) im Normalfall und sendet diese an den DaV.
private  void updateVariante1(de.bsvrz.dav.daf.main.Data data)
          Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 1
private  void updateVariante2(de.bsvrz.dav.daf.main.Data data)
          Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 2
private  void updateVariante3(de.bsvrz.dav.daf.main.Data data)
          Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 3
private  void updateVariante4(de.bsvrz.dav.daf.main.Data data)
          Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 4
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

logger

private static final de.bsvrz.sys.funclib.debug.Debug logger
Debug


_debug

private boolean _debug
Debug Einstellungen


_AKTION_START

private static final java.lang.String _AKTION_START
Definierter Text zum Starten einer Applikation / eines StartStopp Blocks

See Also:
Constant Field Values

_AKTION_STOPP

private static final java.lang.String _AKTION_STOPP
Definierter Text zum Stoppen einer Applikation / eines StartStopp Blocks

See Also:
Constant Field Values

_AKTION_NEUSTART

private static final java.lang.String _AKTION_NEUSTART
Definierter Text zum Neustarten einer Applikation / eines StartStopp Blocks

See Also:
Constant Field Values

_AKTION_LOESCHEN

private static final java.lang.String _AKTION_LOESCHEN
Definierter Text zum Löschen einer Applikation / eines StartStopp Blocks

See Also:
Constant Field Values

m_prozessVerwaltung

private ProzessVerwaltung m_prozessVerwaltung
Verweis auf Singelton Instanz der Klasse ProzessVerwaltung


m_logbuch

private Logbuch m_logbuch
Verweis auf Singelton Instanz der Klasse Logbuch


m_daVKommunikation

private DaVKommunikation m_daVKommunikation
Verweis auf Singelton Instanz der Klasse DaVKommunikation


m_data

private de.bsvrz.dav.daf.main.ResultData m_data
Auszuwertende Daten vom Typ "atg.startStoppAnfrage"


m_threadGestartet

private boolean m_threadGestartet
Merker ob der Thread zum Auswerten der Attributgruppe bereits gestartet wurde


m_absenderId

private long m_absenderId
Id des Absenderprozesses


m_absenderZeichen

private java.lang.String m_absenderZeichen
Absender Zeichen, Kennung innerhalb des Absenderprozesses, mit dem der Absender die Antwort zu der Anfrage zuordnen kann

Constructor Detail

StartStoppAnfrage

public StartStoppAnfrage(de.bsvrz.dav.daf.main.ResultData data)
Konstruktor der Klasse. Der Thread der die Auswertung der Attributgruppe vornimmt, wird durch den Konstruktor automatisch gestartet

Parameters:
data - ResultData vom Typ "atg.startStoppAnfrage"
Method Detail

run

public void run()
Run Methode des Threads

Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

updateVariante1

private void updateVariante1(de.bsvrz.dav.daf.main.Data data)
Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 1

Parameters:
data - Datenteil Variante 1 der Attributgruppe "atg.startStoppAnfrage"

updateVariante2

private void updateVariante2(de.bsvrz.dav.daf.main.Data data)
Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 2

Parameters:
data - Datenteil Variante 2 der Attributgruppe "atg.startStoppAnfrage"

updateVariante3

private void updateVariante3(de.bsvrz.dav.daf.main.Data data)
Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 3

Parameters:
data - Datenteil Variante 3 der Attributgruppe "atg.startStoppAnfrage"

auswerteVariante2und3

private void auswerteVariante2und3(long absenderId,
                                   java.lang.String datei,
                                   java.lang.String aktion,
                                   java.lang.String startStoppBlockId,
                                   long simuVariante)
Methode realisiert den gemeinsamen Teil von Variante 2 und 3

Parameters:
absenderId - Absender ID
datei - Datei mit XML-Stream
aktion - Aktion
startStoppBlockId - ID des StartStoppBlocks
simuVariante - Simulationsvariante

updateVariante4

private void updateVariante4(de.bsvrz.dav.daf.main.Data data)
Auswerten der Attributgruppe "atg.startStoppAnfrage" Variante 4

Parameters:
data - Datenteil Variante 4 der Attributgruppe "atg.startStoppAnfrage"

pruefeAktionV1PlusV4

private boolean pruefeAktionV1PlusV4(long absender,
                                     java.lang.String prozessId,
                                     java.lang.String name,
                                     java.lang.String aktion)
Methode prüft, ob als Aktion ein zulässiges Schlüsselwort übergeben wurde. Ebeso wird geprüft, ob die Kombination Aktion - Pid - Name korrekt nach folgendem Schema verwendet wurden: - Start: Pid = null, Name != null - Stopp: Pid != null, Name = null - Neustart: Pid != null, Name = null

Parameters:
absender - Absender
prozessId - Prozess ID
name - Name
aktion - zu prüfende Aktion
Returns:
true Aktion bzw. Kombination ok, sonst false

pruefeAktionV2PlusV3

private boolean pruefeAktionV2PlusV3(long absender,
                                     java.lang.String startStoppId,
                                     java.lang.String aktion,
                                     long simuVariante)
Methode prüft, ob als Aktion ein zulässiges Schlüsselwort übergeben wurde. Ebenso wird geprüft, ob die Kombination Aktion - Pid - Name korrekt nach folgendem Schema verwendet wurden: - SimulationsVariante 0 bis 999 - Start: Pid = null - Stopp: Pid != null - Neustart: Pid != null

Parameters:
absender - Absender
startStoppId - ID des StartStopp Blocks
aktion - zu prüfende Aktion
Returns:
true Aktion bzw. Kombination ok, sonst false

sendeStartStoppAntwort

private void sendeStartStoppAntwort(SkriptVewEnums.E_FEHLER_STARTSTOPPBLOCK fehler,
                                    java.lang.String fehlerText)
Methode erzeugt die StartStopp Antwort (att.startStoppAntwort) und sendet diese an den DaV.

Parameters:
fehler - Kodierung des Fehler (de.bsvrz.sys.startstopp.skriptvew.SkriptVewEnums.E_FEHLER_STARTSTOPPBLOCK)
fehlerText - Fehlertext (nur für Debug bzw. Logbuch)

sendeStartStoppAntwort

private void sendeStartStoppAntwort(java.lang.String id,
                                    SkriptVewEnums.E_ZUSTAND zustand)
Methode erzeugt die StartStopp Antwort (att.startStoppAntwort) im Normalfall und sendet diese an den DaV.

Parameters:
id - Id der Inkarnation bzw. des StartStopp Blocks
zustand - Zustand der Inkarantion bzw. des StartStopp Blocks (de.bsvrz.sys.startstopp.skriptvew.SkriptVewEnums.Zustand)