function __construct($link, SiteDocIndexItem $parent = null, SitePart $sitePart = null)
 {
     Assert::isScalar($link);
     $this->parent = $parent;
     if ($this->parent) {
         $this->parent->addChild($this);
     }
     $this->link = $link;
     $this->sitePart = !$sitePart && $parent ? $parent->getSitePart() : $sitePart;
 }
 function __construct($xmlDocPath, $link, SiteDocIndexItem $parent = null, $menuId = null)
 {
     Assert::isScalar($xmlDocPath);
     if (!file_exists($xmlDocPath)) {
         throw new ArgumentException('xmlDocPath', 'xml doc not found');
     }
     $this->xmlDocPath = $xmlDocPath;
     parent::__construct($link, $parent, $menuId);
 }
 function __construct()
 {
     parent::__construct('');
 }
 function __construct($name, $link, SiteDocIndexItem $parent = null, $menuId = null)
 {
     Assert::isScalar($name);
     $this->name = $name;
     parent::__construct($link, $parent, $menuId);
 }