Class AsyncReceiver

java.lang.Object
de.bsvrz.sys.funclib.asyncReceiver.AsyncReceiver
All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientReceiverInterface

public class AsyncReceiver extends 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
    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 interface de.bsvrz.dav.daf.main.ClientReceiverInterface
      Parameters:
      results - Feld mit den empfangenen Ergebnisdatensätzen.