DistributionInterface, HighLevelTransmitterManagerInterfacepublic class HighLevelTransmitterManager extends java.lang.Object implements DistributionInterface, HighLevelTransmitterManagerInterface
| Constructor | Description |
|---|---|
HighLevelTransmitterManager(HighLevelConnectionsManagerInterface connectionsManager,
ListsManager listsManager) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
addWay(T_T_HighLevelCommunication communication) |
Es gibt einen neuen Weg, diese Nachricht wird im BestWayManager behandelt, siehe Dokumentation dort.
|
void |
connectionTerminated(T_T_HighLevelCommunication communication) |
Wird bei einem Verbindungsabbruch aufgerufen
|
de.bsvrz.dav.daf.communication.srpAuthentication.SrpVerifierAndUser |
fetchSrpVerifierAndAuthentication(java.lang.String userName) |
Fragt von der Konfiguration bei einer eingehenden Authentifizierungsanfrage den SRP-Verifier für den angegebenen Benutzer ab
|
T_T_HighLevelCommunicationInterface |
getBestConnectionToRemoteDav(long remoteDav) |
|
de.bsvrz.dav.daf.main.authentication.ClientCredentials |
getClientCredentialsForAuthentication(long transmitterId) |
Bestimmt das Benutzerpasswort das zur Authentifizierung beim angegebenen Datenverteiler benutzt werden soll.
|
de.bsvrz.dav.daf.main.authentication.ClientCredentials |
getClientCredentialsForAuthentication(java.lang.String userName,
long transmitterId) |
Bestimmt das Benutzerpasswort das zur Authentifizierung beim angegebenen Datenverteiler mit dem angegebenen Benutzernamen benutzt werden soll.
|
long |
getMyTransmitterId() |
|
java.util.List<java.lang.Long> |
getPotentialCentralDistributors(de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo) |
|
java.lang.String |
getUserNameForAuthentication(long connectedTransmitterId) |
Bestimmt den Benutzername der zur Authentifizierung beim angegebenen Datenverteiler benutzt werden soll.
|
short |
getWeight(long transmitterId) |
Gibt das Gewicht einer Verbindung zurück
|
void |
handleDataTelegram(T_T_HighLevelCommunication communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataTelegram transmitterDataTelegram) |
Wird aufgerufen, wenn ein Datentelegramm eintrifft
|
void |
handleListsDeliveryUnsubscription(T_T_HighLevelCommunicationInterface communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsDeliveryUnsubscription transmitterListsDeliveryUnsubscription) |
Dieses Telegramm wird an den ListsManager weitergegeben, siehe Dokumentation dort
|
void |
handleListsSubscription(ServerHighLevelCommunication communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsSubscription transmitterListsSubscription) |
Dieses Telegramm wird an den ListsManager weitergegeben, siehe Dokumentation dort
|
void |
handleListsUnsubscription(ServerHighLevelCommunication communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsUnsubscription transmitterListsUnsubscription) |
Dieses Telegramm wird an den ListsManager weitergegeben, siehe Dokumentation dort
|
void |
handleListsUpdate(de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsUpdate transmitterListsUpdate) |
Dieses Telegramm wird an den ListsManager weitergegeben, siehe Dokumentation dort
|
void |
handleTransmitterSubscription(T_T_HighLevelCommunicationInterface communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataSubscription subscription) |
Eingehende Datenanmeldung
|
void |
handleTransmitterSubscriptionReceipt(T_T_HighLevelCommunicationInterface communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataSubscriptionReceipt receipt) |
Bestätigung einer ausgehenden Datenanmeldung auf einem entfernten datenverteiler
|
void |
handleTransmitterUnsubscription(T_T_HighLevelCommunicationInterface communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataUnsubscription unsubscription) |
Eingehende Datenabmeldung
|
void |
throttleLoginAttempt(boolean passwordWasCorrect) |
Wird bei jedem Login-Versuch aufgerufen und sorgt dafür, dass bei wiederholten Brute-Force-Angriffen der Login verzögert wird.
|
void |
updateBestWay(T_T_HighLevelCommunication communication,
de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterBestWayUpdate transmitterBestWayUpdate) |
Wird bei einem BestWayUpdate-Telegramm aufgerufen
|
void |
updateDestinationRoute(long transmitterId,
RoutingConnectionInterface oldConnection,
RoutingConnectionInterface newConnection) |
Wird aufgerufen, wenn die Kommunikation zu einem anderen Datenverteiler über eine andere Verbindung erfolgen sollte.
|
public HighLevelTransmitterManager(HighLevelConnectionsManagerInterface connectionsManager, ListsManager listsManager)
public long getMyTransmitterId()
public void connectionTerminated(T_T_HighLevelCommunication communication)
HighLevelTransmitterManagerInterfaceconnectionTerminated in interface HighLevelTransmitterManagerInterfacepublic java.lang.String getUserNameForAuthentication(long connectedTransmitterId)
HighLevelTransmitterManagerInterfacegetUserNameForAuthentication in interface HighLevelTransmitterManagerInterfaceconnectedTransmitterId - Objekt-ID des anderen Datenverteilers.public de.bsvrz.dav.daf.main.authentication.ClientCredentials getClientCredentialsForAuthentication(long transmitterId)
HighLevelTransmitterManagerInterfacegetClientCredentialsForAuthentication in interface HighLevelTransmitterManagerInterfacetransmitterId - Objekt-ID des anderen Datenverteilers.public de.bsvrz.dav.daf.main.authentication.ClientCredentials getClientCredentialsForAuthentication(java.lang.String userName,
long transmitterId)
HighLevelTransmitterManagerInterfacegetClientCredentialsForAuthentication in interface HighLevelTransmitterManagerInterfaceuserName - BenutzernametransmitterId - Objekt-ID des anderen Datenverteilers.public short getWeight(long transmitterId)
HighLevelTransmitterManagerInterfacegetWeight in interface HighLevelTransmitterManagerInterfacetransmitterId - Datenverteiler, zu dem das Gewischt ermittelt werden sollpublic void handleDataTelegram(T_T_HighLevelCommunication communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataTelegram transmitterDataTelegram)
HighLevelTransmitterManagerInterfacehandleDataTelegram in interface HighLevelTransmitterManagerInterfacecommunication - Verbindung über die das Telegram eintriffttransmitterDataTelegram - Telegrampublic void handleListsUpdate(de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsUpdate transmitterListsUpdate)
HighLevelTransmitterManagerInterfacehandleListsUpdate in interface HighLevelTransmitterManagerInterfacetransmitterListsUpdate - telegrampublic void handleListsDeliveryUnsubscription(T_T_HighLevelCommunicationInterface communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsDeliveryUnsubscription transmitterListsDeliveryUnsubscription)
HighLevelTransmitterManagerInterfacehandleListsDeliveryUnsubscription in interface HighLevelTransmitterManagerInterfacecommunication - Verbindung über die das Telegram gesendet wurdetransmitterListsDeliveryUnsubscription - telegrampublic void handleListsUnsubscription(ServerHighLevelCommunication communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsUnsubscription transmitterListsUnsubscription)
HighLevelTransmitterManagerInterfacehandleListsUnsubscription in interface HighLevelTransmitterManagerInterfacecommunication - Verbindung über die das Telegram gesendet wurdetransmitterListsUnsubscription - telegrampublic void handleListsSubscription(ServerHighLevelCommunication communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterListsSubscription transmitterListsSubscription)
HighLevelTransmitterManagerInterfacehandleListsSubscription in interface HighLevelTransmitterManagerInterfacecommunication - Verbindung über die das Telegram gesendet wurdetransmitterListsSubscription - telegrampublic void handleTransmitterSubscription(T_T_HighLevelCommunicationInterface communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataSubscription subscription)
HighLevelTransmitterManagerInterfacehandleTransmitterSubscription in interface HighLevelTransmitterManagerInterfacecommunication - Verbindungsubscription - Telegrampublic void handleTransmitterUnsubscription(T_T_HighLevelCommunicationInterface communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataUnsubscription unsubscription)
HighLevelTransmitterManagerInterfacehandleTransmitterUnsubscription in interface HighLevelTransmitterManagerInterfacecommunication - Verbindungunsubscription - Telegrampublic void handleTransmitterSubscriptionReceipt(T_T_HighLevelCommunicationInterface communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterDataSubscriptionReceipt receipt)
HighLevelTransmitterManagerInterfacehandleTransmitterSubscriptionReceipt in interface HighLevelTransmitterManagerInterfacecommunication - Verbindungreceipt - Telegrampublic void addWay(T_T_HighLevelCommunication communication)
HighLevelTransmitterManagerInterfaceaddWay in interface HighLevelTransmitterManagerInterfacecommunication - Verbindung über die das Telegram gesendet wurdepublic void updateBestWay(T_T_HighLevelCommunication communication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.TransmitterBestWayUpdate transmitterBestWayUpdate)
HighLevelTransmitterManagerInterfaceupdateBestWay in interface HighLevelTransmitterManagerInterfacecommunication - Verbindung über die das Telegram gesendet wurdetransmitterBestWayUpdate - Telegrammpublic void throttleLoginAttempt(boolean passwordWasCorrect)
HighLevelTransmitterManagerInterfacethrottleLoginAttempt in interface HighLevelTransmitterManagerInterfacepasswordWasCorrect - War das Passwort korrekt? Ausgebremst wird zwar immer, aber nur wenn das passwort falsch war, hat das eine Auswirkung auf folgende Login-Vesuchepublic de.bsvrz.dav.daf.communication.srpAuthentication.SrpVerifierAndUser fetchSrpVerifierAndAuthentication(java.lang.String userName)
throws de.bsvrz.dav.daf.communication.srpAuthentication.SrpNotSupportedException
HighLevelTransmitterManagerInterfacefetchSrpVerifierAndAuthentication in interface HighLevelTransmitterManagerInterfaceuserName - Benutzernamede.bsvrz.dav.daf.communication.srpAuthentication.SrpNotSupportedExceptionpublic void updateDestinationRoute(long transmitterId,
RoutingConnectionInterface oldConnection,
RoutingConnectionInterface newConnection)
DistributionInterfaceupdateDestinationRoute in interface DistributionInterfacetransmitterId - ID des betroffenen Datenverteilers.oldConnection - Verbindung über die bisher mit dem betroffenen Datenverteiler kommuniziert wurde.newConnection - Verbindung über die in Zukunft mit dem betroffenen Datenverteiler kommuniziert werden soll.public java.util.List<java.lang.Long> getPotentialCentralDistributors(de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo)
public T_T_HighLevelCommunicationInterface getBestConnectionToRemoteDav(long remoteDav)