Public Member Functions | |
__construct ($main, $format) | |
Constructor If $format ends with 'fm', pretty-print the output in HTML. | |
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. | |
setRootElement ($rootElemName) | |
execute () | |
Evaluates the parameters, performs the requested query, and sets up the result. | |
recXmlPrint ($elemName, $elemValue, $indent) | |
This method takes an array and converts it to XML. | |
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. | |
getParamDescription () | |
Returns an array of parameter descriptions. | |
getDescription () | |
Returns the description string for this module. | |
getVersion () | |
Returns a string that identifies the version of the extending class. | |
Private Member Functions | |
doubleQuote ($text) | |
Private Attributes | |
$mRootElemName = 'api' | |
$mDoubleQuote = false |
Definition at line 34 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.
Definition at line 39 of file ApiFormatXml.php.
ApiFormatXml::doubleQuote | ( | $ | text | ) | [private] |
Definition at line 153 of file ApiFormatXml.php.
References $text, and Sanitizer::encodeAttribute().
Referenced by recXmlPrint().
ApiFormatXml::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 ApiBase::extractRequestParams(), ApiFormatBase::getIsHtml(), ApiBase::getResultData(), ApiFormatBase::printText(), and recXmlPrint().
ApiFormatXml::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.
Reimplemented from ApiBase.
Definition at line 157 of file ApiFormatXml.php.
ApiFormatXml::getDescription | ( | ) |
Returns the description string for this module.
Reimplemented from ApiFormatBase.
Definition at line 170 of file ApiFormatXml.php.
ApiFormatXml::getMimeType | ( | ) |
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.
Definition at line 43 of file ApiFormatXml.php.
ApiFormatXml::getNeedsRawData | ( | ) |
Whether this formatter needs raw data such as _element tags.
Reimplemented from ApiFormatBase.
Definition at line 47 of file ApiFormatXml.php.
ApiFormatXml::getParamDescription | ( | ) |
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 163 of file ApiFormatXml.php.
ApiFormatXml::getVersion | ( | ) |
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.
Definition at line 174 of file ApiFormatXml.php.
ApiFormatXml::recXmlPrint | ( | $ | elemName, | |
$ | elemValue, | |||
$ | indent | |||
) |
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.
Definition at line 76 of file ApiFormatXml.php.
References Xml::closeElement(), ApiBase::dieDebug(), doubleQuote(), Xml::element(), and ApiFormatBase::printText().
Referenced by execute().
ApiFormatXml::setRootElement | ( | $ | rootElemName | ) |
Definition at line 51 of file ApiFormatXml.php.
ApiFormatXml::$mDoubleQuote = false [private] |
Definition at line 37 of file ApiFormatXml.php.
ApiFormatXml::$mRootElemName = 'api' [private] |
Definition at line 36 of file ApiFormatXml.php.