diff options
author | Igor Wiedler <igor@wiedler.ch> | 2012-07-21 16:14:21 +0200 |
---|---|---|
committer | Igor Wiedler <igor@wiedler.ch> | 2012-07-21 16:14:40 +0200 |
commit | 32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e (patch) | |
tree | 198cb2d66e4d99e7bb55d3f6355a7618c19b95a0 /phpBB/includes/di/compiler | |
parent | 5d57caee58c58d2a9c283abe8fe88f4eaec9f662 (diff) | |
download | forums-32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e.tar forums-32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e.tar.gz forums-32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e.tar.bz2 forums-32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e.tar.xz forums-32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e.zip |
[feature/dic] Configure container via config.php, use compiler pass
PHPBB3-10739
Diffstat (limited to 'phpBB/includes/di/compiler')
-rw-r--r-- | phpBB/includes/di/compiler/config_pass.php | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/phpBB/includes/di/compiler/config_pass.php b/phpBB/includes/di/compiler/config_pass.php new file mode 100644 index 0000000000..9288c1760c --- /dev/null +++ b/phpBB/includes/di/compiler/config_pass.php @@ -0,0 +1,51 @@ +<?php +/** +* +* @package phpBB3 +* @copyright (c) 2012 phpBB Group +* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2 +* +*/ + +/** +* @ignore +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; +use Symfony\Component\DependencyInjection\ContainerBuilder; + +class phpbb_di_compiler_config_pass implements CompilerPassInterface +{ + private $config_file; + + public function __construct($config_file, $phpbb_root_path, $php_ext) + { + $this->config_file = $config_file; + $this->phpbb_root_path = $phpbb_root_path; + $this->php_ext = $php_ext; + } + + public function process(ContainerBuilder $container) + { + require $this->config_file; + + $container->setParameter('core.root_path', $this->phpbb_root_path); + $container->setParameter('core.php_ext', $this->php_ext); + + $container->setParameter('core.table_prefix', $table_prefix); + $container->setParameter('cache.driver.class', $acm_type); + $container->setParameter('dbal.driver.class', $dbms); + $container->setParameter('dbal.dbhost', $dbhost); + $container->setParameter('dbal.dbuser', $dbuser); + $container->setParameter('dbal.dbpasswd', $dbpasswd); + $container->setParameter('dbal.dbname', $dbname); + $container->setParameter('dbal.dbport', $dbport); + $container->setParameter('dbal.new_link', defined('PHPBB_DB_NEW_LINK') && PHPBB_DB_NEW_LINK); + + $container->set('container', $container); + } +} |