Factory-Dienstprogramme für Elemente
Kennung:
org.eclipse.ui.elementFactories
Beschreibung:
An diesem Erweiterungspunkt können Elementfactories zur Workbench hinzugefügt werden. Eine Elementfactory wird verwendet, um
Objekte IAdaptable erneut zu erstellen, die auch nach
einer Beendigung der Workbench bestehen bleiben.
Eine Elementfactory wird beispielsweise verwendet, damit die
Editoreingabe bestehen bleibt. Die Eingabe für einen Editor
muss
org.eclipse.ui.EditorInput implementieren.
Der Lebenszyklus eines Objekts IEditorInput in einem
Editor besteht aus mehreren Phasen.
-
Die erste Eingabe für einen Editor wird während der Erstellung des
Editors übergeben.
-
Bei der Beendigung wird der Workbenchstatus erfasst.
In diesem Prozess erstellt die Workbench für jeden Editor und dessen
Eingabe ein Erinnerungselement ("Memento"). Die Eingabe wird als zweiteiliges Erinnerungselement gespeichert, das
eine Factory-ID und alle Basiselementdaten enthält, die zum erneuten
Erstellen des Objekts beim Starten der Workbench benötigt werden. Weitere Informationen finden Sie in der
Dokumentation zu
org.eclipse.ui.IPersistableElement.
-
Beim Starten wird der Workbenchstatus gelesen, und die Editoren aus
der vorherigen Sitzung werden erneut erstellt.
In diesem Prozess erstellt die Workbench das Eingabeelement für jeden
geöffneten Editor erneut. Hierzu wird die Originalfactory-ID für das Eingabeelement zu einer
konkreten Factoryklasse zugeordnet, die in der Registrierung
definiert ist.
Falls eine Zuordnung vorliegt und die Factoryklasse gültig ist, wird
ein Exemplar der Factoryklasse erstellt. Anschließend fordert die Workbench von der Factory
die erneute Erstellung des Originalelements aus den übrigen
Basiselementdaten im Erinnerungselement an. Das resultierende Objekt IAdaptable wird per
Umsetzungsausdruck in ein Objekt
IEditorInput umgewandelt und an den neuen Editor
übergeben.
Konfigurationsbefehle:
<!ELEMENT extension (factory*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
- point - Vollständig qualifizierte ID des Zielerweiterungspunktes
- id - Optionale ID des Erweiterungsexemplars
- name - Optionaler Name des Erweiterungsexemplars
<!ELEMENT factory EMPTY>
<!ATTLIST factory
id CDATA #REQUIRED
class CDATA #REQUIRED>
- id - Ein eindeutiger Name, der dieses
Factory-Dienstprogramm kennzeichnet.
- class - Der vollständig qualifizierte Name einer Klasse,
die org.eclipse.ui.IElementFactory implementiert.
Beispiele:
Das folgende Beispiel ist eine Erweiterung für ein
Factory-Dienstprogramm für Elemente:
<extension
point =
"org.eclipse.ui.elementFactories"
>
<factory
id =
"com.xyz.ElementFactory"
class=
"com.xyz.ElementFactory"
>
</factory>
</extension>
API-Information:
Der Wert des Attributs class muss
der vollständig qualifizierte Name einer Klasse sein, die org.eclipse.ui.IElementFactory implementiert. Ein Exemplar dieser Klasse muss aus einem Workbench-Memento ein Objekt
IAdaptable erstellen.
Bereitgestellte Implementierung:
Die Workbench
stellt eine Factory für IResource zur Verfügung.
Zusätzliche Factories sollten hinzugefügt werden, um andere Typen von IAdaptable, die häufig in anderen Objektmodellen
(z. B. dem Java-Modell) verwendet werden, erneut zu erstellen.
Copyright (c) 2002, 2004 IBM Corporation and others.
Alle Rechte vorbehalten. Dieses Programm und sein Begleitmaterial werden gemäß den Bedingungen der "Eclipse Public License v1.0" zur Verfügung gestellt, die dieser Lieferung beiliegt und unter
http://www.eclipse.org/legal/epl-v10.html abgerufen werden kann.