ILIAS
trunk Revision v11.0_alpha-1744-gb0451eebef4
|
Base class for materialize path based trees Based on implementation of Werner Randelshofer. More...
Public Member Functions | |||||||
__construct (ilTree $a_tree) | |||||||
Constructor. More... | |||||||
getSubTreeIds (int $a_node_id) | |||||||
Get subtree ids. More... | |||||||
getRelation (array $a_node_a, array $a_node_b) | |||||||
Get relation of two nodes. More... | |||||||
getTrashSubTreeQuery (array $a_node, array $a_types, bool $a_force_join_reference=true, array $a_fields=[]) | |||||||
Get subtree query for trashed tree items. More... | |||||||
getSubTreeQuery (array $a_node, array $a_types=[], bool $a_force_join_reference=true, array $a_fields=[]) | |||||||
Get subtree query. More... | |||||||
getPathIds (int $a_endnode, int $a_startnode=0) | |||||||
Get path ids from a startnode to a given endnode.
| |||||||
insertNode (int $a_node_id, int $a_parent_id, int $a_pos) | |||||||
| |||||||
deleteTree (int $a_node_id) | |||||||
Delete tree. More... | |||||||
moveToTrash (int $a_node_id) | |||||||
Move subtree to trash. More... | |||||||
moveTree (int $a_source_id, int $a_target_id, int $a_position) | |||||||
Move a source subtree to target.
| |||||||
getSubtreeInfo (int $a_endnode_id) | |||||||
validateParentRelations () | |||||||
Validate the parent relations of the tree implementation For nested set, validate the lft, rgt against child <-> parent For materialized path validate path against child <-> parent.
| |||||||
Static Public Member Functions | |
static | createFromParentRelation (ilDBInterface $db) |
Protected Member Functions | |
getMaximumPossibleDepth () | |
Get maximum possible depth. More... | |
getTree () | |
Get tree object. More... | |
Protected Attributes | |
ilTree | $tree |
ilDBInterface | $db |
ilLogger | $logger |
Static Private Member Functions | |
static | createMaterializedPath (ilDBInterface $db, int $parent, string $parentPath) |
Private Attributes | |
const | MAXIMUM_POSSIBLE_DEPTH = 100 |
Base class for materialize path based trees Based on implementation of Werner Randelshofer.
Definition at line 28 of file class.ilMaterializedPathTree.php.
ilMaterializedPathTree::__construct | ( | ilTree | $a_tree | ) |
Constructor.
ilTree | $a_tree |
Definition at line 40 of file class.ilMaterializedPathTree.php.
References $DIC, ilContext\getType(), and ILIAS\Repository\logger().
|
static |
Definition at line 475 of file class.ilMaterializedPathTree.php.
References ilDBInterface\fetchAssoc(), and ilDBInterface\queryF().
Referenced by ilTreeImplementationSwitch\achieve(), and ilSCTreeTasksGUI\repairStructure().
|
staticprivate |
Definition at line 484 of file class.ilMaterializedPathTree.php.
References $q, ilDBInterface\cast(), ilDBInterface\fetchAssoc(), ilDBInterface\manipulateF(), ilDBInterface\queryF(), and ilDBInterface\quote().
ilMaterializedPathTree::deleteTree | ( | int | $a_node_id | ) |
Delete tree.
Implements ilTreeImplementation.
Definition at line 309 of file class.ilMaterializedPathTree.php.
References $ilDB, $res, getTree(), and null.
|
protected |
Get maximum possible depth.
Definition at line 54 of file class.ilMaterializedPathTree.php.
ilMaterializedPathTree::getPathIds | ( | int | $a_endnode, |
int | $a_startnode = 0 |
||
) |
Get path ids from a startnode to a given endnode.
int | $a_endnode | |
int | $a_startnode |
Implements ilTreeImplementation.
Definition at line 225 of file class.ilMaterializedPathTree.php.
References $path, $res, and getTree().
ilMaterializedPathTree::getRelation | ( | array | $a_node_a, |
array | $a_node_b | ||
) |
Get relation of two nodes.
Implements ilTreeImplementation.
Definition at line 98 of file class.ilMaterializedPathTree.php.
References ilTree\RELATION_CHILD, ilTree\RELATION_EQUALS, ilTree\RELATION_NONE, ilTree\RELATION_PARENT, and ilTree\RELATION_SIBLING.
ilMaterializedPathTree::getSubTreeIds | ( | int | $a_node_id | ) |
Get subtree ids.
int | $a_node_id |
Implements ilTreeImplementation.
Definition at line 72 of file class.ilMaterializedPathTree.php.
References $res, getTree(), and ILIAS\Repository\int().
ilMaterializedPathTree::getSubtreeInfo | ( | int | $a_endnode_id | ) |
int | $a_endnode_id |
Implements ilTreeImplementation.
Definition at line 507 of file class.ilMaterializedPathTree.php.
References Vendor\Package\$a, Vendor\Package\$b, $path, $res, getTree(), ILIAS\Repository\int(), and null.
ilMaterializedPathTree::getSubTreeQuery | ( | array | $a_node, |
array | $a_types = [] , |
||
bool | $a_force_join_reference = true , |
||
array | $a_fields = [] |
||
) |
Get subtree query.
array | $a_node | |
array | $a_types | |
bool | $a_force_join_reference | |
array | $a_fields |
Implements ilTreeImplementation.
Definition at line 175 of file class.ilMaterializedPathTree.php.
References getTree().
ilMaterializedPathTree::getTrashSubTreeQuery | ( | array | $a_node, |
array | $a_types, | ||
bool | $a_force_join_reference = true , |
||
array | $a_fields = [] |
||
) |
Get subtree query for trashed tree items.
Implements ilTreeImplementation.
Definition at line 123 of file class.ilMaterializedPathTree.php.
References getTree().
|
protected |
Get tree object.
Definition at line 62 of file class.ilMaterializedPathTree.php.
References $tree.
Referenced by deleteTree(), getPathIds(), getSubTreeIds(), getSubtreeInfo(), getSubTreeQuery(), getTrashSubTreeQuery(), insertNode(), moveToTrash(), moveTree(), and validateParentRelations().
ilMaterializedPathTree::insertNode | ( | int | $a_node_id, |
int | $a_parent_id, | ||
int | $a_pos | ||
) |
ilInvalidTreeStructureException |
Implements ilTreeImplementation.
Definition at line 250 of file class.ilMaterializedPathTree.php.
References $ilDB, $r, $res, ilLogLevel\ERROR, getTree(), ILIAS\Repository\int(), ILIAS\Repository\logger(), and null.
ilMaterializedPathTree::moveToTrash | ( | int | $a_node_id | ) |
Move subtree to trash.
Implements ilTreeImplementation.
Definition at line 349 of file class.ilMaterializedPathTree.php.
References $ilDB, and getTree().
ilMaterializedPathTree::moveTree | ( | int | $a_source_id, |
int | $a_target_id, | ||
int | $a_position | ||
) |
Move a source subtree to target.
InvalidArgumentException |
Implements ilTreeImplementation.
Definition at line 384 of file class.ilMaterializedPathTree.php.
References $ilDB, $res, ilLogLevel\ERROR, getTree(), ILIAS\Repository\logger(), and ilDBConstants\T_INTEGER.
ilMaterializedPathTree::validateParentRelations | ( | ) |
Validate the parent relations of the tree implementation For nested set, validate the lft, rgt against child <-> parent For materialized path validate path against child <-> parent.
Implements ilTreeImplementation.
Definition at line 588 of file class.ilMaterializedPathTree.php.
References $res, ilDBConstants\FETCHMODE_ASSOC, and getTree().
|
protected |
Definition at line 33 of file class.ilMaterializedPathTree.php.
|
protected |
Definition at line 34 of file class.ilMaterializedPathTree.php.
|
protected |
Definition at line 32 of file class.ilMaterializedPathTree.php.
Referenced by getTree().
|
private |
Definition at line 30 of file class.ilMaterializedPathTree.php.