From 9ecca53a190ea9d540875fd8d8fbf00e64873ec4 Mon Sep 17 00:00:00 2001 From: "Alexander M. Turek" Date: Tue, 15 Sep 2015 22:53:53 +0200 Subject: [PATCH 1/2] Reference::isStrict() is gone in 3.0. --- .../Compiler/LoggerChannelPass.php | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/DependencyInjection/Compiler/LoggerChannelPass.php b/DependencyInjection/Compiler/LoggerChannelPass.php index 847ddd72..3efdf438 100644 --- a/DependencyInjection/Compiler/LoggerChannelPass.php +++ b/DependencyInjection/Compiler/LoggerChannelPass.php @@ -47,7 +47,7 @@ public function process(ContainerBuilder $container) foreach ($definition->getArguments() as $index => $argument) { if ($argument instanceof Reference && 'logger' === (string) $argument) { - $definition->replaceArgument($index, new Reference($loggerId, $argument->getInvalidBehavior(), $argument->isStrict())); + $definition->replaceArgument($index, $this->changeReference($argument, $loggerId)); } } @@ -55,7 +55,7 @@ public function process(ContainerBuilder $container) foreach ($calls as $i => $call) { foreach ($call[1] as $index => $argument) { if ($argument instanceof Reference && 'logger' === (string) $argument) { - $calls[$i][1][$index] = new Reference($loggerId, $argument->getInvalidBehavior(), $argument->isStrict()); + $calls[$i][1][$index] = $this->changeReference($argument, $loggerId); } } } @@ -85,6 +85,24 @@ public function process(ContainerBuilder $container) } } + /** + * Creates a copy of a reference and alters the service ID. + * + * @param Reference $reference + * @param string $serviceId + * + * @return Reference + */ + private function changeReference(Reference $reference, $serviceId) + { + if (method_exists($reference, 'isStrict')) { + // Stay compatible with Symfony 2 + return new Reference($serviceId, $reference->getInvalidBehavior(), $reference->isStrict()); + } else { + return new Reference($serviceId, $reference->getInvalidBehavior()); + } + } + public function getChannels() { return $this->channels; From 6e15bc05f2beb0ab1610013189cea0e487814b8e Mon Sep 17 00:00:00 2001 From: "Alexander M. Turek" Date: Wed, 16 Sep 2015 10:55:40 +0200 Subject: [PATCH 2/2] Moved private function to the end, removed unnecessary else. --- .../Compiler/LoggerChannelPass.php | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/DependencyInjection/Compiler/LoggerChannelPass.php b/DependencyInjection/Compiler/LoggerChannelPass.php index 3efdf438..ce952eba 100644 --- a/DependencyInjection/Compiler/LoggerChannelPass.php +++ b/DependencyInjection/Compiler/LoggerChannelPass.php @@ -85,24 +85,6 @@ public function process(ContainerBuilder $container) } } - /** - * Creates a copy of a reference and alters the service ID. - * - * @param Reference $reference - * @param string $serviceId - * - * @return Reference - */ - private function changeReference(Reference $reference, $serviceId) - { - if (method_exists($reference, 'isStrict')) { - // Stay compatible with Symfony 2 - return new Reference($serviceId, $reference->getInvalidBehavior(), $reference->isStrict()); - } else { - return new Reference($serviceId, $reference->getInvalidBehavior()); - } - } - public function getChannels() { return $this->channels; @@ -130,4 +112,22 @@ protected function createLogger($channel, $loggerId, ContainerBuilder $container $this->channels[] = $channel; } } + + /** + * Creates a copy of a reference and alters the service ID. + * + * @param Reference $reference + * @param string $serviceId + * + * @return Reference + */ + private function changeReference(Reference $reference, $serviceId) + { + if (method_exists($reference, 'isStrict')) { + // Stay compatible with Symfony 2 + return new Reference($serviceId, $reference->getInvalidBehavior(), $reference->isStrict()); + } + + return new Reference($serviceId, $reference->getInvalidBehavior()); + } }