From f49881d24a6d1483a054ce473e36bc0722cd8846 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Thu, 18 Apr 2019 08:02:03 +0200 Subject: [PATCH] call method with Translator component only --- .../FrameworkBundle/DependencyInjection/FrameworkExtension.php | 3 ++- .../Tests/DependencyInjection/FrameworkExtensionTest.php | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php index a52caa46c0..bc09035fa5 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php +++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php @@ -95,6 +95,7 @@ use Symfony\Component\Serializer\Normalizer\NormalizerInterface; use Symfony\Component\Stopwatch\Stopwatch; use Symfony\Component\Translation\Command\XliffLintCommand as BaseXliffLintCommand; use Symfony\Component\Translation\Translator; +use Symfony\Component\Translation\TranslatorInterface; use Symfony\Component\Validator\ConstraintValidatorInterface; use Symfony\Component\Validator\ObjectInitializerInterface; use Symfony\Component\Validator\Util\LegacyTranslatorProxy; @@ -1108,7 +1109,7 @@ class FrameworkExtension extends Extension $validatorBuilder = $container->getDefinition('validator.builder'); - if (class_exists(LegacyTranslatorProxy::class)) { + if (interface_exists(TranslatorInterface::class) && class_exists(LegacyTranslatorProxy::class)) { $calls = $validatorBuilder->getMethodCalls(); $calls[1] = ['setTranslator', [new Definition(LegacyTranslatorProxy::class, [new Reference('translator')])]]; $validatorBuilder->setMethodCalls($calls); diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php index b6b520daa1..37b958a42d 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php @@ -49,6 +49,7 @@ use Symfony\Component\Serializer\Normalizer\DateTimeNormalizer; use Symfony\Component\Serializer\Normalizer\JsonSerializableNormalizer; use Symfony\Component\Serializer\Serializer; use Symfony\Component\Translation\DependencyInjection\TranslatorPass; +use Symfony\Component\Translation\TranslatorInterface; use Symfony\Component\Validator\DependencyInjection\AddConstraintValidatorsPass; use Symfony\Component\Validator\Util\LegacyTranslatorProxy; use Symfony\Component\Workflow; @@ -819,7 +820,7 @@ abstract class FrameworkExtensionTest extends TestCase $this->assertSame('setConstraintValidatorFactory', $calls[0][0]); $this->assertEquals([new Reference('validator.validator_factory')], $calls[0][1]); $this->assertSame('setTranslator', $calls[1][0]); - if (class_exists(LegacyTranslatorProxy::class)) { + if (interface_exists(TranslatorInterface::class) && class_exists(LegacyTranslatorProxy::class)) { $this->assertEquals([new Definition(LegacyTranslatorProxy::class, [new Reference('translator')])], $calls[1][1]); } else { $this->assertEquals([new Reference('translator')], $calls[1][1]);