/** * Read trees from ecs * * @throws ilECSConnectorException */ public function read() { $GLOBALS['ilLog']->write(__METHOD__ . ': Begin read'); try { include_once './Services/WebServices/ECS/classes/Tree/class.ilECSDirectoryTreeConnector.php'; $dir_reader = new ilECSDirectoryTreeConnector(ilECSSetting::getInstanceByServerId($this->server_id)); $trees = $dir_reader->getDirectoryTrees(); $GLOBALS['ilLog']->write(__METHOD__ . ' ' . print_r($trees, true)); if ($trees instanceof ilECSUriList) { foreach ((array) $trees->getLinkIds() as $tree_id) { include_once './Services/WebServices/ECS/classes/Tree/class.ilECSCmsData.php'; include_once './Services/WebServices/ECS/classes/Tree/class.ilECSCmsTree.php'; if (!ilECSCmsData::treeExists($this->server_id, $this->mid, $tree_id)) { $result = $dir_reader->getDirectoryTree($tree_id); $this->storeTree($tree_id, $result->getResult()); } } } } catch (ilECSConnectorException $e) { throw $e; } }