Package de.bsvrz.dav.dav.main
Class LowLevelConnectionsManager
java.lang.Object
de.bsvrz.dav.dav.main.LowLevelConnectionsManager
- All Implemented Interfaces:
LowLevelConnectionsManagerInterface
public class LowLevelConnectionsManager
extends Object
implements LowLevelConnectionsManagerInterface
Klasse, die die Verbindungen des Datenverteilers verwaltet. Diese Klasse initialisiert die LowLevelApplicationConnections,
LowLevelTransmitterConnections, stellt eine Klasse für die Passwort-Prüfung von Benutzern bereit und initialisiert schließlich den
HighLevelConnectionsManager.
-
Constructor Summary
ConstructorsConstructorDescriptionLowLevelConnectionsManager(ServerDavParameters serverDavParameters) Erzeugt eine neue Verbindungsverwaltung für den Datenverteiler. -
Method Summary
Modifier and TypeMethodDescriptiongetApplicationConnection(long applicationId) Gibt die angegebene Applikationsverbindung zurückGibt alle Appliaktionsverbindungen zurückde.bsvrz.dav.daf.main.ClientDavParametersGibt die ClientDavParameters für die lokale Dav-Applikation zurücklongGibt die Id der lokalen Konfiguration zurückGibt die Pid der lokalen Konfiguration zurückde.bsvrz.dav.daf.main.config.SystemObjectGibt das eigene Datenverteiler-Objekt zurückde.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfogetRemoteTransmitterConnectionInfo(long connectedTransmitterId) Bestimmt die Verbindungsinformationen für eine Verbindung vom angegebenen Datenverteiler zu diesem Datenverteiler.Gibt die eigene ClientDavConnection zurückGibt die ServerDavParameters zurückgetTransmitterConnection(long transmitterId) Gibt die angegebene Dav-Dav-Verbindung zurückde.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfogetTransmitterConnectionInfo(long connectedTransmitterId) Bestimmt die Verbindungsinformationen für eine Verbindung von diesem Datenverteiler zum angegebenen Datenverteiler.Gibt alle Datenverteilerverbindungen zurückfinal longGibt die eigene Datenverteiler-id zurückshortgetWeight(long transmitterId) Diese Methode wird von der Protokollsteuerung aufgerufen, um einer Verbindung ein Gewicht zuzuweisen.booleanGibttruezurück, wenn der Datenverteiler sich gerade beendetbooleanisDisabledConnection(long remoteTransmitterId) Gibttruezurück, wenn eine Verbindung deaktiviert istde.bsvrz.dav.daf.communication.protocol.UserLoginlogin(String userName, byte[] userPassword, String authentificationText, de.bsvrz.dav.daf.communication.lowLevel.AuthentificationProcess authentificationProcess, String applicationTypePid) Loggt einen Benutzer ein, bzw. prüft die übergebenen Daten.voidremoveConnection(T_A_HighLevelCommunication connection) entfernt die angegebene Verbindung weil diese terminiert wurdevoidremoveConnection(T_T_HighLevelCommunication connection) entfernt die angegebene Verbindung weil diese terminiert wurdevoidsetDisabledTransmitterConnections(Collection<Long> disabledConnections) Setzt die Datenverteiler (über deren IDs), zu denen keine Verbindung aufgenommen werden sollen, weil diese temporär deaktiviert wurden (über atg.deaktivierteVerbindungen)voidWird aufgerufen, wenn die lokale Konfigurationsverbindung verfügbar ist.voidsetLocalModeParameter(String configurationPid, long configurationId) Setzt die Parameter für eine lokale Konfigurationfinal voidtoString()voidupdateApplicationId(T_A_HighLevelCommunication communication) Wird aufgerufen, sobald die ID einer Verbindung (sicher) bekannt ist (nach erfolgreicher Authentifizierung)voidWird aufgerufen, wenn sich der Status einer verbundenen Dav-Dav-Verbindung geändert hat um beispielsweise die "atg.datenverteilerKommunikationsZustand" zu aktualisierenvoidupdateTransmitterId(T_T_HighLevelCommunication communication) Wird aufgerufen, sobald die ID einer Verbindung (sicher) bekannt ist (nach erfolgreicher Authentifizierung)booleanwaitForParamReady(de.bsvrz.dav.daf.communication.protocol.UserLogin userId) Wartet darauf, dass die Parametrierung verfügbar ist.
-
Constructor Details
-
LowLevelConnectionsManager
public LowLevelConnectionsManager(ServerDavParameters serverDavParameters) throws DavInitializationException Erzeugt eine neue Verbindungsverwaltung für den Datenverteiler.- Parameters:
serverDavParameters- Die Parameter sind u. a. die Adressen und Subadressen der Kommunikationskanäle- Throws:
DavInitializationException
-
-
Method Details
-
getHighLevelConnectionsManager
-
getTransmitterId
public final long getTransmitterId()Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die eigene Datenverteiler-id zurück- Specified by:
getTransmitterIdin interfaceLowLevelConnectionsManagerInterface- Returns:
- die eigene Datenverteiler-id
-
shutdown
- Specified by:
shutdownin interfaceLowLevelConnectionsManagerInterface- Parameters:
error- True: ein Fehler ist aufgetretenmessage- genauere Beschreibung des Fehlers
-
getSelfClientDavConnection
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die eigene ClientDavConnection zurück- Specified by:
getSelfClientDavConnectionin interfaceLowLevelConnectionsManagerInterface- Returns:
- die eigene ClientDavConnection
-
getMyTransmitter
public de.bsvrz.dav.daf.main.config.SystemObject getMyTransmitter()Description copied from interface:LowLevelConnectionsManagerInterfaceGibt das eigene Datenverteiler-Objekt zurück- Specified by:
getMyTransmitterin interfaceLowLevelConnectionsManagerInterface- Returns:
- das eigene Datenverteiler-Objekt
-
toString
-
removeConnection
Description copied from interface:LowLevelConnectionsManagerInterfaceentfernt die angegebene Verbindung weil diese terminiert wurde- Specified by:
removeConnectionin interfaceLowLevelConnectionsManagerInterface
-
removeConnection
Description copied from interface:LowLevelConnectionsManagerInterfaceentfernt die angegebene Verbindung weil diese terminiert wurde- Specified by:
removeConnectionin interfaceLowLevelConnectionsManagerInterface
-
getLocalModeConfigurationPid
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die Pid der lokalen Konfiguration zurück- Specified by:
getLocalModeConfigurationPidin interfaceLowLevelConnectionsManagerInterface- Returns:
- die Pid der lokalen Konfiguration
-
getLocalModeConfigurationId
public long getLocalModeConfigurationId()Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die Id der lokalen Konfiguration zurück- Specified by:
getLocalModeConfigurationIdin interfaceLowLevelConnectionsManagerInterface- Returns:
- die Id der lokalen Konfiguration
-
getLowLevelAuthentication
- Specified by:
getLowLevelAuthenticationin interfaceLowLevelConnectionsManagerInterface- Returns:
-
setLocalModeParameter
Description copied from interface:LowLevelConnectionsManagerInterfaceSetzt die Parameter für eine lokale Konfiguration- Specified by:
setLocalModeParameterin interfaceLowLevelConnectionsManagerInterface- Parameters:
configurationPid- Pid der KonfigurationconfigurationId- Id der Konfiguration
-
setLocalConfigurationAvailable
public void setLocalConfigurationAvailable()Description copied from interface:LowLevelConnectionsManagerInterfaceWird aufgerufen, wenn die lokale Konfigurationsverbindung verfügbar ist.- Specified by:
setLocalConfigurationAvailablein interfaceLowLevelConnectionsManagerInterface
-
getServerDavParameters
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die ServerDavParameters zurück- Specified by:
getServerDavParametersin interfaceLowLevelConnectionsManagerInterface- Returns:
- die ServerDavParameters
-
getClientDavParameters
public de.bsvrz.dav.daf.main.ClientDavParameters getClientDavParameters()Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die ClientDavParameters für die lokale Dav-Applikation zurück- Specified by:
getClientDavParametersin interfaceLowLevelConnectionsManagerInterface- Returns:
- die ClientDavParameters
-
getTransmitterConnection
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die angegebene Dav-Dav-Verbindung zurück- Specified by:
getTransmitterConnectionin interfaceLowLevelConnectionsManagerInterface- Parameters:
transmitterId- Id den verbundenen Transmitters- Returns:
- Existierende Verbindung mit dieser Id oder null falls nicht vorhanden
-
getApplicationConnection
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt die angegebene Applikationsverbindung zurück- Specified by:
getApplicationConnectionin interfaceLowLevelConnectionsManagerInterface- Parameters:
applicationId- Id der verbundenen Applikation- Returns:
- Existierende Verbindung mit dieser Id oder null falls nicht vorhanden
-
getWeight
public short getWeight(long transmitterId) Description copied from interface:LowLevelConnectionsManagerInterfaceDiese Methode wird von der Protokollsteuerung aufgerufen, um einer Verbindung ein Gewicht zuzuweisen. Die Information wird von der Wegverwaltung benutzt, wenn eine Verbindung bewertet wird.- Specified by:
getWeightin interfaceLowLevelConnectionsManagerInterface- Parameters:
transmitterId- ID des DAV- Returns:
- Gewichtung der Verbindung
-
getTransmitterConnectionInfo
public de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getTransmitterConnectionInfo(long connectedTransmitterId) Bestimmt die Verbindungsinformationen für eine Verbindung von diesem Datenverteiler zum angegebenen Datenverteiler.- Specified by:
getTransmitterConnectionInfoin interfaceLowLevelConnectionsManagerInterface- Parameters:
connectedTransmitterId- ID des DAV- Returns:
- Verbindungsinformationen
-
getRemoteTransmitterConnectionInfo
public de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getRemoteTransmitterConnectionInfo(long connectedTransmitterId) Bestimmt die Verbindungsinformationen für eine Verbindung vom angegebenen Datenverteiler zu diesem Datenverteiler.- Specified by:
getRemoteTransmitterConnectionInfoin interfaceLowLevelConnectionsManagerInterface- Parameters:
connectedTransmitterId- ID des DAV- Returns:
- Verbindungsinformationen
-
updateApplicationId
Description copied from interface:LowLevelConnectionsManagerInterfaceWird aufgerufen, sobald die ID einer Verbindung (sicher) bekannt ist (nach erfolgreicher Authentifizierung)- Specified by:
updateApplicationIdin interfaceLowLevelConnectionsManagerInterface- Parameters:
communication- Verbindung
-
updateTransmitterId
Description copied from interface:LowLevelConnectionsManagerInterfaceWird aufgerufen, sobald die ID einer Verbindung (sicher) bekannt ist (nach erfolgreicher Authentifizierung)- Specified by:
updateTransmitterIdin interfaceLowLevelConnectionsManagerInterface- Parameters:
communication- Verbindung
-
getApplicationConnections
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt alle Appliaktionsverbindungen zurück- Specified by:
getApplicationConnectionsin interfaceLowLevelConnectionsManagerInterface- Returns:
- alle Appliaktionsverbindungen
-
getTransmitterConnections
Description copied from interface:LowLevelConnectionsManagerInterfaceGibt alle Datenverteilerverbindungen zurück- Specified by:
getTransmitterConnectionsin interfaceLowLevelConnectionsManagerInterface- Returns:
- alle Datenverteilerverbindungen
-
isClosing
public boolean isClosing()Description copied from interface:LowLevelConnectionsManagerInterfaceGibttruezurück, wenn der Datenverteiler sich gerade beendet- Specified by:
isClosingin interfaceLowLevelConnectionsManagerInterface- Returns:
true, wenn der Datenverteiler sich gerade beendet, sonstfalse
-
login
public de.bsvrz.dav.daf.communication.protocol.UserLogin login(String userName, byte[] userPassword, String authentificationText, de.bsvrz.dav.daf.communication.lowLevel.AuthentificationProcess authentificationProcess, String applicationTypePid) Description copied from interface:LowLevelConnectionsManagerInterfaceLoggt einen Benutzer ein, bzw. prüft die übergebenen Daten. Diese Methode wird von der alten HMAC-Authentifizierung benutzt.- Specified by:
loginin interfaceLowLevelConnectionsManagerInterface- Parameters:
userName- BenutzernameuserPassword- BenutzerpasswortauthentificationText- AuthentifizierungstextauthentificationProcess- AuthentifizierungsverfahrenapplicationTypePid- Applikations-Typ-Pid- Returns:
- Benutzerid, falls erfolgreich eingeloggt, sonst -1. (0 ist der spezielle Benutzer für Datenverteiler und Konfiguration)
-
waitForParamReady
public boolean waitForParamReady(de.bsvrz.dav.daf.communication.protocol.UserLogin userId) Wartet darauf, dass die Parametrierung verfügbar ist. Diese Methode wird nach erfolgreichen Login aufgerufen.- Specified by:
waitForParamReadyin interfaceLowLevelConnectionsManagerInterface- Parameters:
userId- Benutzer-ID- Returns:
- true: Es wurde erfolgreich auf die parametrierung gewartet, false: Das Warten wurde unterbrochen (z. B. der Datenverteiler wird beendet)
-
updateCommunicationState
public void updateCommunicationState()Description copied from interface:LowLevelConnectionsManagerInterfaceWird aufgerufen, wenn sich der Status einer verbundenen Dav-Dav-Verbindung geändert hat um beispielsweise die "atg.datenverteilerKommunikationsZustand" zu aktualisieren- Specified by:
updateCommunicationStatein interfaceLowLevelConnectionsManagerInterface
-
setDisabledTransmitterConnections
Description copied from interface:LowLevelConnectionsManagerInterfaceSetzt die Datenverteiler (über deren IDs), zu denen keine Verbindung aufgenommen werden sollen, weil diese temporär deaktiviert wurden (über atg.deaktivierteVerbindungen)- Specified by:
setDisabledTransmitterConnectionsin interfaceLowLevelConnectionsManagerInterface- Parameters:
disabledConnections- Deaktivierte Datenverteiler-IDs
-
isDisabledConnection
public boolean isDisabledConnection(long remoteTransmitterId) Description copied from interface:LowLevelConnectionsManagerInterfaceGibttruezurück, wenn eine Verbindung deaktiviert ist- Specified by:
isDisabledConnectionin interfaceLowLevelConnectionsManagerInterface- Returns:
true, wenn eine Verbindung deaktiviert ist, sonstfalse
-