Interface HighLevelConnectionsManagerInterface

All Known Implementing Classes:
HighLevelConnectionsManager

public interface HighLevelConnectionsManagerInterface
Interface für die Verbindungsverwaltung (ehemals ConnectionsManager). Erlaubt Abfragen nach Verbindungen und ähnlichem.
  • Method Details

    • removeConnection

      void removeConnection(T_A_HighLevelCommunication communication)
      Beendet eine Verbindung zu einer Applikation
      Parameters:
      communication - Applikationsverbindung
    • removeConnection

      void removeConnection(T_T_HighLevelCommunication communication)
      Beendet eine Verbindung zu einem Datenverteiler
      Parameters:
      communication - Datenverteiler-Verbindung
    • getConfigurationId

      long getConfigurationId(String configurationPid)
      Gibt die ID der Konfiguration mit der gegebenen Pid zurück
      Parameters:
      configurationPid - Die Pid der Konfiguration
      Returns:
      die Id der Konfiguration
    • getTransmitterTypePid

      String getTransmitterTypePid()
      Gibt den Typ der lokalen ClientDav-Verbindung zurück
      Returns:
      pid der lokalen ClientDav-Verbindungs-Anwendung
    • getTransmitterApplicationName

      String getTransmitterApplicationName()
      Gibt den Namen der lokalen Transmitter-Anwendung zurück
      Returns:
      Name der Anwendung
    • getTransmitterId

      long getTransmitterId()
      Gibt die ID des eigenen Transmitters zurück
      Returns:
      Transmitter-Id
    • getUserName

      String getUserName()
      Gibt den Benutzernamen zurück unter dem der Datenverteiler läuft
      Returns:
      Benutzername
    • getStoredClientCredentials

      @Nullable de.bsvrz.dav.daf.main.authentication.ClientCredentials getStoredClientCredentials(String userName, String suffix)
      Gibt das in der Passwort(passwd)-Datei gespeicherte Passwort für den angegebenen Benutzernamen zurück
      Parameters:
      userName - Benutzername
      suffix -
      Returns:
      Passwort oder null falls der Benutzername nicht gefunden werden konnte
    • getStoredClientCredentials

      @Nullable de.bsvrz.dav.daf.main.authentication.ClientCredentials getStoredClientCredentials(String userName, long id)
      Gibt das in der Passwort(passwd)-Datei gespeicherte Passwort für den angegebenen Benutzernamen zurück
      Parameters:
      userName - Benutzername
      id - ID-Des Verbindungspartners (Systemobjekt, wird automatisch in eine Pid umgewandelt)
      Returns:
      Passwort oder null falls der Benutzername nicht gefunden werden konnte
    • getWeight

      short getWeight(long transmitterId)
      Gibt das gewicht einer Verbindung zu einem anderen Datenverteiler zurück
      Parameters:
      transmitterId - ID des anderen Datenverteilers
      Returns:
      Gewicht
    • getTransmitterConnectionInfo

      de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getTransmitterConnectionInfo(long connectedTransmitterId)
      Gibt die Verbindungsinformation der Verbindung von diesem Datenverteiler zum angegeben zurück
      Parameters:
      connectedTransmitterId - Verbundener Datenverteiler
      Returns:
      Verbindungsinformation
    • getRemoteTransmitterConnectionInfo

      de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getRemoteTransmitterConnectionInfo(long connectedTransmitterId)
      Gibt die Verbindungsinformation der Verbindung vom angegebenen Datenverteiler zu diesem zurück
      Parameters:
      connectedTransmitterId - Verbundener Datenverteiler
      Returns:
      Verbindungsinformation
    • getTelegramManager

      TelegramManager getTelegramManager()
      Gibt eine Referenz auf den Telegram-Manager zurück
      Returns:
      Telegram-Manager
    • getApplicationConnectionFromId

      T_A_HighLevelCommunicationInterface getApplicationConnectionFromId(long applicationId)
      Ermittelt von einer Anwendungs-ID die zugehörige Applikations-Verbindung
      Parameters:
      applicationId - ID
      Returns:
      Verbindung
    • getTransmitterConnectionFromId

      T_T_HighLevelCommunicationInterface getTransmitterConnectionFromId(long transmitterId)
      Ermittelt von einer Transmitter-ID die zugehörige Applikations-Verbindung
      Parameters:
      transmitterId - ID
      Returns:
      Verbindung
    • getAllApplicationConnections

      Collection<T_A_HighLevelCommunication> getAllApplicationConnections()
      Gibt alle Anwendungsverbindungen zurück
      Returns:
      Anwendungsverbindungen
    • getAllTransmitterConnections

      Collection<T_T_HighLevelCommunication> getAllTransmitterConnections()
      Gibt alle Datenverteilerverbindungen zurück
      Returns:
      Datenverteilerverbindungen
    • getAccessControlPluginsClassNames

      List<String> getAccessControlPluginsClassNames()
      Gibt die vom Anwender festgelegten Namen der Zugriffsrechte-Plugin-Klassen zurück
      Returns:
      Liste mit Zugriffsrechte-Plugin-Klassen-Namen
    • shutdown

      void shutdown(boolean isError, String message)
      Beendet alle Verbindungen und Threads
      Parameters:
      isError - Zum signalisieren, dass ein Fehler aufgetreten ist: true, sonst false
      message - Nach Bedarf eine Fehlermeldung o.ä. zur Ursache des Terminierungsbefehls
    • isClosing

      boolean isClosing()
      Gibt true zurück, wenn sich der Datenverteiler gerade beendet
      Returns:
      true, wenn sich der Datenverteiler gerade beendet, sonst false
    • getDavObject

      de.bsvrz.dav.daf.main.config.ConfigurationObject getDavObject()
      Gibt das Konfigurations-Objekt, das den datenverteiler repräsentiert zurück
      Returns:
      das Konfigurations-Objekt, das den datenverteiler repräsentiert
    • getPotentialCentralDistributors

      List<Long> getPotentialCentralDistributors(de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo)
      Gibt potentielle Zentraldatenverteiler für die angegebene Anmeldeinformation zurück
      Parameters:
      baseSubscriptionInfo - Anmeldeinformation
      Returns:
      Potentielle Zentraldatenverteiler
    • getBestConnectionToRemoteDav

      T_T_HighLevelCommunicationInterface getBestConnectionToRemoteDav(long remoteDav)
      Gibt die beste Verbindung zum angegebenen (nicht notwendigerweise direkt verbundenen) Datenverteiler zurück
      Returns:
      die beste Verbindung zum angegebenen Datenverteiler
    • updateListsNewLocalSubscription

      void updateListsNewLocalSubscription(de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo)
      Informiert die Anmeldelisten, dass dieser Datenverteiler Zentraldatenverteiler für die angegebene Anmeldung geworden ist
      Parameters:
      baseSubscriptionInfo - Anmeldung
    • updateListsRemovedLocalSubscription

      void updateListsRemovedLocalSubscription(de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo)
      Informiert die Anmeldelisten, dass dieser Datenverteiler nicht mehr Zentraldatenverteiler für die angegebene Anmeldung ist
      Parameters:
      baseSubscriptionInfo - Anmeldung
    • getSubscriptionsManager

      HighLevelSubscriptionsManager getSubscriptionsManager()
      Gibt den SubscriptionsManager zurück
      Returns:
      den SubscriptionsManager
    • fetchSrpVerifierAndUser

      de.bsvrz.dav.daf.communication.srpAuthentication.SrpVerifierAndUser fetchSrpVerifierAndUser(String userName, int passwordIndex) throws de.bsvrz.dav.daf.communication.srpAuthentication.SrpNotSupportedException
      Holt den SRP-Überprüfungscode und die Benutzer-ID von einem Benutzer von der Konfiguration
      Parameters:
      userName - Anzufragender Benutzername
      passwordIndex - Index des Einmalpassworts
      Returns:
      Überprüfungscode und Benutzername analog zur UserAdministration-Implementierung. Insbesondere ist der Benutzer UserLogin.notAuthenticated() falls es den Benutzer nicht gibt, aber es wird immer ein SRP-Überprüfungscode erzeugt um eine SrpServerAuthentication.step1(String, BigInteger, BigInteger, boolean) Fake-Authentifizierung} zu ermöglichen.
      Throws:
      de.bsvrz.dav.daf.communication.srpAuthentication.SrpNotSupportedException - Falls SRP nicht untersützt wird
    • disableSingleServingPassword

      void disableSingleServingPassword(String userName, int passwordIndex)
      Markiert das angegebene Einmalpasswort als benutzt (nachdem der Benutzer es zum erfolgreichen Einloggen verwendet hat)
      Parameters:
      userName - Benutzername
      passwordIndex - Index des Einmalpassworts