/**
  * Import XML
  *
  * @param
  * @return
  */
 function importXmlRepresentation($a_entity, $a_id, $a_xml, $a_mapping)
 {
     include_once './Modules/File/classes/class.ilObjFile.php';
     // case i container
     if ($new_id = $a_mapping->getMapping('Services/Container', 'objs', $a_id)) {
         $newObj = ilObjectFactory::getInstanceByObjId($new_id, false);
     } else {
         $newObj = new ilObjFile();
         $newObj->create(true);
     }
     include_once "./Modules/File/classes/class.ilFileXMLParser.php";
     $parser = new ilFileXMLParser($newObj, $a_xml);
     $parser->setImportDirectory($this->getImportDirectory());
     $parser->startParsing();
     $newObj->createProperties(false, false);
     $parser->setFileContents();
     $this->current_obj = $newObj;
     $newObj->update();
     // this is necessary for case ii (e.g. wiki import)
     $a_mapping->addMapping("Modules/File", "file", $a_id, $newObj->getId());
     $a_mapping->addMapping("Services/MetaData", "md", $a_id . ":0:file", $newObj->getId() . ":0:file");
 }
 /**
  * copy files of file items
  */
 function copyFileItems()
 {
     $imp_dir = $this->content_object->getImportDirectory();
     foreach ($this->file_item_mapping as $origin_id => $file_id) {
         if (empty($origin_id)) {
             continue;
         }
         $obj_dir = $origin_id;
         $source_dir = $imp_dir . "/" . $this->subdir . "/objects/" . $obj_dir;
         include_once "./Modules/File/classes/class.ilObjFile.php";
         $file_obj = new ilObjFile($file_id, false);
         //$target_dir = ilUtil::getDataDir()."/files/file_".$file_id;
         $target_dir = $file_obj->getDirectory();
         if (@is_dir($source_dir)) {
             // make target directory
             ilUtil::makeDir($target_dir);
             //@mkdir($target_dir);
             //@chmod($target_dir, 0755);
             if (@is_dir($target_dir)) {
                 ilUtil::rCopy($source_dir, $target_dir);
             }
         }
         $test = $file_obj->determineFilesize();
         $file_obj->update();
     }
 }