Next: Designprinzipien
Up: Design des Informationsmodells
Previous: Grundlegende Schritte
Contents
Das Ziel des IIOP-Adapters ist das Portieren der MBean-Server Schnittstelle,
die in dem Interface javax.management.MBeanServer8.5 beschrieben ist. Das Interface enthält alle möglichen Methoden, die
auf dem MBean-Server sowie den dort registrierten MBeans ausgeführt
werden können. Somit muss dieses Interface mitsamt der in den Methodensignaturen
und als Rückgabewerte vorkommenden Klassen sowie die auftretenden
Ausnahmen in das Informationsmodell überführt werden. Die Beschreibung der
MBean-Server Schnittstelle ist in dem Interface MBeanServer als Bestandteil
der Java-API zu JMX (z.B. zu finden in der Reference Implementation
[JMX]) im Paket javax.management
mit den zugehörigen Datenstrukturen nachzuschlagen.
Durch das JAVA-Reverse-Engineering
des CASE-Werkzeuges Together konnten die oben aufgeführten objektorientierten
JAVA-Klassen in ein objektorientiertes UML-Klassendiagramm abgebildet
werden (Das endgültig fertige Diagramm ist in Anhang A zu finden).
Wegen der später beabsichtigten Überführung in CORBA IDL sind bedingt durch
Syntax und Semantik von IDL [OMG01, Kapitel 3] folgende
Modifikationen nötig:
- Das Überladen von Methoden gestattet CORBA IDL nicht, so dass
eine Umbenennung gleicher Methodennamen unumgänglich ist. Durch Hinzufügen
von ganzen Zahlen ist dies zu bewerkstelligen (z.B. createMBean1,
createMBean2 usw.).
- Zusätzlich sollen sämtliche Klassennamen ein Prefix ``JMX_''
enthalten, da sonst Überschneidungen mit Schlüsselbezeichnungen von
IDL auftreten. Im Fall von Attribute als grundlegende JMX-Klasse
wird dies deutlich, da Attribute in IDL das Schlüsselwort für Objekteigenschaften
ist. Außerdem kann so eine eindeutige Identifikation gegenüber den
ursprünglichen Klassen ermöglicht werden.
- Da nur öffentliche Attribute und Methoden von Belang für das Informationsmodell
sind (es kann nur auf diese zugegriffen werden), werden alle nichtöffentlichen
Elemente herausgenommen bzw. verdeckt.
- Die in JAVA übliche Vererbung von Ausnahmen ist in IDL nicht erlaubt,
so dass sämtliche Vererbungen zwischen Ausnahmen eliminiert werden
müssen und Ausnahmen zu eigenständigen Klassen werden. Dadurch fällt
auch die nur in der Vererbungshierarchie gebrauchte Klasse JMException
vollständig heraus.
- Ebenfalls sind in Ausnahmen Methoden verboten, wodurch eine Beschränkung
und Umwandlung von Methoden und JAVA-spezifischer Klassen in Stringattribute
gewählt ist. In Ausnahmen enthaltene JAVA-Ausnahmen können so als String
übertragen werden.
Als ein Beispiel kann die Methode ``createMBean(className:String, name: ObjectName):ObjectInstance''
genommen werden, die nach der Anpassung wie folgt definiert ist:
``createMBean1(className: String, name: JMX_ObjectName): JMX_ObjectInstance''
Next: Designprinzipien
Up: Design des Informationsmodells
Previous: Grundlegende Schritte
Contents
root
2002-08-11