Class AsyncReceiver
java.lang.Object
de.bsvrz.sys.funclib.asyncReceiver.AsyncReceiver
- All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientReceiverInterface
public class AsyncReceiver
extends java.lang.Object
implements de.bsvrz.dav.daf.main.ClientReceiverInterface
Klasse, die beim Empfang von Datensätzen zur Entkopplung von Datenverteiler-Applikationsfunktionen und Verarbeitungsfunktionen eingesetzt werden
kann. Empfangene Datensätze werden in eine Queue eingetragen und asynchron von einem eigenen Thread an die eigentlichen Empfänger weitergeleitet.
Wenn zum Beispiel statt
Es ist zu beachten, dass die Klasse ein einzigen Thread verwendet, der asynchron zu den anderen Aktivitäten der Applikation und insbesondere asynchron zum update-Thread der Datenverteiler-Applikationsfunktionen arbeitet. Die in einer Queue zwischengespeicherten Datensätze werden sequentiell an die update-Methode des eigentlichen Empfängers weiterleitet.
Wenn zum Beispiel statt
ClientReceiverInterface receiver= new ....; connection.subscribeReceiver(receiver, ... );der folgende Code bei der Anmeldung auf bestimmte Daten benutzt wird:
ClientReceiverInterface receiver= new ....; ClientReceiverInterface asyncReceiver= new AsyncReceiver(receiver); connection.subscribeReceiver(asyncReceiver, ... );dann wird jeder empfangene Datensatz im Hintergrund verarbeitet.
Es ist zu beachten, dass die Klasse ein einzigen Thread verwendet, der asynchron zu den anderen Aktivitäten der Applikation und insbesondere asynchron zum update-Thread der Datenverteiler-Applikationsfunktionen arbeitet. Die in einer Queue zwischengespeicherten Datensätze werden sequentiell an die update-Methode des eigentlichen Empfängers weiterleitet.
-
Constructor Summary
Constructors Constructor Description AsyncReceiver(de.bsvrz.dav.daf.main.ClientReceiverInterface syncReceiver)
Erzeugt ein neues Empfängerobjekt mit asynchroner Weiterleitung empfangener Daten an das übergebene Empfängerobjekt. -
Method Summary
Modifier and Type Method Description void
update(de.bsvrz.dav.daf.main.ResultData[] results)
Aktualisierungsmethode, die nach Empfang eines angemeldeten Datensatzes von den Datenverteiler-Applikationsfunktionen aufgerufen wird.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
AsyncReceiver
public AsyncReceiver(de.bsvrz.dav.daf.main.ClientReceiverInterface syncReceiver)Erzeugt ein neues Empfängerobjekt mit asynchroner Weiterleitung empfangener Daten an das übergebene Empfängerobjekt.- Parameters:
syncReceiver
- Empfängerobjekt, an das empfangene Daten asynchron zur Verarbeitung weitergeleitet werden sollen.
-
-
Method Details
-
update
public void update(de.bsvrz.dav.daf.main.ResultData[] results)Aktualisierungsmethode, die nach Empfang eines angemeldeten Datensatzes von den Datenverteiler-Applikationsfunktionen aufgerufen wird.Empfangene Datensätze werden in eine Queue eingetragen und asynchron an das eigentliche Empfängerobjekt zur Verarbeitung weitergeleitet.
- Specified by:
update
in interfacede.bsvrz.dav.daf.main.ClientReceiverInterface
- Parameters:
results
- Feld mit den empfangenen Ergebnisdatensätzen.
-