Пример #1
0
 /**
  * Instantiates an Opus_Model from xml as delivered by the toXml() method.
  *
  * @param  DomDocument|string  $xml                The xml representing the model.
  * @param  Opus_Model_Xml      $customDeserializer (Optional) Specify a custom deserializer object.
  * @return Opus_Model_Abstract The Opus_Model derived from xml.
  */
 public static function fromXml($xml, Opus_Model_Xml $customDeserializer = null)
 {
     if (is_null($customDeserializer)) {
         $customDeserializer = new Opus_Model_Xml();
     }
     if ($xml instanceof DomDocument) {
         $customDeserializer->setDomDocument($xml);
     } else {
         if (is_string($xml)) {
             $customDeserializer->setXml($xml);
         } else {
             throw new Opus_Model_Exception('Either DomDocument or xml string must be passed.');
         }
     }
     return $customDeserializer->getModel();
 }