br.usp.iterador.plugin
Class PluginManager

java.lang.Object
  extended by br.usp.iterador.plugin.PluginManager

public class PluginManager
extends java.lang.Object

This is the guy who deals with all plugins.

Author:
Guilherme Silveira

Constructor Summary
PluginManager(Controller controller, MenuManager menuManager, ToolManager toolManager)
           
 
Method Summary
 Plugin activatePlugin(java.lang.Class<? extends Plugin> clazz, java.lang.Object data)
          Activates a specific plugin.
 void deactivateAll()
          Deactivates all plugins.
 void deactivatePlugin(java.lang.Class<? extends Plugin> clazz)
          Deactivates a plugin
 java.util.ArrayList<Plugin> getActivatedPlugins()
          Returns a list with all activated plugins
<T extends Plugin>
T
getActivePlugin(java.lang.Class<T> clazz)
          Gets an active plugin
 IterationListener getIterationListener(Application app, boolean paintPoints, IterationListener... extras)
          Returns the current iteration listener
 javax.swing.JMenu getMenu()
          Returns its menu.
 java.util.List<java.lang.Class<? extends Plugin>> getPluginClasses()
          Returns a list with all plugins.
 java.util.List<Tool> getTools()
          Returns all tools.
 boolean isActive(java.lang.Class<? extends Plugin> clazz)
           
 void registerPlugin(java.lang.Class<? extends Plugin> type)
          Registers a plugin.
 void reset()
          Reset its data.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PluginManager

public PluginManager(Controller controller,
                     MenuManager menuManager,
                     ToolManager toolManager)
Method Detail

registerPlugin

public void registerPlugin(java.lang.Class<? extends Plugin> type)
Registers a plugin.


activatePlugin

public Plugin activatePlugin(java.lang.Class<? extends Plugin> clazz,
                             java.lang.Object data)
                      throws PluginActivationException
Activates a specific plugin.

Throws:
PluginActivationException

getPluginClasses

public java.util.List<java.lang.Class<? extends Plugin>> getPluginClasses()
Returns a list with all plugins.


getActivatedPlugins

public java.util.ArrayList<Plugin> getActivatedPlugins()
Returns a list with all activated plugins

Returns:
Returns the activatedPlugins.

getMenu

public javax.swing.JMenu getMenu()
Returns its menu.


isActive

public boolean isActive(java.lang.Class<? extends Plugin> clazz)

deactivatePlugin

public void deactivatePlugin(java.lang.Class<? extends Plugin> clazz)
Deactivates a plugin

Parameters:
clazz - class

getActivePlugin

public <T extends Plugin> T getActivePlugin(java.lang.Class<T> clazz)
Gets an active plugin

Type Parameters:
T - plugin type
Parameters:
clazz - plugin class
Returns:
plugin or null if not active

deactivateAll

public void deactivateAll()
Deactivates all plugins.


reset

public void reset()
           throws PluginActivationException
Reset its data.

Throws:
PluginActivationException

getTools

public java.util.List<Tool> getTools()
Returns all tools.

Returns:
tools

getIterationListener

public IterationListener getIterationListener(Application app,
                                              boolean paintPoints,
                                              IterationListener... extras)
Returns the current iteration listener

Returns:
the current iteration listener


Copyright 2004-2004-2006 IME - USP. All Rights Reserved.