ApiFormatXml Class Reference
[API]

Inherits ApiFormatBase.

List of all members.

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


Detailed Description

Definition at line 34 of file ApiFormatXml.php.


Constructor & Destructor Documentation

ApiFormatXml::__construct ( main,
format 
)

Constructor If $format ends with 'fm', pretty-print the output in HTML.

Parameters:
$main ApiMain
$format string Format name

Reimplemented from ApiFormatBase.

Definition at line 39 of file ApiFormatXml.php.


Member Function Documentation

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.

Returns:
array

Reimplemented from ApiBase.

Definition at line 157 of file ApiFormatXml.php.

ApiFormatXml::getDescription (  ) 

Returns the description string for this module.

Returns:
mixed string or array of strings

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.

Returns:
string

Reimplemented from ApiFormatBase.

Definition at line 43 of file ApiFormatXml.php.

ApiFormatXml::getNeedsRawData (  ) 

Whether this formatter needs raw data such as _element tags.

Returns:
bool

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.

Returns:
array

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

Returns:
string

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.


Member Data Documentation

ApiFormatXml::$mDoubleQuote = false [private]

Definition at line 37 of file ApiFormatXml.php.

ApiFormatXml::$mRootElemName = 'api' [private]

Definition at line 36 of file ApiFormatXml.php.


The documentation for this class was generated from the following file:

Generated on Sat Sep 5 02:08:30 2009 for MediaWiki by  doxygen 1.5.9