ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
class.ilSCComponentTaskFactory.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
5 include_once './Services/SystemCheck/classes/class.ilSCTask.php';
6 
13 {
14 
20  public static function getComponentTaskGUIForGroup($a_group_id, $a_task_id = null)
21  {
22  include_once './Services/SystemCheck/classes/class.ilSCGroup.php';
23  $component_id = ilSCGroup::lookupComponent($a_group_id);
24 
25  $task = null;
26  if ($a_task_id) {
27  $task = self::getTask($a_group_id, $a_task_id);
28  }
29 
30  // this switch should not be used
31  // find class by naming convention and component service
32  switch ($component_id) {
33  case 'tree':
34  include_once './Services/Tree/classes/class.ilSCTreeTasksGUI.php';
35  include_once './Services/SystemCheck/classes/class.ilSCTask.php';
36  return new ilSCTreeTasksGUI($task);
37  }
38  }
39 
44  public static function getTask($a_group_id, $a_task_id)
45  {
46  $component_id = ilSCGroup::lookupComponent($a_group_id);
47  switch ($component_id) {
48  case 'tree':
50  return new \ilSCTreeDumpTask($a_task_id);
51  }
52  }
53  return new \ilSCTask($a_task_id);
54  }
55 
56 
57 
58 
64  public static function getComponentTask($a_task_id)
65  {
66  include_once './Services/SystemCheck/classes/class.ilSCTasks.php';
67  $group_id = ilSCTasks::lookupGroupId($a_task_id);
68 
69  return self::getComponentTaskGUIForGroup($group_id, $a_task_id);
70  }
71 }
Factory for component tasks.
static lookupComponent($a_id)
lookup component by id type $ilDB
Handles tree tasks.
static getComponentTaskGUIForGroup($a_group_id, $a_task_id=null)
get task gui for group
static lookupGroupId($a_task_id)
Lookup group id by task id type $ilDB.
static lookupIdentifierForTask($a_task_id)
static getTask($a_group_id, $a_task_id)