MediaWiki
REL1_19
|
API XML output formatter. More...
Public Member Functions | |
__construct ($main, $format) | |
Constructor If $format ends with 'fm', pretty-print the output in HTML. | |
addXslt () | |
execute () | |
Evaluates the parameters, performs the requested query, and sets up the result. | |
getAllowedParams () | |
Returns an array of allowed parameters (parameter name) => (default value) or (parameter name) => (array with PARAM_* constants as keys) Don't call this function directly: use getFinalParams() to allow hooks to modify parameters as needed. | |
getDescription () | |
Returns the description string for this module. | |
getMimeType () | |
Overriding class returns the mime type that should be sent to the client. | |
getNeedsRawData () | |
Whether this formatter needs raw data such as _element tags. | |
getParamDescription () | |
Returns an array of parameter descriptions. | |
getVersion () | |
Returns a string that identifies the version of the extending class. | |
setRootElement ($rootElemName) | |
Static Public Member Functions | |
static | recXmlPrint ($elemName, $elemValue, $indent, $doublequote=false) |
This method takes an array and converts it to XML. | |
Static Public Attributes | |
static | $namespace = 'http://www.mediawiki.org/xml/api/' |
Private Attributes | |
$mDoubleQuote = false | |
$mIncludeNamespace = false | |
$mRootElemName = 'api' | |
$mXslt = null |
API XML output formatter.
Definition at line 31 of file ApiFormatXml.php.
ApiFormatXml::__construct | ( | $ | main, |
$ | format | ||
) |
Constructor If $format ends with 'fm', pretty-print the output in HTML.
$main | ApiMain |
$format | string Format name |
Reimplemented from ApiFormatBase.
Reimplemented in ApiFormatXmlRsd.
Definition at line 39 of file ApiFormatXml.php.
Definition at line 190 of file ApiFormatXml.php.
References Title\newFromText(), ApiFormatBase\printText(), and ApiBase\setWarning().
Referenced by execute().
Evaluates the parameters, performs the requested query, and sets up the result.
Concrete implementations of ApiBase must override this method to provide whatever functionality their module offers. Implementations must not produce any output on their own and are not expected to handle any errors.
The execute() method will be invoked directly by ApiMain immediately before the result of the module is output. Aside from the constructor, implementations should assume that no other methods will be called externally on the module before the result is processed.
The result data should be stored in the ApiResult object available through getResult().
Reimplemented from ApiBase.
Definition at line 55 of file ApiFormatXml.php.
References addXslt(), ApiBase\extractRequestParams(), ApiFormatBase\getIsHtml(), ApiBase\getResultData(), and ApiFormatBase\printText().
Returns an array of allowed parameters (parameter name) => (default value) or (parameter name) => (array with PARAM_* constants as keys) Don't call this function directly: use getFinalParams() to allow hooks to modify parameters as needed.
Reimplemented from ApiBase.
Definition at line 207 of file ApiFormatXml.php.
Returns the description string for this module.
Reimplemented from ApiFormatBase.
Definition at line 223 of file ApiFormatXml.php.
Overriding class returns the mime type that should be sent to the client.
This method is not called if getIsHtml() returns true.
Reimplemented from ApiFormatBase.
Reimplemented in ApiFormatXmlRsd.
Definition at line 43 of file ApiFormatXml.php.
Whether this formatter needs raw data such as _element tags.
Reimplemented from ApiFormatBase.
Definition at line 47 of file ApiFormatXml.php.
Returns an array of parameter descriptions.
Don't call this functon directly: use getFinalParamDescription() to allow hooks to modify descriptions as needed.
Reimplemented from ApiBase.
Definition at line 215 of file ApiFormatXml.php.
Returns a string that identifies the version of the extending class.
Typically includes the class name, the svn revision, timestamp, and last author. Usually done with SVN's Id keyword
Reimplemented from ApiBase.
Reimplemented in ApiFormatXmlRsd.
Definition at line 227 of file ApiFormatXml.php.
static ApiFormatXml::recXmlPrint | ( | $ | elemName, |
$ | elemValue, | ||
$ | indent, | ||
$ | doublequote = false |
||
) | [static] |
This method takes an array and converts it to XML.
There are several noteworthy cases:
If array contains a key '_element', then the code assumes that ALL other keys are not important and replaces them with the value['_element']. Example: name='root', value = array( '_element'=>'page', 'x', 'y', 'z') creates <root> <page>x</page> <page>y</page> <page>z</page> </root>
If any of the array's element key is '*', then the code treats all other key->value pairs as attributes, and the value['*'] as the element's content. Example: name='root', value = array( '*'=>'text', 'lang'=>'en', 'id'=>10) creates <root lang="en" id="10">text</root>
If neither key is found, all keys become element names, and values become element content. The method is recursive, so the same rules apply to any sub-arrays.
$elemName | |
$elemValue | |
$indent | |
$doublequote | bool |
Definition at line 104 of file ApiFormatXml.php.
References Xml\closeElement(), ApiBase\dieDebug(), Xml\element(), and Sanitizer\encodeAttribute().
ApiFormatXml::setRootElement | ( | $ | rootElemName | ) |
Definition at line 51 of file ApiFormatXml.php.
Referenced by ApiFormatXmlRsd\__construct().
ApiFormatXml::$mDoubleQuote = false [private] |
Definition at line 35 of file ApiFormatXml.php.
ApiFormatXml::$mIncludeNamespace = false [private] |
Definition at line 36 of file ApiFormatXml.php.
ApiFormatXml::$mRootElemName = 'api' [private] |
Definition at line 33 of file ApiFormatXml.php.
ApiFormatXml::$mXslt = null [private] |
Definition at line 37 of file ApiFormatXml.php.
ApiFormatXml::$namespace = 'http://www.mediawiki.org/xml/api/' [static] |
Definition at line 34 of file ApiFormatXml.php.