public function convert(DataObject $object) { if ($object->hasMethod('toFilteredMap')) { $data = $object->toFilteredMap(); } else { $data = $object->toMap(); } $converter = new ArrayToXml('item'); return $converter->convertArray($data); }
public function convert($set) { $items = array(); foreach ($set as $item) { if ($item instanceof Object && $item->hasMethod('toFilteredMap')) { $items[] = $item->toFilteredMap(); } else { if (method_exists($item, 'toMap')) { $items[] = $item->toMap(); } else { $items[] = $item; } } } $converter = new ArrayToXml('items'); return $converter->convertArray($items); }
/** * Preparing data and parsing result received * * @param array $data * @return void */ public function handle($data) { $this->_request = ArrayToXml::render($data); $this->_rawRequest = $this->_request; $xmlResponse = self::sendMessage($this->_request); if (!in_array($this->getConnection()->getHttpStatusCode(), array('200', '301', '302'))) { $this->_response = array('errors' => array('error' => array('code' => array('@data' => $this->getConnection()->getHttpStatusCode()), 'message' => array('@data' => $this->getConnection()->error)))); } else { try { $this->_response = XmlToArray::render($xmlResponse); } catch (Exception $e) { $this->_response = array('errors' => array('error' => array('code' => array('@data' => '0999'), 'message' => array('@data' => $e->getMessage())))); } } $this->_rawResponse = $xmlResponse; }
/** * send this message and get response * save all warnings - errors are only saved if no payment-url is send from pnag * * @return SofortLib_TransactionData $this */ public function sendRequest() { $requestData[$this->_xmlRootTag] = $this->_parameters; $requestData = $this->_prepareRootTag($requestData); $xmlRequest = ArrayToXml::render($requestData); $this->_log($xmlRequest, ' XmlRequest -> '); $xmlResponse = $this->_sendMessage($xmlRequest); try { $this->_response = XmlToArray::render($xmlResponse); } catch (Exception $e) { $this->_response = array('errors' => array('error' => array('code' => array('@data' => '0999'), 'message' => array('@data' => $e->getMessage())))); } $this->_log($xmlResponse, ' XmlResponse <- '); $this->_handleErrors(); $this->_parseXml(); return $this; }
public static function render(array $input, array $options = array()) { $options = array_merge(array('version' => '1.0', 'encoding' => 'UTF-8', 'trim' => true, 'depth' => 10), $options); $Instance = new ArrayToXml($input, $options['depth'], $options['trim']); return $Instance->toXml($options['version'], $options['encoding']); }
public function sendXml($data, $rootName = 'data') { $xml = new ArrayToXml($rootName); $this->data = $xml->toXml($data); $this->_sendResponse(true, 'application/xml'); }
public function testRender() { $ArrayToXml = new ArrayToXml(array(array(1))); $this->assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<test>1</test>", $ArrayToXml->render(array('test' => 1))); }
public function convert($array, $controller) { $converter = new ArrayToXml('items'); return $converter->convertArray($array); }