de.bsvrz.dav.dav.main
Interface ServerHighLevelCommunication

All Known Subinterfaces:
T_A_HighLevelCommunicationInterface, T_T_HighLevelCommunicationInterface
All Known Implementing Classes:
T_A_HighLevelCommunication, T_T_HighLevelCommunication

public interface ServerHighLevelCommunication

Dieses Interface deklariert Methoden, welche von der Verbindungsverwaltung aufgerufen werden. Die Methoden werden sowohl in DAV-DAF als auch in der DAV-DAV Highlevelcommunication implementiert.

Author:
Kappich Systemberatung

Method Summary
 void continueAuthentification()
          Diese Methode wird von der Verbindungsverwaltung aufgerufen, sobald die Konfiguration vorhanden ist, um zu signalisieren, dass eine blockierte Authentifizierung weiter bearbeitet werden kann: Steht eine Authentifizierungsschlüsselanfrage an, während die Konfiguration noch nicht vorhanden ist, wird die Antwort blockiert bis die Konfiguration bereit ist.
 long getId()
          Diese Methode wird von der Verbindungsverwaltung aufgerufen, um die ID der verbundenen Applikation zu erhalten.
 long getRemoteUserId()
          Gibt die ID des verbundenen Benutzers zurück.
 SubscriptionComponent getSubscriptionComponent()
          Gibt die Komponente zurück, die die Anmeldungen der Verbindung verwaltet.
 long getTelegrammTime(long maxWaitingTime)
          Diese Methode wird von der Verbindungsverwaltung aufgerufen.
 void terminate(boolean error, String message)
          Terminiert die Kommunikationsverbindung.
 

Method Detail

getSubscriptionComponent

SubscriptionComponent getSubscriptionComponent()
Gibt die Komponente zurück, die die Anmeldungen der Verbindung verwaltet.

Returns:
Komponente die die Anmeldungen der Verbindung

getTelegrammTime

long getTelegrammTime(long maxWaitingTime)
                      throws CommunicationError
Diese Methode wird von der Verbindungsverwaltung aufgerufen. Ein Telegramm TelegramTimeRequest wird erzeugt und zur Applikation gesendet. Danach wird auf die Antwort TelegramTimeAnswer gewartet. Wenn die Antwort nicht innerhalb der angegebenen maximalen Wartezeit angekommen ist, wird eine Ausnahme erzeugt.

Parameters:
maxWaitingTime - Maximale Zeit, die auf eine Antwort gewartet wird.
Returns:
die Telegrammlaufzeit oder -1, wenn nicht innnerhalb der maximalen Wartezeit eine Antwort empfangen wurde.
Throws:
CommunicationError - Wenn bei der initialen Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.

continueAuthentification

void continueAuthentification()
Diese Methode wird von der Verbindungsverwaltung aufgerufen, sobald die Konfiguration vorhanden ist, um zu signalisieren, dass eine blockierte Authentifizierung weiter bearbeitet werden kann: Steht eine Authentifizierungsschlüsselanfrage an, während die Konfiguration noch nicht vorhanden ist, wird die Antwort blockiert bis die Konfiguration bereit ist. Dies ist notwendig, da nur die Konfiguration bestimmen kann, ob die Authentifizierungsdaten korrekt sind. Auch für die Interpretation der Daten ist die Konfiguration notwendig.


getId

long getId()
Diese Methode wird von der Verbindungsverwaltung aufgerufen, um die ID der verbundenen Applikation zu erhalten.

Returns:
ID des Kommunikationpartners

getRemoteUserId

long getRemoteUserId()
Gibt die ID des verbundenen Benutzers zurück.

Returns:
die Benutzer ID

terminate

void terminate(boolean error,
               String message)
Terminiert die Kommunikationsverbindung.

Parameters:
error - Ist true, wenn die Verbindung im Fehlerfall abgebrochen werden soll, ohne die noch gepufferten Telegramme zu versenden; false, wenn versucht werden soll alle gepufferten Telegramme zu versenden.
message - Fehlermeldung, die die Fehlersituation näher beschreibt.