From 74d993b64206e0e230d576928616c43fb7a3a94d Mon Sep 17 00:00:00 2001 From: Jeremy Mikola Date: Fri, 12 Jul 2013 17:58:13 -0400 Subject: [PATCH] Do not clobber existing client definitions (closes #336 and #324) While we could have used an abstract definition, its ID would likely conflict with the alias we set for the default client. Remove the abstract definition altogether and simply construct new definitions for each client. This resolves the previous issue where multiple clients would overwrite the constructor arguments of the previous definition. --- DependencyInjection/FOSElasticaExtension.php | 5 ++--- Resources/config/config.xml | 7 ------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/DependencyInjection/FOSElasticaExtension.php b/DependencyInjection/FOSElasticaExtension.php index 4b90e91..f264d7c 100644 --- a/DependencyInjection/FOSElasticaExtension.php +++ b/DependencyInjection/FOSElasticaExtension.php @@ -70,10 +70,9 @@ class FOSElasticaExtension extends Extension { $clientIds = array(); foreach ($clients as $name => $clientConfig) { - $clientDef = $container->getDefinition('fos_elastica.client'); - $clientDef->replaceArgument(0, $clientConfig); - $clientId = sprintf('fos_elastica.client.%s', $name); + $clientDef = new Definition('%fos_elastica.client.class%', array($clientConfig)); + $clientDef->addMethodCall('setLogger', array(new Reference('fos_elastica.logger'))); $container->setDefinition($clientId, $clientDef); diff --git a/Resources/config/config.xml b/Resources/config/config.xml index 1540269..dfb417d 100644 --- a/Resources/config/config.xml +++ b/Resources/config/config.xml @@ -27,13 +27,6 @@ - - - - - - -