Skip to content

Commit bbba286

Browse files
committed
Fix decorating TagAware adapters in dev
1 parent 1788ee0 commit bbba286

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

DependencyInjection/Compiler/CacheCollectorPass.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@
1111

1212
namespace Symfony\Bundle\FrameworkBundle\DependencyInjection\Compiler;
1313

14+
use Symfony\Component\Cache\Adapter\TagAwareAdapterInterface;
1415
use Symfony\Component\Cache\Adapter\TraceableAdapter;
16+
use Symfony\Component\Cache\Adapter\TraceableTagAwareAdapter;
1517
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
1618
use Symfony\Component\DependencyInjection\ContainerBuilder;
1719
use Symfony\Component\DependencyInjection\Reference;
@@ -34,11 +36,12 @@ public function process(ContainerBuilder $container)
3436

3537
$collectorDefinition = $container->getDefinition('data_collector.cache');
3638
foreach ($container->findTaggedServiceIds('cache.pool') as $id => $attributes) {
37-
if ($container->getDefinition($id)->isAbstract()) {
39+
$definition = $container->getDefinition($id);
40+
if ($definition->isAbstract()) {
3841
continue;
3942
}
4043

41-
$container->register($id.'.recorder', TraceableAdapter::class)
44+
$container->register($id.'.recorder', is_subclass_of($definition->getClass(), TagAwareAdapterInterface::class) ? TraceableTagAwareAdapter::class : TraceableAdapter::class)
4245
->setDecoratedService($id)
4346
->addArgument(new Reference($id.'.recorder.inner'))
4447
->setPublic(false);

0 commit comments

Comments
 (0)