Skip to content

Commit 08029ee

Browse files
committed
Refactoring en supprimant les appels au container, utilisation de PHP-DI pour simplifier la configuration
1 parent 1a52b45 commit 08029ee

File tree

13 files changed

+536
-102
lines changed

13 files changed

+536
-102
lines changed

app/AppKernel.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,21 @@ public function registerContainerConfiguration(LoaderInterface $loader)
5252
{
5353
$loader->load(__DIR__.'/config/config_'.$this->getEnvironment().'.yml');
5454
}
55+
56+
protected function getContainerBaseClass()
57+
{
58+
return 'DI\Bridge\Symfony\SymfonyContainerBridge';
59+
}
60+
61+
protected function initializeContainer()
62+
{
63+
parent::initializeContainer();
64+
65+
$builder = new \DI\ContainerBuilder();
66+
$builder->addDefinitions(__DIR__ . '/config/config.php');
67+
$builder->addDefinitions(__DIR__ . '/../src/MyCLabs/UnitBundle/Resources/config/di.php');
68+
$builder->wrapContainer($this->getContainer());
69+
70+
$this->getContainer()->setFallbackContainer($builder->build());
71+
}
5572
}

app/config/config.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<?php
2+
3+
use Doctrine\ORM\EntityManager;
4+
use Psr\Log\LoggerInterface;
5+
use Symfony\Component\Translation\TranslatorInterface;
6+
7+
return [
8+
// Aliases to Symfony's container entries
9+
LoggerInterface::class => DI\link('logger'),
10+
EntityManager::class => DI\link('doctrine.orm.entity_manager'),
11+
TranslatorInterface::class => DI\link('translator'),
12+
];

composer.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@
2525
"gedmo/doctrine-extensions": "~2.3",
2626
"stof/doctrine-extensions-bundle": "~1.0",
2727
"mopa/bootstrap-bundle": "v3.0.0-beta3",
28-
"friendsofsymfony/rest-bundle": "~1.1",
28+
"friendsofsymfony/rest-bundle": "dev-master",
2929
"sonata-project/intl-bundle": "~2.0",
3030
"jms/parser-lib": "~1.0",
31+
"mnapoli/php-di": "~4.1",
32+
"mnapoli/php-di-symfony2": "*",
3133
"myclabs/units-api": "dev-master"
3234
},
3335
"scripts": {

0 commit comments

Comments
 (0)