Ressourcenmarkierungen

org.eclipse.core.resources.markers

Der Arbeitsbereich unterstützt das Konzept von Markierungen für willkürliche Ressourcen. Eine Markierung besteht aus bestimmten Metadaten (ähnlich wie Eigenschaften), über die Ressourcen mit Benutzerinformationen gekennzeichnet werden können. Markierungen können optional im Arbeitsbereich bestehen bleiben, wenn der Arbeitsbereich gespeichert oder eine Momentaufnahme erstellt wird.

Benutzer können Markierungen eines bestimmten Typs definieren und abfragen. Markierungstypen werden in einer Hierarchie definiert, die die Mehrfachübernahme unterstützt. Markierungstypdefinitionen müssen außerdem eine Reihe von Attributen angeben, die an einer Markierung vorhanden sein können oder müssen. Außerdem muss definiert sein, ob Markierungen eines jeweiligen Typs permanent gelten (d. h. bestehen bleiben) sollen.

Am Erweiterungspunkt für Markierungen können Markierungs-Writer ihre Markierungstypen unter einem symbolischen Namen registrieren, der dann im Arbeitsbereich verwendet wird, um Markierungen zu erstellen und abzufragen. Der symbolische Name ist die ID der Erweiterung für die Markierung. Beim Definieren einer Markierungserweiterung sollten Benutzer einen aussagekräftigen Wert für das Attribut "name" verwenden, das die Markierung kennzeichnet und möglicherweise auch für andere Benutzer angezeigt wird.

<!ELEMENT extension (super* , persistent? , attribute*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT super EMPTY>

<!ATTLIST super

type CDATA #REQUIRED>


<!ELEMENT persistent EMPTY>

<!ATTLIST persistent

value (true | false) >


<!ELEMENT attribute EMPTY>

<!ATTLIST attribute

name CDATA #REQUIRED>


Das folgende Beispiel stellt die Konfiguration einer Markierung dar:

   

<extension id=

"com.xyz.coolMarker"

point=

"org.eclipse.core.resources.markers"

name=

"Cool Marker"

>

<persistent value=

"true"

/>

<super type=

"org.eclipse.core.resources.problemmarker"

/>

<super type=

"org.eclipse.core.resources.textmarker"

/>

<attribute name=

"owner"

/>

</extension>

Alle Markierungen sind - ungeachtet ihres Typs - Exemplare von org.eclipse.core.resources.IMarker.

Die Plattform selbst enthält eine Reihe vordefinierter Markierungstypen. Spezielle Produktinstallationen können ggfs. zusätzliche Markierungen enthalten.