Das Dynamic Invocation Interface (DII)

Im Gegensatz zum Sun-RPC bzw. DCE-RPC, bei denen Typinformation über die Server-Schnittstelle zum Zeitpunkt der Kompilation als generierter C-Kode einfließt und es somit einem Client nicht mehr möglich ist, zur Laufzeit Typinformation aus dem generierten Kode abzuleiten, erlaubt das von der OMG spezifizierte DII, Typinformation zusammen mit den Parameterwerten des RPC zur Laufzeit zu übertragen. Als first-class-Objekte sind Typinformationen somit zur Laufzeit inspizierbar, eine Bindungen kann somit nicht zum Übersetzungszeitpunkt erfolgen, sondern erst später, beim Zugriff auf einen Dienst.
Grundsätzlich erlaubt das DII dem Anwendungsprogrammierer somit, dynamisch eine beliebige Parameterliste für einzelne entfernte Prozeduraufrufe zu erstellen sowie beliebige Resultatwerte nach der erfolgreichen Ausführung des RPCs entgegen zu nehmen.
Client-seitig setzt bei der COSM-Architektur der generische Client auf die Client-Schnittstelle des DII auf. Der Entwickler von COSM-Anwendungen ist somit nur mit der Server-seitigen Schnittstelle involviert:

1. Die Server-Programmierschnittstelle des Dynamic Invocation Interface (DII)

C++-Klassen im DII

DII-Klassenbaum

Ein exemplarischer COSM-Server: "$COSMDIR/doc/cosmsvc.C"

2. Die Client-Programmierschnittstelle des Dynamic Invocation Interface

Beispiel: Additions-Client und Additions-Server

3. Weiterführende Informationen: Ralphs Studienarbeit