de.bsvrz.dav.daf.main.impl
Class ConfigurationManager

java.lang.Object
  extended by de.bsvrz.dav.daf.main.impl.ConfigurationManager

public class ConfigurationManager
extends Object

TBD Beschreibung

Author:
Kappich Systemberatung

Field Summary
private  String _applicationName
          Der Name der Applikation
private  int _configSendIndex
          Der Index der Konfigurationsendung
private  long _configurationId
          Die ID des Konfigurationsverantwortlichen der Konfiguration.
private  String _configurationPath
          Der Pfad der Konfiguration
private  String _configurationPid
          Die Pid der Konfiguration
private  DataModel _dataModel
          Das Datenmodel
private static Debug _debug
          DebugLogger für Debug-Ausgaben
private  LinkedList _pendingResponces
          Interne Liste der ankommenden Konfigurationsnachrichten
private  SubscriptionManager _subscriptionManager
          Der Anmeldemanager
 
Constructor Summary
ConfigurationManager(long configurationId, String configurationPid, String configurationPath, String applicationName, DataModel dataModel)
          Erzeugt ein neues Objekt mit den gegebenen Parametern.
 
Method Summary
 void completeInitialisation(SubscriptionManager subscriptionManager)
          Erzeugt ein Datenmodel und beendet die initialisierungsphase.
 String getApplicationName()
          Gibt den Name der Applikation zurück.
 String getConfigurationPath()
          Gibt den Pfad der Konfiguration zurück.
 String getConfigurationPid()
          Gibt die Pid der Konfiguration zurück.
 DataModel getDataModel()
          Gibt das Datenmodel zurück.
 TransmitterConnectionInfo[] getTransmitterConnectionInfo(long transmitterId)
          Führt eine Konfigurationsanfrage durch um die versorgte Datenverteilertopologie zu ermitteln.
 long isValidUser(String userName, byte[] encriptedPassword, String text, String processName)
          Überprüfft ob die Authentificationsdaten existent und gültig sind.
 void sendConfigData(BaseSubscriptionInfo baseSubscriptionInfo, ConfigTelegram telegram)
          Sendet eine Konfigurationsanfrage zur Kommunikationsschicht
 void update(SendDataObject newData)
          Diese Methode wird aufgerufen wenn eine neues Konfigurationstelegram erhalten wird.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_debug

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


_dataModel

private DataModel _dataModel
Das Datenmodel


_subscriptionManager

private SubscriptionManager _subscriptionManager
Der Anmeldemanager


_configurationPid

private String _configurationPid
Die Pid der Konfiguration


_configurationPath

private String _configurationPath
Der Pfad der Konfiguration


_applicationName

private String _applicationName
Der Name der Applikation


_configSendIndex

private int _configSendIndex
Der Index der Konfigurationsendung


_pendingResponces

private LinkedList _pendingResponces
Interne Liste der ankommenden Konfigurationsnachrichten


_configurationId

private final long _configurationId
Die ID des Konfigurationsverantwortlichen der Konfiguration.

Constructor Detail

ConfigurationManager

public ConfigurationManager(long configurationId,
                            String configurationPid,
                            String configurationPath,
                            String applicationName,
                            DataModel dataModel)
Erzeugt ein neues Objekt mit den gegebenen Parametern.

Parameters:
configurationId - ID des Konfigurationsverantwortlichen
configurationPid - Pid der Konfiguration
configurationPath - Pfad der Konfiguration
applicationName - Name der Applikation
dataModel - Datenmodel
Method Detail

completeInitialisation

public final void completeInitialisation(SubscriptionManager subscriptionManager)
                                  throws ConfigurationException
Erzeugt ein Datenmodel und beendet die initialisierungsphase.

Parameters:
subscriptionManager - Anmeldemanager
Throws:
ConfigurationException - wenn Fehler bei Konfigurationsänderungen auftreten.

getConfigurationPid

public final String getConfigurationPid()
Gibt die Pid der Konfiguration zurück.

Returns:
Pid der Konfiguration

getConfigurationPath

public final String getConfigurationPath()
Gibt den Pfad der Konfiguration zurück.

Returns:
Pfad der Konfiguration

getApplicationName

public final String getApplicationName()
Gibt den Name der Applikation zurück.

Returns:
Name der Applikation

getDataModel

public final DataModel getDataModel()
Gibt das Datenmodel zurück.

Returns:
Datenmodel

update

public void update(SendDataObject newData)
Diese Methode wird aufgerufen wenn eine neues Konfigurationstelegram erhalten wird.

Parameters:
newData - Die neue Konfigurationsdaten.

sendConfigData

public final void sendConfigData(BaseSubscriptionInfo baseSubscriptionInfo,
                                 ConfigTelegram telegram)
Sendet eine Konfigurationsanfrage zur Kommunikationsschicht

Parameters:
baseSubscriptionInfo - Basisanmeldeinformationen
telegram - Kofigurationstelegramm

isValidUser

public final long isValidUser(String userName,
                              byte[] encriptedPassword,
                              String text,
                              String processName)
                       throws ConfigurationException
Überprüfft ob die Authentificationsdaten existent und gültig sind. Wenn der Benutzer gültig ist und sein Passwort mit den gegebenen verschlüsselten Passwort übereinstimmt, dann schickt die Konfiguration die Id des Benutzers zurück, sonst -1

Parameters:
userName - der Benutzername
encriptedPassword - verschlüsselte Passwort
text - der Zufallstext mit den der Passwort verschlüsselt wurde
processName - der Authentifikationsvervahren
Throws:
ConfigurationException - Wenn von der Konfiguration keine Antwort innerhalb eine bestimmten Zeit angekommen ist.

getTransmitterConnectionInfo

public final TransmitterConnectionInfo[] getTransmitterConnectionInfo(long transmitterId)
Führt eine Konfigurationsanfrage durch um die versorgte Datenverteilertopologie zu ermitteln.

Parameters:
transmitterId - Die Id des Datenverteilers, dessen Verbindungsinformationen bestimmt werden müssen.
Returns:
Array mit Verbindungsinformationen