public class HighLevelSubscriptionsManager extends AbstractSubscriptionsManager
Diese Klasse bietet Funktionen um die Anmeldungen zu verwalten. Bei neuen Datenanmeldungen werden entsprechend neue Anmeldeklassen (SubscriptionInfo
) erstellt, welche den Status der angemeldeten Applikationen und Datenverteiler ermitteln und entsprechend veröffentlichen.
_dataIndexCounter, _subscriptions
Constructor and Description |
---|
HighLevelSubscriptionsManager(TelegramManager telegramManager,
ServerDavParameters.UserRightsChecking userRightsChecking)
Initialisiert den Anmeldungsmanager
|
Modifier and Type | Method and Description |
---|---|
void |
addLocalReceiveSubscription(ApplicationCommunicationInterface application,
ReceiveSubscriptionInfo receiveSubscriptionInfo)
Meldet einen lokalen Empfänger oder eine lokale Senke an
|
void |
addLocalSendSubscription(ApplicationCommunicationInterface application,
SendSubscriptionInfo sendSubscriptionInfo)
Meldet einen lokalen Sender oder eine lokale Quelle an
|
java.util.Collection<? extends Subscription> |
getAllSubscriptions(long applicationId) |
T_T_HighLevelCommunicationInterface |
getBestConnectionToRemoteDav(long remoteDav)
Gibt die beste Verbindung zum angegebenen Datenverteiler zurück
|
java.util.List<java.lang.Long> |
getPotentialCentralDistributors(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt zu einer Anmeldungen die potentiellen Zentraldatenverteiler zurück
|
TelegramManager |
getTelegramManager() |
long |
getThisTransmitterId()
Gibt die eigene Dav-ID zurück
|
void |
handleListsUpdate(long[] objectIds,
AttributeGroupAspectCombination[] attributeGroupAspectCombinations)
Wird bei einem Update der Anmeldelisten aufgerufen.
|
void |
initializeUser(long userId)
Initialisiert die Zugriffsrechte für den angegebenen Benutzer
|
boolean |
isActionAllowed(UserLogin userLogin,
BaseSubscriptionInfo info,
UserAction action)
Führt eine Rechteprüfung durch
|
void |
notifyIsNewCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
Wird aufgerufen, wenn dieser Datenverteiler für eine Anmeldung Zentraldatenverteiler geworden ist, z.B. um die Anmeldelisten zu aktualisieren
|
void |
notifyWasCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
Wird aufgerufen, wenn dieser Datenverteiler für eine Anmeldung nicht mehr Zentraldatenverteiler ist, z.B. um die Anmeldelisten zu aktualisieren
|
java.lang.String |
objectToString(long objectId)
Formatiert eine Id zu einem Text der sich in Fehlerausgaben und ähnlichem eignet
|
void |
removeLocalReceiveSubscriptions(ApplicationCommunicationInterface application,
BaseSubscriptionInfo baseSubscriptionInfo)
Meldet einen lokalen Empfänger oder eine lokale Senke ab.
|
void |
removeLocalReceiveSubscriptions(ApplicationCommunicationInterface application,
SubscriptionInfo subscriptionInfo)
Meldet einen lokalen Empfänger oder eine lokale Senke ab.
|
void |
removeLocalSendSubscription(ApplicationCommunicationInterface application,
BaseSubscriptionInfo baseSubscriptionInfo)
Meldet einen lokalen Sender oder eine lokale Quelle ab.
|
void |
removeLocalSendSubscriptions(ApplicationCommunicationInterface application,
SubscriptionInfo subscriptionInfo)
Meldet einen lokalen Senker oder eine lokale Quelle ab.
|
void |
setConfigurationAvailable(SelfClientDavConnection selfClientDavConnection,
ApplicationStatusUpdater applicationStatusUpdater)
Initialisiert Funktionen, die von der Konfiguration abhängen (z.B.
|
java.lang.String |
subscriptionToString(BaseSubscriptionInfo baseSubscriptionInfo)
Formatiert eine baseSubscriptionInfo zu einem String, der sich zur Darstellung in Fehlerausgaben u.ä. eignet
|
connectToRemoteDrains, connectToRemoteSources, dataIndexToString, getAllSubscriptions, getCurrentDataIndex, getNextDataIndex, getNextDataIndex, getSubscriptionInfo, handleTransmitterSubscriptionReceipt, handleUserRightsChanged, openExistingSubscriptionInfo, openSubscriptionInfo, removeAllSubscriptions, removeAllSubscriptions, removeSubscriptionInfo, updateDestinationRoute
public HighLevelSubscriptionsManager(TelegramManager telegramManager, ServerDavParameters.UserRightsChecking userRightsChecking)
Initialisiert den Anmeldungsmanager
telegramManager
- Telegramm-ManageruserRightsChecking
- Ob die Zugriffsrechteprüfung aktiviert istpublic void setConfigurationAvailable(SelfClientDavConnection selfClientDavConnection, ApplicationStatusUpdater applicationStatusUpdater)
Initialisiert Funktionen, die von der Konfiguration abhängen (z.B. Rechteprüfung)
selfClientDavConnection
- eigene Datenverteiler-VerbindungapplicationStatusUpdater
- Klasse, die angemeldete Datensätze verschicktpublic void addLocalSendSubscription(ApplicationCommunicationInterface application, SendSubscriptionInfo sendSubscriptionInfo)
AbstractSubscriptionsManager
Meldet einen lokalen Sender oder eine lokale Quelle an
addLocalSendSubscription
in class AbstractSubscriptionsManager
application
- VerbindungsendSubscriptionInfo
- Anmeldeparameterpublic void removeLocalSendSubscription(ApplicationCommunicationInterface application, BaseSubscriptionInfo baseSubscriptionInfo)
AbstractSubscriptionsManager
Meldet einen lokalen Sender oder eine lokale Quelle ab. Gibt eine Warnung aus, falls die angegebene Anmeldung nicht besteht
removeLocalSendSubscription
in class AbstractSubscriptionsManager
application
- VerbindungbaseSubscriptionInfo
- Objekt und Attributgruppenverwendungpublic void addLocalReceiveSubscription(ApplicationCommunicationInterface application, ReceiveSubscriptionInfo receiveSubscriptionInfo)
AbstractSubscriptionsManager
Meldet einen lokalen Empfänger oder eine lokale Senke an
addLocalReceiveSubscription
in class AbstractSubscriptionsManager
application
- VerbindungreceiveSubscriptionInfo
- Anmeldeparameterpublic void removeLocalReceiveSubscriptions(ApplicationCommunicationInterface application, BaseSubscriptionInfo baseSubscriptionInfo)
AbstractSubscriptionsManager
Meldet einen lokalen Empfänger oder eine lokale Senke ab. Gibt eine Warnung aus, falls die angegebene Anmeldung nicht besteht
removeLocalReceiveSubscriptions
in class AbstractSubscriptionsManager
application
- VerbindungbaseSubscriptionInfo
- Objekt und Attributgruppenverwendungpublic final boolean isActionAllowed(UserLogin userLogin, BaseSubscriptionInfo info, UserAction action)
Führt eine Rechteprüfung durch
userLogin
- Benutzer-IDinfo
- Anmeldeinfoaction
- Aktionpublic java.lang.String subscriptionToString(BaseSubscriptionInfo baseSubscriptionInfo)
Formatiert eine baseSubscriptionInfo zu einem String, der sich zur Darstellung in Fehlerausgaben u.ä. eignet
baseSubscriptionInfo
- baseSubscriptionInfopublic java.lang.String objectToString(long objectId)
Formatiert eine Id zu einem Text der sich in Fehlerausgaben und ähnlichem eignet
objectId
- Idpublic long getThisTransmitterId()
SubscriptionsManager
Gibt die eigene Dav-ID zurück
public void notifyIsNewCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
Wird aufgerufen, wenn dieser Datenverteiler für eine Anmeldung Zentraldatenverteiler geworden ist, z.B. um die Anmeldelisten zu aktualisieren
baseSubscriptionInfo
- public void notifyWasCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
Wird aufgerufen, wenn dieser Datenverteiler für eine Anmeldung nicht mehr Zentraldatenverteiler ist, z.B. um die Anmeldelisten zu aktualisieren
baseSubscriptionInfo
- public TelegramManager getTelegramManager()
public java.util.List<java.lang.Long> getPotentialCentralDistributors(BaseSubscriptionInfo baseSubscriptionInfo)
SubscriptionsManager
Gibt zu einer Anmeldungen die potentiellen Zentraldatenverteiler zurück
baseSubscriptionInfo
- Anmeldungpublic T_T_HighLevelCommunicationInterface getBestConnectionToRemoteDav(long remoteDav)
SubscriptionsManager
Gibt die beste Verbindung zum angegebenen Datenverteiler zurück
public void handleListsUpdate(long[] objectIds, AttributeGroupAspectCombination[] attributeGroupAspectCombinations)
Wird bei einem Update der Anmeldelisten aufgerufen. Anmeldungen, die die betreffenden Objekte oder Attributgruppenverwendungen
objectIds
- Neue ObjekteattributeGroupAspectCombinations
- Neue Attributgruppenverwendungenpublic java.util.Collection<? extends Subscription> getAllSubscriptions(long applicationId)
public void removeLocalSendSubscriptions(ApplicationCommunicationInterface application, SubscriptionInfo subscriptionInfo)
Meldet einen lokalen Senker oder eine lokale Quelle ab.
removeLocalSendSubscriptions
in class AbstractSubscriptionsManager
application
- AnwendungsubscriptionInfo
- subscriptionInfopublic void removeLocalReceiveSubscriptions(ApplicationCommunicationInterface application, SubscriptionInfo subscriptionInfo)
Meldet einen lokalen Empfänger oder eine lokale Senke ab.
removeLocalReceiveSubscriptions
in class AbstractSubscriptionsManager
application
- AnwendungsubscriptionInfo
- subscriptionInfopublic void initializeUser(long userId)
AbstractSubscriptionsManager
Initialisiert die Zugriffsrechte für den angegebenen Benutzer
initializeUser
in class AbstractSubscriptionsManager
userId
- Benutzer-ID (muss in der lokalen Konfiguration existieren)