Java Reference
In-Depth Information
Plug-inX (X = A..Z)
Ein Plug-in erweitert die Applikation um Funktionalität. Dabei wird ein Plug-in vom
Plug-in-Manager instanziiert und genutzt.
5.3.3.3
Dynamisches Verhalten
Für die Implementierung von Plug-in-Architekturen gibt es bereits eine Vielzahl von
Frameworks, die die Mechanismen von Plug-in-Architekturen implementieren. Hierzu
zählen beispielsweise das Laden und Entladen der Plug-ins, sowie das Finden der
passenden Plug-ins zur Laufzeit unter Wahrung einer Versionsnummer. Das Spring
Framework oder die Eclipse Rich Client Plattform bieten u.a. auch Hilfsmittel für eine
Plug-in-Architektur in Java.
In der Regel werden die Plug-ins dabei von einem Plug-in-Manager verwaltet. Die Ap-
plikation definiert Schnittstellen zur Erweiterung beispielsweise in einer Datei. Unter
Verwendung einer Komponente der Laufzeitumgebung instanziiert und verwaltet der
Plug-in-Manager die (anhand der Datei gefundenen 85 ) Plug-ins. Das folgende Bild
zeigt das Sequenzdiagramm eines typischen Systems mit einer Plug-in-Architektur 86 :
:Applikation
:Plug-in-
Manager
ladeAllePlug-ins
(IPlug-in)
:Plug-inA
«Create»
«Create»
:Plug-inB
ladeAllePlug-ins
(IPlug-in)
gi b ListeVonPlug-ins()
gibListeVonPlug-ins()
gibListeVonPlug-ins() :
liste
operation()
op er ation()
operation()
operation() : ergebnis
operation() : ergebnis
operation()
operation()
ope r ation()
operation() : ergebnis
operation() : ergebnis
Bild 5-23 Sequenzdiagramm eines typischen Systems nach der Plug-in-Architektur
Die Applikation kann nun zur Laufzeit Plug-ins zu einer gewünschten Schnittstelle er-
halten, indem sie beim Plug-in-Manager nach einem geeigneten Objekt nachfragt.
85 Der Aufbau und Inhalt einer solchen Datei ist im Kapitel 5.3.7 gezeigt und beschrieben. Im dort ge-
zeigten Beispiel ist der Name der Datei Service.IWoerterbuch .
86 Die Datei der Plug-ins ist nicht dargestellt.
Search WWH ::




Custom Search