ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
interface.ilTreeInterface.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
22 
23 use ILIAS\Export\ImportHandler\I\File\Path\ilHandlerInterface as ilXMLFilePathHandlerInterface;
24 use ILIAS\Export\ImportHandler\I\File\XML\ilHandlerInterface as ilXMLFileHandlerInterface;
25 use ILIAS\Export\ImportHandler\I\File\XML\Node\Info\Attribute\ilCollectionInterface as ilXMLFileNodeInfoAttributePairCollectionInterface;
26 use ILIAS\Export\ImportHandler\I\File\XML\Node\Info\ilCollectionInterface as ilXMLFileNodeInfoCollectionInterface;
28 
29 interface ilTreeInterface
30 {
31  public function withRoot(ilXMLFileNodeInfoInterface $node_info): ilTreeInterface;
32 
33  public function withRootInFile(
34  ilXMLFileHandlerInterface $xml_handler,
35  ilXMLFilePathHandlerInterface $path_handler
36  ): ilTreeInterface;
37 
38  public function getNodesWith(
39  ilXMLFileNodeInfoAttributePairCollectionInterface $attribute_pairs
40  ): ilXMLFileNodeInfoCollectionInterface;
41 
42  public function getFirstNodeWith(
43  ilXMLFileNodeInfoAttributePairCollectionInterface $attribute_pairs
44  ): ilXMLFileNodeInfoInterface|null;
45 
46  public function getAttributePath(
47  ilXMLFileNodeInfoInterface $startNode,
48  string $attribute_name,
49  string $path_separator,
50  bool $skip_nodes_without_attribute = true
51  ): string;
52 }
getFirstNodeWith(ilXMLFileNodeInfoAttributePairCollectionInterface $attribute_pairs)
withRootInFile(ilXMLFileHandlerInterface $xml_handler, ilXMLFilePathHandlerInterface $path_handler)
getAttributePath(ilXMLFileNodeInfoInterface $startNode, string $attribute_name, string $path_separator, bool $skip_nodes_without_attribute=true)
getNodesWith(ilXMLFileNodeInfoAttributePairCollectionInterface $attribute_pairs)