public function process(ContainerBuilder $container)
{
if (!$container->hasDefinition(self::SERVICE_ID)) {
return;
}
$references = [];
foreach ($container->findTaggedServiceIds(self::TAG_NAME) as $id => $tags) {
foreach ($tags as $attributes) {
$references[$attributes[self::TYPE_ATTRIBUTE]] = new Reference($id);
}
}
if (0 === count($references)) {
return;
}
$container->getDefinition(self::SERVICE_ID)->replaceArgument(0, $references);
}