You are here

public function AtomSource::render in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/zendframework/zend-feed/src/Writer/Renderer/Feed/AtomSource.php \Zend\Feed\Writer\Renderer\Feed\AtomSource::render()

Render Atom Feed Metadata (Source element)

Return value

\Zend\Feed\Writer\Renderer\Feed\Atom

File

vendor/zendframework/zend-feed/src/Writer/Renderer/Feed/AtomSource.php, line 36

Class

AtomSource

Namespace

Zend\Feed\Writer\Renderer\Feed

Code

public function render() {
  if (!$this->container
    ->getEncoding()) {
    $this->container
      ->setEncoding('UTF-8');
  }
  $this->dom = new DOMDocument('1.0', $this->container
    ->getEncoding());
  $this->dom->formatOutput = true;
  $root = $this->dom
    ->createElement('source');
  $this
    ->setRootElement($root);
  $this->dom
    ->appendChild($root);
  $this
    ->_setLanguage($this->dom, $root);
  $this
    ->_setBaseUrl($this->dom, $root);
  $this
    ->_setTitle($this->dom, $root);
  $this
    ->_setDescription($this->dom, $root);
  $this
    ->_setDateCreated($this->dom, $root);
  $this
    ->_setDateModified($this->dom, $root);
  $this
    ->_setGenerator($this->dom, $root);
  $this
    ->_setLink($this->dom, $root);
  $this
    ->_setFeedLinks($this->dom, $root);
  $this
    ->_setId($this->dom, $root);
  $this
    ->_setAuthors($this->dom, $root);
  $this
    ->_setCopyright($this->dom, $root);
  $this
    ->_setCategories($this->dom, $root);
  foreach ($this->extensions as $ext) {
    $ext
      ->setType($this
      ->getType());
    $ext
      ->setRootElement($this
      ->getRootElement());
    $ext
      ->setDOMDocument($this
      ->getDOMDocument(), $root);
    $ext
      ->render();
  }
  return $this;
}