/**
  * Synchronize tree
  * 
  * @return boolean
  */
 public function sync()
 {
     include_once './Services/WebServices/ECS/classes/Mapping/class.ilECSNodeMappingAssignments.php';
     $this->default_settings = ilECSNodeMappingAssignments::lookupSettings($this->getServer()->getServerId(), $this->mid, $this->tree_id, 0);
     // return if setting is false => no configuration done
     if (!$this->getDefaultSettings()) {
         $GLOBALS['ilLog']->write(__METHOD__ . ': No directory allocation settings. Aborting');
         return true;
     }
     // lookup obj id of root node
     include_once './Services/WebServices/ECS/classes/Tree/class.ilECSCmsData.php';
     $root_obj_id = ilECSCmsTree::lookupRootId($this->tree_id);
     $this->syncNode($root_obj_id, 0);
     // Tree structure is up to date, now check node movements
     $this->checkTreeUpdates($root_obj_id);
     return true;
 }