3 declare(strict_types=1);
30 public function __construct($content, $a_rbac_id, $a_obj_id, $a_obj_type)
45 $clone_md->deleteAll();
49 $clone_md->getRBACId(),
50 $clone_md->getObjId(),
51 $clone_md->getObjType(),
53 $identifier->
setEntry(
'il__' . $clone_md->getObjType() .
'_' . $clone_md->getObjId());
54 $identifier->update();
56 parent::startParsing();
62 public function handlerBeginTag($a_xml_parser,
string $a_name, array $a_attribs): void
64 if ($this->in_meta_data && !$this->
__inFilter($a_name)) {
65 parent::handlerBeginTag($a_xml_parser, $a_name, $a_attribs);
71 $this->in_meta_data =
true;
72 parent::handlerBeginTag($a_xml_parser, $a_name, $a_attribs);
77 $this->md_ide = $par->addIdentifier();
78 $this->md_ide->setCatalog($a_attribs[
'Catalog'] ??
'');
79 $this->md_ide->setEntry(
'il__' . $this->md->getObjType() .
'_' . $this->md->getObjId());
80 $this->md_ide->save();
91 if ($this->in_meta_data && !$this->
__inFilter($a_name)) {
92 parent::handlerEndTag($a_xml_parser, $a_name);
103 $this->in_meta_data =
false;
104 parent::handlerEndTag($a_xml_parser, $a_name);
114 if ($this->in_meta_data) {
115 parent::handlerCharacterData($a_xml_parser, $a_data);
121 $this->
filter[] =
'Identifier';
126 return in_array($a_tag_name, $this->
filter,
true);
handlerEndTag($a_xml_parser, string $a_name)
setEntry(string $a_entry)
handlerCharacterData($a_xml_parser, string $a_data)
handlerBeginTag($a_xml_parser, string $a_name, array $a_attribs)
__pushParent(object $md_obj)
__inFilter(string $a_tag_name)
__construct($content, $a_rbac_id, $a_obj_id, $a_obj_type)
__construct(Container $dic, ilPlugin $plugin)
setXMLContent(string $a_xml_content)