+

Search Tips   |   Advanced Search

Create a syndicator class

A syndicator plugin is used to run additional functionality on the syndicator when a syndication event is invoked. To create a syndicator plugin, create a syndicator class and then register the syndicator class by deploying it on the server.

  1. Create a java class that implements the interface...

    This class implement the following methods:

      public ResultDirective onSyndicatorStarted(SyndicatorEvent eventInfo)

      • This method contains the code that will be executed when the syndication run starts.
      • This method is executed after the plug-ins for the SubscriberReady extension point are run.
      • The extensions are executed only when there are changes on the syndicator.
      • The extension is not executed every time automatic syndication queues the syndicator.

    See the Javadoc documentation for further information. The Javadoc files for Web Content Manager are located in the PORTAL_HOME/doc/Javadoc/spi_docs/com/ibm/workplace/wcm directory.

  2. Implement the onSyndicatorStarted method.

    • This method contains the code that is run on the syndicator when there are changes available for syndication to the subscriber.

    • This method must return a com.ibm.workplace.wcm.api.extensions.syndication.ResultDirective object to indicate whether the syndication engine can continue or stop the syndication process.

  3. A plugin.xml file is needed whether the deployment is done using a WAR or EAR, or using a loose jar. If deploying via an application in a WAR or EAR, include the plugin.xml file in the application's "WEB-INF" folder. When using a jar, include the plugin.xml in the root of the jar.
    <?xml version="1.0" encoding="UTF-8"?>
    <plugin 
            name="Sample Syndicator Started Extension"
            version="1.0.0"
            provider-name="IBM">          <extension
         point="com.ibm.workplace.wcm.api.SyndicatorStarted"
          >
         <provider class="com.ibm.workplace.wcm.sample.syndicatorstarted.SyndicatorStartedExtension"/>
      </extension>  </plugin>


What to do next

  • The ID of each plugin must be unique.

  • Replace the plugin ID specified in this example, com.ibm.workplace.wcm.sample.syndicatorstarted, with a different ID for each SyndicatorStarted extension we create.

  • Each SyndicatorStarted extension is represented by a single <extension></extension> tag.

  • The value of the point attribute must be com.ibm.workplace.wcm.api.SyndicatorStarted.

  • Provide an id value of the choice.

  • Specify the provider class for the SyndicatorStarted extension.

Naming conventions:

If we create a new plugin application with the same names and IDs as an existing plugin, the new plugin may override the first. When creating plugin applications ensure the following are unique across the system:

  • The plugin ID, plugin name and extension ID of the plugin.xml file.

  • The fully qualified class name plus path of all classes within the application.

  • The file path of any files within the application.


Parent Create custom plug-ins