ILIAS  trunk Revision v11.0_alpha-1715-g7fc467680fb
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
InitComponentService Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Collaboration diagram for InitComponentService:

Public Member Functions

 init (\ILIAS\DI\Container $c)
 
 initInternal (\ILIAS\DI\Container $c)
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Responsible for loading the Component Service into the dependency injection container of ILIAS

Definition at line 22 of file InitComponentService.php.

Member Function Documentation

◆ init()

InitComponentService::init ( \ILIAS\DI\Container  $c)

Definition at line 24 of file InitComponentService.php.

References initInternal().

24  : void
25  {
26  $int = $this->initInternal($c);
27 
28  $c["component.repository"] = fn($c): \ilComponentRepository => $int["db_write"];
29 
30  $c["component.factory"] = fn($c): \ilComponentFactory => new ilComponentFactoryImplementation(
31  $int["db_write"],
32  $c["ilDB"]
33  );
34  }
Readable part of repository interface to ilComponentDataDB.
$c
Definition: deliver.php:25
initInternal(\ILIAS\DI\Container $c)
+ Here is the call graph for this function:

◆ initInternal()

InitComponentService::initInternal ( \ILIAS\DI\Container  $c)

Definition at line 36 of file InitComponentService.php.

Referenced by init().

36  : \Pimple\Container
37  {
38  $int = new \Pimple\Container();
39  $data_factory = new \ILIAS\Data\Factory();
40 
41  $int["plugin_state_db"] = fn($int): \ilPluginStateDB => new ilPluginStateDBOverIlDBInterface(
42  $data_factory,
43  $c["ilDB"]
44  );
45 
46  $int["db_write"] = fn($int): \ilComponentRepositoryWrite => new ilArtifactComponentRepository(
47  $data_factory,
48  $int["plugin_state_db"],
49  $c["ilias.version"]
50  );
51 
52  return $int;
53  }
Writeable part of repository interface to ilComponentDataDB.
Implementation of ilPluginStateDB over ilDBInterface.
$c
Definition: deliver.php:25
Repository interface for plugin state data.
Repository for component data implemented over artifacts.
+ Here is the caller graph for this function:

The documentation for this class was generated from the following file: