Class SpoonPluginManager

java.lang.Object
org.pentaho.di.ui.spoon.SpoonPluginManager
All Implemented Interfaces:
org.pentaho.di.core.plugins.PluginTypeListener

public class SpoonPluginManager extends Object implements org.pentaho.di.core.plugins.PluginTypeListener
SpoonPluginManager is a singleton class which loads all SpoonPlugins from the SPOON_HOME/plugins/spoon directory.

Spoon Plugins are able to listen for SpoonLifeCycleEvents and can register categorized XUL Overlays to be retrieved later.

Spoon Plugins are deployed as directories under the SPOON_HOME/plugins/spoon directory. Each plugin must provide a build.xml as the root of it's directory and have any required jars under a "lib" directory.

The plugin.xml format is Spring-based e.g. <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">

Author:
nbaker
  • Method Details

    • pluginAdded

      public void pluginAdded(Object serviceObject)
      Specified by:
      pluginAdded in interface org.pentaho.di.core.plugins.PluginTypeListener
    • pluginRemoved

      public void pluginRemoved(Object serviceObject)
      Specified by:
      pluginRemoved in interface org.pentaho.di.core.plugins.PluginTypeListener
    • pluginChanged

      public void pluginChanged(Object serviceObject)
      Specified by:
      pluginChanged in interface org.pentaho.di.core.plugins.PluginTypeListener
    • getInstance

      public static SpoonPluginManager getInstance()
      Return the single instance of this class
      Returns:
      SpoonPerspectiveManager
    • applyPluginsForContainer

      public void applyPluginsForContainer(String category, org.pentaho.ui.xul.XulDomContainer container) throws org.pentaho.ui.xul.XulException
      Throws:
      org.pentaho.ui.xul.XulException
    • getPlugins

      public List<SpoonPluginInterface> getPlugins()
      Returns an unmodifiable list of all Spoon Plugins.
      Returns:
      list of plugins
    • notifyLifecycleListeners

      public void notifyLifecycleListeners(SpoonLifecycleListener.SpoonLifeCycleEvent evt)
      Notifies all registered SpoonLifecycleListeners of the given SpoonLifeCycleEvent.
      Parameters:
      evt - event to notify listeners about