Extension:ClassProcessor

From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manual
Crystal Clear action run.png
ClassProcessor

Release status: beta

Author(s) Jean-Lou Dupont
Latest version 1.0.0
MediaWiki 1.11, 1.12
License No license specified
Download SVN
See SVN ($Id: ClassProcessor.doc.wikitext 979 2008-04-05 15:16:58Z jeanlou.dupont $)

Translate the ClassProcessor extension if it is available at translatewiki.net

Check usage and version matrix; code metrics

Purpose[edit | edit source]

Provides versatile PHP class autoloading.

Features[edit | edit source]

  • Flexible: multiple class locations
  • Secure: classes retrieved through the database must be in the Code namespace and be edit protected
  • Extensible: the static method add can be used to register additional autoloaders

Theory Of Operation[edit | edit source]

When a class is required (e.g. Extension:FlowProcessor) for processing, the following options are available:

  • do a require/include statement with the path to the class file
  • rely on PHP's autoloading feature

This extension taps itself on the latter on provides flexible class loading by searching (in priority):

  • The extra autoloaders registered through the extension's add static method
  • The PEAR directory under MediaWiki/Classes/$class.php
  • The MediaWiki installation extensions directory i.e. $IP/extensions/Classes/$class.php
  • The MediaWiki page database under the namespace Code i.e. Code:$class


Dependency[edit | edit source]

None.



Installation[edit | edit source]

See the Mediawiki Extension table entry "download" above.[1]

LocalSettings.php[edit | edit source]

Extension:ExtensionManager: See footnote[2]

require_once( "$IP/extensions/ClassProcessor/ClassProcessor.php" );
  • Since this Extensions is depending on StubManager, add the line after the StubManager include, or else your Wiki won't work.

PEAR[edit | edit source]

PEAR is a repository of PHP software code.

pear channel-discover mediawiki.googlecode.com/svn
  • Install extension through PEAR:
pear install mediawiki/ClassProcessor
  • Add the following to LocalSettings.php[2][3]:
require 'MediaWiki/ClassProcessor/ClassProcessor.php';
  • Note that the required version of PEAR must be respected. Currently, the minimum version of PEAR usable with this channel is v1.6.2. Perform the following command to upgrade to the latest version of PEAR:
pear upgrade pear

Upgrades through PEAR[edit | edit source]

Sometimes, it is necessary to clear PEAR's cache in order to perform upgrades.

pear clear-cache

or use the force method:

pear upgrade --force mediawiki/ClassProcessor

PEAR Web Frontend[edit | edit source]

For easier remote package management, PEAR Frontend WEB can be installed. Installation notes can be found here. An example of the WEB frontend is available here.

RSS feed[edit | edit source]

To keep up-to-date with this channel, use the following RSS feed__Rss2.jpg.

Notes[edit | edit source]

Other Extensions From the same author[edit | edit source]

Consult User Jldupont's page.


  1. The most recent release is always available through the extension's PEAR and SVN repositories. This page is not necessarily up-to-date.
  2. 2.0 2.1 2.2 Extension:ExtensionManager does not require any modification to LocalSettings.php because ExtensionManager includes the extension.
    Note that if PHP code caching is in place (e.g. APC, eAccelerator), then to successfully complete the installation a cache flush might be needed.
  3. Modifications to LocalSettings.php is only necessary if not using Extension:ExtensionManager

Usage[edit | edit source]

The extension is meant to be used in conjunction with Extension:FlowProcessor and others. By itself, it does not provide useful facilities to end-users.

History[edit | edit source]

Release Notes
1.0.0 Initial Release