de.bsvrz.dav.dav.main
Class OutSubscriptionsHelper
java.lang.Object
de.bsvrz.dav.dav.main.OutSubscriptionsHelper
public class OutSubscriptionsHelper
- extends Object
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_outSubscriptionsTable
private final Hashtable _outSubscriptionsTable
- Key: Id(Long) des Datenverteilers, zu dem eine Verbindung aufgebaut werden soll. Value: Hashtable (im folgenden Hash2 genannt).
Die Hashtable Hash2 besitzt folgenden Aufbau: Key: BaseSubscriptionInfo. Value: Eine Liste. Die Liste speicherte Objekte vom Typ
OutGoingSubscription
.
OutSubscriptionsHelper
public OutSubscriptionsHelper()
handleOutSubscription
final void handleOutSubscription(InAndOutSubscription involvedSubscription,
InAndOutSubscription.OutSubscription outSubscription)
- Diese Methode führt die austehenden Anmeldungen durch.
- Parameters:
involvedSubscription
- betroffene AnmeldungenoutSubscription
- Anmeldung an dem DAV
handleOutUnsubscription
final void handleOutUnsubscription(InAndOutSubscription involvedSubscription,
InAndOutSubscription.OutSubscription outSubscription)
- Diese Methode wird aufgerufen, wenn Daten abgemeldet werden sollen. Die Abmeldung wird nicht sofort ausgeführt sondern erst, wenn
#flushOutUnSubscription(ConnectionsManager)
aufgerufen wird.
Wird für eine Anmeldung diese Methode n-Fach aufgerufen (ohne den Aufruf von flush) und dazu die Methode handleOutSubscription(InAndOutSubscription,InAndOutSubscription.OutSubscription)
m-Fach, so werden nur
(m-n) viele Telegramme verschickt.
m > n = Es werden m-n viele Anmeldungen verschickt.
m < n = Es werden n-m viele Abmeldungen verschickt.
m == n = Es wird kein Telegramm verschickt.
- Parameters:
involvedSubscription
- betroffene AnmeldungenoutSubscription
- Anmeldung an dem DAV
flushOutUnSubscription
final void flushOutUnSubscription(ConnectionsManagerInterface connectionsManager)
- Verschickt alle An/Abmeldungen, die mit
handleOutSubscription(de.bsvrz.dav.dav.main.InAndOutSubscription, de.bsvrz.dav.dav.main.InAndOutSubscription.OutSubscription)
und handleOutUnsubscription(de.bsvrz.dav.dav.main.InAndOutSubscription, de.bsvrz.dav.dav.main.InAndOutSubscription.OutSubscription)
gemacht wurden.
- Parameters:
connectionsManager
- Objekt, über das die An/Abmeldungen verschickt werden.