gcspy.vis.plugins
Class PluginManager

java.lang.Object
  extended by gcspy.vis.plugins.PluginManager

public class PluginManager
extends java.lang.Object

This class manages pluggable views. A pluggable view must provide

  1. A short-form name
  2. A PluginListener class, nameListener
  3. A PluginFrame class

Author:
Richard Jones

Field Summary
(package private)  java.net.URLClassLoader pluginClassLoader
          A class loader for the plugins
 
Constructor Summary
PluginManager()
          Create the Plugin Manager and load all plugins We expect the plugin to be in a jar file plugins/plugin.jar.
 
Method Summary
 java.util.Set<java.lang.String> getAllPlugins()
          Get the names of all the plugins found
 java.util.List<PluginListener> getListeners()
          Get the listeners for all the plugins selected
 boolean isActivePlugin(java.lang.String p)
          Is a plugin selected
 void setActivePlugin(java.lang.String plugin, boolean selected)
          Set a plugin's active state
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pluginClassLoader

java.net.URLClassLoader pluginClassLoader
A class loader for the plugins

Constructor Detail

PluginManager

public PluginManager()
Create the Plugin Manager and load all plugins We expect the plugin to be in a jar file plugins/plugin.jar. We expect the plugin listener to be PluginListener.

Method Detail

getAllPlugins

public java.util.Set<java.lang.String> getAllPlugins()
Get the names of all the plugins found

Returns:
short-form names of all plugins

getListeners

public java.util.List<PluginListener> getListeners()
Get the listeners for all the plugins selected

Returns:
the PluginListeners for all selected plugins

isActivePlugin

public boolean isActivePlugin(java.lang.String p)
Is a plugin selected

Parameters:
p - the plugin's name
Returns:
true if the plugin is selected

setActivePlugin

public void setActivePlugin(java.lang.String plugin,
                            boolean selected)
Set a plugin's active state

Parameters:
plugin - The plugin's name
selected - true if it is to be selected