Package de.bsvrz.dav.dav.subscriptions
Class RemoteDrainSubscription
java.lang.Object
de.bsvrz.dav.dav.subscriptions.RemoteDrainSubscription
- All Implemented Interfaces:
ReceivingSubscription
,RemoteCentralSubscription
,RemoteReceivingSubscription
,RemoteSubscription
,Subscription
public class RemoteDrainSubscription extends java.lang.Object implements RemoteReceivingSubscription, RemoteCentralSubscription
Anmeldung als Sender auf eine Senke bei einem entfernten Zentral-Datenverteiler.
-
Constructor Summary
Constructors Constructor Description RemoteDrainSubscription(SubscriptionsManager subscriptionsManager, de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo, TransmitterCommunicationInterface connectionToRemoteDav)
-
Method Summary
Modifier and Type Method Description void
addPotentialDistributor(long transmitterId)
de.bsvrz.dav.daf.communication.protocol.UserLogin
getAuthenticationState()
Gibt die Id des angemeldeten Benutzers zurück.de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo
getBaseSubscriptionInfo()
Gibt die Objekt-Attributgruppenverwendung-Simulationsvariante-Kombination zurück, auf die diese Anmeldung stattfindetlong
getCentralDistributorId()
Gibt die Zentraldatenverteiler-ID zurück.TransmitterCommunicationInterface
getCommunication()
Gibt die Schnittstelle zum Kommunikationspartner zurück, also z.B. eine T_A oder T_T-VerbindungConnectionState
getConnectionState()
Gibt den Verbindungsstatus zum Kommunikationspartner zurücklong
getNodeId()
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.ReceiveOptions
getReceiveOptions()
Gibt die Empfangsoptionen zurück, die der Empfänger bei der Anmeldung spezifiziert hatReceiverState
getState()
Gibt den Status des Empfängers zurückboolean
isAllowed()
Gibt zurück, ob die Anmeldung von der lokalen Rechteprüfung erlaubt istboolean
isDrain()
Gibttrue
zurück, wenn es sich um eine Senke handeltvoid
removePotentialDistributor(long transmitterId)
void
sendDataTelegram(de.bsvrz.dav.daf.communication.lowLevel.telegrams.ApplicationDataTelegram applicationDataTelegram, long applicationId)
Sendet Daten an den Empfängervoid
sendStateTelegram(ReceiverState receiverState)
void
setPotentialDistributors(java.util.Collection<java.lang.Long> value)
void
setRemoteState(long mainTransmitterId, ConnectionState state)
void
setState(ReceiverState receiverState, long centralTransmitterId)
Setzt den Status des Empfängersvoid
subscribe()
java.lang.String
toString()
void
unsubscribe()
Beendet die Datenanmeldung, sendet eventuelle AbmeldetelegrammeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
RemoteDrainSubscription
public RemoteDrainSubscription(SubscriptionsManager subscriptionsManager, de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo baseSubscriptionInfo, TransmitterCommunicationInterface connectionToRemoteDav)
-
-
Method Details
-
subscribe
public final void subscribe()- Specified by:
subscribe
in interfaceRemoteCentralSubscription
-
getPotentialDistributors
public java.util.Set<java.lang.Long> getPotentialDistributors()- Specified by:
getPotentialDistributors
in interfaceRemoteSubscription
-
setPotentialDistributors
public void setPotentialDistributors(java.util.Collection<java.lang.Long> value)- Specified by:
setPotentialDistributors
in interfaceRemoteSubscription
-
addPotentialDistributor
public void addPotentialDistributor(long transmitterId)- Specified by:
addPotentialDistributor
in interfaceRemoteSubscription
-
removePotentialDistributor
public void removePotentialDistributor(long transmitterId)- Specified by:
removePotentialDistributor
in interfaceRemoteSubscription
-
isDrain
public boolean isDrain()Description copied from interface:ReceivingSubscription
Gibttrue
zurück, wenn es sich um eine Senke handelt- Specified by:
isDrain
in interfaceReceivingSubscription
- Returns:
true
, wenn es sich um eine Senke handelt, sonst (Empfänger)false
-
getCentralDistributorId
public long getCentralDistributorId()Description copied from interface:Subscription
Gibt die Zentraldatenverteiler-ID zurück. Nur sinnvoll bei Quelle/Senke-Anmeldungen. Ist der Zentraldatenverteiler unbekannt, wird -1 zurückgegeben.- Specified by:
getCentralDistributorId
in interfaceSubscription
- Returns:
- die Zentraldatenverteiler-ID
-
getReceiveOptions
public de.bsvrz.dav.daf.main.ReceiveOptions getReceiveOptions()Description copied from interface:ReceivingSubscription
Gibt die Empfangsoptionen zurück, die der Empfänger bei der Anmeldung spezifiziert hat- Specified by:
getReceiveOptions
in interfaceReceivingSubscription
- Returns:
- die Empfangsoptionen
-
sendDataTelegram
public void sendDataTelegram(de.bsvrz.dav.daf.communication.lowLevel.telegrams.ApplicationDataTelegram applicationDataTelegram, long applicationId)Description copied from interface:ReceivingSubscription
Sendet Daten an den Empfänger- Specified by:
sendDataTelegram
in interfaceReceivingSubscription
- Parameters:
applicationDataTelegram
- TelegrammapplicationId
- oder -1 falls nicht bekannt
-
getState
Description copied from interface:ReceivingSubscription
Gibt den Status des Empfängers zurück- Specified by:
getState
in interfaceReceivingSubscription
- Returns:
- den Status des Empfängers
-
setState
Description copied from interface:ReceivingSubscription
Setzt den Status des Empfängers- Specified by:
setState
in interfaceReceivingSubscription
- Parameters:
receiverState
- neuer Status
-
sendStateTelegram
- Specified by:
sendStateTelegram
in interfaceReceivingSubscription
-
getBaseSubscriptionInfo
public de.bsvrz.dav.daf.communication.lowLevel.telegrams.BaseSubscriptionInfo getBaseSubscriptionInfo()Description copied from interface:Subscription
Gibt die Objekt-Attributgruppenverwendung-Simulationsvariante-Kombination zurück, auf die diese Anmeldung stattfindet- Specified by:
getBaseSubscriptionInfo
in interfaceSubscription
- Returns:
- BaseSubscriptionInfo
-
isAllowed
public boolean isAllowed()Description copied from interface:Subscription
Gibt zurück, ob die Anmeldung von der lokalen Rechteprüfung erlaubt ist- Specified by:
isAllowed
in interfaceSubscription
- Returns:
-
getAuthenticationState
public de.bsvrz.dav.daf.communication.protocol.UserLogin getAuthenticationState()Description copied from interface:Subscription
Gibt die Id des angemeldeten Benutzers zurück. Liefert das gleiche wie getCommunication().getRemoteUserId()- Specified by:
getAuthenticationState
in interfaceSubscription
- Returns:
- Id den angemeldeten Benutzers
-
getNodeId
public long getNodeId()Description copied from interface:Subscription
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)- Specified by:
getNodeId
in interfaceSubscription
- Returns:
- Id der Applikation (bei T_A-Verbindungen) oder Id des Datenverteilers (bei T_T-Verbindungen)
-
getCommunication
Description copied from interface:Subscription
Gibt die Schnittstelle zum Kommunikationspartner zurück, also z.B. eine T_A oder T_T-Verbindung- Specified by:
getCommunication
in interfaceRemoteSubscription
- Specified by:
getCommunication
in interfaceSubscription
- Returns:
- die Schnittstelle zum Kommunikationspartner
-
setRemoteState
- Specified by:
setRemoteState
in interfaceRemoteCentralSubscription
-
getConnectionState
Description copied from interface:Subscription
Gibt den Verbindungsstatus zum Kommunikationspartner zurück- Specified by:
getConnectionState
in interfaceSubscription
- Returns:
- Verbindugnsstatus
-
unsubscribe
public void unsubscribe()Description copied from interface:Subscription
Beendet die Datenanmeldung, sendet eventuelle Abmeldetelegramme- Specified by:
unsubscribe
in interfaceSubscription
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-