ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
class.ilTestDIC.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
24 
25 class ilTestDIC
26 {
27  protected static ?Container $dic = null;
28 
29  public static function dic(): Container
30  {
31  if (!self::$dic) {
32  self::$dic = self::buildDIC();
33  }
34  return self::$dic;
35  }
36 
37  protected static function buildDIC(): Container
38  {
39  global $DIC;
40  $dic = $DIC;
41 
42  $dic['shuffler'] = static fn($c): ilTestShuffler =>
43  new ilTestShuffler($dic['refinery']);
44 
45  $dic['factory.results'] = static fn($c): ilTestResultsFactory =>
47  $c['shuffler'],
48  $dic['ui.factory'],
49  $dic['ui.renderer']
50  );
51 
52  $dic['factory.results_presentation'] = static fn($c): ilTestResultsPresentationFactory =>
54  $dic['ui.factory'],
55  $dic['ui.renderer'],
56  $dic['refinery'],
57  new ILIAS\Data\Factory(),
58  $dic['http'],
59  $dic['lng']
60  );
61 
62  $dic['main_settings_repository'] = static fn($c): ilObjTestMainSettingsDatabaseRepository =>
64 
65  $dic['participantAccessFilterFactory'] = static fn($c): ilTestParticipantAccessFilterFactory =>
66  new ilTestParticipantAccessFilterFactory($dic['ilAccess']);
67 
68  $dic['manScoringDoneHelper'] = static fn($c): TestManScoringDoneHelper =>
70 
71  $dic['request.internal'] = static fn($c): InternalRequestService =>
72  new InternalRequestService($dic['http'], $dic['refinery']);
73 
74  return $dic;
75  }
76 }
static buildDIC()
Class ChatMainBarProvider .
global $DIC
Definition: feed.php:28
static Container $dic
static dic()
$dic
Definition: result.php:32