WebLogic Integration


com.bea.wlpi.server.plugin
Interface PluginManager

All Known Subinterfaces:
PluginManagerCfg

public interface PluginManager
extends javax.ejb.EJBObject

Manages WebLogic Process Integrator plug-ins. The plug-in manager provides design-time and run-time support to the design client and workflow enactment service. It is responsible for providing meta-data about the combined capabilities of all deployed plug-ins, access to plug-in supplied design-time and run-time components, and handling event notifications to and from plug-ins.

Since:
WebLogic Process Integrator version 2.0
Author:
Copyright © 2000, 2001 BEA Systems, Inc. All Rights Reserved.
See Also:
PluginManagerCfg

Method Summary
 void addInstanceListener(Plugin plugin, int mask)
          Register a specific plug-in as an InstanceNotification listener.
 void addTaskListener(Plugin plugin, int mask)
          Register a specific plug-in as a TaskNotification listener.
 void addTemplateDefinitionListener(Plugin plugin, int mask)
          Register a specific plug-in as a TemplateDefinitionNotification listener.
 void addTemplateListener(Plugin plugin, int mask)
          Register a specific plug-in as a TemplateNotification listener.
 java.lang.Class classForName(java.lang.String pluginName, java.lang.String className)
          Return a plug-in defined class.
 CategoryInfo[] getActionInfo(java.util.Locale lc)
          Return a consolidated list of all actions and action categories.
 DoneInfo[] getDoneInfo(java.util.Locale lc)
          Return a list of plug-in defined done node types.
 EventHandlerInfo[] getEventHandlerInfo(java.util.Locale lc)
          Return a list of plug-in defined event handlers.
 EventInfo[] getEventInfo(java.util.Locale lc)
          Return a list of plug-in defined event node types.
 FieldInfo[] getFieldInfo(java.util.Locale lc)
          Return a list of plug-in defined field types.
 VersionInfo getFrameworkVersion()
          Return the Plug-in Framework version.
 FunctionInfo[] getFunctionInfo(java.util.Locale lc)
          Return a consolidated list of all evaluator functions.
 HelpSetInfo[] getHelpSetInfo(java.util.Locale lc)
          Return a list of plug-in defined help sets.
 InfoObject getInfoObject(java.lang.String pluginName, int type, int ID, java.util.Locale lc)
          Return a localized plug-in InfoObject by its ID.
 PluginInfo getPlugin(java.lang.String pluginName, java.util.Locale lc)
          Return localized basic information about a plug-in.
 ConfigurationData getPluginConfiguration(java.lang.String pluginName, VersionInfo version)
          Return a plug-in's configuration data.
 java.lang.Object getPluginObject(java.lang.String pluginName, int type, int ID, int key, java.util.Locale lc)
          Return a localized instance of a plug-in defined class.
 java.lang.Object getPluginObject(java.lang.String pluginName, int type, java.util.Locale lc)
          Return a plug-in supplied object.
 java.lang.Object getPluginObject(java.lang.String pluginName, java.lang.String className, java.util.Locale lc)
          Return a localized instance of a plug-in defined class.
 PluginInfo[] getPlugins(java.util.Locale lc)
          Return a list of installed plug-ins.
 StartInfo[] getStartInfo(java.util.Locale lc)
          Return a list of plug-in defined start node types.
 TemplateDefinitionPropertiesInfo[] getTemplateDefinitionInfo(java.util.Locale lc)
          Return a list of plug-in defined template definition property types.
 TemplatePropertiesInfo[] getTemplateInfo(java.util.Locale lc)
          Return a list of plug-in defined template property types.
 VariableTypeInfo[] getVariableTypeInfo(java.util.Locale lc)
          Return a list of plug-in defined variable types.
 boolean isLoaded(java.lang.String pluginName, VersionInfo version)
          Indicates whether the specified plug-in is loaded.
 void onEvent(EventData eventData)
          Process an event.
 void removeInstanceListener(Plugin plugin)
          Unregister a specific plug-in as an InstanceNotification listener.
 void removeTaskListener(Plugin plugin)
          Unregister a specific plug-in as a TaskNotification listener.
 void removeTemplateDefinitionListener(Plugin plugin)
          Unregister a specific plug-in as a TemplateDefinitionNotification listener.
 void removeTemplateListener(Plugin plugin)
          Unregister a specific plug-in as a TemplateNotification listener.
 
Methods inherited from interface javax.ejb.EJBObject
getEJBHome, getHandle, getPrimaryKey, isIdentical, remove
 

Method Detail

isLoaded

public boolean isLoaded(java.lang.String pluginName,
                        VersionInfo version)
                 throws java.rmi.RemoteException,
                        WorkflowException
Indicates whether the specified plug-in is loaded. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
version - The plug-in version required.
Returns:
true if the plug-in is loaded.

getPluginConfiguration

public ConfigurationData getPluginConfiguration(java.lang.String pluginName,
                                                VersionInfo version)
                                         throws java.rmi.RemoteException,
                                                WorkflowException
Return a plug-in's configuration data. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
version - The plug-in version required.
Returns:
The configuration for the specified plug-in.
See Also:
PluginManagerCfg.setPluginConfiguration(java.lang.String, com.bea.wlpi.common.VersionInfo, int, java.lang.String)

getFrameworkVersion

public VersionInfo getFrameworkVersion()
                                throws java.rmi.RemoteException
Return the Plug-in Framework version. The version number matches the version number of the product release in which the API was last modified. This method is idempotent.

Returns:
Framework version.

getPlugins

public PluginInfo[] getPlugins(java.util.Locale lc)
                        throws java.rmi.RemoteException,
                               WorkflowException
Return a list of installed plug-ins. This method is idempotent.

Parameters:
lc - Locale in which to localize display strings.
Returns:
The list of installed plug-ins.

getPlugin

public PluginInfo getPlugin(java.lang.String pluginName,
                            java.util.Locale lc)
                     throws java.rmi.RemoteException,
                            WorkflowException
Return localized basic information about a plug-in. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
lc - Locale in which to localize display strings.

getActionInfo

public CategoryInfo[] getActionInfo(java.util.Locale lc)
                             throws java.rmi.RemoteException,
                                    WorkflowException
Return a consolidated list of all actions and action categories. The list of actions and categories includes those predefined by WebLogic Process Integrator, together with those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A complete list of actions and categories.

getDoneInfo

public DoneInfo[] getDoneInfo(java.util.Locale lc)
                       throws java.rmi.RemoteException,
                              WorkflowException
Return a list of plug-in defined done node types. The list of done node types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of done node types.

getEventInfo

public EventInfo[] getEventInfo(java.util.Locale lc)
                         throws java.rmi.RemoteException,
                                WorkflowException
Return a list of plug-in defined event node types. The list of event node types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of event node types.

getEventHandlerInfo

public EventHandlerInfo[] getEventHandlerInfo(java.util.Locale lc)
                                       throws java.rmi.RemoteException,
                                              WorkflowException
Return a list of plug-in defined event handlers. The list of event handlers includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of event handlers.

getFieldInfo

public FieldInfo[] getFieldInfo(java.util.Locale lc)
                         throws java.rmi.RemoteException,
                                WorkflowException
Return a list of plug-in defined field types. The list of field types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of field types.

getFunctionInfo

public FunctionInfo[] getFunctionInfo(java.util.Locale lc)
                               throws java.rmi.RemoteException,
                                      WorkflowException
Return a consolidated list of all evaluator functions. The list of functions includes those predefined by WebLogic Process Integrator, together with those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of functions.

getHelpSetInfo

public HelpSetInfo[] getHelpSetInfo(java.util.Locale lc)
                             throws java.rmi.RemoteException,
                                    WorkflowException
Return a list of plug-in defined help sets. The list includes help set information provided by all loadable plug-ins, regardless of whether or not they are loaded. This method is idempotent.

Parameters:
lc - The locale in which to localize the help sets.
Returns:
A list of help sets.

getStartInfo

public StartInfo[] getStartInfo(java.util.Locale lc)
                         throws java.rmi.RemoteException,
                                WorkflowException
Return a list of plug-in defined start node types. The list of start node types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of start node types.

getTemplateInfo

public TemplatePropertiesInfo[] getTemplateInfo(java.util.Locale lc)
                                         throws java.rmi.RemoteException,
                                                WorkflowException
Return a list of plug-in defined template property types. The list of property types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of template property types.

getTemplateDefinitionInfo

public TemplateDefinitionPropertiesInfo[] getTemplateDefinitionInfo(java.util.Locale lc)
                                                             throws java.rmi.RemoteException,
                                                                    WorkflowException
Return a list of plug-in defined template definition property types. The list of property types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of template definition property types.

getVariableTypeInfo

public VariableTypeInfo[] getVariableTypeInfo(java.util.Locale lc)
                                       throws java.rmi.RemoteException,
                                              WorkflowException
Return a list of plug-in defined variable types. The list of variable types includes only those provided by loaded plug-ins. This method is idempotent.

Parameters:
lc - The locale in which to localize display strings.
Returns:
A list of variable types.

getInfoObject

public InfoObject getInfoObject(java.lang.String pluginName,
                                int type,
                                int ID,
                                java.util.Locale lc)
                         throws java.rmi.RemoteException,
                                WorkflowException
Return a localized plug-in InfoObject by its ID. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
type - The type of info object to retrieve: PluginConstants.TYPE_ACTION_INFO, PluginConstants.TYPE_TEMPLATE_PROPERTIES_INFO, PluginConstants.TYPE_TEMPLATE_DEFINITION_PROPERTIES_INFO, PluginConstants.TYPE_START_INFO, PluginConstants.TYPE_DONE_INFO, PluginConstants.TYPE_EVENT_INFO, PluginConstants.TYPE_EVENT_HANDLER_INFO, PluginConstants.TYPE_FIELD_INFO, PluginConstants.TYPE_FUNCTION_INFO or PluginConstants.TYPE_VARIABLE_TYPE_INFO.
ID - The plug-in supplied ID for the required info object.
lc - The locale in which to localize display strings.
Returns:
The specified info object.

classForName

public java.lang.Class classForName(java.lang.String pluginName,
                                    java.lang.String className)
                             throws java.rmi.RemoteException,
                                    java.lang.ClassNotFoundException,
                                    WorkflowException
Return a plug-in defined class. Used by the server when instantiating plug-in provided classes that do not require localization. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
className - The fully qualified Java class name of the plug-in defined object to return.
Returns:
The plug-in defined class.
Throws:
java.lang.ClassNotFoundException - if the specified class could not be loaded.
See Also:
getPluginObject(String, String, Locale), getPluginObject(String, int, int, int, Locale)

getPluginObject

public java.lang.Object getPluginObject(java.lang.String pluginName,
                                        java.lang.String className,
                                        java.util.Locale lc)
                                 throws java.rmi.RemoteException,
                                        java.lang.ClassNotFoundException,
                                        WorkflowException
Return a localized instance of a plug-in defined class. Used by both server and client to instantiate plug-in provided classes. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
className - The fully qualified Java class name of the plug-in defined object to return.
lc - The locale in which to localize display strings.
Returns:
An instance of the specified class.
Throws:
java.lang.ClassNotFoundException - if the specified class could not be loaded.
See Also:
classForName(java.lang.String, java.lang.String), getPluginObject(String, int, int, int, Locale)

getPluginObject

public java.lang.Object getPluginObject(java.lang.String pluginName,
                                        int type,
                                        java.util.Locale lc)
                                 throws java.rmi.RemoteException,
                                        WorkflowException
Return a plug-in supplied object. This method is only applicable for retrieval of those plug-in supplied objects which do not have a corresponding XxxInfo object. Examples include the Help Set. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
type - The type of object to retrieve: PluginConstants.TYPE_HELP_SET_INFO.
lc - The locale in which to localize the object.
Returns:
The specified object.
Throws:
PluginException - if the specified object could not be located.

getPluginObject

public java.lang.Object getPluginObject(java.lang.String pluginName,
                                        int type,
                                        int ID,
                                        int key,
                                        java.util.Locale lc)
                                 throws java.rmi.RemoteException,
                                        java.lang.ClassNotFoundException,
                                        WorkflowException
Return a localized instance of a plug-in defined class. Used by both server and client to instantiate plug-in provided classes. This method is idempotent.

Parameters:
pluginName - The reverse-DNS plug-in name.
type - The type of info object to retrieve: PluginConstants.TYPE_ACTION_INFO, PluginConstants.TYPE_CONFIGURATION_INFO, PluginConstants.TYPE_TEMPLATE_PROPERTIES_INFO, PluginConstants.TYPE_TEMPLATE_DEFINITION_PROPERTIES_INFO, PluginConstants.TYPE_START_INFO, PluginConstants.TYPE_DONE_INFO, PluginConstants.TYPE_EVENT_INFO, PluginConstants.TYPE_EVENT_HANDLER_INFO, PluginConstants.TYPE_FIELD_INFO, PluginConstants.TYPE_FUNCTION_INFO or PluginConstants.TYPE_VARIABLE_TYPE_INFO.
ID - The plug-in supplied ID for the required InfoObject.
key - A key value to indicate which plug-in supplied class to instantiate. Valid key values are declared in the corresponding InfoObject subclasses.
lc - The locale in which to localize display strings.
Returns:
An instance of the specified class.
Throws:
java.lang.ClassNotFoundException - if the specified class could not be loaded.
See Also:
classForName(java.lang.String, java.lang.String), getPluginObject(String, String, Locale)

onEvent

public void onEvent(EventData eventData)
             throws java.rmi.RemoteException,
                    WorkflowException
Process an event. plug-ins which do not use JMS to deliver asynchronous messages can deliver an event to WebLogic Integration by calling this method. This method is not idempotent.

Parameters:
eventData - The event datum, including optional addressing and processing information.

addTemplateListener

public void addTemplateListener(Plugin plugin,
                                int mask)
                         throws java.rmi.RemoteException
Register a specific plug-in as a TemplateNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to register.
mask - Notifications for which to register. The value is formed by performing a bitwise logical OR on any of the values: PluginConstants.TEMPLATE_CREATED, PluginConstants.TEMPLATE_UPDATED, PluginConstants.TEMPLATE_DELETED.
See Also:
PluginConstants.EVENT_NOTIFICATION_ALL

removeTemplateListener

public void removeTemplateListener(Plugin plugin)
                            throws java.rmi.RemoteException
Unregister a specific plug-in as a TemplateNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to unregister.

addTemplateDefinitionListener

public void addTemplateDefinitionListener(Plugin plugin,
                                          int mask)
                                   throws java.rmi.RemoteException
Register a specific plug-in as a TemplateDefinitionNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to register.
mask - Notifications for which to register. The value is formed by performing a bitwise logical OR on any of the values: PluginConstants.DEFINITION_CREATED, PluginConstants.DEFINITION_UPDATED, PluginConstants.DEFINITION_DELETED.
See Also:
PluginConstants.EVENT_NOTIFICATION_ALL

removeTemplateDefinitionListener

public void removeTemplateDefinitionListener(Plugin plugin)
                                      throws java.rmi.RemoteException
Unregister a specific plug-in as a TemplateDefinitionNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to unregister.

addInstanceListener

public void addInstanceListener(Plugin plugin,
                                int mask)
                         throws java.rmi.RemoteException
Register a specific plug-in as an InstanceNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to register.
mask - Notifications for which to register. The value is formed by performing a bitwise logical OR on any of the values: PluginConstants.INSTANCE_CREATED, PluginConstants.INSTANCE_COMPLETED, PluginConstants.INSTANCE_UPDATED, PluginConstants.INSTANCE_ABORTED, PluginConstants.INSTANCE_DELETED.
See Also:
PluginConstants.EVENT_NOTIFICATION_ALL

removeInstanceListener

public void removeInstanceListener(Plugin plugin)
                            throws java.rmi.RemoteException
Unregister a specific plug-in as an InstanceNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to unregister.

addTaskListener

public void addTaskListener(Plugin plugin,
                            int mask)
                     throws java.rmi.RemoteException
Register a specific plug-in as a TaskNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to register.
mask - Notifications for which to register. The value is formed by performing a bitwise logical OR on any of the values: PluginConstants.TASK_STARTED, PluginConstants.TASK_EXECUTED. PluginConstants.TASK_COMPLETED. PluginConstants.TASK_UNMARKED_DONE. PluginConstants.TASK_OVERDUE. PluginConstants.TASK_ASSIGNED. PluginConstants.TASK_UNASSIGNED.
See Also:
PluginConstants.EVENT_NOTIFICATION_ALL

removeTaskListener

public void removeTaskListener(Plugin plugin)
                        throws java.rmi.RemoteException
Unregister a specific plug-in as a TaskNotification listener. This method is idempotent.

Parameters:
plugin - The plug-in to register.

WebLogic Integration

WebLogic Integration (WLI)