public abstract class AnswerReceiver
extends java.lang.Object
implements de.bsvrz.dav.daf.main.ClientReceiverInterface
Modifier and Type | Field and Description |
---|---|
protected de.bsvrz.dav.daf.main.DataDescription |
dataDescription
Angemeldete Atg und Aspekt.
|
protected de.bsvrz.dav.daf.main.ClientDavInterface |
dav
Verbindung zum Datenverteiler.
|
protected de.bsvrz.sys.funclib.losb.ringbuffer.RingBuffer<de.bsvrz.dav.daf.main.ResultData> |
incoming
Eingegangene Daten
|
protected de.bsvrz.dav.daf.main.config.SystemObject |
object
Skriptobjekt, auf das sich die Antwort bezieht.
|
protected de.bsvrz.dav.daf.main.config.SystemObject |
receiver
Objekt das die Anfrage, auf die sich diese Antwort bezieht, gesendet hat.
|
protected long |
requestId
Anfrage-Id.
|
Constructor and Description |
---|
AnswerReceiver(de.bsvrz.dav.daf.main.ClientDavInterface dav,
de.bsvrz.dav.daf.main.config.SystemObject object,
java.lang.String atg,
java.lang.String asp,
de.bsvrz.dav.daf.main.config.SystemObject receiver,
long requestId,
long timeout)
Erzeugt den Empfänger.
|
Modifier and Type | Method and Description |
---|---|
boolean |
hasData()
Zeigt an, ob Antwortdaten vorliegen.
|
protected void |
subscribe(de.bsvrz.dav.daf.main.ReceiverRole role) |
de.bsvrz.dav.daf.main.ResultData |
take()
Liefert einen Antwortdatensatz.
|
de.bsvrz.dav.daf.main.ResultData |
take(long timeout)
Liefert einen Antwortdatensatz.
|
boolean |
unsubscribe()
Meldet den Empfang von Daten ab.
|
protected abstract void |
update(de.bsvrz.dav.daf.main.ResultData result)
Wird für jeden empfangenen Datensatz von
update(ResultData[]) aufgerufen. |
void |
update(de.bsvrz.dav.daf.main.ResultData[] results) |
protected de.bsvrz.dav.daf.main.ClientDavInterface dav
protected de.bsvrz.dav.daf.main.config.SystemObject object
protected de.bsvrz.sys.funclib.losb.ringbuffer.RingBuffer<de.bsvrz.dav.daf.main.ResultData> incoming
protected de.bsvrz.dav.daf.main.DataDescription dataDescription
protected long requestId
protected de.bsvrz.dav.daf.main.config.SystemObject receiver
public AnswerReceiver(de.bsvrz.dav.daf.main.ClientDavInterface dav, de.bsvrz.dav.daf.main.config.SystemObject object, java.lang.String atg, java.lang.String asp, de.bsvrz.dav.daf.main.config.SystemObject receiver, long requestId, long timeout)
dav
- Verbindung zum Datenverteilerobject
- Systemobjekt, dessen Daten empfangen werden sollenatg
- Pid der Attributgruppe auf die sich der Empfänger anmeldet.asp
- Pid des Aspekts auf den sich der Empfänger anmeldet.receiver
- Objekt das als Absender im Datensatz eingetragen wist.requestId
- Anfrage-Id.timeout
- Maximale Wartezeit, in der eine Antwort eingehen muss. 0
ist die unbegrenzte Wartezeit.protected void subscribe(de.bsvrz.dav.daf.main.ReceiverRole role)
public boolean hasData()
public boolean unsubscribe()
true
public void update(de.bsvrz.dav.daf.main.ResultData[] results)
update
in interface de.bsvrz.dav.daf.main.ClientReceiverInterface
ClientReceiverInterface.update(ResultData[])
protected abstract void update(de.bsvrz.dav.daf.main.ResultData result)
update(ResultData[])
aufgerufen.result
- Eingehender Datensatz. Enthält Daten, d.h. rd.getData()
ist nicht null
.public de.bsvrz.dav.daf.main.ResultData take(long timeout) throws java.lang.InterruptedException
timeout
- Wartezeit. 0
bedeutet unbegrenzte Wartezeit.java.lang.InterruptedException
- Warten auf Antwortdatensatz wurde unterbrochen.public de.bsvrz.dav.daf.main.ResultData take() throws java.lang.InterruptedException
java.lang.InterruptedException
- Warten auf Antwortdatensatz wurde unterbrochen.