Exemplo n.º 1
0
 /**
  * Format object|array to valid XML.
  *
  * @param object|array|int|string|bool|float|null $data
  * @return string
  */
 public function render($data)
 {
     $formattedData = $this->_formatData($data, true);
     /** Wrap response in a single node. */
     $formattedData = array(self::XML_ROOT_NODE => $formattedData);
     $this->_xmlGenerator->setIndexedArrayItemName(self::DEFAULT_ENTITY_ITEM_NAME)->arrayToXml($formattedData);
     return $this->_xmlGenerator->getDom()->saveXML();
 }
Exemplo n.º 2
0
 /**
  * @param UiComponentInterface $view
  * @return string
  */
 protected function getDataXml(UiComponentInterface $view)
 {
     $result = ['configuration' => $view->getRenderContext()->getStorage()->getComponentsData($view->getName())->getData(), 'data' => []];
     foreach ($view->getRenderContext()->getStorage()->getData($view->getName()) as $key => $value) {
         if (is_object($value)) {
             if (method_exists($value, 'toXml')) {
                 $result['data'][$key] = $value->toXml();
             } else {
                 $result['data'][$key] = $this->objectToXml($value);
             }
         } else {
             $result['data'][$key] = $value;
         }
     }
     return $this->generator->arrayToXml($result);
 }