protected function _readLinks($uri, $source, $level)
 {
     $return_value = array();
     foreach (DOMDocument::loadHTML($source)->getElementsByTagName('a') as $a) {
         $a->getAttribute('href');
         if (!$a->hasAttribute('rel') || !preg_match('/nofollow/', $a->getAttribute('rel'))) {
             $href = $a->getAttribute('href');
             if (!preg_match('/^javascript/', $href)) {
                 $anchor_text = $a->textContent;
                 $href = __UrlHelper::resolveUrl($a->getAttribute('href'), 'http://' . $_SERVER['HTTP_HOST']);
                 $link = new __SiteMapLink();
                 $link->setLevel($level);
                 $link->setAnchorText('' . $anchor_text);
                 $link->setHref('' . $href);
                 $return_value[] = $link;
                 unset($link);
                 unset($a);
             }
         }
     }
     return $return_value;
 }
 public function addLink(__SiteMapLink &$link)
 {
     $link->setPage($this);
     $this->_links[] =& $link;
 }