ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
class.ilFileImporter.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 include_once("./Services/Export/classes/class.ilXmlImporter.php");
5 
14 {
21  function importXmlRepresentation($a_entity, $a_id, $a_xml, $a_mapping)
22  {
23  include_once './Modules/File/classes/class.ilObjFile.php';
24 
25  // case i container
26  if($new_id = $a_mapping->getMapping('Services/Container','objs',$a_id))
27  {
28  $newObj = ilObjectFactory::getInstanceByObjId($new_id,false);
29  }
30  else // case ii, non container
31  {
32  $newObj = new ilObjFile();
33  $newObj->setNoMetaDataCreation(true); // #16545
34  $newObj->create(true);
35  }
36 
37  include_once("./Modules/File/classes/class.ilFileXMLParser.php");
38  $parser = new ilFileXMLParser($newObj, $a_xml);
39  $parser->setImportDirectory($this->getImportDirectory());
40  $parser->startParsing();
41 
42  $newObj->createProperties();
43 
44  $parser->setFileContents();
45  $this->current_obj = $newObj;
46 
47  $newObj->update(); // this is necessary for case ii (e.g. wiki import)
48 
49  $a_mapping->addMapping("Modules/File", "file", $a_id, $newObj->getId());
50  $a_mapping->addMapping("Services/MetaData", "md", $a_id.":0:file",
51  $newObj->getId().":0:file");
52 
53  }
54 
55 }
56 
57 ?>
getImportDirectory()
Get import directory.
Exercise XML Parser which completes/updates a given file by an xml string.
Class ilObjFile.
importXmlRepresentation($a_entity, $a_id, $a_xml, $a_mapping)
Import XML.
Importer class for files.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
$parser
Definition: BPMN2Parser.php:24
Xml importer class.