ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.InternalRepoService.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
21namespace ILIAS\BookingManager;
22
30use ILIAS\Repository\RepoServiceBase;
31
33{
34 use RepoServiceBase;
35
36 protected static array $instances = [];
37
38 public function __construct(
39 protected InternalDataService $data,
40 protected \ilDBInterface $db
41 ) {
42 }
43
45 {
46 return self::$instances["preferences"] ??= new \ilBookingPreferencesDBRepository(
47 $this->data,
48 $this->db
49 );
50 }
51
53 {
54 return self::$instances["preferenceBasedBooking"] ??= new \ilBookingPrefBasedBookGatewayRepository(
55 $this->db
56 );
57 }
58
60 {
61 return self::$instances["reservationTable"] ??= new ReservationTableSessionRepository();
62 }
63
64 public function objects(): ObjectsDBRepository
65 {
66 return self::$instances["objects"] ??= new ObjectsDBRepository(
67 $this->irss(),
68 $this->db
69 );
70 }
71
73 {
74 return self::$instances["schedules"] ??= new SchedulesDBRepository(
75 $this->db
76 );
77 }
78
80 {
81 return self::$instances["reservation"] ??= new ReservationDBRepository(
82 $this->db
83 );
84 }
85
91 array $context_obj_ids
94 $this->db,
95 $context_obj_ids
96 );
97 }
98
100 {
101 return self::$instances["objectSelection"] ??= new SelectedObjectsDBRepository(
102 $this->db
103 );
104 }
105
107 {
108 return self::$instances["participants"] ??= new ParticipantsRepository(
109 $this->db
110 );
111 }
112
114 {
115 return self::$instances["settings"] ??= new SettingsDBRepository(
116 $this->db,
117 $this->data
118 );
119 }
120
121}
reservationWithContextObjCache(array $context_obj_ids)
Get repo with reservation information preloaded for context obj ids.
__construct(protected InternalDataService $data, protected \ilDBInterface $db)
Repo class for reservations Acts on tables booking_reservation (rw), booking_reservation_group (rw) a...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
return['delivery_method'=> 'php',]
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Interface ilDBInterface.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...