ILIAS  trunk Revision v11.0_alpha-1723-g8e69f309bab
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
class.InternalDomainService.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
21 namespace ILIAS\MediaCast;
22 
27 
29 {
31 
32  protected static array $instance = [];
33  protected Container $dic;
34 
35  public function __construct(
37  protected InternalRepoService $repo_service,
38  protected InternalDataService $data_service
39  ) {
40  $this->dic = $DIC;
41  $this->initDomainServices($DIC);
42  }
43 
44  public function notes(): \ILIAS\Notes\DomainService
45  {
46  return $this->dic->notes()->domain();
47  }
48 
49  public function mediaCast(\ilObjMediaCast $media_cast): MediaCastManager
50  {
51  return self::$instance["cast"][$media_cast->getId()] ??= new MediaCastManager($media_cast);
52  }
53 
54  public function learningProgress(\ilObjMediaCast $cast): LearningProgressManager
55  {
56  return self::$instance["lp"][$cast->getId()] ??= new LearningProgressManager($cast);
57  }
58 
59  public function mediacastSettings(): SettingsManager
60  {
61  return self::$instance["settings"] ??= new SettingsManager(
62  $this->data_service,
63  $this->repo_service,
64  $this
65  );
66  }
67 
68 }
Interface Observer Contains several chained tasks and infos about them.
initDomainServices(\ILIAS\DI\Container $DIC)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
global $DIC
Definition: shib_login.php:22
__construct(Container $DIC, protected InternalRepoService $repo_service, protected InternalDataService $data_service)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...