Preferences - Contributed Extensions / Tools

Select the Goto the ProvideX Builder preference page ProvideX > Contributed Extensions / Tools preference page.


ProvideX Contributed Extensions / Tools Preferences


Standard Options

The ProvideX plug-in includes a feature that allows developers to write their own tools or extensions that can be used to extend the features of the Plug-in.

Enable external observers
This option tells the ProvideX plug-in to load all observers for the registered extensions and contributed tools.
Directory for user-defined observers
This option is used to specify the directory where the contributed tools and extensions have been placed. If the directory does not contain a file with the name 'classes.txt' containing the registration information, no observers will be loaded.

All extensions and some contributed tools will listen for specific events from the Workbench and will execute only when these events occur. Many extensions add logic to the standard ProvideX build process and can be invoked before, after or before and after the standard build process. During the ProvideX Event Manager startup, an option will be added to this preference page for each registered extension or contributed tool.

Built-in Observers

The ProvideX plug-in includes several standard extensions and contributed tools.


Built-in ProvideX Contributed Extensions / Tools Preferences (Event Manager started)


Convert ProvideX keyed files to/from XML
This option is for a contributed tool that will also appear on the ProvideX | Contributed Tools menu and can be accessed from there. It has also registered itself as a builder extension and this option is used to enable that part of the contributed tool - this option will NOT affect the operation of the tool from the contributed tools menu option.
Substitute modification year of source file for 'Copyright-year' tag
This is an extension that will replace the text '%(Copyright-year)%' within the first 1000 characters of the source file with the current year.
Set modification time stamp of output file to be the same as source file
This is an extension that has registered itself as a post-process builder extension that will change the modification time stamp of the output file to match the time stamp of the source file.

Register User-Defined Observers

A developer can write an extension (or contributed tool) following the steps described later in this documentation and place the programs into a directory on each workstation. This directory must also contain a file with the name 'classes.txt' to identify the programs to be registered with the plug-in.


User defined classes.txt file


As this example shows, the format of each line is:
eventName=<NameOfClass>

where <NameOfClass> is replaced by the name of the class definition to be loaded.

Manage User-Defined Observers

Once the ProvideX Event Manager has been started, the observers that have registered themselves as pre/post process observers will appear on this preference page. The order of the observers on this preference page is not predictable.

User Defined ProvideX Contributed Extensions / Tools Preferences (Event Manager started)


Sage Style Check
This option is for a contributed tool that will also appear on the ProvideX | Contributed Tools menu and can be accessed from there. This tool has also registered itself as a builder extension and this option is used to enable that part of the contributed tool - this option will NOT affect the operation of the tool from the contributed tools menu option.
Show message in Console
This is an extension that has registered itself as a pre-process and post-process builder extension. This is a very simple extension; the source code can be reviewed to see how easily this can be accomplished. When this extension is enabled, a message will be sent to the console during the builder pre-process and a second message will be sent during the builder post-process.

Contributed tool console output