Package de.bsvrz.dav.dav.subscriptions
Class RemoteReceiverSubscription
java.lang.Object
de.bsvrz.dav.dav.subscriptions.RemoteReceiverSubscription
- All Implemented Interfaces:
ReceivingSubscription,RemoteReceivingSubscription,RemoteSubscription,Subscription
public class RemoteReceiverSubscription extends java.lang.Object implements RemoteReceivingSubscription
Anmeldung eines entfernten Empfängers auf diesen Datenverteiler (der möglicherweise Zentraldatenverteiler ist)
-
Constructor Summary
Constructors Constructor Description RemoteReceiverSubscription(SubscriptionsManager subscriptionsManager, TransmitterCommunicationInterface transmitterCommunication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo, java.util.Collection<java.lang.Long> transmitterIds) -
Method Summary
Modifier and Type Method Description voidaddPotentialDistributor(long transmitterId)de.bsvrz.dav.daf.communication.protocol.UserLogingetAuthenticationState()Gibt die Id des angemeldeten Benutzers zurück.de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfogetBaseSubscriptionInfo()Gibt die Objekt-Attributgruppenverwendung-Simulationsvariante-Kombination zurück, auf die diese Anmeldung stattfindetlonggetCentralDistributorId()Gibt die Zentraldatenverteiler-ID zurück.TransmitterCommunicationInterfacegetCommunication()Gibt die Schnittstelle zum Kommunikationspartner zurück, also z.B. eine T_A oder T_T-VerbindungConnectionStategetConnectionState()Gibt den Verbindungsstatus zum Kommunikationspartner zurücklonggetNodeId()Liefert die Id der anmeldenden Applikation bzw. des anmeldenden Datenverteilers (nicht zwingend der direkt verbundene Datenverteiler, sondern der Kommunikationspartner, der die Daten bereitstellt oder empfängt)java.util.Set<java.lang.Long>getPotentialDistributors()de.bsvrz.dav.daf.main.ReceiveOptionsgetReceiveOptions()Gibt die Empfangsoptionen zurück, die der Empfänger bei der Anmeldung spezifiziert hatReceiverStategetState()Gibt den Status des Empfängers zurückbooleanisAllowed()Gibt zurück, ob die Anmeldung von der lokalen Rechteprüfung erlaubt istbooleanisDrain()Gibttruezurück, wenn es sich um eine Senke handeltvoidremovePotentialDistributor(long transmitterId)voidsendDataTelegram(de.bsvrz.dav.daf.communication.lowLevel.telegrams.ApplicationDataTelegram applicationDataTelegram, long applicationId)Sendet Daten an den EmpfängervoidsendStateTelegram(ReceiverState receiverState)Sendet an einen Empfänger falls nötig im Falle eines geänderten Anmeldestatus einen leeren Datensatz mit dem entsprechenden Inhalt.voidsetPotentialDistributors(java.util.Collection<java.lang.Long> value)voidsetState(ReceiverState receiverState, long centralTransmitterId)Setzt den Status des Empfängersjava.lang.StringtoString()voidunsubscribe()Beendet die Datenanmeldung, sendet eventuelle AbmeldetelegrammeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
RemoteReceiverSubscription
public RemoteReceiverSubscription(SubscriptionsManager subscriptionsManager, TransmitterCommunicationInterface transmitterCommunication, de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo, java.util.Collection<java.lang.Long> transmitterIds)
-
-
Method Details
-
isDrain
public boolean isDrain()Description copied from interface:ReceivingSubscriptionGibttruezurück, wenn es sich um eine Senke handelt- Specified by:
isDrainin interfaceReceivingSubscription- Returns:
true, wenn es sich um eine Senke handelt, sonst (Empfänger)false
-
getReceiveOptions
public de.bsvrz.dav.daf.main.ReceiveOptions getReceiveOptions()Description copied from interface:ReceivingSubscriptionGibt die Empfangsoptionen zurück, die der Empfänger bei der Anmeldung spezifiziert hat- Specified by:
getReceiveOptionsin interfaceReceivingSubscription- Returns:
- die Empfangsoptionen
-
sendDataTelegram
public void sendDataTelegram(de.bsvrz.dav.daf.communication.lowLevel.telegrams.ApplicationDataTelegram applicationDataTelegram, long applicationId)Description copied from interface:ReceivingSubscriptionSendet Daten an den Empfänger- Specified by:
sendDataTelegramin interfaceReceivingSubscription- Parameters:
applicationDataTelegram- TelegrammapplicationId- oder -1 falls nicht bekannt
-
getState
Description copied from interface:ReceivingSubscriptionGibt den Status des Empfängers zurück- Specified by:
getStatein interfaceReceivingSubscription- Returns:
- den Status des Empfängers
-
setState
Description copied from interface:ReceivingSubscriptionSetzt den Status des Empfängers- Specified by:
setStatein interfaceReceivingSubscription- Parameters:
receiverState- neuer Status
-
sendStateTelegram
Sendet an einen Empfänger falls nötig im Falle eines geänderten Anmeldestatus einen leeren Datensatz mit dem entsprechenden Inhalt.- Specified by:
sendStateTelegramin interfaceReceivingSubscription- Parameters:
receiverState- Empfängerstatus
-
unsubscribe
public void unsubscribe()Description copied from interface:SubscriptionBeendet die Datenanmeldung, sendet eventuelle Abmeldetelegramme- Specified by:
unsubscribein interfaceSubscription
-
getBaseSubscriptionInfo
public de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo getBaseSubscriptionInfo()Description copied from interface:SubscriptionGibt die Objekt-Attributgruppenverwendung-Simulationsvariante-Kombination zurück, auf die diese Anmeldung stattfindet- Specified by:
getBaseSubscriptionInfoin interfaceSubscription- Returns:
- BaseSubscriptionInfo
-
isAllowed
public boolean isAllowed()Description copied from interface:SubscriptionGibt zurück, ob die Anmeldung von der lokalen Rechteprüfung erlaubt ist- Specified by:
isAllowedin interfaceSubscription- Returns:
-
getAuthenticationState
public de.bsvrz.dav.daf.communication.protocol.UserLogin getAuthenticationState()Description copied from interface:SubscriptionGibt die Id des angemeldeten Benutzers zurück. Liefert das gleiche wie getCommunication().getRemoteUserId()- Specified by:
getAuthenticationStatein interfaceSubscription- Returns:
- Id den angemeldeten Benutzers
-
getNodeId
public long getNodeId()Description copied from interface:SubscriptionLiefert die Id der anmeldenden Applikation bzw. des anmeldenden Datenverteilers (nicht zwingend der direkt verbundene Datenverteiler, sondern der Kommunikationspartner, der die Daten bereitstellt oder empfängt)- Specified by:
getNodeIdin interfaceSubscription- Returns:
- Id der Applikation (bei T_A-Verbindungen) oder Id des Datenverteilers (bei T_T-Verbindungen)
-
getConnectionState
Description copied from interface:SubscriptionGibt den Verbindungsstatus zum Kommunikationspartner zurück- Specified by:
getConnectionStatein interfaceSubscription- Returns:
- Verbindugnsstatus
-
getCentralDistributorId
public long getCentralDistributorId()Description copied from interface:SubscriptionGibt die Zentraldatenverteiler-ID zurück. Nur sinnvoll bei Quelle/Senke-Anmeldungen. Ist der Zentraldatenverteiler unbekannt, wird -1 zurückgegeben.- Specified by:
getCentralDistributorIdin interfaceSubscription- Returns:
- die Zentraldatenverteiler-ID
-
getCommunication
Description copied from interface:SubscriptionGibt die Schnittstelle zum Kommunikationspartner zurück, also z.B. eine T_A oder T_T-Verbindung- Specified by:
getCommunicationin interfaceRemoteSubscription- Specified by:
getCommunicationin interfaceSubscription- Returns:
- die Schnittstelle zum Kommunikationspartner
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-
getPotentialDistributors
public java.util.Set<java.lang.Long> getPotentialDistributors()- Specified by:
getPotentialDistributorsin interfaceRemoteSubscription
-
setPotentialDistributors
public void setPotentialDistributors(java.util.Collection<java.lang.Long> value)- Specified by:
setPotentialDistributorsin interfaceRemoteSubscription
-
addPotentialDistributor
public void addPotentialDistributor(long transmitterId)- Specified by:
addPotentialDistributorin interfaceRemoteSubscription
-
removePotentialDistributor
public void removePotentialDistributor(long transmitterId)- Specified by:
removePotentialDistributorin interfaceRemoteSubscription
-