ILIAS  trunk Revision v11.0_alpha-2658-ge2404539063
Component.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
21 namespace ILIAS;
22 
23 class Component implements Component\Component
24 {
25  public function init(
26  array | \ArrayAccess &$define,
27  array | \ArrayAccess &$implement,
28  array | \ArrayAccess &$use,
29  array | \ArrayAccess &$contribute,
30  array | \ArrayAccess &$seek,
31  array | \ArrayAccess &$provide,
32  array | \ArrayAccess &$pull,
33  array | \ArrayAccess &$internal,
34  ): void {
35  $define[] = Component\Activities\Repository::class;
36 
37  $implement[Component\Activities\Repository::class] = static fn() =>
39  $seek[Component\Activities\Activity::class]
40  );
41 
42  $contribute[Component\EntryPoint::class] = static fn() => new Component\EntryPoint\HelloWorld("Component/HelloWorld");
43  $contribute[Component\EntryPoint::class] = static fn() =>
45  $use[Component\Activities\Repository::class]
46  );
47 
48  $contribute[\ILIAS\Setup\Agent::class] = static fn() =>
49  new \ilComponentsSetupAgent(
50  $internal[Component\Resource\PublicAssetManager::class],
51  $seek[Component\Resource\PublicAsset::class]
52  );
53 
54  $internal[Component\Resource\PublicAssetManager::class] = static fn() =>
56  }
57 }
init(array|\ArrayAccess &$define, array|\ArrayAccess &$implement, array|\ArrayAccess &$use, array|\ArrayAccess &$contribute, array|\ArrayAccess &$seek, array|\ArrayAccess &$provide, array|\ArrayAccess &$pull, array|\ArrayAccess &$internal,)
Definition: Component.php:25
A simple entrypoint that just says hello, for testing and documentation purpose.
Interface Observer Contains several chained tasks and infos about them.
Will take care of the public assets, just like a good manager does.