Class PlaceholderPlugin

  • All Implemented Interfaces:
    Plugin

    public class PlaceholderPlugin
    extends java.lang.Object
    implements Plugin
    Seit Version 2.3 (2012-03-21) unterstuetzt Jameica auch Plugins, die keinen eigenen Java-Code mitbringen sondern z.Bsp. nur Jars oder Javascripts. Im Manifest dieser Plugins kann das Attribut "class" des XML-Elements "plugin" dann einfach weggelassen werden. Da diese Plugins dennoch eine Klasse bereitstellen muessen, die Plugin implementiert, wird dieses PlaceholderPlugin verwendet. Es erzeugt via Reflection-Proxy dynamisch generierte Klassen, die dieses Interface implementieren.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static Plugin createInstance​(Manifest manifest)
      Erzeugt eine neue generische Platzhalter-Instanz, die von AbstractPlugin abgeleitet ist.
      Manifest getManifest()
      Liefert das Manifest des Plugins.
      PluginResources getResources()
      Liefert ein Objekt mit Resourcen, auf die das Plugin zugreifen kann.
      void init()
      Diese Funktion wird beim Start der Anwendung ausgefuehrt.
      void install()
      Diese Funktion wird beim Start der Anwendung aufgerufen, wenn das Plugin zum ersten mal gestartet wird.
      void shutDown()
      Diese Funktion wird beim Beenden der Anwendung ausgefuehrt.
      void uninstall​(boolean deleteUserData)
      Wird aufgerufen, wenn das Plugin ueber Datei->Einstellungen->Plugins deinstalliert wird.
      void update​(Version oldVersion)
      Diese Funktion wird beim Start der Anwendung genau dann aufgerufen, wenn das Plugin bereits erfolgreich installiert wurde, jedoch jetzt in einer anderen Version vorliegt als die vorherige.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • createInstance

        public static Plugin createInstance​(Manifest manifest)
        Erzeugt eine neue generische Platzhalter-Instanz, die von AbstractPlugin abgeleitet ist.
        Parameters:
        manifest - das Manifest des Platzhalter-Plugins.
        Returns:
        die neue Plugin-Instanz.
      • getResources

        public PluginResources getResources()
        Description copied from interface: Plugin
        Liefert ein Objekt mit Resourcen, auf die das Plugin zugreifen kann.
        Specified by:
        getResources in interface Plugin
        Returns:
        Resource-Pack.
      • getManifest

        public Manifest getManifest()
        Description copied from interface: Plugin
        Liefert das Manifest des Plugins.
        Specified by:
        getManifest in interface Plugin
        Returns:
        Manifest.
      • init

        public void init()
                  throws de.willuhn.util.ApplicationException
        Description copied from interface: Plugin
        Diese Funktion wird beim Start der Anwendung ausgefuehrt. Hier kann die Plugin- Implementierung also diverse Dinge durchfuehren, die es beim Start gern automatisch durchgefuehrt haben moechte. Nur wenn die Funktion fehlerfrei durchlaeuft, wird das Plugin aktiviert. Andernfalls wird der Text der geworfenen Exception dem Benutzer auf der Start-Seite von Jameica angezeigt. Von daher empfiehlt es sich, verstaendliche Formulierungen fuer ggf aufgetretene Fehler zu verwenden. Hinweis: Diese Funktion wird von Jameica vor dem Initialisieren der Services aufgerufen.
        Specified by:
        init in interface Plugin
        Throws:
        de.willuhn.util.ApplicationException - muss geworfen werden, wenn das Plugin nicht aktiviert werden soll.
      • install

        public void install()
                     throws de.willuhn.util.ApplicationException
        Description copied from interface: Plugin
        Diese Funktion wird beim Start der Anwendung aufgerufen, wenn das Plugin zum ersten mal gestartet wird. Die install() Funktion wird solange bei jedem Start aufgerufen, bis sie fehlerfrei durchlaeuft. Andernfalls wird der Text der geworfenen Exception dem Benutzer auf der Start-Seite von Jameica angezeigt. Von daher empfiehlt es sich, verstaendliche Formulierungen fuer ggf aufgetretene Fehler zu verwenden. Hinweis: Diese Funktion wird von Jameica vor dem Initialisieren der Services aufgerufen.
        Specified by:
        install in interface Plugin
        Throws:
        de.willuhn.util.ApplicationException - muss geworfen werden, wenn die Installation fehlschlug und das Plugin nicht aktiviert werden soll.
      • update

        public void update​(Version oldVersion)
                    throws de.willuhn.util.ApplicationException
        Description copied from interface: Plugin
        Diese Funktion wird beim Start der Anwendung genau dann aufgerufen, wenn das Plugin bereits erfolgreich installiert wurde, jedoch jetzt in einer anderen Version vorliegt als die vorherige. Sie wird solange bei jedem Start aufgerufen, bis sie fehlerfrei durchlaeuft. Andernfalls wird der Text der geworfenen Exception dem Benutzer auf der Start-Seite von Jameica angezeigt. Von daher empfiehlt es sich, verstaendliche Formulierungen fuer ggf aufgetretene Fehler zu verwenden. Hinweis: Diese Funktion wird von Jameica vor dem Initialisieren der Services aufgerufen.
        Specified by:
        update in interface Plugin
        Parameters:
        oldVersion - Version, die vorher installiert war.
        Throws:
        de.willuhn.util.ApplicationException - muss geworfen werden, wenn das Update fehlschlug und das Plugin nicht aktiviert werden soll.
      • shutDown

        public void shutDown()
        Description copied from interface: Plugin
        Diese Funktion wird beim Beenden der Anwendung ausgefuehrt.
        Specified by:
        shutDown in interface Plugin
      • uninstall

        public void uninstall​(boolean deleteUserData)
                       throws de.willuhn.util.ApplicationException
        Description copied from interface: Plugin
        Wird aufgerufen, wenn das Plugin ueber Datei->Einstellungen->Plugins deinstalliert wird. Hier kann das Plugin bei Bedarf eigene Aufraeum-Arbeiten durchfuehren. VOR dem Aufruf dieser Funktion wird "shutDown" aufgerufen. Falls dort also z.Bsp. Datenbankverbindungen geschlossen wurden, dann stehen diese hier nicht mehr zur Verfuegung.
        Specified by:
        uninstall in interface Plugin
        Parameters:
        deleteUserData - true, wenn der User bei der Deinstallation angegeben hat, dass auch die Benutzer-Daten des Plugins geloescht werden sollen.
        Throws:
        de.willuhn.util.ApplicationException - kann geworfen werden, um die Deinstallation abzubrechen.