Jusque là, nous avons considéré les différentes extensions fournies par l'outil readme. Observons à présent la définition générale du plug-in de l'outil readme.
Le plug-in de l'outil readme est défini dans la partie supérieure du fichier plugin.xml.
<plugin
name = "Readme File Editing Tool"
id = "org.eclipse.ui.examples.readmetool"
version = "0.9"
provider-name = "Object Technology International, Inc."
class="org.eclipse.ui.examples.readmetool.ReadmePlugin">
<requires>
<import plugin="org.eclipse.ui"/>
<import plugin="org.eclipse.core.resources"/>
</requires>
<runtime>
<library name="readmetool.jar"/>
</runtime>
La définition du plug-in inclut le nom, l'id, la version et le nom du fournisseur du plug-in. Nous avons déjà vu ces paramètres dans le plug-in d'Hello World. L'outil readme définit également une classe de plug-in spécialisée : ReadmePlugin.
Les plugs-ins des ressources et de l'interface utilisateur du plan de travail figurent comme plug-ins requis, de telle sorte que la plateforme sache que l'outil readme est dépendant d'eux.
Finalement, le nom du fichier jar est fourni. Les noms de fichier spécifiés dans un fichier plugin.xml sont relatifs au répertoire du plug-in.
La classe ReadmePlugin représente le plug-in de l'outil readme et gère le cycle de vie du plug-in. Comme nous l'avons vu dans l'exemple Hello World, il ne vous est pas nécessaire de spécifier une classe de plug-in. La plateforme en fournit une pour vous. Dans ce cas, notre plug-in doit initialiser les données associées à l'interface utilisateur lorsqu'il démarre. La classe de la plateforme AbstractUIPlugin fournit une structure pour la gestion des ressources de l'interface utilisateur et est étendue par ReadmePlugin.
AbstractUIPlugin utilise les méthodes génériques de démarrage et d'arrêt pour gérer les images, les paramètres des boîtes de dialogue et un magasin de préférences tout au long de la durée de vie du plug-in. Nous aborderons les spécificités de la classe ReadmePlugin lorsque nous travaillerons avec les boîtes de dialogue et les préférences.