19 declare(strict_types=1);
    63         $this->component_repository = $this->dic[
"component.repository"];
    64         $this->component_factory = $this->dic[
"component.factory"];
    69         if (!is_array($this->plugin_provider_collections)) {
    70             $this->plugin_provider_collections = [];
    71             foreach ($this->component_repository->getPlugins() as 
$plugin) {
    75                 $pl = $this->component_factory->getPlugin(
$plugin->getId());
    76                 $this->plugin_provider_collections[] = $pl->getGlobalScreenProviderCollection();
    87                 $this->all_providers[$item::class] = $item;
    97         $this->
appendCore($providers, StaticMainMenuProvider::class);
   101         foreach ($this->plugin_provider_collections as $collection) {
   102             $provider = $collection->getMainBarProvider();
   117         $this->
appendCore($providers, StaticFooterProvider::class);
   138         $this->
appendCore($providers, StaticMetaBarProvider::class);
   142         foreach ($this->plugin_provider_collections as $collection) {
   143             $provider = $collection->getMetaBarProvider();
   159         $this->
appendCore($providers, DynamicToolProvider::class);
   163         foreach ($this->plugin_provider_collections as $collection) {
   164             $provider = $collection->getToolProvider();
   179         $this->
appendCore($providers, ModificationProvider::class);
   183         foreach ($this->plugin_provider_collections as $collection) {
   184             $provider = $collection->getModificationProvider();
   197         $this->
appendCore($providers, NotificationProvider::class);
   201         foreach ($this->plugin_provider_collections as $collection) {
   202             $provider = $collection->getNotificationProvider();
   218         $this->
appendCore($providers, ToastProvider::class);
   222         foreach ($this->plugin_provider_collections as $collection) {
   223             $provider = $collection->getToastProvider();
   235     private function appendCore(array &$array_of_providers, 
string $interface): void
   237         foreach ($this->class_loader[$interface] ?? [] as $class_name) {
   240                     $array_of_providers[] = 
new $class_name($this->dic);
   260             throw new LogicException(
"the GlobalScreen-Provider $class_name is not available");
   263         return $this->all_providers[$class_name];
   270             return class_exists($class_name);
   279         return isset($this->all_providers[$class_name]);
 
Readable part of repository interface to ilComponentDataDB. 
 
readonly ItemInformation $main_menu_item_information
 
isRegistered(string $class_name)
 
array $plugin_provider_collections
 
Interface Observer  Contains several chained tasks and infos about them. 
 
Customizing of pimple-DIC for ILIAS. 
 
ilComponentFactory $component_factory
 
getNotificationsProvider()
 
readonly ilFooterCustomItemInformation $footer_item_information
 
ilComponentRepository $component_repository
 
getFooterItemInformation()
 
registerInternal(array $providers)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
isInstanceCreationPossible(string $class_name)
 
getModificationProvider()
 
__construct(private readonly Container $dic)
 
getProviderByClassName(string $class_name)
 
appendCore(array &$array_of_providers, string $interface)
 
getMainBarItemInformation()