next up previous contents
Next: Designzusammenfassung und Kommunikationsbeispiel Up: Design Previous: Kommunikationsmodell   Contents

Einbeziehen von sonstigen JAVA-Objekten in die Übertragung

Zu dem Problem, das MBeans komplexere Datentypen oder Objekte als die durch CORBA oder dem bisherigen Informationsmodell definierten Datentypen enthalten können, soll hier eine Vorgehensweise zur Lösung dieses Problems dargestellt werden.

Wenn ein Attribut oder ein Parameter bzw. Rückgabewert eines MBeans ein für CORBA unbekanntes JAVA-Objekt enthält, muss hier durch Bereitstellung der IDL für dieses Objekt die Übertragung ermöglicht werden, damit es auf der Gegenseite verarbeitet werden kann. Das bisherige Informationsmodell muss daher durch eine Beschreibung dieses Objektes ergänzt werden, damit es in CORBA IDL umgewandelt werden kann. Daraus können dann die zugehörigen CORBA-Elemente in den zugrundeliegenden Programmiersprachen generiert werden, wodurch das entsprechende Objekt mittels CORBA als allgemeines Objekt (CORBA-Datentyp Any) übertragen und auf der Gegenseite wieder interpretiert werden kann.

Ein Beispiel ist die Methode invoke der MBean-Server Schnittstelle, die ein Aufrufen einer MBean-Methode durch den MBean-Server erlaubt. Als Parameter verlangt invoke u.a. die MBean-Methodensignatur und die entsprechenden Parameterwerte, die als allgemeine Objekte übergeben werden müssen. Durch das Vorliegen der IDL und der dazugehörenden CORBA-Elemente eines in dem MBean vorkommenden JAVA-Objekt kann so das allgemeine Objekt in dem entsprechenden Parameterwert durch das aus auf der IDL beruhende Objekt belegt werden. Die Übertragung als allgemeines Objekt soll an dieser Stelle nicht behandelt werden, da dies Gegenstand des Kapitels Implementierung ist.

Als Zusammenfassung kann gesagt werden, dass bei einem Vorkommen von komplexen Datenobjekten in einem MBean die gleiche Prozedur für diese Objekte getätigt werden muss, wie es auch grundlegend für das oben entwickelte Informationsmodell notwendig war: Es muss zu einer IDL-Beschreibung zu diesem Objekt gefunden werden, entweder über das Informationsmodell (mit evtl. Einsatz des Reverse-Engineerings) oder durch das direkte Modellieren in CORBA IDL. Dabei muss bei komplexen Strukturen sogar eine Abstraktion von proprietären JAVA-Strukturen und damit ein Einsatz von zusätzlichen Umwandlungselementen in Erwägung gezogen werden, was aber seltener notwendig sein dürfte, da MBeans eine eher repräsentative und informative Funktion einnehmen und in den häufigsten Fällen mit den vorgegebenen Datentypen in ihren öffentlichen Attributen und Methoden auskommen.


next up previous contents
Next: Designzusammenfassung und Kommunikationsbeispiel Up: Design Previous: Kommunikationsmodell   Contents
root 2002-08-11