|
21 | 21 | import fr.adrienbrault.idea.symfony2plugin.translation.TranslatorLookupElement;
|
22 | 22 | import fr.adrienbrault.idea.symfony2plugin.translation.collector.YamlTranslationVisitor;
|
23 | 23 | import fr.adrienbrault.idea.symfony2plugin.translation.parser.DomainMappings;
|
| 24 | +import fr.adrienbrault.idea.symfony2plugin.translation.provider.CompiledContainerTranslatorProvider; |
| 25 | +import fr.adrienbrault.idea.symfony2plugin.translation.provider.CompiledTranslatorProvider; |
| 26 | +import fr.adrienbrault.idea.symfony2plugin.translation.provider.IndexTranslatorProvider; |
24 | 27 | import fr.adrienbrault.idea.symfony2plugin.util.MethodMatcher;
|
25 | 28 | import fr.adrienbrault.idea.symfony2plugin.util.PhpElementsUtil;
|
26 | 29 | import fr.adrienbrault.idea.symfony2plugin.util.PsiElementUtils;
|
|
46 | 49 | import java.util.regex.Matcher;
|
47 | 50 | import java.util.regex.Pattern;
|
48 | 51 | import java.util.stream.Collectors;
|
| 52 | +import java.util.stream.Stream; |
49 | 53 |
|
50 | 54 | /**
|
51 | 55 | * @author Daniel Espendiller <daniel@espendiller.net>
|
52 | 56 | */
|
53 | 57 | public class TranslationUtil {
|
54 |
| - public static final ExtensionPointName<TranslatorProvider> TRANSLATION_PROVIDER = new ExtensionPointName<>("fr.adrienbrault.idea.symfony2plugin.extension.TranslatorProvider"); |
| 58 | + private static final ExtensionPointName<TranslatorProvider> TRANSLATION_PROVIDER = new ExtensionPointName<>("fr.adrienbrault.idea.symfony2plugin.extension.TranslatorProvider"); |
| 59 | + public static final TranslatorProvider[] INTERNAL_TRANSLATOR_PROVIDERS = new TranslatorProvider[]{ |
| 60 | + new CompiledContainerTranslatorProvider(), |
| 61 | + new CompiledTranslatorProvider(), |
| 62 | + new IndexTranslatorProvider(), |
| 63 | + }; |
55 | 64 |
|
56 | 65 | public static MethodMatcher.CallToSignature[] PHP_TRANSLATION_SIGNATURES = new MethodMatcher.CallToSignature[] {
|
57 | 66 | new MethodMatcher.CallToSignature("\\Symfony\\Component\\Translation\\TranslatorInterface", "trans"),
|
@@ -378,8 +387,12 @@ public static Set<String> getPlaceholderFromTranslation(@NotNull String text) {
|
378 | 387 | return placeholder;
|
379 | 388 | }
|
380 | 389 |
|
| 390 | + @NotNull |
381 | 391 | private static TranslatorProvider[] getTranslationProviders() {
|
382 |
| - return TRANSLATION_PROVIDER.getExtensions(); |
| 392 | + return Stream.concat( |
| 393 | + Arrays.stream(INTERNAL_TRANSLATOR_PROVIDERS), |
| 394 | + Arrays.stream(TRANSLATION_PROVIDER.getExtensions()) |
| 395 | + ).toArray(TranslatorProvider[]::new); |
383 | 396 | }
|
384 | 397 |
|
385 | 398 | /**
|
|
0 commit comments