Generates a XML type that deals with XML data modifications.
public createXmlType ( string $type, array $params = [] ) : Horde_Kolab_Format_Xml_Type | ||
$type | string | The value type. |
$params | array | Additional parameters. |
Результат | Horde_Kolab_Format_Xml_Type | The type. |
/** * Create a handler for the sub type of this attribute. * * @param string $type The sub type. * @param array $params Additional parameters. * * @return Horde_Kolab_Format_Xml_Type The sub type handler. */ protected function createSubType($type, $params) { if (isset($params['api-version'])) { $class = $type . '_V' . $params['api-version']; } else { $class = $type; } if (!isset(self::$_xml_types[$class])) { self::$_xml_types[$class] = $this->_factory->createXmlType($type, $params); } return self::$_xml_types[$class]; }
protected function getXmlType($type, $previous = null, $kolab_type = 'kolab', $version = '1.0') { $factory = new Horde_Kolab_Format_Factory(); $doc = new DOMDocument('1.0', 'UTF-8'); if ($previous !== null) { $doc->loadXML($previous); $helper = $factory->createXmlHelper($doc); $root_node = $helper->findNode('/' . $kolab_type); } else { $helper = $factory->createXmlHelper($doc); $root_node = $helper->createNewNode($doc, $kolab_type); $root_node->setAttribute('version', $version); } $type = $factory->createXmlType($type); return array($helper, $root_node, $type); }
/** * @expectedException Horde_Kolab_Format_Exception */ public function testTypeMissing() { $factory = new Horde_Kolab_Format_Factory(); $factory->createXmlType('Horde_Kolab_Format_Stub_Types_NOSUCH'); }
protected function getXmlType($type, $previous = null, $kolab_type = 'kolab', $version = '1.0') { $factory = new Horde_Kolab_Format_Factory(); $doc = new DOMDocument('1.0', 'UTF-8'); if ($previous !== null) { $doc->loadXML($previous); } $helper = $factory->createXmlHelper($doc); $type = $factory->createXmlType($type); return array($helper, $doc, $type); }
/** * Return the root handler. * * @param array $params Additional parameters. * * @return Horde_Kolab_Xml_Type_Root The root handler. */ private function _getRoot($params = array()) { return $this->_factory->createXmlType(self::TYPE_ROOT, $params); }