| |
Oktober 2001 Abbildender Ada, v1.2: Beauftragende Bedienstete 4-21 4 Ende ExampleB.WeightedBinaryTree.Value_Impl; 4,8 Beauftragende Bedienstete Das Diagramm, das oben für Bedienstete dargestellt wird, wird Erbschaft-gegründet; Gegenstandimplementierungen werden angefordert, um von einer Basisschaltungkategorie, PortableServer.Servant zu übernehmen . In einige Fälle, insbesondere, wenn bereits eine Vermächtnisimplementierung das besteht der Entwickler möchte aufwickeln, diese Anforderung kann aufdringlich sein. Auch dieses Diagramm stützt nur Implementierungserbschaft vom erst-genannten Elternteil. Ada-Unterstützungen andere nützliche Implementierungsstrategien (zum Beispiel, Gebäude-blockieren Sie Annäherungen zu die Effekte der Mehrfacherbschaft erzielen) die gut mit "säubern eingeführt werden Schiefer.", Aus diesen Gründen ein zusätzliches Diagramm für Gegenstandimplementierungen, das Delegation ist gegründet wird definiert. Die Form des zusätzlichen Diagramms ist ein generisches Paket, das benutzt werden kann "aufzuwickeln" irgendeine Art mit der korrekten Syntax; das heißt, stützt sie Unterprogramme mit dem korrekten Unterschriften und Ergebnisse eine CORBA-Bedienstetart, die mit einem POA registriert werden kann. Implementierung kann das Erzeugung des Pakets unterdrücken, das mit diesem dazugehörig ist wechselndes Diagramm, es sei denn es vom Benutzer verlangt wird (zum Beispiel, durch einen Befehl Liniencompilerschalter). Wenn Sie verlangt werden, um dieses wechselnde Diagramm, zu erzeugen Erzeugung des Implementierungspakets ist wahlweise freigestellt. Wenn es verlangt wird, wird ein zusätzliches "Implementierungsdelegation" Paket erzeugt für jede zwanglose und lokale Schnittstelle. Das Implementierungsdelegationpaket seien Sie ein Kindpaket des Schnittstellenpakets mit Namensverlängerungs- Delegate . Das Implementierungsdelegationpaket ist mit dem folgenden formalen generisch Parameter: 1. Eine begrenzte private Art mit dem formalen Namen aufgewickelt . Dieses ist die Benutzerart zum Sein aufgewickelt. 2. Für jedes abgebildete Attribut accessor/setter und abgebildeter Betrieb von der Schnittstelle und alle seine Vorfahren (nicht einschließlich CORBA.Object ein generisches formales Unterprogrammparameter mit der gleichen Unterschrift wie die Unterprogramme bildete für ab Impl Pakete werden definiert. Der formale Unterprogrammparameter hat "ist Kasten" Form der Rückstellung. Das generische Paket definiert eine neue Art mit Namenß$+0 gegenstand abgeleitet (direkt) von PortableServer.Servant_Base . Fälle dieser Art können registriert werden mit einem POA zum Instandhalten der Remote- und lokalen Anträge. Diese Art, Gegenstand wird erklärt mit unbekannten discriminants. Eine Kategorie-breite Zugangsart, Object_Ptr seien Sie auch erklärt. Verursachen Funktion wird erklärt, die ein Object_Ptr erbringt von a allgemeiner Zugang zu einem Fall von aufgewickelt Art. Z.B. für das Pferd Schnittstelle beschrieben im gegenwärtigen Diagrammdokument, folgendes Implementierungsdelegationpaket wird erzeugt: |  |
|
| |
|
|