Java Reference
In-Depth Information
5.3.3.1 Klassendiagramm
Eine Applikation hat keinen direkten Bezug zu ihren Plug-ins, sie kennt lediglich den
Plug-in-Manager. Mittels des Plug-in-Managers bekommt die Applikation Zugriff auf die
Instanzen der verfügbaren Plug-ins, ohne diese selbst zu instanziieren. Der Plug-in-
Manager nutzt dabei von der Anwendungssoftware angebotenen Schnittstellen. Hier
das Klassendiagramm einer Plug-in-Architektur:
«interface»
IPlug-in
«use»
Applikation
operation()
1
1
Plug-in-Manager
Plug-inA
operation()
Plug-inB
operation ()
Plug-inC
operation()
Bild 5-22 Klassendiagramm einer Plug-in-Architektur mit einem einzigen Interface
Der Plug-in-Manager ermittelt mit Hilfe der Laufzeitumgebung verfügbare Plug-ins für
eine Schnittstelle und instanziiert die passenden Objekte. In einer ersten Variante ruft
die Applikation die erzeugten Objekte vom Plug-in-Manager ab, aggregiert diese und
benutzt die Objekte im weiteren Programmablauf. Alternativ können die instanziierten
Objekte auch dauerhaft vom Plug-in-Manager aggregiert werden. Die Applikation leitet
dann die Aufrufe an den Plug-in Manager weiter, der diese dann auf den entsprechen-
den Objekten ausführt.
Plug-ins können - wie bereits erwähnt - ihrerseits durch weitere Plug-ins ergänzt wer-
den. In diesem Fall erhält ein Plug-in die Rolle des Clients und greift dann wieder über
den Plug-in-Manager auf die Instanzen der gewünschten Plug-ins zu.
5.3.3.2 Teilnehmer
Applikation
Eine Applikation repräsentiert diejenige Komponente, die zur Erweiterung ihrer Funk-
tionalität andere Komponenten nutzt. Sie stellt die Anwendung dar, die gestartet wird.
Plug-in-Manager
Ein Plug-in-Manager kennt alle verfügbaren Plug-ins anhand ihrer Schnittstellen, die
sie implementieren. Die Applikation fragt beim Plug-in-Manager nach Plug-ins eines
bestimmten Typs an.
IPlug-in
Das Interface IPlug-in spezifiziert in der Anwendung eine Schnittstelle als Stellver-
treter für alle konkreten Implementierungen einer Reihe von Plug-ins. Hat die Applika-
tion vom Plug-in-Manager das passende Plug-in erhalten, kann sie das Plug-in auf-
rufen.
Search WWH ::




Custom Search