@@ -24,31 +24,31 @@ class LoggingTranslatorPass implements CompilerPassInterface
24
24
{
25
25
public function process (ContainerBuilder $ container )
26
26
{
27
- if (!$ container ->hasAlias ('logger ' ) || !$ container ->hasAlias ('translator ' )) {
27
+ if (!$ container ->hasAlias ('logger ' ) || !$ container ->hasAlias ('translator ' ) || !$ container ->hasParameter ('translator.logging ' ) || !$ container ->getParameter ('translator.logging ' )) {
28
+ $ container ->removeDefinition ('translator.logging ' );
29
+
28
30
return ;
29
31
}
30
32
31
- if ($ container ->hasParameter ('translator.logging ' ) && $ container ->getParameter ('translator.logging ' )) {
32
- $ translatorAlias = $ container ->getAlias ('translator ' );
33
- $ definition = $ container ->getDefinition ((string ) $ translatorAlias );
34
- $ class = $ container ->getParameterBag ()->resolveValue ($ definition ->getClass ());
33
+ $ translatorAlias = $ container ->getAlias ('translator ' );
34
+ $ definition = $ container ->getDefinition ((string ) $ translatorAlias );
35
+ $ class = $ container ->getParameterBag ()->resolveValue ($ definition ->getClass ());
35
36
36
- if (!$ r = $ container ->getReflectionClass ($ class )) {
37
- throw new InvalidArgumentException (sprintf ('Class "%s" used for service "%s" cannot be found. ' , $ class , $ translatorAlias ));
38
- }
39
- if ($ r ->isSubclassOf (TranslatorInterface::class) && $ r ->isSubclassOf (TranslatorBagInterface::class)) {
40
- $ container ->getDefinition ('translator.logging ' )->setDecoratedService ('translator ' );
41
- $ warmer = $ container ->getDefinition ('translation.warmer ' );
42
- $ subscriberAttributes = $ warmer ->getTag ('container.service_subscriber ' );
43
- $ warmer ->clearTag ('container.service_subscriber ' );
44
-
45
- foreach ($ subscriberAttributes as $ k => $ v ) {
46
- if ((!isset ($ v ['id ' ]) || 'translator ' !== $ v ['id ' ]) && (!isset ($ v ['key ' ]) || 'translator ' !== $ v ['key ' ])) {
47
- $ warmer ->addTag ('container.service_subscriber ' , $ v );
48
- }
37
+ if (!$ r = $ container ->getReflectionClass ($ class )) {
38
+ throw new InvalidArgumentException (sprintf ('Class "%s" used for service "%s" cannot be found. ' , $ class , $ translatorAlias ));
39
+ }
40
+ if ($ r ->isSubclassOf (TranslatorInterface::class) && $ r ->isSubclassOf (TranslatorBagInterface::class)) {
41
+ $ container ->getDefinition ('translator.logging ' )->setDecoratedService ('translator ' );
42
+ $ warmer = $ container ->getDefinition ('translation.warmer ' );
43
+ $ subscriberAttributes = $ warmer ->getTag ('container.service_subscriber ' );
44
+ $ warmer ->clearTag ('container.service_subscriber ' );
45
+
46
+ foreach ($ subscriberAttributes as $ k => $ v ) {
47
+ if ((!isset ($ v ['id ' ]) || 'translator ' !== $ v ['id ' ]) && (!isset ($ v ['key ' ]) || 'translator ' !== $ v ['key ' ])) {
48
+ $ warmer ->addTag ('container.service_subscriber ' , $ v );
49
49
}
50
- $ warmer ->addTag ('container.service_subscriber ' , ['key ' => 'translator ' , 'id ' => 'translator.logging.inner ' ]);
51
50
}
51
+ $ warmer ->addTag ('container.service_subscriber ' , ['key ' => 'translator ' , 'id ' => 'translator.logging.inner ' ]);
52
52
}
53
53
}
54
54
}
0 commit comments