public interface SubscriptionsManager extends UserRightsChangeHandler
Modifier and Type | Method and Description |
---|---|
void |
connectToRemoteDrains(SubscriptionInfo subscriptionInfo,
Set<Long> distributorsToUse)
Führt Anmeldungen bei potentiellen Zentraldatenverteilern auf eine Senke durch
|
void |
connectToRemoteSources(SubscriptionInfo subscriptionInfo,
Set<Long> distributorsToUse)
Führt Anmeldungen bei potentiellen Zentraldatenverteilern auf eine Quelle durch
|
TransmitterCommunicationInterface |
getBestConnectionToRemoteDav(long remoteDav)
Gibt die beste Verbindung zum angegebenen Datenverteiler zurück
|
long |
getCurrentDataIndex(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt den aktuellen (zuletzt generierten) Datenindex für die angegebene Anmeldung zurück
|
long |
getNextDataIndex(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt den nächsten Datenindex für die angegebene Anmeldung zurück und zählt den Index entsprechend hoch
|
List<Long> |
getPotentialCentralDistributors(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt zu einer Anmeldungen die potentiellen Zentraldatenverteiler zurück
|
SubscriptionInfo |
getSubscriptionInfo(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt zu einer baseSubscriptionInfo die zugehörige Anmeldungsinfo zurück.
|
long |
getThisTransmitterId()
Gibt die eigene Dav-ID zurück
|
void |
handleTransmitterSubscriptionReceipt(TransmitterCommunicationInterface communication,
TransmitterSubscriptionType transmitterSubscriptionType,
BaseSubscriptionInfo baseSubscriptionInfo,
ConnectionState connectionState,
long mainTransmitterId)
behandelt eien Anmeldungsquittung von einem anderen Datenverteiler
|
void |
handleUserRightsChanged(long userId)
Prüft von allen Anmeldungen die den Benutzer betreffen die Rechte erneut
|
boolean |
isActionAllowed(long userId,
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.
|
void |
notifyWasCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
Wird aufgerufen, wenn dieser Datenverteiler für eine Anmeldung nicht mehr Zentraldatenverteiler ist, z.B.
|
String |
objectToString(long objectId)
Wandelt ein Objekt in darstellbaren Text um
|
SubscriptionInfo |
openExistingSubscriptionInfo(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt zu einer baseSubscriptionInfo die zugehörige Anmeldungsinfo zurück.
|
SubscriptionInfo |
openSubscriptionInfo(BaseSubscriptionInfo baseSubscriptionInfo)
Gibt zu einer baseSubscriptionInfo die zugehörige Anmeldungsinfo zurück oder erstellt diese falls sie nicht existiert.
|
void |
removeSubscriptionInfo(SubscriptionInfo subscriptionInfo)
Entfernt eine Anmeldeinformation.
|
String |
subscriptionToString(BaseSubscriptionInfo baseSubscriptionInfo)
Wandlt eine Anmeldung in einen darstellbaren Text um
|
void |
updateDestinationRoute(long transmitterId,
TransmitterCommunicationInterface oldConnection,
TransmitterCommunicationInterface newConnection)
Wird aufgerufen, wenn es zu einer Dav-id eine bessere Route gibt, sorgt für entsprechende Anmeldeumleitungen
|
SubscriptionInfo openSubscriptionInfo(BaseSubscriptionInfo baseSubscriptionInfo)
SubscriptionInfo.close()
aufgerufen werden, damit
eventuelle Aufräumarbeiten erledigt werden können.baseSubscriptionInfo
- baseSubscriptionInfoSubscriptionInfo openExistingSubscriptionInfo(BaseSubscriptionInfo baseSubscriptionInfo)
SubscriptionInfo.close()
aufgerufen werden, damit eventuelle
Aufräumarbeiten erledigt werden können.baseSubscriptionInfo
- baseSubscriptionInfoSubscriptionInfo getSubscriptionInfo(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- baseSubscriptionInfoboolean isActionAllowed(long userId, BaseSubscriptionInfo info, UserAction action)
userId
- Benutzer-IDinfo
- Anmeldeinfoaction
- Aktionvoid handleUserRightsChanged(long userId)
handleUserRightsChanged
in interface UserRightsChangeHandler
userId
- Id des Benutzersvoid notifyIsNewCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- void notifyWasCentralDistributor(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- List<Long> getPotentialCentralDistributors(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- AnmeldungTransmitterCommunicationInterface getBestConnectionToRemoteDav(long remoteDav)
void removeSubscriptionInfo(SubscriptionInfo subscriptionInfo)
subscriptionInfo
- Anmeldeinformationvoid connectToRemoteDrains(SubscriptionInfo subscriptionInfo, Set<Long> distributorsToUse)
subscriptionInfo
- AnmeldeinformationdistributorsToUse
- Liste mit zu berücksichtigenden potentiellen Zentraldatenverteilernvoid connectToRemoteSources(SubscriptionInfo subscriptionInfo, Set<Long> distributorsToUse)
subscriptionInfo
- AnmeldeinformationdistributorsToUse
- Liste mit zu berücksichtigenden potentiellen ZentraldatenverteilernString subscriptionToString(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- AnmeldungString objectToString(long objectId)
objectId
- Objektlong getThisTransmitterId()
void handleTransmitterSubscriptionReceipt(TransmitterCommunicationInterface communication, TransmitterSubscriptionType transmitterSubscriptionType, BaseSubscriptionInfo baseSubscriptionInfo, ConnectionState connectionState, long mainTransmitterId)
communication
- Verbindung zum anderen DavtransmitterSubscriptionType
- Art der Anmeldung (Sender/Empfänger)baseSubscriptionInfo
- AnmeldeinformationconnectionState
- Rückmeldung des anderen Datenverteilers (Zuständig, nicht zuständig, etc.)mainTransmitterId
- Zentraldatenverteiler-ID sofern verfügbarvoid updateDestinationRoute(long transmitterId, TransmitterCommunicationInterface oldConnection, TransmitterCommunicationInterface newConnection)
transmitterId
- Dav-IdoldConnection
- Alte VerbindungnewConnection
- Neue bessere Verbindunglong getNextDataIndex(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- Anmeldunglong getCurrentDataIndex(BaseSubscriptionInfo baseSubscriptionInfo)
baseSubscriptionInfo
- Anmeldung