aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/di/compiler
diff options
context:
space:
mode:
authorIgor Wiedler <igor@wiedler.ch>2012-07-21 16:14:21 +0200
committerIgor Wiedler <igor@wiedler.ch>2012-07-21 16:14:40 +0200
commit32d2ee61f78e3aeaac5f4f1bcb672c67aa10b10e (patch)
tree198cb2d66e4d99e7bb55d3f6355a7618c19b95a0 /phpBB/includes/di/compiler
parent5d57caee58c58d2a9c283abe8fe88f4eaec9f662 (diff)
downloadforums-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.php51
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);
+ }
+}