diff --git a/src/Symfony/Bundle/DoctrineBundle/DependencyInjection/DoctrineExtension.php b/src/Symfony/Bundle/DoctrineBundle/DependencyInjection/DoctrineExtension.php
index 82f691f6be..d876b43fc0 100644
--- a/src/Symfony/Bundle/DoctrineBundle/DependencyInjection/DoctrineExtension.php
+++ b/src/Symfony/Bundle/DoctrineBundle/DependencyInjection/DoctrineExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Bundle\DoctrineBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Reference;
@@ -54,13 +54,13 @@ class DoctrineExtension extends LoaderExtension
*
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function dbalLoad($config, BuilderConfiguration $configuration)
+ public function dbalLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('doctrine.dbal.logger')) {
+ if (!$container->hasDefinition('doctrine.dbal.logger')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['dbal']));
+ $container->merge($loader->load($this->resources['dbal']));
}
$defaultConnection = array(
@@ -75,9 +75,9 @@ class DoctrineExtension extends LoaderExtension
'options' => array()
);
- $defaultConnectionName = isset($config['default_connection']) ? $config['default_connection'] : $configuration->getParameter('doctrine.dbal.default_connection');
- $configuration->setAlias('database_connection', null !== $this->alias ? $this->alias : sprintf('doctrine.dbal.%s_connection', $defaultConnectionName));
- $configuration->setParameter('doctrine.dbal.default_connection', $defaultConnectionName);
+ $defaultConnectionName = isset($config['default_connection']) ? $config['default_connection'] : $container->getParameter('doctrine.dbal.default_connection');
+ $container->setAlias('database_connection', null !== $this->alias ? $this->alias : sprintf('doctrine.dbal.%s_connection', $defaultConnectionName));
+ $container->setParameter('doctrine.dbal.default_connection', $defaultConnectionName);
$connections = array();
if (isset($config['connections'])) {
@@ -90,25 +90,25 @@ class DoctrineExtension extends LoaderExtension
foreach ($connections as $name => $connection) {
// previously registered?
- if ($configuration->hasDefinition(sprintf('doctrine.dbal.%s_connection', $name))) {
- $driverDef = $configuration->getDefinition(sprintf('doctrine.dbal.%s_connection', $name));
+ if ($container->hasDefinition(sprintf('doctrine.dbal.%s_connection', $name))) {
+ $driverDef = $container->getDefinition(sprintf('doctrine.dbal.%s_connection', $name));
$arguments = $driverDef->getArguments();
$driverOptions = $arguments[0];
} else {
$connection = array_merge($defaultConnection, $connection);
- $configurationClass = isset($connection['configuration_class']) ? $connection['configuration_class'] : 'Doctrine\DBAL\Configuration';
- $configurationDef = new Definition($configurationClass);
- $configurationDef->addMethodCall('setSqlLogger', array(new Reference('doctrine.dbal.logger')));
- $configuration->setDefinition(sprintf('doctrine.dbal.%s_connection.configuration', $name), $configurationDef);
+ $containerClass = isset($connection['configuration_class']) ? $connection['configuration_class'] : 'Doctrine\DBAL\Configuration';
+ $containerDef = new Definition($containerClass);
+ $containerDef->addMethodCall('setSqlLogger', array(new Reference('doctrine.dbal.logger')));
+ $container->setDefinition(sprintf('doctrine.dbal.%s_connection.configuration', $name), $containerDef);
$eventManagerDef = new Definition($connection['event_manager_class']);
- $configuration->setDefinition(sprintf('doctrine.dbal.%s_connection.event_manager', $name), $eventManagerDef);
+ $container->setDefinition(sprintf('doctrine.dbal.%s_connection.event_manager', $name), $eventManagerDef);
$driverOptions = array();
$driverDef = new Definition('Doctrine\DBAL\DriverManager');
$driverDef->setFactoryMethod('getConnection');
- $configuration->setDefinition(sprintf('doctrine.dbal.%s_connection', $name), $driverDef);
+ $container->setDefinition(sprintf('doctrine.dbal.%s_connection', $name), $driverDef);
}
if (isset($connection['driver'])) {
@@ -138,35 +138,35 @@ class DoctrineExtension extends LoaderExtension
* Loads the Doctrine ORM configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function ormLoad($config, BuilderConfiguration $configuration)
+ public function ormLoad($config, ContainerBuilder $container)
{
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['orm']));
+ $container->merge($loader->load($this->resources['orm']));
if (isset($config['default_entity_manager'])) {
- $configuration->getParameter('doctrine.orm.default_entity_manager', $config['default_entity_manager']);
+ $container->getParameter('doctrine.orm.default_entity_manager', $config['default_entity_manager']);
}
- $defaultEntityManager = $configuration->getParameter('doctrine.orm.default_entity_manager');
+ $defaultEntityManager = $container->getParameter('doctrine.orm.default_entity_manager');
foreach (array('metadata_driver', 'cache_driver') as $key) {
if (isset($config[$key])) {
- $configuration->setParameter('doctrine.orm.'.$key, $config[$key]);
+ $container->setParameter('doctrine.orm.'.$key, $config[$key]);
}
}
$config['entity_managers'] = isset($config['entity_managers']) ? $config['entity_managers'] : array($defaultEntityManager => array());
foreach ($config['entity_managers'] as $name => $connection) {
$ormConfigDef = new Definition('Doctrine\ORM\Configuration');
- $configuration->setDefinition(sprintf('doctrine.orm.%s_configuration', $name), $ormConfigDef);
+ $container->setDefinition(sprintf('doctrine.orm.%s_configuration', $name), $ormConfigDef);
$drivers = array('metadata', 'query', 'result');
foreach ($drivers as $driver) {
- $definition = $configuration->getDefinition(sprintf('doctrine.orm.cache.%s', $configuration->getParameter('doctrine.orm.cache_driver')));
+ $definition = $container->getDefinition(sprintf('doctrine.orm.cache.%s', $container->getParameter('doctrine.orm.cache_driver')));
$clone = clone $definition;
$clone->addMethodCall('setNamespace', array(sprintf('doctrine_%s_', $driver)));
- $configuration->setDefinition(sprintf('doctrine.orm.%s_cache', $driver), $clone);
+ $container->setDefinition(sprintf('doctrine.orm.%s_cache', $driver), $clone);
}
// configure metadata driver for each bundle based on the type of mapping files found
@@ -205,7 +205,7 @@ class DoctrineExtension extends LoaderExtension
}
$ormConfigDef->addMethodCall('setEntityNamespaces', array($aliasMap));
- $configuration->setDefinition('doctrine.orm.metadata_driver', $mappingDriverDef);
+ $container->setDefinition('doctrine.orm.metadata_driver', $mappingDriverDef);
$methods = array(
'setMetadataCacheImpl' => new Reference('doctrine.orm.metadata_cache'),
@@ -231,24 +231,24 @@ class DoctrineExtension extends LoaderExtension
$ormEmDef = new Definition('Doctrine\ORM\EntityManager', $ormEmArgs);
$ormEmDef->setFactoryMethod('create');
- $configuration->setDefinition(
+ $container->setDefinition(
sprintf('doctrine.orm.%s_entity_manager', $name),
$ormEmDef
);
if ($name == $defaultEntityManager) {
- $configuration->setAlias(
+ $container->setAlias(
'doctrine.orm.entity_manager',
sprintf('doctrine.orm.%s_entity_manager', $name)
);
}
}
- $configuration->setAlias(
+ $container->setAlias(
'doctrine.orm.cache',
sprintf(
'doctrine.orm.cache.%s',
- $configuration->getParameter('doctrine.orm.cache_driver')
+ $container->getParameter('doctrine.orm.cache_driver')
)
);
}
diff --git a/src/Symfony/Bundle/DoctrineBundle/DoctrineBundle.php b/src/Symfony/Bundle/DoctrineBundle/DoctrineBundle.php
index 00dc34a727..908ccd9ef6 100644
--- a/src/Symfony/Bundle/DoctrineBundle/DoctrineBundle.php
+++ b/src/Symfony/Bundle/DoctrineBundle/DoctrineBundle.php
@@ -32,7 +32,7 @@ class DoctrineBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Bundle/DoctrineMongoDBBundle/DependencyInjection/MongoDBExtension.php b/src/Symfony/Bundle/DoctrineMongoDBBundle/DependencyInjection/MongoDBExtension.php
index 363bd13f24..6a472e0ff0 100755
--- a/src/Symfony/Bundle/DoctrineMongoDBBundle/DependencyInjection/MongoDBExtension.php
+++ b/src/Symfony/Bundle/DoctrineMongoDBBundle/DependencyInjection/MongoDBExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Bundle\DoctrineMongoDBBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Reference;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Resource\FileResource;
@@ -34,36 +34,36 @@ class MongoDBExtension extends LoaderExtension
* Loads the MongoDB configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function mongodbLoad($config, BuilderConfiguration $configuration)
+ public function mongodbLoad($config, ContainerBuilder $container)
{
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['mongodb']));
+ $container->merge($loader->load($this->resources['mongodb']));
- if (!$configuration->hasDefinition('doctrine.odm.mongodb.document_manager')) {
+ if (!$container->hasDefinition('doctrine.odm.mongodb.document_manager')) {
- $configuration->setParameter('doctrine.odm.mongodb.mapping_dirs', $this->findBundleSubpaths('Resources/config/doctrine/metadata', $configuration));
- $configuration->setParameter('doctrine.odm.mongodb.document_dirs', $this->findBundleSubpaths('Document', $configuration));
+ $container->setParameter('doctrine.odm.mongodb.mapping_dirs', $this->findBundleSubpaths('Resources/config/doctrine/metadata', $container));
+ $container->setParameter('doctrine.odm.mongodb.document_dirs', $this->findBundleSubpaths('Document', $container));
- $configuration->setDefinition('doctrine.odm.mongodb.metadata', $this->buildMetadataDefinition($configuration));
+ $container->setDefinition('doctrine.odm.mongodb.metadata', $this->buildMetadataDefinition($container));
}
foreach (array('host', 'port', 'database') as $key) {
if (isset($config[$key])) {
- $configuration->setParameter('doctrine.odm.mongodb.default_'.$key, $config[$key]);
+ $container->setParameter('doctrine.odm.mongodb.default_'.$key, $config[$key]);
}
}
foreach (array('proxy_dir', 'auto_generate_proxy_classes') as $key) {
if (isset($config[$key])) {
- $configuration->setParameter('doctrine.odm.mongodb.'.$key, $config[$key]);
+ $container->setParameter('doctrine.odm.mongodb.'.$key, $config[$key]);
}
}
foreach (array('cache', 'metadata') as $key) {
if (isset($config[$key])) {
- $configuration->setAlias('doctrine.odm.mongodb.'.$key, 'doctrine.odm.mongodb.'.$key.'.'.$config[$key]);
+ $container->setAlias('doctrine.odm.mongodb.'.$key, 'doctrine.odm.mongodb.'.$key.'.'.$config[$key]);
}
}
}
@@ -72,24 +72,24 @@ class MongoDBExtension extends LoaderExtension
* Finds existing bundle subpaths.
*
* @param string $path A subpath to check for
- * @param Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A builder configuration
+ * @param Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder configuration
*
* @return array An array of absolute directory paths
*/
- protected function findBundleSubpaths($path, BuilderConfiguration $configuration)
+ protected function findBundleSubpaths($path, ContainerBuilder $container)
{
$dirs = array();
foreach ($this->bundles as $bundle) {
$reflection = new \ReflectionClass($bundle);
if (is_dir($dir = dirname($reflection->getFilename()).'/'.$path)) {
$dirs[] = $dir;
- $configuration->addResource(new FileResource($dir));
+ $container->addResource(new FileResource($dir));
} else {
// add the closest existing parent directory as a file resource
do {
$dir = dirname($dir);
} while (!is_dir($dir));
- $configuration->addResource(new FileResource($dir));
+ $container->addResource(new FileResource($dir));
}
}
@@ -99,17 +99,17 @@ class MongoDBExtension extends LoaderExtension
/**
* Detects and builds the appropriate metadata driver for each bundle.
*
- * @param Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A builder configuration
+ * @param Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder configuration
*
* @return Symfony\Components\DependencyInjection\Definition A definition for the metadata service
*/
- protected function buildMetadataDefinition(BuilderConfiguration $configuration)
+ protected function buildMetadataDefinition(ContainerBuilder $container)
{
$definition = new Definition('%doctrine.odm.mongodb.metadata.chain_class%');
foreach ($this->bundles as $bundle) {
$reflection = new \ReflectionClass($bundle);
- if ($driver = static::detectMetadataDriver(dirname($reflection->getFilename()), $configuration)) {
+ if ($driver = static::detectMetadataDriver(dirname($reflection->getFilename()), $container)) {
$definition->addMethodCall('addDriver', array(
new Reference('doctrine.odm.mongodb.metadata.'.$driver),
$reflection->getNamespaceName().'\\Document',
@@ -124,18 +124,18 @@ class MongoDBExtension extends LoaderExtension
* Detects what metadata driver to use for the supplied directory.
*
* @param string $dir A directory path
- * @param Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A builder configuration
+ * @param Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder configuration
*
* @return string|null A metadata driver short name, if one can be detected
*/
- static protected function detectMetadataDriver($dir, BuilderConfiguration $configuration)
+ static protected function detectMetadataDriver($dir, ContainerBuilder $container)
{
// add the closest existing directory as a resource
$resource = $dir.'/Resources/config/doctrine/metadata';
while (!is_dir($resource)) {
$resource = dirname($resource);
}
- $configuration->addResource(new FileResource($resource));
+ $container->addResource(new FileResource($resource));
if (count(glob($dir.'/Resources/config/doctrine/metadata/*.xml'))) {
return 'xml';
@@ -144,7 +144,7 @@ class MongoDBExtension extends LoaderExtension
}
// add the directory itself as a resource
- $configuration->addResource(new FileResource($dir));
+ $container->addResource(new FileResource($dir));
if (is_dir($dir.'/Document')) {
return 'annotation';
diff --git a/src/Symfony/Bundle/DoctrineMongoDBBundle/DoctrineMongoDBBundle.php b/src/Symfony/Bundle/DoctrineMongoDBBundle/DoctrineMongoDBBundle.php
index 96c16ed43f..e90b1a749e 100755
--- a/src/Symfony/Bundle/DoctrineMongoDBBundle/DoctrineMongoDBBundle.php
+++ b/src/Symfony/Bundle/DoctrineMongoDBBundle/DoctrineMongoDBBundle.php
@@ -21,7 +21,7 @@ class DoctrineMongoDBBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/WebExtension.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/WebExtension.php
index 5b17e486eb..fe568c0b26 100644
--- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/WebExtension.php
+++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/WebExtension.php
@@ -5,7 +5,7 @@ namespace Symfony\Bundle\FrameworkBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
use Symfony\Components\DependencyInjection\Resource\FileResource;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Reference;
use Symfony\Components\DependencyInjection\Definition;
@@ -48,17 +48,17 @@ class WebExtension extends LoaderExtension
* Loads the web configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function configLoad($config, BuilderConfiguration $configuration)
+ public function configLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('controller_manager')) {
+ if (!$container->hasDefinition('controller_manager')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['web']));
+ $container->merge($loader->load($this->resources['web']));
}
if (isset($config['ide']) && 'textmate' === $config['ide']) {
- $configuration->setParameter('debug.file_link_format', 'txmt://open?url=file://%%f&line=%%l');
+ $container->setParameter('debug.file_link_format', 'txmt://open?url=file://%%f&line=%%l');
}
if (isset($config['toolbar']) && $config['toolbar']) {
@@ -67,33 +67,33 @@ class WebExtension extends LoaderExtension
if (isset($config['profiler'])) {
if ($config['profiler']) {
- if (!$configuration->hasDefinition('profiler')) {
+ if (!$container->hasDefinition('profiler')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load('profiling.xml'));
- $configuration->merge($loader->load('collectors.xml'));
+ $container->merge($loader->load('profiling.xml'));
+ $container->merge($loader->load('collectors.xml'));
}
- } elseif ($configuration->hasDefinition('profiler')) {
- $configuration->getDefinition('profiling')->clearAnnotations();
+ } elseif ($container->hasDefinition('profiler')) {
+ $container->getDefinition('profiling')->clearAnnotations();
}
}
// toolbar need to be registered after the profiler
if (isset($config['toolbar'])) {
if ($config['toolbar']) {
- if (!$configuration->hasDefinition('debug.toolbar')) {
+ if (!$container->hasDefinition('debug.toolbar')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load('toolbar.xml'));
+ $container->merge($loader->load('toolbar.xml'));
}
- } elseif ($configuration->hasDefinition('debug.toolbar')) {
- $configuration->getDefinition('debug.toolbar')->clearAnnotations();
+ } elseif ($container->hasDefinition('debug.toolbar')) {
+ $container->getDefinition('debug.toolbar')->clearAnnotations();
}
}
if (isset($config['validation']['enabled'])) {
if ($config['validation']['enabled']) {
- if (!$configuration->hasDefinition('validator')) {
+ if (!$container->hasDefinition('validator')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['validation']));
+ $container->merge($loader->load($this->resources['validation']));
}
$xmlMappingFiles = array();
@@ -126,42 +126,42 @@ class WebExtension extends LoaderExtension
}
$xmlFilesLoader = new Definition(
- $configuration->getParameter('validator.mapping.loader.xml_files_loader.class'),
+ $container->getParameter('validator.mapping.loader.xml_files_loader.class'),
array($xmlMappingFiles)
);
$yamlFilesLoader = new Definition(
- $configuration->getParameter('validator.mapping.loader.yaml_files_loader.class'),
+ $container->getParameter('validator.mapping.loader.yaml_files_loader.class'),
array($yamlMappingFiles)
);
- $configuration->setDefinition('validator.mapping.loader.xml_files_loader', $xmlFilesLoader);
- $configuration->setDefinition('validator.mapping.loader.yaml_files_loader', $yamlFilesLoader);
- $configuration->setParameter('validator.message_interpolator.files', $messageFiles);
+ $container->setDefinition('validator.mapping.loader.xml_files_loader', $xmlFilesLoader);
+ $container->setDefinition('validator.mapping.loader.yaml_files_loader', $yamlFilesLoader);
+ $container->setParameter('validator.message_interpolator.files', $messageFiles);
foreach ($xmlMappingFiles as $file) {
- $configuration->addResource(new FileResource($file));
+ $container->addResource(new FileResource($file));
}
foreach ($yamlMappingFiles as $file) {
- $configuration->addResource(new FileResource($file));
+ $container->addResource(new FileResource($file));
}
foreach ($messageFiles as $file) {
- $configuration->addResource(new FileResource($file));
+ $container->addResource(new FileResource($file));
}
if (isset($config['validation']['annotations']) && $config['validation']['annotations'] === true) {
- $annotationLoader = new Definition($configuration->getParameter('validator.mapping.loader.annotation_loader.class'));
- $configuration->setDefinition('validator.mapping.loader.annotation_loader', $annotationLoader);
+ $annotationLoader = new Definition($container->getParameter('validator.mapping.loader.annotation_loader.class'));
+ $container->setDefinition('validator.mapping.loader.annotation_loader', $annotationLoader);
- $loader = $configuration->getDefinition('validator.mapping.loader.loader_chain');
+ $loader = $container->getDefinition('validator.mapping.loader.loader_chain');
$arguments = $loader->getArguments();
array_unshift($arguments[0], new Reference('validator.mapping.loader.annotation_loader'));
$loader->setArguments($arguments);
}
- } elseif ($configuration->hasDefinition('validator')) {
- $configuration->getDefinition('validator')->clearAnnotations();
+ } elseif ($container->hasDefinition('validator')) {
+ $container->getDefinition('validator')->clearAnnotations();
}
}
}
@@ -170,26 +170,26 @@ class WebExtension extends LoaderExtension
* Loads the templating configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function templatingLoad($config, BuilderConfiguration $configuration)
+ public function templatingLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('templating')) {
+ if (!$container->hasDefinition('templating')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['templating']));
+ $container->merge($loader->load($this->resources['templating']));
}
if (array_key_exists('escaping', $config)) {
- $configuration->setParameter('templating.output_escaper', $config['escaping']);
+ $container->setParameter('templating.output_escaper', $config['escaping']);
}
if (array_key_exists('assets_version', $config)) {
- $configuration->setParameter('templating.assets.version', $config['assets_version']);
+ $container->setParameter('templating.assets.version', $config['assets_version']);
}
// path for the filesystem loader
if (isset($config['path'])) {
- $configuration->setParameter('templating.loader.filesystem.path', $config['path']);
+ $container->setParameter('templating.loader.filesystem.path', $config['path']);
}
// loaders
@@ -201,20 +201,20 @@ class WebExtension extends LoaderExtension
}
if (1 === count($loaders)) {
- $configuration->setAlias('templating.loader', (string) $loaders[0]);
+ $container->setAlias('templating.loader', (string) $loaders[0]);
} else {
- $configuration->getDefinition('templating.loader.chain')->addArgument($loaders);
- $configuration->setAlias('templating.loader', 'templating.loader.chain');
+ $container->getDefinition('templating.loader.chain')->addArgument($loaders);
+ $container->setAlias('templating.loader', 'templating.loader.chain');
}
}
// cache?
- $configuration->setParameter('templating.loader.cache.path', null);
+ $container->setParameter('templating.loader.cache.path', null);
if (isset($config['cache'])) {
// wrap the loader with some cache
- $configuration->setDefinition('templating.loader.wrapped', $configuration->findDefinition('templating.loader'));
- $configuration->setDefinition('templating.loader', $configuration->getDefinition('templating.loader.cache'));
- $configuration->setParameter('templating.loader.cache.path', $config['cache']);
+ $container->setDefinition('templating.loader.wrapped', $container->findDefinition('templating.loader'));
+ $container->setDefinition('templating.loader', $container->getDefinition('templating.loader.cache'));
+ $container->setParameter('templating.loader.cache.path', $config['cache']);
}
}
diff --git a/src/Symfony/Bundle/FrameworkBundle/FrameworkBundle.php b/src/Symfony/Bundle/FrameworkBundle/FrameworkBundle.php
index 791c34ecae..084eb3c650 100644
--- a/src/Symfony/Bundle/FrameworkBundle/FrameworkBundle.php
+++ b/src/Symfony/Bundle/FrameworkBundle/FrameworkBundle.php
@@ -6,7 +6,7 @@ use Symfony\Framework\Bundle\Bundle;
use Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Components\DependencyInjection\Loader\Loader;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Bundle\FrameworkBundle\DependencyInjection\WebExtension;
/*
@@ -32,7 +32,7 @@ class FrameworkBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
@@ -44,12 +44,12 @@ class FrameworkBundle extends Bundle
}
$parameterBag->set('templating.loader.filesystem.path', $dirs);
- $configuration = new BuilderConfiguration();
+ $container = new ContainerBuilder();
if ($parameterBag->get('kernel.debug')) {
$loader = new XmlFileLoader(__DIR__.'/Resources/config');
- $configuration->merge($loader->load('debug.xml'));
+ $container->merge($loader->load('debug.xml'));
}
- return $configuration;
+ return $container;
}
}
diff --git a/src/Symfony/Bundle/PropelBundle/DependencyInjection/PropelExtension.php b/src/Symfony/Bundle/PropelBundle/DependencyInjection/PropelExtension.php
index 951bea2bd4..c667a10b1b 100644
--- a/src/Symfony/Bundle/PropelBundle/DependencyInjection/PropelExtension.php
+++ b/src/Symfony/Bundle/PropelBundle/DependencyInjection/PropelExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Bundle\PropelBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Reference;
@@ -18,29 +18,29 @@ class PropelExtension extends LoaderExtension
* Loads the Propel configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function configLoad($config, BuilderConfiguration $configuration)
+ public function configLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('propel')) {
+ if (!$container->hasDefinition('propel')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['propel']));
+ $container->merge($loader->load($this->resources['propel']));
}
- if (!$configuration->hasParameter('propel.path')) {
+ if (!$container->hasParameter('propel.path')) {
if (!isset($config['path'])) {
throw new \InvalidArgumentException('The "path" parameter is mandatory.');
}
- $configuration->setParameter('propel.path', $config['path']);
+ $container->setParameter('propel.path', $config['path']);
}
if (isset($config['path'])) {
- $configuration->setParameter('propel.path', $config['path']);
+ $container->setParameter('propel.path', $config['path']);
}
if (isset($config['phing_path'])) {
- $configuration->setParameter('propel.phing_path', $config['phing_path']);
+ $container->setParameter('propel.phing_path', $config['phing_path']);
}
}
@@ -48,13 +48,13 @@ class PropelExtension extends LoaderExtension
* Loads the DBAL configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function dbalLoad($config, BuilderConfiguration $configuration)
+ public function dbalLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('propel')) {
+ if (!$container->hasDefinition('propel')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['propel']));
+ $container->merge($loader->load($this->resources['propel']));
}
$defaultConnection = array(
@@ -70,8 +70,8 @@ class PropelExtension extends LoaderExtension
'settings' => array('charset' => array('value' => 'UTF8')),
);
- $defaultConnectionName = isset($config['default_connection']) ? $config['default_connection'] : $configuration->getParameter('propel.dbal.default_connection');
- $configuration->setParameter('propel.dbal.default_connection', $defaultConnectionName);
+ $defaultConnectionName = isset($config['default_connection']) ? $config['default_connection'] : $container->getParameter('propel.dbal.default_connection');
+ $container->setParameter('propel.dbal.default_connection', $defaultConnectionName);
$connections = array();
if (isset($config['connections'])) {
@@ -82,7 +82,7 @@ class PropelExtension extends LoaderExtension
$connections = array($defaultConnectionName => $config);
}
- $arguments = $configuration->getDefinition('propel.configuration')->getArguments();
+ $arguments = $container->getDefinition('propel.configuration')->getArguments();
if (count($arguments)) {
$c = $arguments[0];
} else {
@@ -113,7 +113,7 @@ class PropelExtension extends LoaderExtension
}
}
- $configuration->getDefinition('propel.configuration')->setArguments(array($c));
+ $container->getDefinition('propel.configuration')->setArguments(array($c));
}
/**
diff --git a/src/Symfony/Bundle/PropelBundle/PropelBundle.php b/src/Symfony/Bundle/PropelBundle/PropelBundle.php
index a1d2470f0e..62574d392f 100644
--- a/src/Symfony/Bundle/PropelBundle/PropelBundle.php
+++ b/src/Symfony/Bundle/PropelBundle/PropelBundle.php
@@ -16,7 +16,7 @@ class PropelBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Bundle/SwiftmailerBundle/DependencyInjection/SwiftmailerExtension.php b/src/Symfony/Bundle/SwiftmailerBundle/DependencyInjection/SwiftmailerExtension.php
index f57e9d9379..eedc6a89db 100644
--- a/src/Symfony/Bundle/SwiftmailerBundle/DependencyInjection/SwiftmailerExtension.php
+++ b/src/Symfony/Bundle/SwiftmailerBundle/DependencyInjection/SwiftmailerExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Bundle\SwiftmailerBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Reference;
/*
@@ -41,20 +41,20 @@ class SwiftMailerExtension extends LoaderExtension
*
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function mailerLoad($config, BuilderConfiguration $configuration)
+ public function mailerLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('swiftmailer.mailer')) {
+ if (!$container->hasDefinition('swiftmailer.mailer')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['mailer']));
- $configuration->setAlias('mailer', 'swiftmailer.mailer');
+ $container->merge($loader->load($this->resources['mailer']));
+ $container->setAlias('mailer', 'swiftmailer.mailer');
}
$r = new \ReflectionClass('Swift_Message');
- $configuration->setParameter('swiftmailer.base_dir', dirname(dirname(dirname($r->getFilename()))));
+ $container->setParameter('swiftmailer.base_dir', dirname(dirname(dirname($r->getFilename()))));
- $transport = $configuration->getParameter('swiftmailer.transport.name');
+ $transport = $container->getParameter('swiftmailer.transport.name');
if (array_key_exists('transport', $config)) {
if (null === $config['transport']) {
$transport = 'null';
@@ -67,10 +67,10 @@ class SwiftMailerExtension extends LoaderExtension
$transport = $config['transport'];
}
- $configuration->setParameter('swiftmailer.transport.name', $transport);
+ $container->setParameter('swiftmailer.transport.name', $transport);
}
- $configuration->setAlias('swiftmailer.transport', 'swiftmailer.transport.'.$transport);
+ $container->setAlias('swiftmailer.transport', 'swiftmailer.transport.'.$transport);
if (isset($config['encryption']) && 'ssl' === $config['encryption'] && !isset($config['port'])) {
$config['port'] = 465;
@@ -78,7 +78,7 @@ class SwiftMailerExtension extends LoaderExtension
foreach (array('encryption', 'port', 'host', 'username', 'password', 'auth_mode') as $key) {
if (isset($config[$key])) {
- $configuration->setParameter('swiftmailer.transport.'.$transport.'.'.$key, $config[$key]);
+ $container->setParameter('swiftmailer.transport.'.$transport.'.'.$key, $config[$key]);
}
}
@@ -86,24 +86,24 @@ class SwiftMailerExtension extends LoaderExtension
if (isset($config['spool'])) {
$type = isset($config['type']) ? $config['type'] : 'file';
- $configuration->setAlias('swiftmailer.transport.real', 'swiftmailer.transport.'.$transport);
- $configuration->setAlias('swiftmailer.transport', 'swiftmailer.transport.spool');
- $configuration->setAlias('swiftmailer.spool', 'swiftmailer.spool.'.$type);
+ $container->setAlias('swiftmailer.transport.real', 'swiftmailer.transport.'.$transport);
+ $container->setAlias('swiftmailer.transport', 'swiftmailer.transport.spool');
+ $container->setAlias('swiftmailer.spool', 'swiftmailer.spool.'.$type);
foreach (array('path') as $key) {
if (isset($config['spool'][$key])) {
- $configuration->setParameter('swiftmailer.spool.'.$type.'.'.$key, $config['spool'][$key]);
+ $container->setParameter('swiftmailer.spool.'.$type.'.'.$key, $config['spool'][$key]);
}
}
}
if (isset($config['delivery_address'])) {
- $configuration->setParameter('swiftmailer.single_address', $config['delivery_address']);
- $configuration->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.redirecting')));
+ $container->setParameter('swiftmailer.single_address', $config['delivery_address']);
+ $container->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.redirecting')));
}
if (isset($config['disable_delivery']) && $config['disable_delivery']) {
- $configuration->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.blackhole')));
+ $container->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.blackhole')));
}
}
diff --git a/src/Symfony/Bundle/SwiftmailerBundle/SwiftmailerBundle.php b/src/Symfony/Bundle/SwiftmailerBundle/SwiftmailerBundle.php
index f47747ce5a..6a4529a8b3 100644
--- a/src/Symfony/Bundle/SwiftmailerBundle/SwiftmailerBundle.php
+++ b/src/Symfony/Bundle/SwiftmailerBundle/SwiftmailerBundle.php
@@ -30,7 +30,7 @@ class SwiftmailerBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php b/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php
index 4c6d7ed9c4..19f779cf2b 100644
--- a/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php
+++ b/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Bundle\TwigBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -28,16 +28,16 @@ class TwigExtension extends LoaderExtension
* Loads the Twig configuration.
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function configLoad($config, BuilderConfiguration $configuration)
+ public function configLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('twig')) {
+ if (!$container->hasDefinition('twig')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load('twig.xml'));
+ $container->merge($loader->load('twig.xml'));
}
- $configuration->setParameter('twig.options', array_replace($configuration->getParameter('twig.options'), $config));
+ $container->setParameter('twig.options', array_replace($container->getParameter('twig.options'), $config));
}
/**
diff --git a/src/Symfony/Bundle/TwigBundle/TwigBundle.php b/src/Symfony/Bundle/TwigBundle/TwigBundle.php
index 9aaa69f6c4..d46590b580 100644
--- a/src/Symfony/Bundle/TwigBundle/TwigBundle.php
+++ b/src/Symfony/Bundle/TwigBundle/TwigBundle.php
@@ -6,7 +6,7 @@ use Symfony\Framework\Bundle\Bundle;
use Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Components\DependencyInjection\Loader\Loader;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Bundle\TwigBundle\DependencyInjection\TwigExtension;
/*
@@ -32,7 +32,7 @@ class TwigBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Bundle/ZendBundle/DependencyInjection/ZendExtension.php b/src/Symfony/Bundle/ZendBundle/DependencyInjection/ZendExtension.php
index d70c3bcfca..5991c1ffc6 100644
--- a/src/Symfony/Bundle/ZendBundle/DependencyInjection/ZendExtension.php
+++ b/src/Symfony/Bundle/ZendBundle/DependencyInjection/ZendExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Bundle\ZendBundle\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -36,22 +36,22 @@ class ZendExtension extends LoaderExtension
*
*
* @param array $config An array of configuration settings
- * @param \Symfony\Components\DependencyInjection\BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param \Symfony\Components\DependencyInjection\ContainerBuilder $container A ContainerBuilder instance
*/
- public function loggerLoad($config, BuilderConfiguration $configuration)
+ public function loggerLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('zend.logger')) {
+ if (!$container->hasDefinition('zend.logger')) {
$loader = new XmlFileLoader(__DIR__.'/../Resources/config');
- $configuration->merge($loader->load($this->resources['logger']));
- $configuration->setAlias('logger', 'zend.logger');
+ $container->merge($loader->load($this->resources['logger']));
+ $container->setAlias('logger', 'zend.logger');
}
if (isset($config['priority'])) {
- $configuration->setParameter('zend.logger.priority', is_int($config['priority']) ? $config['priority'] : constant('\\Zend\\Log\\Logger::'.strtoupper($config['priority'])));
+ $container->setParameter('zend.logger.priority', is_int($config['priority']) ? $config['priority'] : constant('\\Zend\\Log\\Logger::'.strtoupper($config['priority'])));
}
if (isset($config['path'])) {
- $configuration->setParameter('zend.logger.path', $config['path']);
+ $container->setParameter('zend.logger.path', $config['path']);
}
}
diff --git a/src/Symfony/Bundle/ZendBundle/ZendBundle.php b/src/Symfony/Bundle/ZendBundle/ZendBundle.php
index a1f62c5749..9f3d4d5ef4 100644
--- a/src/Symfony/Bundle/ZendBundle/ZendBundle.php
+++ b/src/Symfony/Bundle/ZendBundle/ZendBundle.php
@@ -31,7 +31,7 @@ class ZendBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Components/DependencyInjection/BuilderConfiguration.php b/src/Symfony/Components/DependencyInjection/BuilderConfiguration.php
deleted file mode 100644
index 97db4f236e..0000000000
--- a/src/Symfony/Components/DependencyInjection/BuilderConfiguration.php
+++ /dev/null
@@ -1,375 +0,0 @@
-
- *
- * This source file is subject to the MIT license that is bundled
- * with this source code in the file LICENSE.
- */
-
-/**
- * A BuilderConfiguration is a consistent set of definitions and parameters.
- *
- * @package Symfony
- * @subpackage Components_DependencyInjection
- * @author Fabien Potencier
- */
-class BuilderConfiguration
-{
- protected $definitions;
- protected $parameterBag;
- protected $aliases;
- protected $resources;
- protected $extensions;
-
- public function __construct(array $definitions = array(), ParameterBagInterface $parameterBag = null)
- {
- $this->aliases = array();
- $this->resources = array();
- $this->extensions = array();
-
- $this->setDefinitions($definitions);
- $this->parameterBag = null === $parameterBag ? new ParameterBag() : $parameterBag;
- }
-
- /**
- * Returns an array of resources loaded to build this configuration.
- *
- * @return ResourceInterface[] An array of resources
- */
- public function getResources()
- {
- return array_unique($this->resources);
- }
-
- /**
- * Adds a resource for this configuration.
- *
- * @param ResourceInterface $resource A resource instance
- *
- * @return BuilderConfiguration The current instance
- */
- public function addResource(ResourceInterface $resource)
- {
- $this->resources[] = $resource;
-
- return $this;
- }
-
- /**
- * Merges a BuilderConfiguration with the current one.
- *
- * @param BuilderConfiguration $configuration
- *
- * @return BuilderConfiguration The current instance
- */
- public function merge(BuilderConfiguration $configuration = null)
- {
- if (null === $configuration) {
- return;
- }
-
- $this->addDefinitions($configuration->getDefinitions());
- $this->addAliases($configuration->getAliases());
- $this->parameterBag->add($configuration->getParameterBag()->all());
-
- foreach ($configuration->getResources() as $resource) {
- $this->addResource($resource);
- }
-
- return $this;
- }
-
- /**
- * Loads the configuration for an extension.
- *
- * @param LoaderExtensionInterface $extension A LoaderExtensionInterface instance
- * @param string $tag The extension tag to load (without the namespace - namespace.tag)
- * @param array $values An array of values that customizes the extension
- *
- * @return BuilderConfiguration The current instance
- */
- public function loadFromExtension(LoaderExtensionInterface $extension, $tag, array $values = array())
- {
- $namespace = $extension->getAlias();
-
- $this->addObjectResource($extension);
-
- if (!isset($this->extensions[$namespace])) {
- $this->extensions[$namespace] = new self();
-
- $r = new \ReflectionObject($extension);
- $this->extensions[$namespace]->addResource(new FileResource($r->getFileName()));
- }
-
- $extension->load($tag, $values, $this->extensions[$namespace]);
-
- return $this;
- }
-
- /**
- * Adds the object class hierarchy as resources.
- *
- * @param object $object An object instance
- */
- public function addObjectResource($object)
- {
- $parent = new \ReflectionObject($object);
- $this->addResource(new FileResource($parent->getFileName()));
- while ($parent = $parent->getParentClass()) {
- $this->addResource(new FileResource($parent->getFileName()));
- }
- }
-
- /**
- * Merges the extension configuration.
- *
- * @return BuilderConfiguration The current instance
- */
- public function mergeExtensionsConfiguration()
- {
- foreach ($this->extensions as $name => $configuration) {
- $this->merge($configuration);
- }
-
- $this->extensions = array();
-
- return $this;
- }
-
- /**
- * Gets the parameter bag.
- *
- * @return Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface A ParameterBagInterface instance
- */
- public function getParameterBag()
- {
- return $this->parameterBag;
- }
-
- /**
- * Gets a parameter.
- *
- * @param string $name The parameter name
- *
- * @return mixed The parameter value
- *
- * @throws \InvalidArgumentException if the parameter is not defined
- */
- public function getParameter($name)
- {
- return $this->parameterBag->get($name);
- }
-
- /**
- * Sets a parameter.
- *
- * @param string $name The parameter name
- * @param mixed $parameters The parameter value
- */
- public function setParameter($name, $value)
- {
- $this->parameterBag->set($name, $value);
- }
-
- /**
- * Checks if a parameter is defined.
- *
- * @param string $name The parameter name
- */
- public function hasParameter($name)
- {
- return $this->parameterBag->has($name);
- }
-
- /**
- * Sets an alias for an existing service.
- *
- * @param string $alias The alias to create
- * @param string $id The service to alias
- *
- * @return BuilderConfiguration The current instance
- */
- public function setAlias($alias, $id)
- {
- unset($this->definitions[$alias]);
-
- $this->aliases[$alias] = $id;
-
- return $this;
- }
-
- /**
- * Adds definition aliases.
- *
- * @param array $aliases An array of aliases
- *
- * @return BuilderConfiguration The current instance
- */
- public function addAliases(array $aliases)
- {
- foreach ($aliases as $alias => $id) {
- $this->setAlias($alias, $id);
- }
-
- return $this;
- }
-
- /**
- * Gets all defined aliases.
- *
- * @return array An array of aliases
- */
- public function getAliases()
- {
- return $this->aliases;
- }
-
- /**
- * Returns true if a service alias exists.
- *
- * @param string $alias The alias
- *
- * @return Boolean true if the alias exists, false otherwise
- */
- public function hasAlias($alias)
- {
- return array_key_exists($alias, $this->aliases);
- }
-
- /**
- * Gets the service id for a given alias.
- *
- * @param string $alias The alias
- *
- * @return string The aliased id
- *
- * @throws \InvalidArgumentException if the service alias does not exist
- */
- public function getAlias($alias)
- {
- if (!$this->hasAlias($alias)) {
- throw new \InvalidArgumentException(sprintf('The service alias "%s" does not exist.', $alias));
- }
-
- return $this->aliases[$alias];
- }
-
- /**
- * Sets a definition.
- *
- * @param string $id The identifier
- * @param Definition $definition A Definition instance
- *
- * @return BuilderConfiguration The current instance
- */
- public function setDefinition($id, Definition $definition)
- {
- unset($this->aliases[$id]);
-
- $this->definitions[$id] = $definition;
-
- return $this;
- }
-
- /**
- * Adds the definitions.
- *
- * @param Definition[] $definitions An array of definitions
- *
- * @return BuilderConfiguration The current instance
- */
- public function addDefinitions(array $definitions)
- {
- foreach ($definitions as $id => $definition) {
- $this->setDefinition($id, $definition);
- }
-
- return $this;
- }
-
- /**
- * Sets the definitions.
- *
- * @param array $definitions An array of definitions
- *
- * @return BuilderConfiguration The current instance
- */
- public function setDefinitions(array $definitions)
- {
- $this->definitions = array();
- $this->addDefinitions($definitions);
-
- return $this;
- }
-
- /**
- * Gets all definitions.
- *
- * @return array An array of Definition instances
- */
- public function getDefinitions()
- {
- return $this->definitions;
- }
-
- /**
- * Returns true if a service definition exists under the given identifier.
- *
- * @param string $id The service identifier
- *
- * @return Boolean true if the service definition exists, false otherwise
- */
- public function hasDefinition($id)
- {
- return array_key_exists($id, $this->definitions);
- }
-
- /**
- * Gets a service definition.
- *
- * @param string $id The service identifier
- *
- * @return Definition A Definition instance
- *
- * @throws \InvalidArgumentException if the service definition does not exist
- */
- public function getDefinition($id)
- {
- if (!$this->hasDefinition($id)) {
- throw new \InvalidArgumentException(sprintf('The service definition "%s" does not exist.', $id));
- }
-
- return $this->definitions[$id];
- }
-
- /**
- * Gets a service definition by id or alias.
- *
- * The method "unaliases" recursively to return a Definition instance.
- *
- * @param string $id The service identifier or alias
- *
- * @return Definition A Definition instance
- *
- * @throws \InvalidArgumentException if the service definition does not exist
- */
- public function findDefinition($id)
- {
- if ($this->hasAlias($id)) {
- return $this->findDefinition($this->getAlias($id));
- }
-
- return $this->getDefinition($id);
- }
-}
diff --git a/src/Symfony/Components/DependencyInjection/Builder.php b/src/Symfony/Components/DependencyInjection/ContainerBuilder.php
similarity index 74%
rename from src/Symfony/Components/DependencyInjection/Builder.php
rename to src/Symfony/Components/DependencyInjection/ContainerBuilder.php
index 36aeb9f4cd..05158fb803 100644
--- a/src/Symfony/Components/DependencyInjection/Builder.php
+++ b/src/Symfony/Components/DependencyInjection/ContainerBuilder.php
@@ -2,6 +2,10 @@
namespace Symfony\Components\DependencyInjection;
+use Symfony\Components\DependencyInjection\Loader\LoaderExtensionInterface;
+use Symfony\Components\DependencyInjection\Resource\ResourceInterface;
+use Symfony\Components\DependencyInjection\Resource\FileResource;
+
/*
* This file is part of the Symfony framework.
*
@@ -12,17 +16,84 @@ namespace Symfony\Components\DependencyInjection;
*/
/**
- * Builder is a DI container that provides an interface to build the services.
+ * ContainerBuilder is a DI container that provides an API to easily describe services.
*
* @package Symfony
* @subpackage Components_DependencyInjection
* @author Fabien Potencier
*/
-class Builder extends Container implements AnnotatedContainerInterface
+class ContainerBuilder extends Container implements AnnotatedContainerInterface
{
protected $definitions = array();
protected $aliases = array();
protected $loading = array();
+ protected $resources = array();
+ protected $extensions = array();
+
+ /**
+ * Returns an array of resources loaded to build this configuration.
+ *
+ * @return ResourceInterface[] An array of resources
+ */
+ public function getResources()
+ {
+ return array_unique($this->resources);
+ }
+
+ /**
+ * Adds a resource for this configuration.
+ *
+ * @param ResourceInterface $resource A resource instance
+ *
+ * @return ContainerBuilder The current instance
+ */
+ public function addResource(ResourceInterface $resource)
+ {
+ $this->resources[] = $resource;
+
+ return $this;
+ }
+
+ /**
+ * Adds the object class hierarchy as resources.
+ *
+ * @param object $object An object instance
+ */
+ public function addObjectResource($object)
+ {
+ $parent = new \ReflectionObject($object);
+ $this->addResource(new FileResource($parent->getFileName()));
+ while ($parent = $parent->getParentClass()) {
+ $this->addResource(new FileResource($parent->getFileName()));
+ }
+ }
+
+ /**
+ * Loads the configuration for an extension.
+ *
+ * @param LoaderExtensionInterface $extension A LoaderExtensionInterface instance
+ * @param string $tag The extension tag to load (without the namespace - namespace.tag)
+ * @param array $values An array of values that customizes the extension
+ *
+ * @return ContainerBuilder The current instance
+ */
+ public function loadFromExtension(LoaderExtensionInterface $extension, $tag, array $values = array())
+ {
+ $namespace = $extension->getAlias();
+
+ $this->addObjectResource($extension);
+
+ if (!isset($this->extensions[$namespace])) {
+ $this->extensions[$namespace] = new self($this->parameterBag);
+
+ $r = new \ReflectionObject($extension);
+ $this->extensions[$namespace]->addResource(new FileResource($r->getFileName()));
+ }
+
+ $extension->load($tag, $values, $this->extensions[$namespace]);
+
+ return $this;
+ }
/**
* Sets a service.
@@ -97,7 +168,7 @@ class Builder extends Container implements AnnotatedContainerInterface
}
/**
- * Merges a BuilderConfiguration with the current Builder configuration.
+ * Merges a ContainerBuilder with the current ContainerBuilder configuration.
*
* Service definitions overrides the current defined ones.
*
@@ -105,33 +176,65 @@ class Builder extends Container implements AnnotatedContainerInterface
* the parameters passed to the container constructor to have precedence
* over the loaded ones.
*
- * $container = new Builder(array('foo' => 'bar'));
+ * $container = new ContainerBuilder(array('foo' => 'bar'));
* $loader = new LoaderXXX($container);
* $loader->load('resource_name');
* $container->register('foo', new stdClass());
*
* In the above example, even if the loaded resource defines a foo
- * parameter, the value will still be 'bar' as defined in the builder
+ * parameter, the value will still be 'bar' as defined in the ContainerBuilder
* constructor.
*/
- public function merge(BuilderConfiguration $configuration = null)
+ public function merge(ContainerBuilder $container)
{
- if (null === $configuration) {
- return;
+ $this->addDefinitions($container->getDefinitions());
+ $this->addAliases($container->getAliases());
+ $this->parameterBag->add($container->getParameterBag()->all());
+
+ foreach ($container->getResources() as $resource) {
+ $this->addResource($resource);
}
- $this->addDefinitions($configuration->getDefinitions());
- $this->addAliases($configuration->getAliases());
-
- $parameterBag = $this->getParameterBag();
- $currentParameters = $parameterBag->all();
- foreach ($configuration->getParameterBag()->all() as $key => $value) {
- $parameterBag->set($key, $value);
+ foreach ($container->getExtensionContainers() as $name => $container) {
+ if (isset($this->extensions[$name])) {
+ $this->extensions[$name]->merge($container);
+ } else {
+ $this->extensions[$name] = $container;
+ }
}
- $parameterBag->add($currentParameters);
+ }
- foreach ($parameterBag->all() as $key => $value) {
- $parameterBag->set($key, self::resolveValue($value, $this->getParameterBag()->all()));
+ /**
+ * Returns the containers for the registered extensions.
+ *
+ * @return LoaderExtensionInterface[] An array of extension containers
+ */
+ public function getExtensionContainers()
+ {
+ return $this->extensions;
+ }
+
+ /**
+ * Commits the extension configuration into the main configuration
+ * and resolves parameter values.
+ */
+ public function commit()
+ {
+ $parameters = $this->parameterBag->all();
+ $definitions = $this->definitions;
+ $aliases = $this->aliases;
+
+ foreach ($this->extensions as $container) {
+ $this->merge($container);
+ }
+ $this->extensions = array();
+
+ $this->addDefinitions($definitions);
+ $this->addAliases($aliases);
+ $this->parameterBag->add($parameters);
+
+ foreach ($this->parameterBag->all() as $key => $value) {
+ $this->parameterBag->set($key, self::resolveValue($value, $this->getParameterBag()->all()));
}
}
@@ -313,6 +416,26 @@ class Builder extends Container implements AnnotatedContainerInterface
return $this->definitions[$id];
}
+ /**
+ * Gets a service definition by id or alias.
+ *
+ * The method "unaliases" recursively to return a Definition instance.
+ *
+ * @param string $id The service identifier or alias
+ *
+ * @return Definition A Definition instance
+ *
+ * @throws \InvalidArgumentException if the service definition does not exist
+ */
+ public function findDefinition($id)
+ {
+ if ($this->hasAlias($id)) {
+ return $this->findDefinition($this->getAlias($id));
+ }
+
+ return $this->getDefinition($id);
+ }
+
/**
* Creates a service for a service definition.
*
diff --git a/src/Symfony/Components/DependencyInjection/Dumper/Dumper.php b/src/Symfony/Components/DependencyInjection/Dumper/Dumper.php
index 9993dc378b..910c9234d0 100644
--- a/src/Symfony/Components/DependencyInjection/Dumper/Dumper.php
+++ b/src/Symfony/Components/DependencyInjection/Dumper/Dumper.php
@@ -2,7 +2,7 @@
namespace Symfony\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -27,9 +27,9 @@ abstract class Dumper implements DumperInterface
/**
* Constructor.
*
- * @param Builder $container The service container to dump
+ * @param ContainerBuilder $container The service container to dump
*/
- public function __construct(Builder $container)
+ public function __construct(ContainerBuilder $container)
{
$this->container = $container;
}
diff --git a/src/Symfony/Components/DependencyInjection/Dumper/GraphvizDumper.php b/src/Symfony/Components/DependencyInjection/Dumper/GraphvizDumper.php
index f44a5a109e..65e95fbbc0 100644
--- a/src/Symfony/Components/DependencyInjection/Dumper/GraphvizDumper.php
+++ b/src/Symfony/Components/DependencyInjection/Dumper/GraphvizDumper.php
@@ -5,7 +5,7 @@ namespace Symfony\Components\DependencyInjection\Dumper;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Reference;
use Symfony\Components\DependencyInjection\Parameter;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -159,7 +159,7 @@ class GraphvizDumper extends Dumper
protected function getValue($value, $default = '')
{
- return Builder::resolveValue($value, $this->container->getParameterBag()->all());
+ return ContainerBuilder::resolveValue($value, $this->container->getParameterBag()->all());
}
protected function startDot()
diff --git a/src/Symfony/Components/DependencyInjection/Dumper/PhpDumper.php b/src/Symfony/Components/DependencyInjection/Dumper/PhpDumper.php
index 5923f5eb1a..9faecef2f1 100644
--- a/src/Symfony/Components/DependencyInjection/Dumper/PhpDumper.php
+++ b/src/Symfony/Components/DependencyInjection/Dumper/PhpDumper.php
@@ -2,7 +2,7 @@
namespace Symfony\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Container;
use Symfony\Components\DependencyInjection\ContainerInterface;
use Symfony\Components\DependencyInjection\Reference;
@@ -354,7 +354,7 @@ EOF;
protected function wrapServiceConditionals($value, $code)
{
- if (!$services = Builder::getServiceConditionals($value)) {
+ if (!$services = ContainerBuilder::getServiceConditionals($value)) {
return $code;
}
diff --git a/src/Symfony/Components/DependencyInjection/Loader/IniFileLoader.php b/src/Symfony/Components/DependencyInjection/Loader/IniFileLoader.php
index 7399b10784..0499969a46 100644
--- a/src/Symfony/Components/DependencyInjection/Loader/IniFileLoader.php
+++ b/src/Symfony/Components/DependencyInjection/Loader/IniFileLoader.php
@@ -2,7 +2,7 @@
namespace Symfony\Components\DependencyInjection\Loader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Resource\FileResource;
/*
@@ -26,23 +26,22 @@ class IniFileLoader extends FileLoader
/**
* Loads a resource.
*
- * @param mixed $resource The resource
- * @param Boolean $main Whether this is the main load() call
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance to use for the configuration
+ * @param mixed $resource The resource
+ * @param ContainerBuilder $container A ContainerBuilder instance to use for the configuration
*
- * @return BuilderConfiguration A BuilderConfiguration instance
+ * @return ContainerBuilder A ContainerBuilder instance
*
* @throws \InvalidArgumentException When ini file is not valid
*/
- public function load($file, $main = true, BuilderConfiguration $configuration = null)
+ public function load($file, ContainerBuilder $container = null)
{
$path = $this->findFile($file);
- if (null === $configuration) {
- $configuration = new BuilderConfiguration();
+ if (null === $container) {
+ $container = new ContainerBuilder();
}
- $configuration->addResource(new FileResource($path));
+ $container->addResource(new FileResource($path));
$result = parse_ini_file($path, true);
if (false === $result || array() === $result) {
@@ -51,10 +50,10 @@ class IniFileLoader extends FileLoader
if (isset($result['parameters']) && is_array($result['parameters'])) {
foreach ($result['parameters'] as $key => $value) {
- $configuration->setParameter($key, $value);
+ $container->setParameter($key, $value);
}
}
- return $configuration;
+ return $container;
}
}
diff --git a/src/Symfony/Components/DependencyInjection/Loader/LoaderExtension.php b/src/Symfony/Components/DependencyInjection/Loader/LoaderExtension.php
index 2d2959f1a3..0decfcd35e 100644
--- a/src/Symfony/Components/DependencyInjection/Loader/LoaderExtension.php
+++ b/src/Symfony/Components/DependencyInjection/Loader/LoaderExtension.php
@@ -2,7 +2,7 @@
namespace Symfony\Components\DependencyInjection\Loader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -22,29 +22,16 @@ use Symfony\Components\DependencyInjection\BuilderConfiguration;
*/
abstract class LoaderExtension implements LoaderExtensionInterface
{
- protected $resources = array();
-
- /**
- * Sets a configuration entry point for the given extension name.
- *
- * @param string $name The configuration extension name
- * @param mixed $resource A resource
- */
- public function setConfiguration($name, $resource)
- {
- $this->resources[$name] = $resource;
- }
-
/**
* Loads a specific configuration.
*
- * @param string $tag The tag name
- * @param array $config An array of configuration values
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param string $tag The tag name
+ * @param array $config An array of configuration values
+ * @param ContainerBuilder $configuration A ContainerBuilder instance
*
* @throws \InvalidArgumentException When provided tag is not defined in this extension
*/
- public function load($tag, array $config, BuilderConfiguration $configuration)
+ public function load($tag, array $config, ContainerBuilder $configuration)
{
if (!method_exists($this, $method = $tag.'Load')) {
throw new \InvalidArgumentException(sprintf('The tag "%s:%s" is not defined in the "%s" extension.', $this->getAlias(), $tag, $this->getAlias()));
diff --git a/src/Symfony/Components/DependencyInjection/Loader/LoaderExtensionInterface.php b/src/Symfony/Components/DependencyInjection/Loader/LoaderExtensionInterface.php
index 76fc86da42..6972586e00 100644
--- a/src/Symfony/Components/DependencyInjection/Loader/LoaderExtensionInterface.php
+++ b/src/Symfony/Components/DependencyInjection/Loader/LoaderExtensionInterface.php
@@ -2,7 +2,7 @@
namespace Symfony\Components\DependencyInjection\Loader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -22,26 +22,18 @@ use Symfony\Components\DependencyInjection\BuilderConfiguration;
*/
interface LoaderExtensionInterface
{
- /**
- * Sets a configuration entry point for the given extension name.
- *
- * @param string $name The configuration extension name
- * @param mixed $resource A resource
- */
- public function setConfiguration($name, $resource);
-
/**
* Loads a specific configuration.
*
- * @param string $tag The tag name
- * @param array $config An array of configuration values
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param string $tag The tag name
+ * @param array $config An array of configuration values
+ * @param ContainerBuilder $configuration A ContainerBuilder instance
*
- * @return BuilderConfiguration A BuilderConfiguration instance
+ * @return ContainerBuilder A ContainerBuilder instance
*
* @throws \InvalidArgumentException When provided tag is not defined in this extension
*/
- public function load($tag, array $config, BuilderConfiguration $configuration);
+ public function load($tag, array $config, ContainerBuilder $configuration);
/**
* Returns the namespace to be used for this extension (XML namespace).
diff --git a/src/Symfony/Components/DependencyInjection/Loader/LoaderInterface.php b/src/Symfony/Components/DependencyInjection/Loader/LoaderInterface.php
index c7312ef098..ac5ac2792d 100644
--- a/src/Symfony/Components/DependencyInjection/Loader/LoaderInterface.php
+++ b/src/Symfony/Components/DependencyInjection/Loader/LoaderInterface.php
@@ -2,7 +2,7 @@
namespace Symfony\Components\DependencyInjection\Loader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -19,7 +19,7 @@ use Symfony\Components\DependencyInjection\BuilderConfiguration;
* $loader = new XXXLoader();
* $config = $loader->load('resource_name');
*
- * $container = new Builder();
+ * $container = new ContainerBuilder();
* $container->merge($config);
*
* @package Symfony
@@ -32,7 +32,7 @@ interface LoaderInterface
* Loads a resource.
*
* A resource can be anything that can be converted to a
- * BuilderConfiguration instance.
+ * ContainerBuilder instance.
*
* Some loaders support an array of resources as an argument to the
* constructor.
@@ -58,13 +58,12 @@ interface LoaderInterface
* If you load file1.xml and file2.xml in this order, the value of complex
* will be "foo".
*
- * @param mixed $resource The resource
- * @param Boolean $main Whether this is the main load() call
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance to use for the configuration
+ * @param mixed $resource The resource
+ * @param ContainerBuilder $container A ContainerBuilder instance to use for the configuration
*
- * @return BuilderConfiguration A BuilderConfiguration instance
+ * @return ContainerBuilder A ContainerBuilder instance
*/
- function load($resource, $main = true, BuilderConfiguration $configuration = null);
+ function load($resource, ContainerBuilder $container = null);
static function registerExtension(LoaderExtensionInterface $extension);
}
diff --git a/src/Symfony/Components/DependencyInjection/Loader/XmlFileLoader.php b/src/Symfony/Components/DependencyInjection/Loader/XmlFileLoader.php
index 0ac24b26d4..a13d44fb8b 100644
--- a/src/Symfony/Components/DependencyInjection/Loader/XmlFileLoader.php
+++ b/src/Symfony/Components/DependencyInjection/Loader/XmlFileLoader.php
@@ -4,7 +4,7 @@ namespace Symfony\Components\DependencyInjection\Loader;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Reference;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\SimpleXMLElement;
use Symfony\Components\DependencyInjection\Resource\FileResource;
@@ -29,67 +29,62 @@ class XmlFileLoader extends FileLoader
/**
* Loads an array of XML files.
*
- * @param mixed $resource The resource
- * @param Boolean $main Whether this is the main load() call
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance to use for the configuration
+ * @param mixed $resource The resource
+ * @param ContainerBuilder $container A ContainerBuilder instance to use for the configuration
*
- * @return BuilderConfiguration A BuilderConfiguration instance
+ * @return ContainerBuilder A ContainerBuilder instance
*/
- public function load($file, $main = true, BuilderConfiguration $configuration = null)
+ public function load($file, ContainerBuilder $container = null)
{
$path = $this->findFile($file);
$xml = $this->parseFile($path);
- if (null === $configuration) {
- $configuration = new BuilderConfiguration();
+ if (null === $container) {
+ $container = new ContainerBuilder();
}
- $configuration->addResource(new FileResource($path));
+ $container->addResource(new FileResource($path));
// anonymous services
- $xml = $this->processAnonymousServices($configuration, $xml, $file);
+ $xml = $this->processAnonymousServices($container, $xml, $file);
// imports
- $this->parseImports($configuration, $xml, $file);
+ $this->parseImports($container, $xml, $file);
// extensions
- $this->loadFromExtensions($configuration, $xml);
-
- if ($main) {
- $configuration->mergeExtensionsConfiguration();
- }
+ $this->loadFromExtensions($container, $xml);
// parameters
- $this->parseParameters($configuration, $xml, $file);
+ $this->parseParameters($container, $xml, $file);
// services
- $this->parseDefinitions($configuration, $xml, $file);
+ $this->parseDefinitions($container, $xml, $file);
- return $configuration;
+ return $container;
}
- protected function parseParameters(BuilderConfiguration $configuration, $xml, $file)
+ protected function parseParameters(ContainerBuilder $container, $xml, $file)
{
if (!$xml->parameters) {
return;
}
- $configuration->getParameterBag()->add($xml->parameters->getArgumentsAsPhp('parameter'));
+ $container->getParameterBag()->add($xml->parameters->getArgumentsAsPhp('parameter'));
}
- protected function parseImports(BuilderConfiguration $configuration, $xml, $file)
+ protected function parseImports(ContainerBuilder $container, $xml, $file)
{
if (!$xml->imports) {
return;
}
foreach ($xml->imports->import as $import) {
- $this->parseImport($configuration, $import, $file);
+ $this->parseImport($container, $import, $file);
}
}
- protected function parseImport(BuilderConfiguration $configuration, $import, $file)
+ protected function parseImport(ContainerBuilder $container, $import, $file)
{
$class = null;
if (isset($import['class']) && $import['class'] !== get_class($this)) {
@@ -110,24 +105,24 @@ class XmlFileLoader extends FileLoader
$importedFile = $this->getAbsolutePath((string) $import['resource'], dirname($file));
- return $loader->load($importedFile, false, $configuration);
+ return $loader->load($importedFile, $container);
}
- protected function parseDefinitions(BuilderConfiguration $configuration, $xml, $file)
+ protected function parseDefinitions(ContainerBuilder $container, $xml, $file)
{
if (!$xml->services) {
return;
}
foreach ($xml->services->service as $service) {
- $this->parseDefinition($configuration, (string) $service['id'], $service, $file);
+ $this->parseDefinition($container, (string) $service['id'], $service, $file);
}
}
- protected function parseDefinition(BuilderConfiguration $configuration, $id, $service, $file)
+ protected function parseDefinition(ContainerBuilder $container, $id, $service, $file)
{
if ((string) $service['alias']) {
- $configuration->setAlias($id, (string) $service['alias']);
+ $container->setAlias($id, (string) $service['alias']);
return;
}
@@ -178,7 +173,7 @@ class XmlFileLoader extends FileLoader
$definition->addAnnotation((string) $annotation['name'], $parameters);
}
- $configuration->setDefinition($id, $definition);
+ $container->setDefinition($id, $definition);
}
/**
@@ -199,7 +194,7 @@ class XmlFileLoader extends FileLoader
return simplexml_import_dom($dom, 'Symfony\\Components\\DependencyInjection\\SimpleXMLElement');
}
- protected function processAnonymousServices(BuilderConfiguration $configuration, $xml, $file)
+ protected function processAnonymousServices(ContainerBuilder $container, $xml, $file)
{
$definitions = array();
$count = 0;
@@ -218,7 +213,7 @@ class XmlFileLoader extends FileLoader
// resolve definitions
krsort($definitions);
foreach ($definitions as $id => $def) {
- $this->parseDefinition($configuration, $id, $def[0], $def[1]);
+ $this->parseDefinition($container, $id, $def[0], $def[1]);
$oNode = dom_import_simplexml($def[0]);
$oNode->parentNode->removeChild($oNode);
@@ -321,7 +316,7 @@ EOF
return $errors;
}
- protected function loadFromExtensions(BuilderConfiguration $configuration, $xml)
+ protected function loadFromExtensions(ContainerBuilder $container, $xml)
{
foreach (dom_import_simplexml($xml)->childNodes as $node) {
if (!$node instanceof \DOMElement || $node->namespaceURI === 'http://www.symfony-project.org/schema/dic/services') {
@@ -333,7 +328,7 @@ EOF
$values = array();
}
- $configuration->loadFromExtension($this->getExtension($node->namespaceURI), $node->localName, $values);
+ $container->loadFromExtension($this->getExtension($node->namespaceURI), $node->localName, $values);
}
}
diff --git a/src/Symfony/Components/DependencyInjection/Loader/YamlFileLoader.php b/src/Symfony/Components/DependencyInjection/Loader/YamlFileLoader.php
index 2ba07baa07..544885701b 100644
--- a/src/Symfony/Components/DependencyInjection/Loader/YamlFileLoader.php
+++ b/src/Symfony/Components/DependencyInjection/Loader/YamlFileLoader.php
@@ -5,7 +5,7 @@ namespace Symfony\Components\DependencyInjection\Loader;
use Symfony\Components\DependencyInjection\ContainerInterface;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Reference;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Resource\FileResource;
use Symfony\Components\Yaml\Yaml;
@@ -32,63 +32,58 @@ class YamlFileLoader extends FileLoader
/**
* Loads an array of Yaml files.
*
- * @param mixed $resource The resource
- * @param Boolean $main Whether this is the main load() call
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance to use for the configuration
+ * @param mixed $resource The resource
+ * @param ContainerBuilder $container A ContainerBuilder instance to use for the configuration
*
- * @return BuilderConfiguration A BuilderConfiguration instance
+ * @return ContainerBuilder A ContainerBuilder instance
*/
- public function load($file, $main = true, BuilderConfiguration $configuration = null)
+ public function load($file, ContainerBuilder $container = null)
{
$path = $this->findFile($file);
$content = $this->loadFile($path);
- if (null === $configuration) {
- $configuration = new BuilderConfiguration();
+ if (null === $container) {
+ $container = new ContainerBuilder();
}
- $configuration->addResource(new FileResource($path));
+ $container->addResource(new FileResource($path));
if (!$content) {
- return $configuration;
+ return $container;
}
// imports
- $this->parseImports($configuration, $content, $file);
+ $this->parseImports($container, $content, $file);
// extensions
- $this->loadFromExtensions($configuration, $content);
-
- if ($main) {
- $configuration->mergeExtensionsConfiguration();
- }
+ $this->loadFromExtensions($container, $content);
// parameters
if (isset($content['parameters'])) {
foreach ($content['parameters'] as $key => $value) {
- $configuration->setParameter($key, $this->resolveServices($value));
+ $container->setParameter($key, $this->resolveServices($value));
}
}
// services
- $this->parseDefinitions($configuration, $content, $file);
+ $this->parseDefinitions($container, $content, $file);
- return $configuration;
+ return $container;
}
- protected function parseImports(BuilderConfiguration $configuration, $content, $file)
+ protected function parseImports(ContainerBuilder $container, $content, $file)
{
if (!isset($content['imports'])) {
return;
}
foreach ($content['imports'] as $import) {
- $this->parseImport($configuration, $import, $file);
+ $this->parseImport($container, $import, $file);
}
}
- protected function parseImport(BuilderConfiguration $configuration, $import, $file)
+ protected function parseImport(ContainerBuilder $container, $import, $file)
{
$class = null;
if (isset($import['class']) && $import['class'] !== get_class($this)) {
@@ -109,24 +104,24 @@ class YamlFileLoader extends FileLoader
$importedFile = $this->getAbsolutePath($import['resource'], dirname($file));
- return $loader->load($importedFile, false, $configuration);
+ return $loader->load($importedFile, $container);
}
- protected function parseDefinitions(BuilderConfiguration $configuration, $content, $file)
+ protected function parseDefinitions(ContainerBuilder $container, $content, $file)
{
if (!isset($content['services'])) {
return;
}
foreach ($content['services'] as $id => $service) {
- $this->parseDefinition($configuration, $id, $service, $file);
+ $this->parseDefinition($container, $id, $service, $file);
}
}
- protected function parseDefinition(BuilderConfiguration $configuration, $id, $service, $file)
+ protected function parseDefinition(ContainerBuilder $container, $id, $service, $file)
{
if (is_string($service) && 0 === strpos($service, '@')) {
- $configuration->setAlias($id, substr($service, 1));
+ $container->setAlias($id, substr($service, 1));
return;
}
@@ -180,7 +175,7 @@ class YamlFileLoader extends FileLoader
}
}
- $configuration->setDefinition($id, $definition);
+ $container->setDefinition($id, $definition);
}
protected function loadFile($file)
@@ -235,7 +230,7 @@ class YamlFileLoader extends FileLoader
return $value;
}
- protected function loadFromExtensions(BuilderConfiguration $configuration, $content)
+ protected function loadFromExtensions(ContainerBuilder $container, $content)
{
foreach ($content as $key => $values) {
if (in_array($key, array('imports', 'parameters', 'services'))) {
@@ -248,7 +243,7 @@ class YamlFileLoader extends FileLoader
$values = array();
}
- $configuration->loadFromExtension($this->getExtension($namespace), $tag, $values);
+ $container->loadFromExtension($this->getExtension($namespace), $tag, $values);
}
}
}
diff --git a/src/Symfony/Framework/Bundle/Bundle.php b/src/Symfony/Framework/Bundle/Bundle.php
index 83886399c5..ec71117693 100644
--- a/src/Symfony/Framework/Bundle/Bundle.php
+++ b/src/Symfony/Framework/Bundle/Bundle.php
@@ -35,7 +35,7 @@ abstract class Bundle implements BundleInterface
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
diff --git a/src/Symfony/Framework/Bundle/BundleInterface.php b/src/Symfony/Framework/Bundle/BundleInterface.php
index 5ef45618dd..49a693df9e 100644
--- a/src/Symfony/Framework/Bundle/BundleInterface.php
+++ b/src/Symfony/Framework/Bundle/BundleInterface.php
@@ -28,7 +28,7 @@ interface BundleInterface
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag);
diff --git a/src/Symfony/Framework/DependencyInjection/KernelExtension.php b/src/Symfony/Framework/DependencyInjection/KernelExtension.php
index 102f01cc01..07fb2b5585 100644
--- a/src/Symfony/Framework/DependencyInjection/KernelExtension.php
+++ b/src/Symfony/Framework/DependencyInjection/KernelExtension.php
@@ -4,7 +4,7 @@ namespace Symfony\Framework\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony package.
@@ -24,41 +24,41 @@ use Symfony\Components\DependencyInjection\BuilderConfiguration;
*/
class KernelExtension extends LoaderExtension
{
- public function testLoad($config, BuilderConfiguration $configuration)
+ public function testLoad($config, ContainerBuilder $container)
{
$loader = new XmlFileLoader(array(__DIR__.'/../Resources/config', __DIR__.'/Resources/config'));
- $configuration->merge($loader->load('test.xml'));
- $configuration->setParameter('kernel.include_core_classes', false);
+ $container->merge($loader->load('test.xml'));
+ $container->setParameter('kernel.include_core_classes', false);
- return $configuration;
+ return $container;
}
/**
* Loads the session configuration.
*
* @param array $config A configuration array
- * @param BuilderConfiguration $configuration A BuilderConfiguration instance
+ * @param ContainerBuilder $container A ContainerBuilder instance
*
- * @return BuilderConfiguration A BuilderConfiguration instance
+ * @return ContainerBuilder A ContainerBuilder instance
*/
- public function sessionLoad($config, BuilderConfiguration $configuration)
+ public function sessionLoad($config, ContainerBuilder $container)
{
- if (!$configuration->hasDefinition('session')) {
+ if (!$container->hasDefinition('session')) {
$loader = new XmlFileLoader(array(__DIR__.'/../Resources/config', __DIR__.'/Resources/config'));
- $configuration->merge($loader->load('session.xml'));
+ $container->merge($loader->load('session.xml'));
}
if (isset($config['default_locale'])) {
- $configuration->setParameter('session.default_locale', $config['default_locale']);
+ $container->setParameter('session.default_locale', $config['default_locale']);
}
if (isset($config['class'])) {
- $configuration->setParameter('session.class', $config['class']);
+ $container->setParameter('session.class', $config['class']);
}
foreach (array('name', 'auto_start', 'lifetime', 'path', 'domain', 'secure', 'httponly', 'cache_limiter', 'pdo.db_table') as $name) {
if (isset($config['session'][$name])) {
- $configuration->setParameter('session.options.'.$name, $config['session'][$name]);
+ $container->setParameter('session.options.'.$name, $config['session'][$name]);
}
}
@@ -68,16 +68,16 @@ class KernelExtension extends LoaderExtension
$class = 'Symfony\\Framework\\FrameworkBundle\\SessionStorage\\'.$class.'SessionStorage';
}
- $configuration->setParameter('session.session', 'session.session.'.strtolower($class));
+ $container->setParameter('session.session', 'session.session.'.strtolower($class));
}
- return $configuration;
+ return $container;
}
- public function configLoad($config, BuilderConfiguration $configuration)
+ public function configLoad($config, ContainerBuilder $container)
{
if (isset($config['charset'])) {
- $configuration->setParameter('kernel.charset', $config['charset']);
+ $container->setParameter('kernel.charset', $config['charset']);
}
if (!array_key_exists('compilation', $config)) {
@@ -113,13 +113,13 @@ class KernelExtension extends LoaderExtension
}
}
}
- $configuration->setParameter('kernel.compiled_classes', $classes);
+ $container->setParameter('kernel.compiled_classes', $classes);
if (array_key_exists('error_handler_level', $config)) {
- $configuration->setParameter('error_handler.level', $config['error_handler_level']);
+ $container->setParameter('error_handler.level', $config['error_handler_level']);
}
- return $configuration;
+ return $container;
}
/**
diff --git a/src/Symfony/Framework/Kernel.php b/src/Symfony/Framework/Kernel.php
index 3e88fa6fe2..c2f8d23bcd 100644
--- a/src/Symfony/Framework/Kernel.php
+++ b/src/Symfony/Framework/Kernel.php
@@ -3,8 +3,7 @@
namespace Symfony\Framework;
use Symfony\Components\DependencyInjection\ContainerInterface;
-use Symfony\Components\DependencyInjection\Builder;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Dumper\PhpDumper;
use Symfony\Components\DependencyInjection\Resource\FileResource;
use Symfony\Components\DependencyInjection\ParameterBag\ParameterBag;
@@ -340,18 +339,18 @@ abstract class Kernel implements HttpKernelInterface, \Serializable
{
$parameterBag = new ParameterBag($this->getKernelParameters());
- $configuration = new BuilderConfiguration();
+ $container = new ContainerBuilder($parameterBag);
foreach ($this->bundles as $bundle) {
- $configuration->merge($bundle->buildContainer($parameterBag));
+ if (null !== $c = $bundle->buildContainer($parameterBag)) {
+ $container->merge($c);
+ }
if ($this->debug) {
- $configuration->addObjectResource($bundle);
+ $container->addObjectResource($bundle);
}
}
- $configuration->merge($this->registerContainerConfiguration());
-
- $container = new Builder($parameterBag);
- $container->merge($configuration);
+ $container->merge($this->registerContainerConfiguration());
+ $container->commit();
$container->freeze();
foreach (array('cache', 'logs') as $name) {
@@ -374,10 +373,10 @@ abstract class Kernel implements HttpKernelInterface, \Serializable
$this->writeCacheFile($file, $content);
if ($this->debug) {
- $configuration->addObjectResource($this);
+ $container->addObjectResource($this);
// save the resources
- $this->writeCacheFile($this->getCacheDir().'/'.$class.'.meta', serialize($configuration->getResources()));
+ $this->writeCacheFile($this->getCacheDir().'/'.$class.'.meta', serialize($container->getResources()));
}
}
diff --git a/src/Symfony/Framework/KernelBundle.php b/src/Symfony/Framework/KernelBundle.php
index eaf8030777..8e223f7c6c 100644
--- a/src/Symfony/Framework/KernelBundle.php
+++ b/src/Symfony/Framework/KernelBundle.php
@@ -9,7 +9,7 @@ use Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Components\DependencyInjection\ContainerInterface;
use Symfony\Components\DependencyInjection\Loader\Loader;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
/*
* This file is part of the Symfony framework.
@@ -34,23 +34,23 @@ class KernelBundle extends Bundle
*
* @param \Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface $parameterBag A ParameterBagInterface instance
*
- * @return \Symfony\Components\DependencyInjection\BuilderConfiguration A BuilderConfiguration instance
+ * @return \Symfony\Components\DependencyInjection\ContainerBuilder A ContainerBuilder instance
*/
public function buildContainer(ParameterBagInterface $parameterBag)
{
Loader::registerExtension(new KernelExtension());
- $configuration = new BuilderConfiguration();
+ $container = new ContainerBuilder();
$loader = new XmlFileLoader(array(__DIR__.'/../Resources/config', __DIR__.'/Resources/config'));
- $configuration->merge($loader->load('services.xml'));
+ $container->merge($loader->load('services.xml'));
if ($parameterBag->get('kernel.debug')) {
- $configuration->merge($loader->load('debug.xml'));
- $configuration->setDefinition('event_dispatcher', $configuration->findDefinition('debug.event_dispatcher'));
+ $container->merge($loader->load('debug.xml'));
+ $container->setDefinition('event_dispatcher', $container->findDefinition('debug.event_dispatcher'));
}
- return $configuration;
+ return $container;
}
/**
diff --git a/src/Symfony/Framework/bootstrap.php b/src/Symfony/Framework/bootstrap.php
index 438d32e4b6..d11f57d3a9 100644
--- a/src/Symfony/Framework/bootstrap.php
+++ b/src/Symfony/Framework/bootstrap.php
@@ -132,7 +132,7 @@ use Symfony\Components\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Components\DependencyInjection\ContainerInterface;
use Symfony\Components\DependencyInjection\Loader\Loader;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
@@ -144,7 +144,7 @@ class KernelBundle extends Bundle
{
Loader::registerExtension(new KernelExtension());
- $configuration = new BuilderConfiguration();
+ $configuration = new ContainerBuilder();
$loader = new XmlFileLoader(array(__DIR__.'/../Resources/config', __DIR__.'/Resources/config'));
$configuration->merge($loader->load('services.xml'));
@@ -173,14 +173,14 @@ namespace Symfony\Framework\DependencyInjection;
use Symfony\Components\DependencyInjection\Loader\LoaderExtension;
use Symfony\Components\DependencyInjection\Loader\XmlFileLoader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
class KernelExtension extends LoaderExtension
{
- public function testLoad($config, BuilderConfiguration $configuration)
+ public function testLoad($config, ContainerBuilder $configuration)
{
$loader = new XmlFileLoader(array(__DIR__.'/../Resources/config', __DIR__.'/Resources/config'));
$configuration->merge($loader->load('test.xml'));
@@ -190,7 +190,7 @@ class KernelExtension extends LoaderExtension
}
- public function sessionLoad($config, BuilderConfiguration $configuration)
+ public function sessionLoad($config, ContainerBuilder $configuration)
{
if (!$configuration->hasDefinition('session')) {
$loader = new XmlFileLoader(array(__DIR__.'/../Resources/config', __DIR__.'/Resources/config'));
@@ -223,7 +223,7 @@ class KernelExtension extends LoaderExtension
return $configuration;
}
- public function configLoad($config, BuilderConfiguration $configuration)
+ public function configLoad($config, ContainerBuilder $configuration)
{
if (isset($config['charset'])) {
$configuration->setParameter('kernel.charset', $config['charset']);
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/BuilderConfigurationTest.php b/tests/Symfony/Tests/Components/DependencyInjection/BuilderConfigurationTest.php
deleted file mode 100644
index 4ed0c0b61a..0000000000
--- a/tests/Symfony/Tests/Components/DependencyInjection/BuilderConfigurationTest.php
+++ /dev/null
@@ -1,211 +0,0 @@
-
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Tests\Components\DependencyInjection;
-
-use Symfony\Components\DependencyInjection\Builder;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
-use Symfony\Components\DependencyInjection\Definition;
-use Symfony\Components\DependencyInjection\Reference;
-use Symfony\Components\DependencyInjection\Resource\FileResource;
-use Symfony\Components\DependencyInjection\ParameterBag\ParameterBag;
-
-class BuilderConfigurationTest extends \PHPUnit_Framework_TestCase
-{
- static protected $fixturesPath;
-
- static public function setUpBeforeClass()
- {
- self::$fixturesPath = __DIR__.'/Fixtures/';
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::__construct
- */
- public function testConstructor()
- {
- $definitions = array(
- 'foo' => new Definition('FooClass'),
- 'bar' => new Definition('BarClass'),
- );
- $parameters = array(
- 'foo' => 'foo',
- 'bar' => 'bar',
- );
- $configuration = new BuilderConfiguration($definitions, new ParameterBag($parameters));
- $this->assertEquals($definitions, $configuration->getDefinitions(), '__construct() takes an array of definitions as its first argument');
- $this->assertEquals($parameters, $configuration->getParameterBag()->all(), '__construct() takes a ParameterBag instance as its second argument');
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::merge
- */
- public function testMerge()
- {
- $configuration = new BuilderConfiguration();
- $configuration->merge(null);
- $this->assertEquals(array(), $configuration->getParameterBag()->all(), '->merge() accepts null as an argument');
- $this->assertEquals(array(), $configuration->getDefinitions(), '->merge() accepts null as an argument');
-
- $configuration = new BuilderConfiguration(array(), new ParameterBag(array('bar' => 'foo')));
- $configuration1 = new BuilderConfiguration(array(), new ParameterBag(array('foo' => 'bar')));
- $configuration->merge($configuration1);
- $this->assertEquals(array('bar' => 'foo', 'foo' => 'bar'), $configuration->getParameterBag()->all(), '->merge() merges current parameters with the loaded ones');
-
- $configuration = new BuilderConfiguration(array(), new ParameterBag(array('bar' => 'foo', 'foo' => 'baz')));
- $config = new BuilderConfiguration(array(), new ParameterBag(array('foo' => 'bar')));
- $configuration->merge($config);
- $this->assertEquals(array('bar' => 'foo', 'foo' => 'bar'), $configuration->getParameterBag()->all(), '->merge() overrides existing parameters');
-
- $configuration = new BuilderConfiguration(array('foo' => new Definition('FooClass'), 'bar' => new Definition('BarClass')));
- $config = new BuilderConfiguration(array('baz' => new Definition('BazClass')));
- $config->setAlias('alias_for_foo', 'foo');
- $configuration->merge($config);
- $this->assertEquals(array('foo', 'bar', 'baz'), array_keys($configuration->getDefinitions()), '->merge() merges definitions already defined ones');
- $this->assertEquals(array('alias_for_foo' => 'foo'), $configuration->getAliases(), '->merge() registers defined aliases');
-
- $configuration = new BuilderConfiguration(array('foo' => new Definition('FooClass')));
- $config->setDefinition('foo', new Definition('BazClass'));
- $configuration->merge($config);
- $this->assertEquals('BazClass', $configuration->getDefinition('foo')->getClass(), '->merge() overrides already defined services');
-
- $configuration = new BuilderConfiguration();
- $configuration->addResource($a = new FileResource(self::$fixturesPath.'/xml/services1.xml'));
- $config = new BuilderConfiguration();
- $config->addResource($b = new FileResource(self::$fixturesPath.'/xml/services2.xml'));
- $configuration->merge($config);
- $this->assertEquals(array($a, $b), $configuration->getResources(), '->merge() merges resources');
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::getParameterBag
- */
- public function testGetParameterBag()
- {
- $configuration = new BuilderConfiguration();
- $this->assertEquals(array(), $configuration->getParameterBag()->all(), '->getParameterBag() returns an empty bag if no parameter has been defined');
-
- $configuration = new BuilderConfiguration(array(), new ParameterBag(array('foo' => 'bar')));
- $this->assertEquals(array('foo' => 'bar'), $configuration->getParameterBag()->all(), '->getParameterBag() returns the parameter bag passed at construction time');
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::getParameter
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::setParameter
- */
- public function testSetGetParameter()
- {
- $configuration = new BuilderConfiguration(array(), new ParameterBag(array('foo' => 'bar')));
- $configuration->setParameter('bar', 'foo');
- $this->assertEquals('foo', $configuration->getParameter('bar'), '->setParameter() sets the value of a new parameter');
-
- $configuration->setParameter('foo', 'baz');
- $this->assertEquals('baz', $configuration->getParameter('foo'), '->setParameter() overrides previously set parameter');
-
- $configuration->setParameter('Foo', 'baz1');
- $this->assertEquals('baz1', $configuration->getParameter('foo'), '->setParameter() converts the key to lowercase');
- $this->assertEquals('baz1', $configuration->getParameter('FOO'), '->getParameter() converts the key to lowercase');
-
- try {
- $configuration->getParameter('baba');
- $this->fail('->getParameter() throws an \InvalidArgumentException if the key does not exist');
- } catch (\Exception $e) {
- $this->assertInstanceOf('\InvalidArgumentException', $e, '->getParameter() throws an \InvalidArgumentException if the key does not exist');
- $this->assertEquals('The parameter "baba" must be defined.', $e->getMessage(), '->getParameter() throws an \InvalidArgumentException if the key does not exist');
- }
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::setAlias
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::getAlias
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::hasAlias
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::getAliases
- */
- public function testAliases()
- {
- $configuration = new BuilderConfiguration();
- $configuration->setAlias('bar', 'foo');
- $this->assertEquals('foo', $configuration->getAlias('bar'), '->setAlias() defines a new alias');
- $this->assertTrue($configuration->hasAlias('bar'), '->hasAlias() returns true if the alias is defined');
- $this->assertFalse($configuration->hasAlias('baba'), '->hasAlias() returns false if the alias is not defined');
-
- try {
- $configuration->getAlias('baba');
- $this->fail('->getAlias() throws an \InvalidArgumentException if the alias does not exist');
- } catch (\Exception $e) {
- $this->assertInstanceOf('\InvalidArgumentException', $e, '->getAlias() throws an \InvalidArgumentException if the alias does not exist');
- $this->assertEquals('The service alias "baba" does not exist.', $e->getMessage(), '->getAlias() throws an \InvalidArgumentException if the alias does not exist');
- }
-
- $configuration->setAlias('barbar', 'foofoo');
- $this->assertEquals(array('bar' => 'foo', 'barbar' => 'foofoo'), $configuration->getAliases(), '->getAliases() returns an array of all defined aliases');
-
- $configuration->addAliases(array('foo' => 'bar'));
- $this->assertEquals(array('bar' => 'foo', 'barbar' => 'foofoo', 'foo' => 'bar'), $configuration->getAliases(), '->addAliases() adds some aliases');
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::setDefinitions
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::addDefinitions
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::hasDefinition
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::getDefinition
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::setDefinition
- */
- public function testDefinitions()
- {
- $configuration = new BuilderConfiguration();
- $definitions = array(
- 'foo' => new Definition('FooClass'),
- 'bar' => new Definition('BarClass'),
- );
- $configuration->setDefinitions($definitions);
- $this->assertEquals($definitions, $configuration->getDefinitions(), '->setDefinitions() sets the service definitions');
- $this->assertTrue($configuration->hasDefinition('foo'), '->hasDefinition() returns true if a service definition exists');
- $this->assertFalse($configuration->hasDefinition('foobar'), '->hasDefinition() returns false if a service definition does not exist');
-
- $configuration->setDefinition('foobar', $foo = new Definition('FooBarClass'));
- $this->assertEquals($foo, $configuration->getDefinition('foobar'), '->getDefinition() returns a service definition if defined');
- $this->assertTrue($configuration->setDefinition('foobar', new Definition('FooBarClass')) === $configuration, '->setDefinition() implements a fuild interface');
-
- $configuration->addDefinitions($defs = array('foobar' => new Definition('FooBarClass')));
- $this->assertEquals(array_merge($definitions, $defs), $configuration->getDefinitions(), '->addDefinitions() adds the service definitions');
-
- try {
- $configuration->getDefinition('baz');
- $this->fail('->getDefinition() throws an InvalidArgumentException if the service definition does not exist');
- } catch (\Exception $e) {
- $this->assertInstanceOf('\InvalidArgumentException', $e, '->getDefinition() throws an InvalidArgumentException if the service definition does not exist');
- $this->assertEquals('The service definition "baz" does not exist.', $e->getMessage(), '->getDefinition() throws an InvalidArgumentException if the service definition does not exist');
- }
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::findDefinition
- */
- public function testFindDefinition()
- {
- $configuration = new BuilderConfiguration(array('foo' => $definition = new Definition('FooClass')));
- $configuration->setAlias('bar', 'foo');
- $configuration->setAlias('foobar', 'bar');
- $this->assertEquals($definition, $configuration->findDefinition('foobar'), '->findDefinition() returns a Definition');
- }
-
- /**
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::getResources
- * @covers Symfony\Components\DependencyInjection\BuilderConfiguration::addResource
- */
- public function testResources()
- {
- $configuration = new BuilderConfiguration();
- $configuration->addResource($a = new FileResource(self::$fixturesPath.'/xml/services1.xml'));
- $configuration->addResource($b = new FileResource(self::$fixturesPath.'/xml/services2.xml'));
- $this->assertEquals(array($a, $b), $configuration->getResources(), '->getResources() returns an array of resources read for the current configuration');
- }
-}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/BuilderTest.php b/tests/Symfony/Tests/Components/DependencyInjection/ContainerBuilderTest.php
similarity index 72%
rename from tests/Symfony/Tests/Components/DependencyInjection/BuilderTest.php
rename to tests/Symfony/Tests/Components/DependencyInjection/ContainerBuilderTest.php
index e0324f1bb6..fc1d03579d 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/BuilderTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/ContainerBuilderTest.php
@@ -10,26 +10,26 @@
namespace Symfony\Tests\Components\DependencyInjection;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\ContainerInterface;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
use Symfony\Components\DependencyInjection\Definition;
use Symfony\Components\DependencyInjection\Reference;
use Symfony\Components\DependencyInjection\ParameterBag\ParameterBag;
+use Symfony\Components\DependencyInjection\Resource\FileResource;
require_once __DIR__.'/Fixtures/includes/classes.php';
-class BuilderTest extends \PHPUnit_Framework_TestCase
+class ContainerBuilderTest extends \PHPUnit_Framework_TestCase
{
/**
- * @covers Symfony\Components\DependencyInjection\Builder::setDefinitions
- * @covers Symfony\Components\DependencyInjection\Builder::getDefinitions
- * @covers Symfony\Components\DependencyInjection\Builder::setDefinition
- * @covers Symfony\Components\DependencyInjection\Builder::getDefinition
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::setDefinitions
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::getDefinitions
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::setDefinition
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::getDefinition
*/
public function testDefinitions()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$definitions = array(
'foo' => new Definition('FooClass'),
'bar' => new Definition('BarClass'),
@@ -56,22 +56,22 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::register
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::register
*/
public function testRegister()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo', 'FooClass');
$this->assertTrue($builder->hasDefinition('foo'), '->register() registers a new service definition');
$this->assertInstanceOf('Symfony\Components\DependencyInjection\Definition', $builder->getDefinition('foo'), '->register() returns the newly created Definition instance');
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::has
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::has
*/
public function testHas()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$this->assertFalse($builder->has('foo'), '->has() returns false if the service does not exist');
$builder->register('foo', 'FooClass');
$this->assertTrue($builder->has('foo'), '->has() returns true if a service definition exists');
@@ -80,11 +80,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::get
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::get
*/
public function testGet()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
try {
$builder->get('foo');
$this->fail('->get() throws an InvalidArgumentException if the service does not exist');
@@ -116,11 +116,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::getServiceIds
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::getServiceIds
*/
public function testGetServiceIds()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo', 'stdClass');
$builder->bar = $bar = new \stdClass();
$builder->register('bar', 'stdClass');
@@ -128,13 +128,13 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::setAlias
- * @covers Symfony\Components\DependencyInjection\Builder::hasAlias
- * @covers Symfony\Components\DependencyInjection\Builder::getAlias
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::setAlias
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::hasAlias
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::getAlias
*/
public function testAliases()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo', 'stdClass');
$builder->setAlias('bar', 'foo');
$this->assertTrue($builder->hasAlias('bar'), '->hasAlias() returns true if the alias exists');
@@ -153,11 +153,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::getAliases
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::getAliases
*/
public function testGetAliases()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->setAlias('bar', 'foo');
$builder->setAlias('foobar', 'foo');
$this->assertEquals(array('bar' => 'foo', 'foobar' => 'foo'), $builder->getAliases(), '->getAliases() returns all service aliases');
@@ -168,32 +168,32 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::setAliases
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::setAliases
*/
public function testSetAliases()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->setAliases(array('bar' => 'foo', 'foobar' => 'foo'));
$this->assertEquals(array('bar' => 'foo', 'foobar' => 'foo'), $builder->getAliases(), '->getAliases() returns all service aliases');
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::addAliases
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::addAliases
*/
public function testAddAliases()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->setAliases(array('bar' => 'foo'));
$builder->addAliases(array('foobar' => 'foo'));
$this->assertEquals(array('bar' => 'foo', 'foobar' => 'foo'), $builder->getAliases(), '->getAliases() returns all service aliases');
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateService()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo1', 'FooClass')->setFile(__DIR__.'/Fixtures/includes/foo.php');
$this->assertInstanceOf('\FooClass', $builder->get('foo1'), '->createService() requires the file defined by the service definition');
$builder->register('foo2', 'FooClass')->setFile(__DIR__.'/Fixtures/includes/%file%.php');
@@ -202,22 +202,22 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateServiceClass()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo1', '%class%');
$builder->setParameter('class', 'stdClass');
$this->assertInstanceOf('\stdClass', $builder->get('foo1'), '->createService() replaces parameters in the class provided by the service definition');
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateServiceArguments()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('bar', 'stdClass');
$builder->register('foo1', 'FooClass')->addArgument(array('foo' => '%value%', '%value%' => 'foo', new Reference('bar')));
$builder->setParameter('value', 'bar');
@@ -225,11 +225,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateServiceFactoryMethod()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('bar', 'stdClass');
$builder->register('foo1', 'FooClass')->setFactoryMethod('getInstance')->addArgument(array('foo' => '%value%', '%value%' => 'foo', new Reference('bar')));
$builder->setParameter('value', 'bar');
@@ -238,11 +238,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateServiceFactoryService()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('baz_service')->setFactoryService('baz_factory')->setFactoryMethod('getInstance');
$builder->register('baz_factory', 'BazClass');
@@ -250,11 +250,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateServiceMethodCalls()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('bar', 'stdClass');
$builder->register('foo1', 'FooClass')->addMethodCall('setBar', array(array('%value%', new Reference('bar'))));
$builder->setParameter('value', 'bar');
@@ -262,11 +262,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::createService
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::createService
*/
public function testCreateServiceConfigurator()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo1', 'FooClass')->setConfigurator('sc_configure');
$this->assertTrue($builder->get('foo1')->configured, '->createService() calls the configurator');
@@ -289,23 +289,23 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::resolveValue
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::resolveValue
*/
public function testResolveValue()
{
- $this->assertEquals('foo', Builder::resolveValue('foo', array()), '->resolveValue() returns its argument unmodified if no placeholders are found');
- $this->assertEquals('I\'m a bar', Builder::resolveValue('I\'m a %foo%', array('foo' => 'bar')), '->resolveValue() replaces placeholders by their values');
- $this->assertTrue(Builder::resolveValue('%foo%', array('foo' => true)) === true, '->resolveValue() replaces arguments that are just a placeholder by their value without casting them to strings');
+ $this->assertEquals('foo', ContainerBuilder::resolveValue('foo', array()), '->resolveValue() returns its argument unmodified if no placeholders are found');
+ $this->assertEquals('I\'m a bar', ContainerBuilder::resolveValue('I\'m a %foo%', array('foo' => 'bar')), '->resolveValue() replaces placeholders by their values');
+ $this->assertTrue(ContainerBuilder::resolveValue('%foo%', array('foo' => true)) === true, '->resolveValue() replaces arguments that are just a placeholder by their value without casting them to strings');
- $this->assertEquals(array('bar' => 'bar'), Builder::resolveValue(array('%foo%' => '%foo%'), array('foo' => 'bar')), '->resolveValue() replaces placeholders in keys and values of arrays');
+ $this->assertEquals(array('bar' => 'bar'), ContainerBuilder::resolveValue(array('%foo%' => '%foo%'), array('foo' => 'bar')), '->resolveValue() replaces placeholders in keys and values of arrays');
- $this->assertEquals(array('bar' => array('bar' => array('bar' => 'bar'))), Builder::resolveValue(array('%foo%' => array('%foo%' => array('%foo%' => '%foo%'))), array('foo' => 'bar')), '->resolveValue() replaces placeholders in nested arrays');
+ $this->assertEquals(array('bar' => array('bar' => array('bar' => 'bar'))), ContainerBuilder::resolveValue(array('%foo%' => array('%foo%' => array('%foo%' => '%foo%'))), array('foo' => 'bar')), '->resolveValue() replaces placeholders in nested arrays');
- $this->assertEquals('I\'m a %foo%', Builder::resolveValue('I\'m a %%foo%%', array('foo' => 'bar')), '->resolveValue() supports % escaping by doubling it');
- $this->assertEquals('I\'m a bar %foo bar', Builder::resolveValue('I\'m a %foo% %%foo %foo%', array('foo' => 'bar')), '->resolveValue() supports % escaping by doubling it');
+ $this->assertEquals('I\'m a %foo%', ContainerBuilder::resolveValue('I\'m a %%foo%%', array('foo' => 'bar')), '->resolveValue() supports % escaping by doubling it');
+ $this->assertEquals('I\'m a bar %foo bar', ContainerBuilder::resolveValue('I\'m a %foo% %%foo %foo%', array('foo' => 'bar')), '->resolveValue() supports % escaping by doubling it');
try {
- Builder::resolveValue('%foobar%', array());
+ ContainerBuilder::resolveValue('%foobar%', array());
$this->fail('->resolveValue() throws a RuntimeException if a placeholder references a non-existant parameter');
} catch (\Exception $e) {
$this->assertInstanceOf('\RuntimeException', $e, '->resolveValue() throws a RuntimeException if a placeholder references a non-existant parameter');
@@ -313,7 +313,7 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
try {
- Builder::resolveValue('foo %foobar% bar', array());
+ ContainerBuilder::resolveValue('foo %foobar% bar', array());
$this->fail('->resolveValue() throws a RuntimeException if a placeholder references a non-existant parameter');
} catch (\Exception $e) {
$this->assertInstanceOf('\RuntimeException', $e, '->resolveValue() throws a RuntimeException if a placeholder references a non-existant parameter');
@@ -322,57 +322,51 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::resolveServices
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::resolveServices
*/
public function testResolveServices()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder->register('foo', 'FooClass');
$this->assertEquals($builder->get('foo'), $builder->resolveServices(new Reference('foo')), '->resolveServices() resolves service references to service instances');
$this->assertEquals(array('foo' => array('foo', $builder->get('foo'))), $builder->resolveServices(array('foo' => array('foo', new Reference('foo')))), '->resolveServices() resolves service references to service instances in nested arrays');
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::merge
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::merge
*/
public function testMerge()
{
- $container = new Builder();
- $container->merge(null);
- $this->assertEquals(array(), $container->getParameterBag()->all(), '->merge() accepts null as an argument');
- $this->assertEquals(array(), $container->getDefinitions(), '->merge() accepts null as an argument');
-
- $container = new Builder(new ParameterBag(array('bar' => 'foo')));
- $config = new BuilderConfiguration(array(), new ParameterBag(array('foo' => 'bar')));
+ $container = new ContainerBuilder(new ParameterBag(array('bar' => 'foo')));
+ $config = new ContainerBuilder(new ParameterBag(array('foo' => 'bar')));
$container->merge($config);
$this->assertEquals(array('bar' => 'foo', 'foo' => 'bar'), $container->getParameterBag()->all(), '->merge() merges current parameters with the loaded ones');
- $container = new Builder(new ParameterBag(array('bar' => 'foo', 'foo' => 'baz')));
- $config = new BuilderConfiguration(array(), new ParameterBag(array('foo' => 'bar')));
- $container->merge($config);
- $this->assertEquals(array('bar' => 'foo', 'foo' => 'baz'), $container->getParameterBag()->all(), '->merge() does not change the already defined parameters');
-
- $container = new Builder(new ParameterBag(array('bar' => 'foo')));
- $config = new BuilderConfiguration(array(), new ParameterBag(array('foo' => '%bar%')));
+ $container = new ContainerBuilder(new ParameterBag(array('bar' => 'foo')));
+ $config = new ContainerBuilder(new ParameterBag(array('foo' => '%bar%')));
$container->merge($config);
+////// FIXME
+ $container->commit();
$this->assertEquals(array('bar' => 'foo', 'foo' => 'foo'), $container->getParameterBag()->all(), '->merge() evaluates the values of the parameters towards already defined ones');
- $container = new Builder(new ParameterBag(array('bar' => 'foo')));
- $config = new BuilderConfiguration(array(), new ParameterBag(array('foo' => '%bar%', 'baz' => '%foo%')));
+ $container = new ContainerBuilder(new ParameterBag(array('bar' => 'foo')));
+ $config = new ContainerBuilder(new ParameterBag(array('foo' => '%bar%', 'baz' => '%foo%')));
$container->merge($config);
+////// FIXME
+ $container->commit();
$this->assertEquals(array('bar' => 'foo', 'foo' => 'foo', 'baz' => 'foo'), $container->getParameterBag()->all(), '->merge() evaluates the values of the parameters towards already defined ones');
- $container = new Builder();
+ $container = new ContainerBuilder();
$container->register('foo', 'FooClass');
$container->register('bar', 'BarClass');
- $config = new BuilderConfiguration();
+ $config = new ContainerBuilder();
$config->setDefinition('baz', new Definition('BazClass'));
$config->setAlias('alias_for_foo', 'foo');
$container->merge($config);
$this->assertEquals(array('foo', 'bar', 'baz'), array_keys($container->getDefinitions()), '->merge() merges definitions already defined ones');
$this->assertEquals(array('alias_for_foo' => 'foo'), $container->getAliases(), '->merge() registers defined aliases');
- $container = new Builder();
+ $container = new ContainerBuilder();
$container->register('foo', 'FooClass');
$config->setDefinition('foo', new Definition('BazClass'));
$container->merge($config);
@@ -380,11 +374,11 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
}
/**
- * @covers Symfony\Components\DependencyInjection\Builder::findAnnotatedServiceIds
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::findAnnotatedServiceIds
*/
public function testFindAnnotatedServiceIds()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$builder
->register('foo', 'FooClass')
->addAnnotation('foo', array('foo' => 'foo'))
@@ -399,4 +393,28 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
), '->findAnnotatedServiceIds() returns an array of service ids and its annotation attributes');
$this->assertEquals(array(), $builder->findAnnotatedServiceIds('foobar'), '->findAnnotatedServiceIds() returns an empty array if there is annotated services');
}
+
+ /**
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::findDefinition
+ */
+ public function testFindDefinition()
+ {
+ $container = new ContainerBuilder();
+ $container->setDefinition('foo', $definition = new Definition('FooClass'));
+ $container->setAlias('bar', 'foo');
+ $container->setAlias('foobar', 'bar');
+ $this->assertEquals($definition, $container->findDefinition('foobar'), '->findDefinition() returns a Definition');
+ }
+
+ /**
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::getResources
+ * @covers Symfony\Components\DependencyInjection\ContainerBuilder::addResource
+ */
+ public function testResources()
+ {
+ $container = new ContainerBuilder();
+ $container->addResource($a = new FileResource(__DIR__.'/Fixtures/xml/services1.xml'));
+ $container->addResource($b = new FileResource(__DIR__.'/Fixtures/xml/services2.xml'));
+ $this->assertEquals(array($a, $b), $container->getResources(), '->getResources() returns an array of resources read for the current configuration');
+ }
}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/CrossCheckTest.php b/tests/Symfony/Tests/Components/DependencyInjection/CrossCheckTest.php
index 8670ae206b..4c0349595c 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/CrossCheckTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/CrossCheckTest.php
@@ -10,7 +10,7 @@
namespace Symfony\Tests\Components\DependencyInjection;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
class CrossCheckTest extends \PHPUnit_Framework_TestCase
{
@@ -32,7 +32,7 @@ class CrossCheckTest extends \PHPUnit_Framework_TestCase
$loaderClass = 'Symfony\\Components\\DependencyInjection\\Loader\\'.ucfirst($type).'FileLoader';
$dumperClass = 'Symfony\\Components\\DependencyInjection\\Dumper\\'.ucfirst($type).'Dumper';
- $container1 = new Builder();
+ $container1 = new ContainerBuilder();
$loader1 = new $loaderClass($container1);
$loader1->load(self::$fixturesPath.'/'.$type.'/'.$fixture);
$container1->setParameter('path', self::$fixturesPath.'/includes');
@@ -41,7 +41,7 @@ class CrossCheckTest extends \PHPUnit_Framework_TestCase
$tmp = tempnam('sf_service_container', 'sf');
file_put_contents($tmp, $dumper->dump());
- $container2 = new Builder();
+ $container2 = new ContainerBuilder();
$loader2 = new $loaderClass($container2);
$loader2->load($tmp);
$container2->setParameter('path', self::$fixturesPath.'/includes');
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/DumperTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/DumperTest.php
index 0822104d71..926781bdcb 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/DumperTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/DumperTest.php
@@ -10,14 +10,14 @@
namespace Symfony\Tests\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Dumper\Dumper;
class DumperTest extends \PHPUnit_Framework_TestCase
{
public function testDump()
{
- $builder = new Builder();
+ $builder = new ContainerBuilder();
$dumper = new ProjectDumper($builder);
try {
$dumper->dump();
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/GraphvizDumperTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/GraphvizDumperTest.php
index 0abe7fccbf..03c79583f0 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/GraphvizDumperTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/GraphvizDumperTest.php
@@ -10,7 +10,7 @@
namespace Symfony\Tests\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Dumper\GraphvizDumper;
class GraphvizDumperTest extends \PHPUnit_Framework_TestCase
@@ -24,11 +24,11 @@ class GraphvizDumperTest extends \PHPUnit_Framework_TestCase
public function testDump()
{
- $dumper = new GraphvizDumper($container = new Builder());
+ $dumper = new GraphvizDumper($container = new ContainerBuilder());
$this->assertStringEqualsFile(self::$fixturesPath.'/graphviz/services1.dot', $dumper->dump(), '->dump() dumps an empty container as an empty dot file');
- $container = new Builder();
+ $container = new ContainerBuilder();
$dumper = new GraphvizDumper($container);
$container = include self::$fixturesPath.'/containers/container9.php';
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/PhpDumperTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/PhpDumperTest.php
index 0cd6a277e1..47cffb45b2 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/PhpDumperTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/PhpDumperTest.php
@@ -10,7 +10,7 @@
namespace Symfony\Tests\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Dumper\PhpDumper;
use Symfony\Components\DependencyInjection\ParameterBag\ParameterBag;
use Symfony\Components\DependencyInjection\Reference;
@@ -26,12 +26,12 @@ class PhpDumperTest extends \PHPUnit_Framework_TestCase
public function testDump()
{
- $dumper = new PhpDumper($container = new Builder());
+ $dumper = new PhpDumper($container = new ContainerBuilder());
$this->assertStringEqualsFile(self::$fixturesPath.'/php/services1.php', $dumper->dump(), '->dump() dumps an empty container as an empty PHP class');
$this->assertStringEqualsFile(self::$fixturesPath.'/php/services1-1.php', $dumper->dump(array('class' => 'Container', 'base_class' => 'AbstractContainer')), '->dump() takes a class and a base_class options');
- $container = new Builder();
+ $container = new ContainerBuilder();
$dumper = new PhpDumper($container);
}
@@ -40,7 +40,7 @@ class PhpDumperTest extends \PHPUnit_Framework_TestCase
*/
public function testExportParameters()
{
- $dumper = new PhpDumper($container = new Builder(new ParameterBag(array('foo' => new Reference('foo')))));
+ $dumper = new PhpDumper($container = new ContainerBuilder(new ParameterBag(array('foo' => new Reference('foo')))));
$dumper->dump();
}
@@ -57,7 +57,7 @@ class PhpDumperTest extends \PHPUnit_Framework_TestCase
$dumper = new PhpDumper($container);
$this->assertEquals(str_replace('%path%', str_replace('\\','\\\\',self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR), file_get_contents(self::$fixturesPath.'/php/services9.php')), $dumper->dump(), '->dump() dumps services');
- $dumper = new PhpDumper($container = new Builder());
+ $dumper = new PhpDumper($container = new ContainerBuilder());
$container->register('foo', 'FooClass')->addArgument(new \stdClass());
try {
$dumper->dump();
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/XmlDumperTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/XmlDumperTest.php
index 84f2e6570d..2dfd7cfa14 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/XmlDumperTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/XmlDumperTest.php
@@ -10,7 +10,7 @@
namespace Symfony\Tests\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Dumper\XmlDumper;
class XmlDumperTest extends \PHPUnit_Framework_TestCase
@@ -24,11 +24,11 @@ class XmlDumperTest extends \PHPUnit_Framework_TestCase
public function testDump()
{
- $dumper = new XmlDumper($container = new Builder());
+ $dumper = new XmlDumper($container = new ContainerBuilder());
$this->assertXmlStringEqualsXmlFile(self::$fixturesPath.'/xml/services1.xml', $dumper->dump(), '->dump() dumps an empty container as an empty XML file');
- $container = new Builder();
+ $container = new ContainerBuilder();
$dumper = new XmlDumper($container);
}
@@ -52,7 +52,7 @@ class XmlDumperTest extends \PHPUnit_Framework_TestCase
$dumper = new XmlDumper($container);
$this->assertEquals(str_replace('%path%', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR, file_get_contents(self::$fixturesPath.'/xml/services9.xml')), $dumper->dump(), '->dump() dumps services');
- $dumper = new XmlDumper($container = new Builder());
+ $dumper = new XmlDumper($container = new ContainerBuilder());
$container->register('foo', 'FooClass')->addArgument(new \stdClass());
try {
$dumper->dump();
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/YamlDumperTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/YamlDumperTest.php
index d82bc08c1e..5e19d56d59 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Dumper/YamlDumperTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Dumper/YamlDumperTest.php
@@ -10,7 +10,7 @@
namespace Symfony\Tests\Components\DependencyInjection\Dumper;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Dumper\YamlDumper;
class YamlDumperTest extends \PHPUnit_Framework_TestCase
@@ -24,11 +24,11 @@ class YamlDumperTest extends \PHPUnit_Framework_TestCase
public function testDump()
{
- $dumper = new YamlDumper($container = new Builder());
+ $dumper = new YamlDumper($container = new ContainerBuilder());
$this->assertStringEqualsFile(self::$fixturesPath.'/yaml/services1.yml', $dumper->dump(), '->dump() dumps an empty container as an empty YAML file');
- $container = new Builder();
+ $container = new ContainerBuilder();
$dumper = new YamlDumper($container);
}
@@ -45,7 +45,7 @@ class YamlDumperTest extends \PHPUnit_Framework_TestCase
$dumper = new YamlDumper($container);
$this->assertEquals(str_replace('%path%', self::$fixturesPath.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR, file_get_contents(self::$fixturesPath.'/yaml/services9.yml')), $dumper->dump(), '->dump() dumps services');
- $dumper = new YamlDumper($container = new Builder());
+ $dumper = new YamlDumper($container = new ContainerBuilder());
$container->register('foo', 'FooClass')->addArgument(new \stdClass());
try {
$dumper->dump();
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container10.php b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container10.php
index ada56bb004..9e574dd71a 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container10.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container10.php
@@ -2,10 +2,10 @@
require_once __DIR__.'/../includes/classes.php';
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Reference;
-$container = new Builder();
+$container = new ContainerBuilder();
$container->
register('foo', 'FooClass')->
addArgument(new Reference('bar'))
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container8.php b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container8.php
index 62ac583a0b..59331078f6 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container8.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container8.php
@@ -1,9 +1,9 @@
'bar',
'bar' => 'foo is %foo bar',
'values' => array(true, false, null, 0, 1000.3, 'true', 'false', 'null'),
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container9.php b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container9.php
index ea95af9fea..177427aa9d 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container9.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/containers/container9.php
@@ -3,11 +3,11 @@
require_once __DIR__.'/../includes/classes.php';
use Symfony\Components\DependencyInjection\ContainerInterface;
-use Symfony\Components\DependencyInjection\Builder;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
use Symfony\Components\DependencyInjection\Reference;
use Symfony\Components\DependencyInjection\Parameter;
-$container = new Builder();
+$container = new ContainerBuilder();
$container->
register('foo', 'FooClass')->
addAnnotation('foo', array('foo' => 'foo'))->
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services1.dot b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services1.dot
index 8a5df3bcc7..8754e443b1 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services1.dot
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services1.dot
@@ -3,5 +3,5 @@ digraph sc {
node [fontsize="11" fontname="Arial" shape="record"];
edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
- node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\Builder\n", shape=record, fillcolor="#9999ff", style="filled"];
+ node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10-1.dot b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10-1.dot
index cc15227c50..ca11dbcdc7 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10-1.dot
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10-1.dot
@@ -4,7 +4,7 @@ digraph sc {
edge [fontsize="12" fontname="Verdana" color="white" arrowhead="closed" arrowsize="1"];
node_foo [label="foo\nFooClass\n", shape=square, fillcolor="grey", style="filled"];
- node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\Builder\n", shape=square, fillcolor="green", style="empty"];
+ node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\ContainerBuilder\n", shape=square, fillcolor="green", style="empty"];
node_bar [label="bar\n\n", shape=square, fillcolor="red", style="empty"];
node_foo -> node_bar [label="" style="filled"];
}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10.dot b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10.dot
index 17fdadb0af..908e28f3e7 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10.dot
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services10.dot
@@ -4,7 +4,7 @@ digraph sc {
edge [fontsize="9" fontname="Arial" color="grey" arrowhead="open" arrowsize="0.5"];
node_foo [label="foo\nFooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
- node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\Builder\n", shape=record, fillcolor="#9999ff", style="filled"];
+ node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
node_bar [label="bar\n\n", shape=record, fillcolor="#ff9999", style="filled"];
node_foo -> node_bar [label="" style="filled"];
}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services9.dot b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services9.dot
index f2fc4689d4..5fd2176cc6 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services9.dot
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/graphviz/services9.dot
@@ -9,7 +9,7 @@ digraph sc {
node_foo_bar [label="foo_bar\nFooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
node_method_call1 [label="method_call1\nFooClass\n", shape=record, fillcolor="#eeeeee", style="filled"];
node_factory_service [label="factory_service\n\n", shape=record, fillcolor="#eeeeee", style="filled"];
- node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\Builder\n", shape=record, fillcolor="#9999ff", style="filled"];
+ node_service_container [label="service_container\nSymfony\\Components\\DependencyInjection\\ContainerBuilder\n", shape=record, fillcolor="#9999ff", style="filled"];
node_foobaz [label="foobaz\n\n", shape=record, fillcolor="#ff9999", style="filled"];
node_foo -> node_foo_baz [label="" style="filled"];
node_foo -> node_service_container [label="" style="filled"];
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectExtension.php b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectExtension.php
index 53ac48d787..810411f453 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectExtension.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectExtension.php
@@ -1,12 +1,12 @@
setDefinition('project.service.bar', new Definition('FooClass'));
$configuration->setParameter('project.parameter.bar', isset($config['foo']) ? $config['foo'] : 'foobar');
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectWithXsdExtension.php b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectWithXsdExtension.php
index 299e72a62d..4f9ea74aa4 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectWithXsdExtension.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Fixtures/includes/ProjectWithXsdExtension.php
@@ -1,6 +1,6 @@
load('foo', array(), new BuilderConfiguration());
+ $extension->load('foo', array(), new ContainerBuilder());
$this->fail('->load() throws an InvalidArgumentException if the tag does not exist');
} catch (\Exception $e) {
$this->assertInstanceOf('\InvalidArgumentException', $e, '->load() throws an InvalidArgumentException if the tag does not exist');
$this->assertEquals('The tag "project:foo" is not defined in the "project" extension.', $e->getMessage(), '->load() throws an InvalidArgumentException if the tag does not exist');
}
- $extension->load('bar', array('foo' => 'bar'), $config = new BuilderConfiguration());
+ $extension->load('bar', array('foo' => 'bar'), $config = new ContainerBuilder());
$this->assertEquals(array('project.parameter.bar' => 'bar', 'project.parameter.foo' => 'bar'), $config->getParameterBag()->all(), '->load() calls the method tied to the given tag');
}
}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Loader/LoaderTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Loader/LoaderTest.php
index 3194e53cd8..7966389071 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Loader/LoaderTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Loader/LoaderTest.php
@@ -13,11 +13,11 @@ namespace Symfony\Tests\Components\DependencyInjection\Loader;
require_once __DIR__.'/../Fixtures/includes/ProjectExtension.php';
use Symfony\Components\DependencyInjection\Loader\Loader;
-use Symfony\Components\DependencyInjection\BuilderConfiguration;
+use Symfony\Components\DependencyInjection\ContainerBuilder;
class ProjectLoader1 extends Loader
{
- public function load($resource, $main = true, BuilderConfiguration $configuration = null)
+ public function load($resource, ContainerBuilder $container = null)
{
}
}
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Loader/XmlFileLoaderTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Loader/XmlFileLoaderTest.php
index 40b08229a7..a2933c4cb6 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Loader/XmlFileLoaderTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Loader/XmlFileLoaderTest.php
@@ -173,6 +173,7 @@ class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
// extension without an XSD
$config = $loader->load('extensions/services1.xml');
+ $config->commit();
$services = $config->getDefinitions();
$parameters = $config->getParameterBag()->all();
@@ -184,6 +185,7 @@ class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase
// extension with an XSD
$config = $loader->load('extensions/services2.xml');
+ $config->commit();
$services = $config->getDefinitions();
$parameters = $config->getParameterBag()->all();
diff --git a/tests/Symfony/Tests/Components/DependencyInjection/Loader/YamlFileLoaderTest.php b/tests/Symfony/Tests/Components/DependencyInjection/Loader/YamlFileLoaderTest.php
index a088c56dbf..0ef6173654 100644
--- a/tests/Symfony/Tests/Components/DependencyInjection/Loader/YamlFileLoaderTest.php
+++ b/tests/Symfony/Tests/Components/DependencyInjection/Loader/YamlFileLoaderTest.php
@@ -107,6 +107,7 @@ class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase
$loader = new ProjectLoader3(self::$fixturesPath.'/yaml');
$config = $loader->load('services10.yml');
+ $config->commit();
$services = $config->getDefinitions();
$parameters = $config->getParameterBag()->all();