Currently, the ExtensionProcessor processes the config array of the extension and just sets the value as a global. In this way, however, the metadata of the configs (description, public, ...) aren't available. This change exposes the configurations in the extracted data as the config key. Bug: T155908 Change-Id: Ie41e6ecb8d08a5b20b56eb2281af1dfdd808b2c4
54 lines
1.4 KiB
PHP
54 lines
1.4 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Processors read associated arrays and register
|
|
* whatever is required
|
|
*
|
|
* @since 1.25
|
|
*/
|
|
interface Processor {
|
|
|
|
/**
|
|
* Main entry point, processes the information
|
|
* provided.
|
|
* Callers should call "callback" after calling
|
|
* this function.
|
|
*
|
|
* @param string $path Absolute path of JSON file
|
|
* @param array $info
|
|
* @param int $version manifest_version for info
|
|
* @return array "credits" information to store
|
|
*/
|
|
public function extractInfo( $path, array $info, $version );
|
|
|
|
/**
|
|
* @return array With following keys:
|
|
* 'globals' - variables to be set to $GLOBALS
|
|
* 'defines' - constants to define
|
|
* 'config' - configuration information
|
|
* 'callbacks' - functions to be executed by the registry
|
|
* 'credits' - metadata to be stored by registry
|
|
* 'attributes' - registration info which isn't a global variable
|
|
*/
|
|
public function getExtractedInfo();
|
|
|
|
/**
|
|
* Get the requirements for the provided info
|
|
*
|
|
* @since 1.26
|
|
* @param array $info
|
|
* @return array Where keys are the name to have a constraint on,
|
|
* like 'MediaWiki'. Values are a constraint string like "1.26.1".
|
|
*/
|
|
public function getRequirements( array $info );
|
|
|
|
/**
|
|
* Get the path for additional autoloaders, e.g. the one of Composer.
|
|
*
|
|
* @param string $dir
|
|
* @param array $info
|
|
* @return array Containing the paths for autoloader file(s).
|
|
* @since 1.27
|
|
*/
|
|
public function getExtraAutoloaderPaths( $dir, array $info );
|
|
}
|