Interface HighLevelConnectionsManagerInterface

All Known Implementing Classes:
HighLevelConnectionsManager

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

    Modifier and Type Method Description
    void disableSingleServingPassword​(java.lang.String userName, int passwordIndex)
    Markiert das angegebene Einmalpasswort als benutzt (nachdem der Benutzer es zum erfolgreichen Einloggen verwendet hat)
    de.bsvrz.dav.daf.communication.srpAuthentication.SrpVerifierAndUser fetchSrpVerifierAndUser​(java.lang.String userName, int passwordIndex)
    Holt den SRP-Überprüfungscode und die Benutzer-ID von einem Benutzer von der Konfiguration
    java.util.List<java.lang.String> getAccessControlPluginsClassNames()
    Gibt die vom Anwender festgelegten Namen der Zugriffsrechte-Plugin-Klassen zurück
    java.util.Collection<T_A_HighLevelCommunication> getAllApplicationConnections()
    Gibt alle Anwendungsverbindungen zurück
    java.util.Collection<T_T_HighLevelCommunication> getAllTransmitterConnections()
    Gibt alle Datenverteilerverbindungen zurück
    T_A_HighLevelCommunicationInterface getApplicationConnectionFromId​(long applicationId)
    Ermittelt von einer Anwendungs-ID die zugehörige Applikations-Verbindung
    T_T_HighLevelCommunicationInterface getBestConnectionToRemoteDav​(long remoteDav)
    Gibt die beste Verbindung zum angegebenen (nicht notwendigerweise direkt verbundenen) Datenverteiler zurück
    long getConfigurationId​(java.lang.String configurationPid)
    Gibt die ID der Konfiguration mit der gegebenen Pid zurück
    de.bsvrz.dav.daf.main.config.ConfigurationObject getDavObject()
    Gibt das Konfigurations-Objekt, das den datenverteiler repräsentiert zurück
    java.util.List<java.lang.Long> getPotentialCentralDistributors​(de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo)
    Gibt potentielle Zentraldatenverteiler für die angegebene Anmeldeinformation zurück
    de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getRemoteTransmitterConnectionInfo​(long connectedTransmitterId)
    Gibt die Verbindungsinformation der Verbindung vom angegebenen Datenverteiler zu diesem zurück
    de.bsvrz.dav.daf.main.authentication.ClientCredentials getStoredClientCredentials​(java.lang.String userName, long id)
    Gibt das in der Passwort(passwd)-Datei gespeicherte Passwort für den angegebenen Benutzernamen zurück
    de.bsvrz.dav.daf.main.authentication.ClientCredentials getStoredClientCredentials​(java.lang.String userName, java.lang.String suffix)
    Gibt das in der Passwort(passwd)-Datei gespeicherte Passwort für den angegebenen Benutzernamen zurück
    HighLevelSubscriptionsManager getSubscriptionsManager()
    Gibt den SubscriptionsManager zurück
    TelegramManager getTelegramManager()
    Gibt eine Referenz auf den Telegram-Manager zurück
    java.lang.String getTransmitterApplicationName()
    Gibt den Namen der lokalen Transmitter-Anwendung zurück
    T_T_HighLevelCommunicationInterface getTransmitterConnectionFromId​(long transmitterId)
    Ermittelt von einer Transmitter-ID die zugehörige Applikations-Verbindung
    de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getTransmitterConnectionInfo​(long connectedTransmitterId)
    Gibt die Verbindungsinformation der Verbindung von diesem Datenverteiler zum angegeben zurück
    long getTransmitterId()
    Gibt die ID des eigenen Transmitters zurück
    java.lang.String getTransmitterTypePid()
    Gibt den Typ der lokalen ClientDav-Verbindung zurück
    java.lang.String getUserName()
    Gibt den Benutzernamen zurück unter dem der Datenverteiler läuft
    short getWeight​(long transmitterId)
    Gibt das gewicht einer Verbindung zu einem anderen Datenverteiler zurück
    boolean isClosing()
    Gibt true zurück, wenn sich der Datenverteiler gerade beendet
    void removeConnection​(T_A_HighLevelCommunication communication)
    Beendet eine Verbindung zu einer Applikation
    void removeConnection​(T_T_HighLevelCommunication communication)
    Beendet eine Verbindung zu einem Datenverteiler
    void shutdown​(boolean isError, java.lang.String message)
    Beendet alle Verbindungen und Threads
    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
    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
  • 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​(java.lang.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

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

      java.lang.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

      java.lang.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​(java.lang.String userName, java.lang.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​(java.lang.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

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

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

      java.util.List<java.lang.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, java.lang.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

      java.util.List<java.lang.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​(java.lang.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​(java.lang.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