Class 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
        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 Detail

      • 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 Detail

      • 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.