next up previous contents index
Next: Architekturkonzept Up: Javabeans-basierte Anwendungen Previous: Java-Eventkonzept

Adapterkonzept

In der Beanbox dienen Adapter zu Verdrahtung von Javabeans.
Da Javabeans nur Sende- und Empfangsmethoden zur Verfügung stellen, aber keine Registrierung vornehmen, wird dies von der Supportsoftware der Beanbox durchgeführt.

Dynamisch zur Designzeit erfolgt (s. Abbildung [*])


 
Abbildung: Beans, Hooks und Events in der Beanbox 

Der HookupManager erstellt und übersetzt kleine Javaprogramme mit der folgenden Struktur:

// Automatically generated event hookup file.

package tmp.sunw.beanbox;
import java.awt.event.ActionListener;
import MediBean;
import java.awt.event.ActionEvent;

public class ___Hookup_16c0e0beb7 implements java.awt.event.ActionListener,
                                 java.io.Serializable {

    public void setTarget(MediBean t) {
        target = t;
    }

    public void actionPerformed(java.awt.event.ActionEvent arg0) {
        target.mediAction(arg0);
    }

   private MessBean target;
}
Die erste Hookmethode setzt den Namen des Targets, der Zielbean, ein; die zweite Hookmethode ruft bei Eintreffen des ActionEvents die Zielmethode des targets auf.

Die Targetbean kann in der Zielmethode wieder einen ActionEvent feuern, sodass sich als Verbindung von mehreren Javabeans eine Eventkaskade ergibt.


 
Abbildung: Beans, Hooks und Applet 

Generell sendet die Source an alle in die Listener-Liste eingetragenen TargetBeans. In dieser Fopra wird nur der Fall behandelt, bei dem jeweils nur ein Target pro Source und Event eingetragen ist.

Der HookupManager der Beanbox generiert einen anwendungs- und targetspezifischen Hook, ein kleines Java-Programm mit zwei Methoden, in dem dem Event die gewünschte Target-Methode zugewiesen wird.

Die Supportsoftware der Beanbox generiert zunächst ein Supportobjekt, das die ausgewählten Javabeans und die erzeugten Hooks importiert und instantiiert. Hier erfolgt auch der Eintrag der Hooks in die Listenerlisten. Das Supportobjekt kann in der Beanbox getestet und schließlich als Applet abgespeichert werden ( siehe Abbildung [*]).


next up previous contents index
Next: Architekturkonzept Up: Javabeans-basierte Anwendungen Previous: Java-Eventkonzept
Copyright Munich Network Management Team