Next: Das Interface Repository (IR)
Up: Mechanismen für den dynamischen
Previous: Mechanismen für den dynamischen
Der Naming Service soll hier nur kurz angesprochen werden, eine ausführlichere
Beschreibung findet sich in [ON96]. Bei ihm handelt es sich um einen
extern eingebundenen Dienst, der sogenannte
COSS-Naming, dessen Schnittstelle von der OMG durch die Definition in
IDL-Code festgesetzt wurde, dessen Implementierung jedoch wiederum den
ORB-Herstellern überlassen wurde.
Abbildung:
Die Funktion des Namensdienstes: Der Server meldet sich mittels bind() beim Naming Service an, der Client erhält via resolve() eine Referenz auf
den Server
|
In Analogie zu in Rechnernetzen verwendeten Namensdiensten wie etwa DNS oder
NIS nimmt der Naming Service eine eindeutige Abbildung von Namen auf Objekte
vor. Am hilfreichsten ist es wahrscheinlich, sich den NS als eine Art
hierarchisches Meta-Dateisystem vorzustellen, in dem die Objekte die Rolle der
Dateien in einem normalen Dateisystem übernehmen. Die Rolle der Verzeichnisse
besetzen dabei sogenannte NamingContexts, deren Einordnung in den
Namensraum durch die Methode
NamingContext::bind_context(in Name n, in NamingContext nc);
bewerkstelligt wird. Die Objektnamen selbst werden durch die Methode
NamingContext::bind(in Name n, in Object o);
erzeugt. Dabei stellt Name eine Sequenz aus Namenskomponenten dar, die
die hierarchische Benennung des Objektes realisiert (z.B. würde der
Objekt-Name ``/objects/finance/bankingobject'' in einer Variable vom
IDL-Datentyp Name, also in einer Sequence<NameComponent,3>
gespeichert, wobei die Zeichenketten der drei Komponenten die Werte
``objects'', ''finance'' und ``bankingobject'' enthielten). Die zentrale
Methode bei der Objektsuche in einem Namenskontext ist die Funktion
Object NamingContext::resolve(in Name n);
die auf eine Namensanfrage das zugehörige Objekt zurückgibt oder eine Exception
vom Typ NotFound, CannotProceed oder InvalidName zurückgibt.
Next: Das Interface Repository (IR)
Up: Mechanismen für den dynamischen
Previous: Mechanismen für den dynamischen
Tim Paehler
1998-05-12