ba07d7c44cbd67fc9dabe355d922ea83672b1796
[yaffs-website] / vendor / symfony / dependency-injection / Tests / Fixtures / includes / ProjectExtension.php
1 <?php
2
3 use Symfony\Component\DependencyInjection\ContainerBuilder;
4 use Symfony\Component\DependencyInjection\Definition;
5 use Symfony\Component\DependencyInjection\Extension\ExtensionInterface;
6
7 class ProjectExtension implements ExtensionInterface
8 {
9     public function load(array $configs, ContainerBuilder $configuration)
10     {
11         $configuration->setParameter('project.configs', $configs);
12         $configs = array_filter($configs);
13
14         if ($configs) {
15             $config = call_user_func_array('array_merge', $configs);
16         } else {
17             $config = array();
18         }
19
20         $configuration->setDefinition('project.service.bar', new Definition('FooClass'));
21         $configuration->setParameter('project.parameter.bar', isset($config['foo']) ? $config['foo'] : 'foobar');
22
23         $configuration->setDefinition('project.service.foo', new Definition('FooClass'));
24         $configuration->setParameter('project.parameter.foo', isset($config['foo']) ? $config['foo'] : 'foobar');
25
26         return $configuration;
27     }
28
29     public function getXsdValidationBasePath()
30     {
31         return false;
32     }
33
34     public function getNamespace()
35     {
36         return 'http://www.example.com/schema/project';
37     }
38
39     public function getAlias()
40     {
41         return 'project';
42     }
43
44     public function getConfiguration(array $config, ContainerBuilder $container)
45     {
46     }
47 }