com.ibm.ecm.extension

Class Plugin

  1. java.lang.Object
  2. extended bycom.ibm.ecm.extension.Plugin

  1. public abstract class Plugin
  2. extends java.lang.Object
Provides the main class of an IBM Content Navigator plug-in. The abstract methods provide the name and version of the plug-in, and identify the components such as actions, services, and scripts that are included in the plug-in. The name of the Plugin subclass is specified in the plug-in JAR file by using the following property in the manifest:
     Plugin-Class: pluginClassName
 
The location of the plug-in JAR file is specified in the IBM Content Navigator AppConfig.xml file. An administrator can edit this file by adding the plug-in to the IBM Content Navigator configuration by using the IBM Content Navigator administration tool.


Constructor Summary

Constructor and Description
Plugin()

Method Summary

Modifier and Type Method and Description
  1. void
applicationInit(javax.servlet.http.HttpServletRequest request,PluginServiceCallbacks callbacks)
Initializes this plug-in in the web client.
  1. PluginAction[]
getActions()
Provides a list of actions that this plug-in adds to the main toolbar of the web client.
  1. PluginAsyncTaskType[]
getAsyncTaskTypes()
Provides a list of asynchronous task types that are provided by this plug-in.
  1. java.lang.String
getConfigurationDijitClass()
Returns the name of a Dojo dijit class that provides a configuration interface widget for this plug-in.
  1. java.lang.String
getCopyright()
Provides the copyright license for this plug-in.
  1. java.lang.String
getCSSFileName()
Returns the name of a CSS file that contains styles for this plug-in.
  1. java.lang.String
getDebugCSSFileName()
Returns a debug version of the CSS file returned by getCSSFileName.
  1. java.lang.String
getDebugScript()
Returns the name of a debug version of the JavaScript file provided by getScript().
  1. java.lang.String
getDojoModule()
Returns the name of a Dojo module or widget that is contained in the resources for this plug-in.
  1. PluginFeature[]
getFeatures()
Specifies custom features that are provided by this plug-in.
  1. abstract
  2. java.lang.String
getId()
Provides an identifier for the plug-in.
  1. java.util.jar.JarFile
getJarFile()
Returns the JAR file that this plug-in is loaded from.
  1. PluginLayout[]
getLayouts()
Specifies one or more custom layouts that are provided by this plug-in.
  1. PluginMenu[]
getMenus()
Provides a list of menus defined by the plug-in.
  1. PluginMenuType[]
getMenuTypes()
Provides a list of new menu types defined by the plug-in.
  1. abstract
  2. java.lang.String
getName(java.util.Locale locale)
Provides a descriptive name for this plug-in.
  1. PluginODAuthenticationService
getODAuthenticationService()
Provides a custom service used for Content Manager OnDemand single sign-on (SSO).
  1. PluginOpenAction[]
getOpenActions()
Provides a list of open actions that this plug-in provides for supported items.
  1. PluginAPI[]
getPluginAPIs()
Provides a list of APIs defined by the plug-in.
  1. java.lang.String
getPluginClassFolderPath()
  1. java.lang.String[]
getPluginDependencies()
Provides a list of identifiers (the plug-in Ids) of all the plug-ins that this plug-in depends on.
  1. java.lang.String
getPluginMessageResourcesName()
Returns the base name of the plug-in message resources file.
Example: "com.ibm.ecm.extension.pluginName.nls.ServicesMessages"
  1. PluginRepositoryType[]
getRepositoryTypes()
Provides a list of repository types defined by the plug-in.
  1. PluginRequestFilter[]
getRequestFilters()
Provides a list of filters that are run before a requested service.
  1. PluginResponseFilter[]
getResponseFilters()
Provides a list of filters that are run after a requested service.
  1. java.lang.String
getScript()
Returns the name of a JavaScript file provided by this plug-in.
  1. PluginService[]
getServices()
Provides a list of services that are provided by this plug-in.
  1. abstract
  2. java.lang.String
getVersion()
Provides a version indicator for this plug-in.
  1. PluginViewerDef[]
getViewers()
Provides a list of viewers that are provided by this plug-in.
  1. boolean
isInitialized()
Returns a Boolean value that indicates whether this plug-in is loaded and initialized.
  1. void
setInitialized(boolean initialized)
Sets the plug-in initialized status for this plug-in.
  1. void
setJarFile(java.util.jar.JarFile jarFile)
For Internal Use Only.
  1. void
setPluginClassFolderPath(java.lang.String path)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail

Plugin

  1. public Plugin()

Method Detail

setPluginClassFolderPath

  1. public final void setPluginClassFolderPath( java.lang.String path)

getPluginClassFolderPath

  1. public final java.lang.String getPluginClassFolderPath( )

applicationInit

  1. public void applicationInit(javax.servlet.http.HttpServletRequest request,
  2. PluginServiceCallbacks callbacks)
  3. throws java.lang.Exception
Initializes this plug-in in the web client. A plug-in can perform initialization that would be shared for all users of the application in the method. This method differs from the constructor because this method is called only when the plug-in is used within the web application. This method is invoked when the application is initializing.
Throws:
java.lang.Exception

isInitialized

  1. public final boolean isInitialized( )
Returns a Boolean value that indicates whether this plug-in is loaded and initialized.
Returns:
A value of true if the plug-in is loaded and initialized.

setInitialized

  1. public final void setInitialized( boolean initialized)
Sets the plug-in initialized status for this plug-in. This method is invoked internally and should not be used by plug-in writers.
Parameters:
initialized - A Boolean value that indicates whether this plug-in is initialized.

getJarFile

  1. public final java.util.jar.JarFile getJarFile( )
Returns the JAR file that this plug-in is loaded from.
Returns:
An instance of a JarFile object for the JAR file that this plug-in is loaded from or null if the plug-in was loaded from the classpath.

setJarFile

  1. public final void setJarFile(java.util.jar.JarFile jarFile)
For Internal Use Only. Sets the JAR file that this plug-in was loaded from.
Parameters:
jarFile - The JAR file that this plug-in is loaded from.

getId

  1. public abstract java.lang.String getId( )
Provides an identifier for the plug-in.

Important: This identifier is used in path names and URLs so it must contain only alphanumeric characters.


getName

  1. public abstract java.lang.String getName( java.util.Locale locale)
Provides a descriptive name for this plug-in. The name identifies the plug-in in the IBM Content Navigator administration tool

getVersion

  1. public abstract java.lang.String getVersion( )
Provides a version indicator for this plug-in. The version information is displayed in the administration tool to help the administrator validate the version of the plug-in that is being used. The plug-in writer needs to update this indicator when redistributing a modified version of the plug-in.
Returns:
A String representation of the version indicator for the plug-in.

getCopyright

  1. public java.lang.String getCopyright( )
Provides the copyright license for this plug-in. The information is displayed in the About dialog Plugins tab. The license is provided by the plugin creator.
Returns:
A String representation of the license for the plug-in.
Since:
2.0.2

getScript

  1. public java.lang.String getScript( )
Returns the name of a JavaScript file provided by this plug-in. This file is downloaded to the web browser during the initialization of the web client, before login. A script can be used to perform customization that cannot be performed by other extension mechanisms, such as features or layouts. However, it is preferable to use these other extension mechanisms to provide more flexibility to the administrator when configuring desktops.

getDebugScript

  1. public java.lang.String getDebugScript( )
Returns the name of a debug version of the JavaScript file provided by getScript(). The default implementation invokes getScript().
Since:
2.0.2

getDojoModule

  1. public java.lang.String getDojoModule( )
Returns the name of a Dojo module or widget that is contained in the resources for this plug-in. IBM Content Navigator performs the necessary dojo.registerModulePath mapping to allow modules or widgets with mapped path names to be loaded by using the dojo.require method. A specified module can be the directory or package name for a set of Dojo modules or widgets.

getCSSFileName

  1. public java.lang.String getCSSFileName( )
Returns the name of a CSS file that contains styles for this plug-in. IBM Content Navigator generates the necessary style tag to pull in this file when IBM Content Navigator loads the plug-in.

getDebugCSSFileName

  1. public java.lang.String getDebugCSSFileName( )
Returns a debug version of the CSS file returned by getCSSFileName. The default implementation invokes getCSSFileName.
Returns:
Since:
2.0.2

getActions

  1. public PluginAction[] getActions( )
Provides a list of actions that this plug-in adds to the main toolbar of the web client.
Returns:
An array of PluginAction objects. The plug-in should return the same set of objects on every call.

getOpenActions

  1. public PluginOpenAction[] getOpenActions( )
Provides a list of open actions that this plug-in provides for supported items.
Returns:
An array of PluginOpenAction objects. The plug-in should return the same set of objects on every call.
Since:
2.0.2

getRequestFilters

  1. public PluginRequestFilter[] getRequestFilters( )
Provides a list of filters that are run before a requested service. This method can be used to modify the request or block the request.
Returns:
An array of PluginRequestFilter objects.

getResponseFilters

  1. public PluginResponseFilter[] getResponseFilters( )
Provides a list of filters that are run after a requested service. This list of filters can be used to modify the response that is returned.
Returns:
An array of PluginResponseFilter objects.

getServices

  1. public PluginService[] getServices( )
Provides a list of services that are provided by this plug-in. The services run on the web server, and can be called by the web browser logic component of the plug-in.
Returns:
An array of PluginService objects. The plug-in should return the same set of objects on every call. If there are no services defined by the plug-in, the call should return an empty array.

getAsyncTaskTypes

  1. public PluginAsyncTaskType[] getAsyncTaskTypes( )
Provides a list of asynchronous task types that are provided by this plug-in. These types of asynchronous tasks will be used to interact with the ECM Task Manager and the IBM Content Navigator task pane.
Returns:
An array of PluginAsyncTaskType objects. The plug-in should return the same set of objects on every call. If there are no asynchronous tasks defined by the plug-in, the call should return an empty array.

getODAuthenticationService

  1. public PluginODAuthenticationService getODAuthenticationService( )
Provides a custom service used for Content Manager OnDemand single sign-on (SSO). This is an optional service that will be called when SSO is enabled on a Content Manager OnDemand server. The result of the service will be the information passed through the Content Manager OnDemand Web Enablement Kit "passThru" API.
Returns:
A PluginODAuthenticationService object used as an authentication exit for Content Manager OnDemand single sign-on.
Since:
2.0.2

getConfigurationDijitClass

  1. public java.lang.String getConfigurationDijitClass( )
Returns the name of a Dojo dijit class that provides a configuration interface widget for this plug-in. The widget must extend the ecm.widget.admin.PluginConfigurationPane widget. An instance of the widget is created and displayed in the IBM Content Navigator administration tool for configuration that is specific to the plug-in.

Refer to the documentation on PluginConfigurationPane for more information on what is required for a plug-in configuration user interface.


getViewers

  1. public PluginViewerDef[] getViewers( )
Provides a list of viewers that are provided by this plug-in. The viewers become available in the viewer configuration area of the IBM Content Navigator administration tool. The viewers can be mapped to be used to view certain document types.

Note: Typically, a plug-in does not define multiple viewers. However, this method can be used to provide multiple configurations of the same viewer, such as a view-only version and an editing mode version of the same viewer.

Returns:
An array of PluginViewerDef objects describing the viewers provided by the plug-in.

getLayouts

  1. public PluginLayout[] getLayouts( )
Specifies one or more custom layouts that are provided by this plug-in. Custom layouts can display the features and other user interface components of IBM Content Navigator in a different arrangement. The IBM Content Navigator administration tool is used to select the layout to use for a desktop.
Returns:
An array of plug-in layout objects.

getFeatures

  1. public PluginFeature[] getFeatures( )
Specifies custom features that are provided by this plug-in. Features are the major user interface sections, which appear as icons on the left side of the user interface in the default layout. Examples of features include Search, Favorites, and Teamspaces.
Returns:
An array of custom plug-in feature objects.

getMenuTypes

  1. public PluginMenuType[] getMenuTypes( )
Provides a list of new menu types defined by the plug-in.
Returns:
An array of new menu type objects.

getMenus

  1. public PluginMenu[] getMenus()
Provides a list of menus defined by the plug-in.
Returns:
An array of plug-in menu objects.

getRepositoryTypes

  1. public PluginRepositoryType[] getRepositoryTypes( )
Provides a list of repository types defined by the plug-in.
Returns:
An array of plug-in repository type objects.
Since:
2.0.3

getPluginAPIs

  1. public PluginAPI[] getPluginAPIs( )
Provides a list of APIs defined by the plug-in.
Returns:
An array of plug-in API objects
Since:
2.0.3

getPluginDependencies

  1. public java.lang.String[] getPluginDependencies( )
Provides a list of identifiers (the plug-in Ids) of all the plug-ins that this plug-in depends on.
Returns:
An array of plug-in identifier strings.
Since:
2.0.3

getPluginMessageResourcesName

  1. public java.lang.String getPluginMessageResourcesName( )
Returns the base name of the plug-in message resources file.
Example: "com.ibm.ecm.extension.pluginName.nls.ServicesMessages"
Returns:
The base name of the plug-in message resources file.
Since:
2.0.3.3