Package jas.plugin

Defines the interfaces that other programs can use to "plug themselves in" to JAS.

See:
          Description

Interface Summary
BasicPluginContext A base class for both ExtensionPluginContext and PluginContext
ExtensionPluginContext The context passed to extension plugins
IExtensionPlugin Classes may implement this interface instead of extending ExtensionPlugin if they prefer
IPlugin Plugins may implement this class rather than extend Plugin if they prefer.
IPluginInfo Plugins should implement this interface so they can be automatically updated using the plugin manager
PageContext A PageContext allows a plugin to manipulate a page it has installed into the Java Analysis Application, as well as to receive events notifing the plugin of user initiated changes to the page,
PageListener  
PluginContext The context that will be passed to (Job) Plugins.
RunListener  
 

Class Summary
BasicPlugin A base class for both Plugin and ExtensionPlugin
ExtensionPlugin Support for Java Analysis Studio Extension Plugins The Plugin class is used to extend the functionality of Java Analysis Studio with experiment, group, or personal extensions.
PageEvent Page Events are delivered to PageListeners in response to user interaction with a page
Plugin Support for Java Analysis Studio Job Plugins The Plugin class is used to extend the functionality of Java Analysis Studio with experiment, group, or personal extensions.
RunEvent Run Events are delivered to RunListeners when the run state changes (i.e.
 

Exception Summary
NoEventAvailable Thrown if getCurrentEvent is called when no event is available
 

Package jas.plugin Description

Defines the interfaces that other programs can use to "plug themselves in" to JAS.

Currently we support two different types of plugins:

The first type of plugin normally extends class ExtensionPlugin, and the latter Plugin (should really be called JobPlugin, but for historical reasons just called Plugin). As an alternative to extending Plugin or ExtensionPlugin plugins can instead just implement IPlugin or IExtensionPlugin respectively.

Plugins communicate with the application they are embedded in using a PluginContext. This context is installed after the plugin's constructor is called but before the init() method is called, so most initialization should normally be done in the init method rather than the constructor.

Actions currently supported by both types of plugin include:

In addition ExtensionPlugins can install new Data Interface Modules (DIMS) and Job plugins can receive notification of changes in run state and get a copy of the current event.

Class Diagram