de.bsvrz.dav.daf.main.ClientSenderInterface
public class SenderSubscribtion
extends java.lang.Object
implements de.bsvrz.dav.daf.main.ClientSenderInterface
Klasse zum Versenden von Daten.
Die Methode sendData(ResultData)
dient dem
Versenden von Datensätzen. In dieser Methode erfolgt auch die
Sendeanmeldung.
Es wird erst versucht sich als Quelle anzumelden. Ist die nicht erfolgreich (andere Quelle oder Senke vorhanden), wird versucht sich als Sender anzumelden.
Kann der Datensatz nicht versendet werden, wird eine Exception geworfen.
Mit der Methode unsubscribeSender()
kann die Sendeanmeldung
zurückgenommen werden.
Wird die sendData(ResultData)
danach
aufgerufen wird die Sendeanmeldung wiederhergestellt.
Es wird eine Timeout-Zeit auf eine positive Sendesteuerung gewartet. Ist diese Zeit überschritten, ist wahrscheinlich weder Senke noch Empfänger vorhanden.
Modifier and Type | Field | Description |
---|---|---|
protected boolean |
_IgnoreStopSending |
Ist _IgnoreStopSending==true, dann wird auch die TimeoutZeit auf eine
positive Sendesteuerung gewartet, wenn ein STOP_SENDING ausgelöst wurde.
|
Constructor | Description |
---|---|
SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn,
de.bsvrz.dav.daf.main.config.SystemObject so,
de.bsvrz.dav.daf.main.DataDescription dataDescription) |
erzeugt eine SenderSubscribtion.
|
SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn,
de.bsvrz.dav.daf.main.config.SystemObject so,
de.bsvrz.dav.daf.main.DataDescription dataDescription,
int timeOut,
boolean ignoreStopSending) |
erzeugt eine SenderSubscribtion.
|
SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn,
de.bsvrz.sys.funclib.dataIdentificationSettings.DataIdentification dataIdentification) |
erzeugt eine SenderSubscribtion.
|
SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn,
de.bsvrz.sys.funclib.dataIdentificationSettings.DataIdentification dataIdentification,
int timeout,
boolean ignoreStopSending) |
erzeugt eine SenderSubscribtion.
|
Modifier and Type | Method | Description |
---|---|---|
void |
dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object,
de.bsvrz.dav.daf.main.DataDescription dataDescription,
byte state) |
|
long |
getLastUse() |
gibt den Zeitpunkt zurück, zum dem der letzte Datensatz gesendet bzw das
Object erzeugt wurde.
|
boolean |
isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject object,
de.bsvrz.dav.daf.main.DataDescription dataDescription) |
gibt true zurück, um zu signalisieren, dass die Sendesteuerung
unterstützt wird.
|
void |
sendData(de.bsvrz.dav.daf.main.ResultData rs) |
versendet den Datensatz.
|
void |
setTimeOut(int timeOut) |
Setzt die Zeitspanne, die auf eine positive Sendesteuerung gewartet wird
bevor davon ausgegangen wird, dass es weder Empfänger noch Senke gibt.
|
java.lang.String |
toString() |
gibt eine Stringrepräsentation zurück, die die DataIdentification
und den Status enthält.
|
void |
unsubscribeSender() |
meldet sich als Sender für die DataIdentification ab.
|
protected boolean _IgnoreStopSending
public SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn, de.bsvrz.dav.daf.main.config.SystemObject so, de.bsvrz.dav.daf.main.DataDescription dataDescription)
davConn
- ClientDavInterfaceso
- SystemObjectdataDescription
- DataDescriptionpublic SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn, de.bsvrz.dav.daf.main.config.SystemObject so, de.bsvrz.dav.daf.main.DataDescription dataDescription, int timeOut, boolean ignoreStopSending)
davConn
- ClientDavInterfaceso
- SystemObjectdataDescription
- DataDescriptiontimeOut
- Zeit in msec, die auf positive Sendesteuerung gewartet wirdignoreStopSending
- die Rückmeldung zum Stoppen des Sendens ignorieren?public SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn, de.bsvrz.sys.funclib.dataIdentificationSettings.DataIdentification dataIdentification)
davConn
- ClientDavInterfacedataIdentification
- DataIdentificationpublic SenderSubscribtion(de.bsvrz.dav.daf.main.ClientDavInterface davConn, de.bsvrz.sys.funclib.dataIdentificationSettings.DataIdentification dataIdentification, int timeout, boolean ignoreStopSending)
davConn
- ClientDavInterfacedataIdentification
- DataIdentificationtimeout
- Zeit in msec, die auf positive Sendesteuerung gewartet wirdignoreStopSending
- booleanpublic void dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription, byte state)
dataRequest
in interface de.bsvrz.dav.daf.main.ClientSenderInterface
public boolean isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription)
isRequestSupported
in interface de.bsvrz.dav.daf.main.ClientSenderInterface
object
- SystemObjectdataDescription
- DataDescriptionpublic void sendData(de.bsvrz.dav.daf.main.ResultData rs) throws de.bsvrz.dav.daf.main.SendSubscriptionNotConfirmed, de.bsvrz.dav.daf.main.OneSubscriptionPerSendData
Ist die zugrunde liegende DataIdentification nicht zum Senden angemeldet, erfolgt hier die Anmeldung
rs
- zu versendender Datensatzde.bsvrz.dav.daf.main.SendSubscriptionNotConfirmed
- wird geworfen, wenn innerhalb der TimeoutZeit keine positive
Sendesteuerung vom Datenverteiler für die zu versendenden Daten
vorliegt oder kein Empfänger vorhanden ist.de.bsvrz.dav.daf.main.OneSubscriptionPerSendData
- wird geworfen, wenn bereits eine lokale Sendeanmeldung für die
gleichen Daten von einem anderen Anwendungsobjekt vorliegt.public void setTimeOut(int timeOut)
timeOut
- intpublic void unsubscribeSender()
public java.lang.String toString()
toString
in class java.lang.Object
public long getLastUse()