Extending the Plug-in

Enhancements Through Collaboration

The plug-in allows third party collaboration to enhance or extend its capabilities. This section will describe the various methods that can be used to accomplish this.

The ability to extend the ProvideX plug-in is based on the observer design pattern. Each new extension is registered and the class associated with the extension is initialized during startup of the plug-in. Once each class has been initialized, it can be queried to identify when it is to be invoked during the normal event cycle.

Each class has an update() method that is called when it is triggered. This method will then perform the task required to provide the additional functionality.

Enhancing Plug-in Functionality

The ProvideX plug-in can be enhanced using two different methods, or a combination of both.

Enhance Built-in Event Process

The first mechanism is to add functionality to the existing events that are supplied by the plug-in. These events allow two access points for the external logic to be executed. One is before the normal event logic and the second is after the event logic. A single enhancement can execute logic at either or both points in the event process.

Contributed Tools

The second mechanism is to add an external tool to the 'ProvideX' menu that will provide functionality outside of the plug-in event process. This external tool can manipulate the files within a ProvideX project in Eclipse.