Verzeichnisstruktur phpBB-3.1.0
- Veröffentlicht
- 27.10.2014
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
MergeExtensionConfigurationPass.php
01 <?php
02
03 /*
04 * This file is part of the Symfony package.
05 *
06 * (c) Fabien Potencier <fabien@symfony.com>
07 *
08 * For the full copyright and license information, please view the LICENSE
09 * file that was distributed with this source code.
10 */
11
12 namespace Symfony\Component\DependencyInjection\Compiler;
13
14 use Symfony\Component\DependencyInjection\ContainerBuilder;
15 use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface;
16
17 /**
18 * Merges extension configs into the container builder
19 *
20 * @author Fabien Potencier <fabien@symfony.com>
21 */
22 class MergeExtensionConfigurationPass implements CompilerPassInterface
23 {
24 /**
25 * {@inheritdoc}
26 */
27 public function process(ContainerBuilder $container)
28 {
29 $parameters = $container->getParameterBag()->all();
30 $definitions = $container->getDefinitions();
31 $aliases = $container->getAliases();
32
33 foreach ($container->getExtensions() as $extension) {
34 if ($extension instanceof PrependExtensionInterface) {
35 $extension->prepend($container);
36 }
37 }
38
39 foreach ($container->getExtensions() as $name => $extension) {
40 if (!$config = $container->getExtensionConfig($name)) {
41 // this extension was not called
42 continue;
43 }
44 $config = $container->getParameterBag()->resolveValue($config);
45
46 $tmpContainer = new ContainerBuilder($container->getParameterBag());
47 $tmpContainer->setResourceTracking($container->isTrackingResources());
48 $tmpContainer->addObjectResource($extension);
49
50 $extension->load($config, $tmpContainer);
51
52 $container->merge($tmpContainer);
53 }
54
55 $container->addDefinitions($definitions);
56 $container->addAliases($aliases);
57 $container->getParameterBag()->add($parameters);
58 }
59 }
60