ILIAS  trunk Revision v11.0_alpha-1811-gd2d5443e411
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
class.InternalService.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
21 namespace ILIAS\Taxonomy;
22 
24 
26 {
27  protected Container $DIC;
28  protected static ?InternalDataService $data = null;
29  protected static ?InternalRepoService $repo = null;
30  protected static ?InternalDomainService $domain = null;
31  protected static ?InternalGUIService $gui = null;
32 
33  public function __construct(Container $DIC)
34  {
35  $this->DIC = $DIC;
36  }
37 
38  public function data(): InternalDataService
39  {
40  if (is_null(self::$data)) {
42  }
43  return self::$data;
44  }
45 
46  public function repo(): InternalRepoService
47  {
48  if (is_null(self::$repo)) {
49  self::$repo = new InternalRepoService(
50  $this->data(),
51  $this->DIC->database()
52  );
53  }
54  return self::$repo;
55  }
56 
57  public function domain(): InternalDomainService
58  {
59  if (is_null(self::$domain)) {
60  self::$domain = new InternalDomainService(
61  $this->DIC,
62  $this->repo(),
63  $this->data()
64  );
65  }
66  return self::$domain;
67  }
68 
69  public function gui(): InternalGUIService
70  {
71  if (is_null(self::$gui)) {
72  self::$gui = new InternalGUIService(
73  $this->DIC,
74  $this->data(),
75  $this->domain()
76  );
77  }
78  return self::$gui;
79  }
80 }
static InternalGUIService $gui
static InternalRepoService $repo
Customizing of pimple-DIC for ILIAS.
Definition: Container.php:35
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
static InternalDataService $data
static InternalDomainService $domain