From 45d9a3679480c171712fa6db6bcb2c575f17a4f6 Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Tue, 23 Mar 2021 17:17:41 +0100 Subject: [PATCH] [Contracts/Translation] Add `TranslatorInterface::getLocale()` --- .../Bridge/Twig/Tests/Extension/Fixtures/StubTranslator.php | 5 +++++ .../Compiler/DataCollectorTranslatorPassTest.php | 5 +++++ .../Component/Translation/PseudoLocalizationTranslator.php | 5 +++++ src/Symfony/Contracts/CHANGELOG.md | 1 + src/Symfony/Contracts/Translation/TranslatorInterface.php | 2 ++ src/Symfony/Contracts/Translation/TranslatorTrait.php | 2 ++ 6 files changed, 20 insertions(+) diff --git a/src/Symfony/Bridge/Twig/Tests/Extension/Fixtures/StubTranslator.php b/src/Symfony/Bridge/Twig/Tests/Extension/Fixtures/StubTranslator.php index 2c8c7db10d..4c6e672a9a 100644 --- a/src/Symfony/Bridge/Twig/Tests/Extension/Fixtures/StubTranslator.php +++ b/src/Symfony/Bridge/Twig/Tests/Extension/Fixtures/StubTranslator.php @@ -19,4 +19,9 @@ class StubTranslator implements TranslatorInterface { return '[trans]'.strtr($id, $parameters).'[/trans]'; } + + public function getLocale(): string + { + return 'en'; + } } diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Compiler/DataCollectorTranslatorPassTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Compiler/DataCollectorTranslatorPassTest.php index 9166fab5b2..0167f55101 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Compiler/DataCollectorTranslatorPassTest.php +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Compiler/DataCollectorTranslatorPassTest.php @@ -111,4 +111,9 @@ class TranslatorWithTranslatorBag implements TranslatorInterface public function trans(string $id, array $parameters = [], string $domain = null, string $locale = null): string { } + + public function getLocale(): string + { + return 'en'; + } } diff --git a/src/Symfony/Component/Translation/PseudoLocalizationTranslator.php b/src/Symfony/Component/Translation/PseudoLocalizationTranslator.php index 01f8314f41..49f122eb83 100644 --- a/src/Symfony/Component/Translation/PseudoLocalizationTranslator.php +++ b/src/Symfony/Component/Translation/PseudoLocalizationTranslator.php @@ -108,6 +108,11 @@ final class PseudoLocalizationTranslator implements TranslatorInterface return $trans; } + public function getLocale(): string + { + return $this->translator->getLocale(); + } + private function getParts(string $originalTrans): array { if (!$this->parseHTML) { diff --git a/src/Symfony/Contracts/CHANGELOG.md b/src/Symfony/Contracts/CHANGELOG.md index 25efba02b9..275415078d 100644 --- a/src/Symfony/Contracts/CHANGELOG.md +++ b/src/Symfony/Contracts/CHANGELOG.md @@ -5,6 +5,7 @@ CHANGELOG --- * Add `HttpClientInterface::withOptions()` + * Add `TranslatorInterface::getLocale()` 2.3.0 ----- diff --git a/src/Symfony/Contracts/Translation/TranslatorInterface.php b/src/Symfony/Contracts/Translation/TranslatorInterface.php index b62df5ee3a..dc9bf7f464 100644 --- a/src/Symfony/Contracts/Translation/TranslatorInterface.php +++ b/src/Symfony/Contracts/Translation/TranslatorInterface.php @@ -13,6 +13,8 @@ namespace Symfony\Contracts\Translation; /** * @author Fabien Potencier + * + * @method string getLocale() Returns the default locale */ interface TranslatorInterface { diff --git a/src/Symfony/Contracts/Translation/TranslatorTrait.php b/src/Symfony/Contracts/Translation/TranslatorTrait.php index c125f4612e..789693dd51 100644 --- a/src/Symfony/Contracts/Translation/TranslatorTrait.php +++ b/src/Symfony/Contracts/Translation/TranslatorTrait.php @@ -32,6 +32,8 @@ trait TranslatorTrait /** * {@inheritdoc} + * + * @return string */ public function getLocale() {