Tot dusver zijn de verschillende extensies van de readme-tool behandeld. Nu komt de algemene definitie van de plugin van de readme-tool aan bod.
De plugin van de readme-tool wordt in het bestand MANIFEST.MF gedefinieerd.
Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Plugin.name Bundle-SymbolicName: org.eclipse.ui.examples.readmetool; singleton:=true Bundle-Version: 3.2.0.qualifier Bundle-ClassPath: readmetool.jar Bundle-Activator: org.eclipse.ui.examples.readmetool.ReadmePlugin Bundle-Vendor: %Plugin.providerName Bundle-Localization: plugin Require-Bundle: org.eclipse.ui, org.eclipse.core.resources, org.eclipse.core.runtime, org.eclipse.ui.views, org.eclipse.ui.ide, org.eclipse.jface.text, org.eclipse.text, org.eclipse.ui.workbench.texteditor, org.eclipse.ui.editorsEclipse-AutoStart: true Eclipse-AutoStart-comment: Use Eclipse-AutoStart instead of Eclipse-LazyStart because the readme example should run against 3.1 as well as 3.2.
De plugin-definitie bestaat uit de Bundle-Name, Bundle-SymbolicName (plugin-ID), Bundle-Version en Bundle-Vendor van de plugin. Deze parameters zijn al eerder ter sprake gekomen in de Hallo wereld-plugin. In de readme-tool wordt ook een gespecialiseerde pluginklasse gedefinieerd, ReadmePlugin.
De naam van het JAR-bestand wordt ook opgegeven. De bestandsnamen in Bundle-ClassPath zijn relatief ten opzichte van de plugindirectory. Daarom moet het JAR-bestand van de readme-tool zich direct in de plugindirectory bevinden.
Het element Require-Bundle duidt de dependency's van de readme-tool aan. De plugins voor de gebruikersinterface van de workbench en diverse core-, JFace- en tekstplugins zijn vereist.
De klasse ReadmePlugin vertegenwoordigt de plugin van de readme-tool en beheert de levenscyclus van de plugin. U hebt in het voorbeeld "Hallo, wereld" al gezien dat u geen pluginklasse hoeft op te geven. Deze taak wordt door het platform uitgevoerd. In dit geval moeten gegevens voor de gebruikersinterface worden geïnitialiseerd tijdens het starten van de plugin. De platformklasse AbstractUIPlugin biedt een structuur voor het beheren van gebruikersinterfaceresources en wordt uitgebreid door ReadmePlugin.
AbstractUIPlugin maakt gebruik van de generieke start- en stopmethoden voor het beheren van afbeeldingen en instellingen van dialoogvensters en het bijhouden van voorkeuren tijdens de levenscyclus van de plugin. Tijdens het werken met dialoogvensters en voorkeursinstellingen wordt ReadmePlugin nader uitgelegd.