next up previous contents index
Next: Instrumentierung ausgewählter JavaBeans Up: Implementierung der Architektur für Previous: Implementierung der Architektur für

Erweiterung des Entwicklungswerkzeuges Beanbox

 Die erforderlichen Erweiterungen der Beanbox beschränken sich auf das Einfügen von startTA- bzw. stopTA-Aufrufen in die generierten Adapterklasse n, also die Klassen, die die Verknüpfung zweier Beans realisieren, unmittelbar vor Aufruf einer Bean bzw. unmittelbar nach Rückkehr von einem Aufruf. Eine besondere Anpassung der Beanbox für die Integration instrumentierter Beans ist nicht erforderlich.


 
Abbildung: Erweiterung des Entwicklungswerzeugs Beanbox 
40#40

Die Generierung der Adapterklasse n erfolgt in der Beanbox in der Klasse HookupManager.java mittels Aufrufen der print-Methode, die den Javacode der Adapterklasse  erstellen. Somit konnte durch Einfügen weiterer Aufrufe von print die erforderliche Erweiterung auf einfache Art und Weise realisiert werden. Die eingefügten Anweisungen sind im in Abbildung [*] dargestellten Ausschnitt aus der Klasse HookupManager.java wiederum durch kräftigeren Druck hervorgehoben.

Unmittelbar bevor ein Methodenaufruf in die Adapterklasse  eingefügt wird, wird nun ein startTA-Aufruf eingefügt, der dem Meßobjekt den Start der Subtransaktion meldet. Der eigentliche Methodenaufruf erfolgt nun in einer try/catch-Umgebung, die eventuell auftretende Exceptions (bzw. Errors) der aufgerufenen Methode abfängt. Je nachdem, ob eine Exception auftritt oder nicht, wird nach Rückkehr aus der aufgerufenen Methode ein Aufruf von stopTA mit dem geeigneten Wert für status eingefügt. Trat eine Exception auf, so wird diese nach Übermittlung an das Meßobjekt erneut geworfen, um den ursprünglichen Programmablauf beizubehalten. Ein Beispiel für eine mit Hilfe dieser erweiterten Entwicklungsumgebung  generierten Adapterklasse  ist in Abbildung [*] dargestellt.

 
Abbildung: Von erweiterter Beanbox generierte Adapterklasse 
41#41


next up previous contents index
Next: Instrumentierung ausgewählter JavaBeans Up: Implementierung der Architektur für Previous: Implementierung der Architektur für
Copyright Munich Network Management Team