===== Aufbau der plugin.xml =====
Die Datei plugin.xml ist notwendiger Bestandteil eines jeden Jameica-Plugins. Sie wird auch Manifest genannt und enthält alle relevanten Meta-Informationen, die Jameica zum Initialisieren des Plugins benötigt. In ihr sind z.Bsp. die zu startenden Services sowie die Menupunkte und Navigationselemente definiert.
Der Aufbau dieser Datei ist stark an das Format der "plugin.xml" von Eclipse-Plugins angelehnt.
Unter [[http://www.willuhn.de/schema/jameica-plugin-1.0.xsd]] befindet eine [[http://de.wikipedia.org/wiki/XML-Schema|XML-Schema-Datei]], welche eine technische Beschreibung des XML-Formats liefert. Wird diese Schema-Datei wie im folgenden Beispiel mittels "xsi:noNamespaceSchemaLocation" referenziert, kann die Syntax der plugin.xml (abhängig vom verwendeten XML-Editor) sofort geprüft werden. Ggf. steht dann auch eine Text-Vervollständigung zur Verfügung.
Beispiel Hibiscus:
HBCI-Onlinebanking-Plugin für Jameica
http://www.willuhn.de/projects/hibiscus
GPL - http://www.gnu.org/copyleft/gpl.html
...
hibiscus\.jar
hbci_passport_.*\.jar
.*\.class
-
[...]
-
[...]
[...]
==== Die Sektionen im Einzelnen ====
=== Header ===
| name | Legt den Namen des Plugins fest. Dieser muss in Jameica eindeutig sein. Er sollte keine Leerzeichen enthalten |
| version | Versionsnummer bestehend aus Major- und Minor-Number. |
| class | "Plugin-Activator". Die hier angegebene Klasse muss von *de.willuhn.jameica.plugin.AbstractPlugin* abgeleitet sein. Bei der Initialisierung des Plugins wird eine Instanz erzeugt und die Methode *init()* bzw. ggg. *update()* oder *install()* aufgerufen |
| shared | Legt fest, ob die Klassen dieses Plugins auch für andere Plugins sichtbar sein sollen (Default=true). Wert kann auf "false" gesetzt werden, wenn das Plugin beispielsweise JAR-Bibliotheken mitbringt, welche mit anderen Plugins kollidieren. |
=== About ===
HBCI-Onlinebanking-Plugin für Jameica
http://www.willuhn.de/projects/hibiscus
GPL - http://www.gnu.org/copyleft/gpl.html
| description | Optionale Beschreibung des Plugins. Wird z.Bsp. unter Datei->Einstellungen->Installierte Plugins angezeigt |
| homepage | Homepage des Plugins/Herstellers |
| license | Bezeichnung der Lizenz des Plugins |
=== Dependencies ===
Der Pluginloader löst Abhängigkeiten zwischen Plugins selbst auf und lädt die Plugins in der gewünschten Reihenfolge. Existiert eine der Abhängigkeiten nicht oder kam es dort bei der Initialisierung zu einem Fehler, wird auch das betreffende Plugin nicht geladen um Folgefehler zu vermeiden.
...
| requires | Container für die Liste der Abhängigkeiten |
| jameica | Versionsnummer der benötigten Jameica-Version (optional) |
| import | Ein benötigtes Plugin |
| plugin | Name des benötigten Plugins. Das ist der Wert des Attributes *
hibiscus\.jar
hbci_passport_.*\.jar
.*\.class
| include | Regulärer Ausdruck für einen Dateinamen/Pfad. Alle dort gefundenen Klassen werden automatisch im Classfinder registriert und können anschliessend durchsucht werden |
=== Menu ===
Definiert die im Jameica-Menu (unterhalb des Menupunktes "Plugins") anzuzeigenden Elemente.
| menu | Container für die Menuelemente |
| item | Ein einzelnes Menuelement. Können beliebige verschachtelt werden, um Untermenus zu erzeugen |
| id | Eindeutige ID für diesen Menupunkt für eventuelle Erweiterung mittels [[develop::extensions|Extension-System]] |
| name | Bezeichnung des Menuelementes |
| action | Name der Java-Klasse, die beim Klick auf das Menuelement ausgelöst wird. Muss das Interface "*de.willuhn.jameica.gui.Action* implementieren |
| enabled | Legt fest, ob das Menuelement aktiv oder inaktiv (grau) sein soll. Default: true |
=== Navigation ===
Definiert die im Navigationsbaum (links in Jameica) anzuzeigenden Elemente. Der Aufbau ist analog zu *