/usr/share/php/Horde/Xml/Wbxml/ContentHandler.php is in php-horde-xml-wbxml 2.0.1-6.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | <?php
/**
* From Binary XML Content Format Specification Version 1.3, 25 July 2001
* found at http://www.wapforum.org
*
* Copyright 2003-2012 Horde LLC (http://www.horde.org/)
*
* See the enclosed file COPYING for license information (LGPL). If you
* did not receive this file, see http://www.horde.org/licenses/lgpl21.
*
* @author Anthony Mills <amills@pyramid6.com>
* @package Xml_Wbxml
*/
class Horde_Xml_Wbxml_ContentHandler
{
protected $_currentUri;
protected $_output = '';
protected $_opaqueHandler;
/**
* Charset.
*/
protected $_charset = 'UTF-8';
/**
* WBXML Version.
* 1, 2, or 3 supported
*/
protected $_wbxmlVersion = 2;
public function __construct()
{
$this->_currentUri = new Horde_Xml_Wbxml_LifoQueue();
}
public function getCharsetStr()
{
return $this->_charset;
}
public function setCharset($cs)
{
$this->_charset = $cs;
}
public function getVersion()
{
return $this->_wbxmlVersion;
}
public function setVersion($v)
{
$this->_wbxmlVersion = 2;
}
public function getOutput()
{
return $this->_output;
}
public function getOutputSize()
{
return strlen($this->_output);
}
public function startElement($uri, $element, $attrs = array())
{
$this->_output .= '<' . $element;
$currentUri = $this->_currentUri->top();
if (((!$currentUri) || ($currentUri != $uri)) && $uri) {
$this->_output .= ' xmlns="' . $uri . '"';
}
$this->_currentUri->push($uri);
foreach ($attrs as $attr) {
$this->_output .= ' ' . $attr['attribute'] . '="' . $attr['value'] . '"';
}
$this->_output .= '>';
}
public function endElement($uri, $element)
{
$this->_output .= '</' . $element . '>';
$this->_currentUri->pop();
}
public function characters($str)
{
$this->_output .= htmlspecialchars($str);
}
public function opaque($o)
{
$this->_output .= $o;
}
public function setOpaqueHandler($opaqueHandler)
{
$this->_opaqueHandler = $opaqueHandler;
}
public function removeOpaqueHandler()
{
unset($this->_opaqueHandler);
}
public function createSubHandler()
{
$name = get_class($this); // clone current class
$sh = new $name();
$sh->setCharset($this->getCharsetStr());
$sh->setVersion($this->getVersion());
return $sh;
}
}
|