ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
class.InternalService.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
21namespace ILIAS\COPage;
22
24
26{
27 protected array $instance = [];
28
29 public function __construct(
30 protected Container $DIC
31 ) {
32 }
33
34 public function data(): InternalDataService
35 {
36 return $this->instance["data"] ??= new InternalDataService();
37 }
38
39 public function repo(): InternalRepoService
40 {
41 return $this->instance["repo"] ??= new InternalRepoService(
42 $this->data(),
43 $this->DIC->database()
44 );
45 }
46
47 public function domain(): InternalDomainService
48 {
49 return $this->instance["domain"] ??= new InternalDomainService(
50 $this->DIC,
51 $this->repo(),
52 $this->data()
53 );
54 }
55
56 public function gui(): InternalGUIService
57 {
58 return $this->instance["gui"] ??= new InternalGUIService(
59 $this->DIC,
60 $this->data(),
61 $this->domain()
62 );
63 }
64}
Repository internal data service.
Repository internal repo service.
__construct(protected Container $DIC)
Customizing of pimple-DIC for ILIAS.
Definition: Container.php:36
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
global $DIC
Definition: shib_login.php:26